相机位姿名词澄清

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

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

  • 记为: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表示的是从相机到世界坐标的转换

相关推荐
格林威1 小时前
AI视觉项目部署:Docker 部署视觉服务可行性分析
linux·运维·人工智能·数码相机·docker·容器·工业相机
格林威1 天前
Windows 实时性补丁(RTX / WSL2)
linux·运维·人工智能·windows·数码相机·计算机视觉·工业相机
做一个码农都是奢望1 天前
计算机控制系统-车道保持-坐标转换
数码相机
第二层皮-合肥1 天前
红外相机-非均匀性校正算法
数码相机
qq_526099132 天前
PCIe8122 高可靠性图像采集卡 适配多场景工业图像传输 稳定高效更省心
数码相机·机器人·自动化
琪伦的工具库2 天前
批量照片分类工具使用说明:按拍摄日期/相机型号/分辨率分类,支持模板命名与复制移动
数码相机
琪伦的工具库2 天前
批量照片图片信息修改文件名工具使用说明:按拍摄日期/相机型号/分辨率等信息批量重命名,重复自动加序号
数码相机
格林威2 天前
Linux系统工业相机:Linux udev 规则绑定相机设备
linux·运维·开发语言·人工智能·数码相机·计算机视觉·工业相机