I think it is basic trigonometric task, but I not so good in trigonometry. I have calibrated camera so I know camera matrix and distortion coefficients. I also able to detect aruco board (using opencv's aruco contrib module) and its position so I have an rotation vector and translation vectors of the board (in camera space?). So I also able to define this yellow circles around board center using coordinates relative to board and draw them using functions cv::projectPoints(yellowMarkerPoints, rvec, tvec, camMatrix, distCoeffs, imagePoints); and cv::circle. Now I need calculate circle closest to the camera. I dont understand how to do this!
So what I have:
Mat camMatrix, distCoeffs;
Vec3d rvec, tvec;//board pose
vector< Point3f > yellowMarkerPoints;//yellow circles positions
Or similar question: how from this data I can get an angle of the board (aka 'Yaw' rotation angle) relative to the camera?