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.pb b/y2016/vision/calibration.pb
new file mode 100644
index 0000000..83fd42a
--- /dev/null
+++ b/y2016/vision/calibration.pb
@@ -0,0 +1,62 @@
+calibration {
+  robot: "competition"
+  calibration: {
+    focal_length: 1.116070312
+    center_center_dist: 0.27051
+    center_center_skew: -16.65
+    camera_y_skew: 20.0
+    measure_camera_offset: 0.0
+    camera_image_width: 1280
+    camera_image_height: 960
+    left_camera_name: "/dev/video0"
+    right_camera_name: "/dev/video1"
+    roborio_ip_addr: "10.9.71.168"
+    jetson_ip_addr: "10.9.71.179"
+    camera_exposure: 10
+    camera_brightness: 128
+    camera_gain: 0
+    camera_fps: 10
+  }
+}
+
+calibration {
+  robot: "practice"
+  calibration {
+    focal_length: 1.1160703125
+    center_center_dist: 0.26829
+    center_center_skew: 0.0
+    camera_y_skew: 0.0
+    measure_camera_offset: 0.0
+    camera_image_width: 1280
+    camera_image_height: 960
+    left_camera_name: "/dev/video0"
+    right_camera_name: "/dev/video1"
+    roborio_ip_addr: "10.9.71.168"
+    jetson_ip_addr: "10.9.71.179"
+    camera_exposure: 10
+    camera_brightness: 128
+    camera_gain: 0
+    camera_fps: 5
+  }
+}
+
+calibration {
+  robot: "stereo_rig"
+  calibration {
+    focal_length: 1.21515625
+    center_center_dist: 0.26829
+    center_center_skew: 39.11
+    camera_y_skew: 0.0
+    measure_camera_offset: 0.06985
+    camera_image_width: 1280
+    camera_image_height: 960
+    left_camera_name: "/dev/v4l/by-id/usb-046d_0825_8C1756A0-video-index0"
+    right_camera_name: "/dev/v4l/by-id/usb-046d_081a_E56C8BA0-video-index0"
+    roborio_ip_addr: "10.9.71.168"
+    jetson_ip_addr: "10.9.71.179"
+    camera_exposure: 10
+    camera_brightness: 128
+    camera_gain: 0
+    camera_fps: 20
+  }
+}
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;
+}