Moving camera calib files to use camera#

Modifying intrinsics_calibration to handle and use this new format

Changing numbering to match /dev/video#, so that camera on /dev/video0
is publishing on /camera0 for example

Added a utility function to get camera number from channel, and a test to
go with it

Cleaned up some of the logging to use percentages instead of fractions /
decimals

Change-Id: I764d59ca7d9089a37d010272879ce55aae5dbd95
Signed-off-by: Jim Ostrowski <yimmy13@gmail.com>
diff --git a/frc971/vision/vision_util_lib.h b/frc971/vision/vision_util_lib.h
index 6fb32eb..8ce651c 100644
--- a/frc971/vision/vision_util_lib.h
+++ b/frc971/vision/vision_util_lib.h
@@ -7,16 +7,24 @@
 
 #include "frc971/vision/calibration_generated.h"
 
+// Extract the CameraExtrinsics from a CameraCalibration struct
 namespace frc971::vision {
 std::optional<cv::Mat> CameraExtrinsics(
     const frc971::vision::calibration::CameraCalibration *camera_calibration);
 
+// Extract the CameraIntrinsics from a CameraCalibration struct
 cv::Mat CameraIntrinsics(
     const frc971::vision::calibration::CameraCalibration *camera_calibration);
 
+// Extract the CameraDistCoeffs from a CameraCalibration struct
 cv::Mat CameraDistCoeffs(
     const frc971::vision::calibration::CameraCalibration *camera_calibration);
 
+// Get the camera number from a camera channel name, e.g., return 2 from
+// "/camera2".  Returns nullopt if string doesn't start with "/camera" or does
+// not have a number
+std::optional<uint16_t> CameraNumberFromChannel(std::string camera_channel);
+
 }  // namespace frc971::vision
 
 #endif  // FRC971_VISION_VISION_UTIL_LIB_H_