如何从OpenCV rvecs计算旋转角度
How to calculate the rotated angle from OpenCV rvecs
我正在使用aruco标记来获取机器人的位置。从估计姿势单标记中获取姿势后,我获得了给定标记的 rvecs 和 tvecs。由此我如何获得标记围绕每个轴的旋转角度。
我使用下面的代码来检测并绘制 Aruco 标记及其轴
while(true)
{
vector< vector<Point2f>> corners; //All the Marker corners
vector<int> ids;
cap >> frame;
cvtColor(frame, gray, CV_BGR2GRAY);
aruco::detectMarkers(gray, dictionary, corners, ids);
aruco::drawDetectedMarkers(frame,corners,ids);
aruco::estimatePoseSingleMarkers(corners, arucoMarkerLength, cameraMatrix, distanceCoefficients, rvecs, tvecs);
for(int i = 0; i < ids.size(); i++)
{
aruco::drawAxis(frame, cameraMatrix, distanceCoefficients, rvecs[i], tvecs[i], 0.1f);
}
imshow("Markers", frame);
int key = waitKey(10);
if((char)key == 'q')
break;
}
首先从
旋转矢量(rvec)中获取旋转矩阵,然后取欧拉角,从而获得标记相对于相机的旋转。此处给出了将旋转矩阵转换为欧勒角
相关文章:
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- 递归函数计算序列中的平方和(并输出过程)
- 如何有效地计算将单位立方体映射到自身的反射和旋转?
- 如何使用增强::几何计算多边形的旋转固体体积?
- 给定方向和位置如何使用 GLM 计算旋转矩阵
- 快速计算变换/旋转马里克斯4x4
- 在Qt5的OpenGL绘图中通过鼠标移动计算对象旋转角度
- 如何从OpenCV rvecs计算旋转角度
- OpenCV 计算相机位置和旋转
- c++:旋转锁或互斥对象比较(简单计算)
- 对象旋转/平移后重新计算AABB正确
- 从盒子计算 AABB(中心、半大小、旋转)
- 如何使用OpenCV计算两帧之间的旋转平移矩阵
- 如何在三维空间中计算旋转碰撞
- obb旋转计算
- c++OpenGL的旋转和计算
- 我们如何计算旋转和平移两个立体相机在opencv StereoRectify(r,t自变量)中使用
- 如何计算基于方向向量的旋转矩阵
- 计算旋转直线的反弹角度
- 如何在平移/旋转后重新计算轴对齐的边界框