CamOdomCalibraTool
CamOdomCalibraTool copied to clipboard
Angle Axis inversion
Can you explain why the following is done when computing the change in angle for the camera frame?
Eigen::AngleAxisd rotation_vector(q_cl); Eigen::Vector3d axis = rotation_vector.axis(); double deltaTheta_cl = rotation_vector.angle(); if(axis(1)>0) { deltaTheta_cl *= -1; axis *= -1; }
What does it mean that axis(1) > 0, and why should you multiply by -1?
Can you explain why the following is done when computing the change in angle for the camera frame?
Eigen::AngleAxisd rotation_vector(q_cl); Eigen::Vector3d axis = rotation_vector.axis(); double deltaTheta_cl = rotation_vector.angle(); if(axis(1)>0) { deltaTheta_cl *= -1; axis *= -1; }
What does it mean that axis(1) > 0, and why should you multiply by -1?
In our case, the z-axis of body (or odom) towards up (0 0 1), and the y-axis of camera towards down which should be [0 -1 0].
Eigen::Matrix3d Rcl = Rwc.inverse() * Rwl; // c: current l: last Eigen::Quaterniond q_cl(Rcl);
您好,这个注释是对的吗,这个求解的是上一帧在当前帧的表示??