Calibrate cameras 7-9
Change-Id: Ie2fc1c2c565fabddcefa9b52dca257caba2ed196
diff --git a/y2019/vision/calibrate.sh b/y2019/vision/calibrate.sh
new file mode 100755
index 0000000..24118ed
--- /dev/null
+++ b/y2019/vision/calibrate.sh
@@ -0,0 +1,70 @@
+#!/bin/bash
+
+set -e
+
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+# We need to rebuild to save the old constants since the .cc file is baked into
+# the executable.
+calibration() {
+ bazel build -c opt //y2019/vision:global_calibration
+
+ ../../bazel-bin/y2019/vision/global_calibration "$@"
+}
+
+# Calibrate the comp robot. This is assuming the data file captured has been
+# extracted into the data folder in //y2019/vision/
+calibration \
+ --camera_id 10 \
+ --tape_start_x=-12.5 \
+ --tape_start_y=0.0 \
+ --tape_direction_x=-1.0 \
+ --tape_direction_y=0.0 \
+ --beginning_tape_measure_reading=11 \
+ --image_count=75 \
+ --constants=constants.cc \
+ --prefix data/cam10_0/debug_viewer_jpeg_
+
+calibration \
+ --camera_id 6 \
+ --tape_start_x=12.5 \
+ --tape_start_y=0.0 \
+ --tape_direction_x=1.0 \
+ --tape_direction_y=0.0 \
+ --beginning_tape_measure_reading=11 \
+ --image_count=75 \
+ --constants=constants.cc \
+ --prefix data/cam6_0/debug_viewer_jpeg_
+
+calibration \
+ --camera_id 7 \
+ --tape_start_x=12.5 \
+ --tape_start_y=0.0 \
+ --tape_direction_x=1.0 \
+ --tape_direction_y=0.0 \
+ --beginning_tape_measure_reading=21 \
+ --image_count=65 \
+ --constants=constants.cc \
+ --prefix data/cam7_0/debug_viewer_jpeg_
+
+calibration \
+ --camera_id 9 \
+ --tape_start_x=-6.5 \
+ --tape_start_y=11.0 \
+ --tape_direction_x=0.0 \
+ --tape_direction_y=-1.0 \
+ --beginning_tape_measure_reading=30 \
+ --image_count=56 \
+ --constants=constants.cc \
+ --prefix data/cam9_0/debug_viewer_jpeg_
+
+calibration \
+ --camera_id 8 \
+ --tape_start_x=6.5 \
+ --tape_start_y=-11.0 \
+ --tape_direction_x=0.0 \
+ --tape_direction_y=1.0 \
+ --beginning_tape_measure_reading=25 \
+ --image_count=61 \
+ --constants=constants.cc \
+ --prefix data/cam8_0/debug_viewer_jpeg_
diff --git a/y2019/vision/constants.cc b/y2019/vision/constants.cc
index ef99521..44a143c 100644
--- a/y2019/vision/constants.cc
+++ b/y2019/vision/constants.cc
@@ -59,6 +59,60 @@
75,
}};
+CameraCalibration camera_7 = {
+ {
+ -2.30729 / 180.0 * M_PI, 339.894, 1.16684 / 180.0 * M_PI,
+ },
+ {
+ {{3.62399 * kInchesToMeters, 3.94792 * kInchesToMeters,
+ 33.3196 * kInchesToMeters}},
+ 18.5828 / 180.0 * M_PI,
+ },
+ {
+ 7,
+ {{12.5 * kInchesToMeters, 0.0}},
+ {{1 * kInchesToMeters, 0.0}},
+ 21,
+ "data/cam7_0/debug_viewer_jpeg_",
+ 65,
+ }};
+
+CameraCalibration camera_8 = {
+ {
+ 37.0966 / 180.0 * M_PI, 339.997, 0.265968 / 180.0 * M_PI,
+ },
+ {
+ {{3.53674 * kInchesToMeters, 5.25891 * kInchesToMeters,
+ 12.6869 * kInchesToMeters}},
+ 92.4773 / 180.0 * M_PI,
+ },
+ {
+ 8,
+ {{6.5 * kInchesToMeters, -11 * kInchesToMeters}},
+ {{0.0, 1 * kInchesToMeters}},
+ 25,
+ "data/cam8_0/debug_viewer_jpeg_",
+ 61,
+ }};
+
+CameraCalibration camera_9 = {
+ {
+ 35.3461 / 180.0 * M_PI, 337.599, 3.34351 / 180.0 * M_PI,
+ },
+ {
+ {{4.24216 * kInchesToMeters, -2.97032 * kInchesToMeters,
+ 11.323 * kInchesToMeters}},
+ -93.3026 / 180.0 * M_PI,
+ },
+ {
+ 9,
+ {{-6.5 * kInchesToMeters, 11 * kInchesToMeters}},
+ {{0.0, -1 * kInchesToMeters}},
+ 30,
+ "data/cam9_0/debug_viewer_jpeg_",
+ 56,
+ }};
+
CameraCalibration camera_10 = {
{
-0.165199 / 180.0 * M_PI, 340.666, 0.596842 / 180.0 * M_PI,
@@ -121,6 +175,12 @@
return &camera_5;
case 6:
return &camera_6;
+ case 7:
+ return &camera_7;
+ case 8:
+ return &camera_8;
+ case 9:
+ return &camera_9;
case 10:
return &camera_10;
case 16: