It seems that the ponit[0] is at x<0 and y>0(as shown below). Why are the coordinates in the code(x<0 and y<0) different?
Besides, I calculate the cMo(= fMc.inverse() fMe eMo) and compare with cMo_vec[0]. It seems that cMo ≠ cMo_vec[0].
Why cMo ≠ cMo_vec[0]?
fMc : the homogeneous transformation between the robot base frame and the camera frame
eMo : the homogeneous transformation between the end-effector frame and the object(AprilTag) frame.
fMe = robot.get_fMe() the homogeneous transformation between the robot base frame and the robot end-effector frame
cMo : the homogeneous transformation between the camera frame and the object(AprilTag) frame
I set fMc and eMo by reading the value in CoppeliaSim(as shown below).
According to the tutorial, I think the object (AprilTag) frame is wrong. Re-establish the object (AprilTag) frame, we can get the correct cMo(=cMo_vec[0]).
I run the tutorial-franka-coppeliasim-ibvs-apriltag.cpp. Tthe definition of the 4 3D points corresponding to the CAD model of the Apriltag
It seems that the ponit[0] is at x<0 and y>0(as shown below). Why are the coordinates in the code(x<0 and y<0) different?
Besides, I calculate the cMo(= fMc.inverse() fMe eMo) and compare with cMo_vec[0]. It seems that cMo ≠ cMo_vec[0]. Why cMo ≠ cMo_vec[0]? fMc : the homogeneous transformation between the robot base frame and the camera frame eMo : the homogeneous transformation between the end-effector frame and the object(AprilTag) frame. fMe = robot.get_fMe() the homogeneous transformation between the robot base frame and the robot end-effector frame cMo : the homogeneous transformation between the camera frame and the object(AprilTag) frame I set fMc and eMo by reading the value in CoppeliaSim(as shown below).