Use OpenCV matrix operations in ExtrCalibration
We can simpliy code by using OpenCV's ability to do matrix operations, e.g.
translation_vector2[0] = rot_mat.at<double>(0, 0) * tvec.at<double>(0) +
rot_mat.at<double>(1, 0) * tvec.at<double>(1) +
rot_mat.at<double>(2, 0) * tvec.at<double>(2);
translation_vector2[1] = rot_mat.at<double>(0, 1) * tvec.at<double>(0) +
rot_mat.at<double>(1, 1) * tvec.at<double>(1) +
rot_mat.at<double>(2, 1) * tvec.at<double>(2);
translation_vector2[2] = rot_mat.at<double>(0, 2) * tvec.at<double>(0) +
rot_mat.at<double>(1, 2) * tvec.at<double>(1) +
rot_mat.at<double>(2, 2) * tvec.at<double>(2);
to
translation_vector2 = cv::Mat(rot_mat.t() * tvec);
(see how much more obvious the transpose is with the second one)
However, our tests are so sensitive that such changes are picked up. I propose doing these changes, but in isolation, such that the different test outputs are very visible and we know which change lead to which adaption of the test output.
This might be by working commit for commit in a single MR or by using multiple MRs. The only important thing is, that this is not combined with functional changes.