相机位姿名词澄清

相机相对于世界坐标系的旋转

  • 通常表示:世界坐标系到相机坐标系的旋转矩阵

  • 记为:Rcw (这一点和SLAM十四讲中一致,见第二版P47)

  • 含义:将一个点从世界坐标系转换到相机坐标系的旋转

世界相对于相机坐标系的旋转

  • 通常表示:相机坐标系到世界坐标系的旋转矩阵

  • 记为:Rwc

相机位姿一般指:世界坐标系到相机坐标系的旋转矩阵 。

欧拉角转旋转矩阵

如果你指的是 Extrinsic 旋转(绕固定世界轴)

旋转方式1:

外旋X-Y-Z

旋转方式2:

顺序:先绕世界 Z(φ),再绕世界 Y(θ),再绕世界 X(ψ)

则总旋转矩阵为:R=Rx​(ψ)⋅Ry​(θ)⋅Rz​(ϕ)

Eigen转换函数

复制代码
Eigen::Quaterniond Quat= Eigen::AngleAxisd(yaw,   Vector3d::UnitZ()) 
                                 *Eigen::AngleAxisd(pitch, Vector3d::UnitY()) 
                                 *Eigen::AngleAxisd(roll,     Vector3d::UnitX());
Eigen::Matrix3d rot=Quat.normalized().toRotationMatrix();

旋转矩阵转欧拉角

Eigen转换函数

Eigen:: eulerAngles()参数 (2, 1, 0) 表示旋转顺序:eulerAngles(2,1,0) 按照轴(Z→Y→X)的顺序进行旋转---->返回的欧拉角次序:

复制代码
cout<<" euler_angles(0) yaw=  "<<euler_angles(0)<<std::endl;
cout<<" euler_angles(1) pitch="<<euler_angles(1)<<std::endl;
cout<<" euler_angles(2) roll= "<<euler_angles(2)<<std::endl;

实例

输入的roll、pitch、yaw,按照Rz*Ry*Rx旋转,R = Rz*Ry*Rx表示的是从相机到世界坐标的转换

相关推荐
格林威7 小时前
工业相机参数解析:曝光时间与运动模糊的“生死博弈”
c++·人工智能·数码相机·opencv·算法·计算机视觉·工业相机
格林威9 小时前
工业相机图像采集:Grab Timeout 设置建议——拒绝“假死”与“丢帧”的黄金法则
开发语言·人工智能·数码相机·计算机视觉·c#·机器视觉·工业相机
格林威1 天前
工业相机图像高速存储(C++版):RAID 0 NVMe SSD 阵列暴力提速,附海康实战代码!
开发语言·c++·人工智能·数码相机·计算机视觉·工业相机·堡盟相机
rit84324991 天前
光场相机成像过程及空间域重对焦仿真
数码相机
YMWM_1 天前
相机端口查看和相机实时显示
数码相机
XuanTao771 天前
【分享】✍️手写生成器|高级版|轻松生成自然逼真手写字体
数码相机·计算机网络·网络安全·智能手机·软件工程
菩提树下的凡夫1 天前
3D相机如何获取高精度的xyz
数码相机·3d
格林威1 天前
工业相机图像高速存储(C++版):RAID 0 NVMe SSD 阵列方法,附堡盟相机实战代码!
开发语言·c++·人工智能·数码相机·opencv·计算机视觉·视觉检测
He BianGu2 天前
【项目】Vision Master OpenCV 4.0 版本发行说明
数码相机
双翌视觉2 天前
高精度视觉对位实现键盘线路薄膜定位纠偏
数码相机·计算机外设