blob: d89d2e773b18b177a0e796e5c26e0cf6b2350663 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
syntax = "proto2";
package ltpb;
import "mirror_system.proto";
import "matrix3x3f.proto";
import "point3f.proto";
import "distortion.proto";
import "range2f.proto";
import "device_temp.proto";
import "point2f.proto";
message GeometricCalibration {
optional MirrorType mirror_type = 1;
enum MirrorType {
NONE = 0;
GLUED = 1;
MOVABLE = 2;
}
repeated CalibrationFocusBundle per_focus_calibration = 2;
message CalibrationFocusBundle {
required float focus_distance = 1;
optional Intrinsics intrinsics = 2;
optional Extrinsics extrinsics = 3;
optional sint32 sensor_temp = 4;
optional DeviceTemp device_temp = 5;
optional float focus_hall_code = 6;
}
optional Distortion distortion = 3;
optional Range2F lens_hall_code_range = 4;
optional Range2F focus_distance_range = 5;
optional AngleOpticalCenterMapping angle_optical_center_mapping = 6;
message AngleOpticalCenterMapping {
required Point2F center_start = 1;
required Point2F center_end = 2;
required float angle_offset = 3;
required float t_scale = 4;
required float t_offset = 5;
}
message Intrinsics {
required Matrix3x3F k_mat = 1;
optional float rms_error = 2;
}
message Extrinsics {
optional CanonicalFormat canonical = 1;
message CanonicalFormat {
required Matrix3x3F rotation = 1;
required Point3F translation = 2;
optional float stereo_error = 3;
optional float reprojection_error = 4;
}
optional MovableMirrorFormat moveable_mirror = 2;
message MovableMirrorFormat {
optional MirrorSystem mirror_system = 1;
optional MirrorActuatorMapping mirror_actuator_mapping = 2;
}
}
}
|