关于旋转矩阵R,平移向量t和变换矩阵T的关系

第一
对于空间一点x,在坐标系1的坐标为x1,在坐标系2的坐标为x2,
x2=R21*x1+t21
这里R21为坐标系1到坐标系2的旋转矩阵,t21为坐标系2原点指向坐标系1原点的平移向量,即坐标系2下取的坐标

第二
变换矩阵T左上角三行三列为R,右上角第四列前三行为平移向量t,左下角第四行前三列为0 0 0,右下角第四行第四列为1

第三
如果已知坐标系1下坐标系2的坐标,求解坐标系2下坐标系1的坐标
先求坐标系2到坐标系1的旋转矩阵R12,再求坐标系1指向坐标系2的平移向量t12,即坐标系1下坐标系2的坐标,将平移矩阵和旋转矩阵合并为转换矩阵T12,即坐标系2到坐标系1的变换矩阵
然后求T12的逆矩阵,获得坐标系1到坐标系2的变换矩阵T21,取第四列前三行为坐标系2指向坐标系1的平移向量t21,即坐标系2下坐标系1的坐标

T = [R t] T^-1 = [R^-1 -R^-1 * t]
[0 1] [0 1 ]

第四
已知id为33的arcuo码,求相机识别到该aruco码时,二维码坐标系下的相机坐标

Mat T33 = MTracker[33].getRTMatrix();//二维码坐标系到相机坐标系的变换矩阵
Mat Tinv = T33.inv();                //相机坐标系到二维码坐标系的变换矩阵
Mat pose = Tinv(Rect(3,0,1,3)).clone();//其中变换矩阵的第四列的前三行为二维码坐标系下的相机坐标,这是方法1
Mat R = T33(Rect(0,0,3,3)).clone();  //也可以先求二维码坐标系到相机坐标系的旋转矩阵R_ca
Mat t = T33(Rect(3,0,1,3)).clone();  //接着求二维码坐标系到相机坐标系的平移矩阵t_ca,即相机坐标系下二维码坐标
Mat pose2 = R.inv()*(-t);   //相机在二维码坐标系下坐标假设为x_a,在相机坐标系下坐标假设为x_c,则x_c=R_ca*x_a+t_ca,可得x_a=R_ca.inv()*(-t_ca),这是方法2
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要进行坐标系之间的转换,需要使用旋转矩阵平移向量。根据给定的三个点在两个坐标系下的坐标,可以通过以下步骤求解转换参数。 1. 首先,选择其中一个点作为世界坐标系的原点,并将其在相机坐标系中的坐标作为平移向量T。这个平移向量描述了世界坐标系到相机坐标系的平移关系。 2. 接下来,使用另外两个不共线的点来构建旋转矩阵R。旋转矩阵描述了世界坐标系到相机坐标系的旋转关系。具体步骤可以通过计算两个坐标系中的向量之间的旋转变换得到。 3. 如果没有现成的矩阵相乘函数,可以自己编写代码实现矩阵相乘的功能。初始时可以使用数组存放矩阵,但后续考虑到方便性和可扩展性,可以转换思路,使用vector动态存放数组,这样可以更方便地进行矩阵的计算,并适应后续用户增加顶点操作的需求。 通过以上步骤,可以得到坐标系之间的旋转矩阵R和平移向量T,从而实现坐标系之间的转换。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [三点解算两个坐标系之间的旋转矩阵平移向量](https://download.csdn.net/download/yangzhe1215/12449123)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [原理详解_三点解算两个坐标系之间的旋转矩阵平移向量](https://download.csdn.net/download/zhangxz259/10815707)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [基于OpenGL的计算机图形学实验四简单几何形体(三角形、多边形等)的平移、缩放、旋转等几何变换(完整可...](https://download.csdn.net/download/weixin_53249260/88236610)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dear小王子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值