Add camera config information
I have no idea where the values are from or how accurate they are.
Change-Id: I4c269b4fc5e0203ef045da4181e11fc9e9a8d30f
diff --git a/y2016/vision/calibration.proto b/y2016/vision/calibration.proto
new file mode 100644
index 0000000..decbf54
--- /dev/null
+++ b/y2016/vision/calibration.proto
@@ -0,0 +1,59 @@
+syntax = "proto2";
+
+package y2016.vision;
+
+// Stores configuration information for a given set of hardware.
+message Calibration {
+ // The focal length of the camera divided by the width of images.
+ optional double focal_length = 1;
+ // Physical distance between the two cameras in meters.
+ optional double center_center_dist = 2;
+
+ // Rotational misalignment in x direction in pixels.
+ optional double center_center_skew = 3;
+ // Rotational misalignment in x direction in pixels.
+ optional double camera_y_skew = 4;
+ // The number of meters from the physical point measured on the robot to the
+ // camera. This is added into the result of translating camera coordinates to
+ // real-world coordinates to get the correct values.
+ optional double measure_camera_offset = 5;
+
+ // Image width to read from camera.
+ optional int32 camera_image_width = 6;
+ // Image height to read from camera.
+ optional int32 camera_image_height = 7;
+
+ // Device name of the left camera.
+ optional string left_camera_name = 8;
+ // Device name of the right camera.
+ optional string right_camera_name = 9;
+
+ // roboRIO IP address.
+ optional string roborio_ip_addr = 10;
+ // Jetson board IP address.
+ optional string jetson_ip_addr = 11;
+
+ // Exposure to set the camera to (V4L2_CID_EXPOSURE_ABSOLUTE value).
+ optional int32 camera_exposure = 12;
+ // Brightness to set the camera to (V4L2_CID_BRIGHTNESS value).
+ optional int32 camera_brightness = 13;
+ // Gain to set the camera to (V4L2_CID_GAIN value).
+ optional int32 camera_gain = 14;
+
+ // Number of frames per second to try for. V4L2/the camera/etc decide on the
+ // actual value to use.
+ optional int32 camera_fps = 15;
+}
+
+// Matches a robot identifer and its calibration information.
+message RobotCalibration {
+ // Identifier for which robot this applies to.
+ optional string robot = 1;
+ // The calibration for this robot.
+ optional Calibration calibration = 2;
+}
+
+// Top-level message for a file of calibration information.
+message CalibrationFile {
+ repeated RobotCalibration calibration = 1;
+}