【机器视觉】旋转矩阵,坐标系变换

征途所在是星辰大海

——无名

三联后私信博主免费领取ChatGPT4 mini永久授权码~

前言

分享一下我搓机器人过程中遇到的问题

在机器视觉中,常需要将物体的坐标从一个坐标系变换到另一个坐标系。旋转矩阵可以精确描述物体在三维空间中的旋转关系,常配合平移矢量一起完成刚体变换。

相关算法放在文末,博主不是计算机专业,代码基本都是根据数学公式写出来的,没有优化~

坐标系变换

当我们描述一个物体,从一个参考坐标系换算到另一个参考坐标系中时,我们需要对原坐标系进行仿射变换,旋转矩阵描述坐标系的旋转关系,平移矩阵描述两坐标系之间的位置关系。

公式:

P'=R\cdot P + t

其中:

  • P 为物体的初始坐标,P' 为变换后物体的坐标
  • R 为旋转矩阵
  • t 为平移矢量

平移矢量

在几何变换中,平移矢量是一种用于描述物体在空间中沿某一方向移动(平移)的方法。平移是一种刚体变换(即保持物体形状和大小不变的变换),但它不同于旋转矩阵,因为平移不涉及任何旋转或缩放操作。

一般来说,平移矢量是一个点的集合,直接相加即可,不做详细解释

旋转矩阵

旋转矩阵用于描述物体在二维或三维空间中旋转变换,具有如下性质:

  • 旋转矩阵 R 为正交矩阵,即 R^TR=1
  • 旋转矩阵行列式为 1,即 det(R)=1
  • 旋转变换后,向量的长度和角度保持不变

二维旋转矩阵

假设给定一个二维向量 v=[x,y]^T,让它绕原点逆时针旋转一个角度 \theta,旋转后的新向量记为 v'=[x',y']^T,这个旋转的过程可以表示为:

v'=R \cdot v

接下来,就是如何求解这个旋转矩阵 R


一:极坐标表示

        一个二维向量 v 可以用极坐标表示为:

x=r \cdot cos \mu ,y=r\cdot sin\mu

其中:

  • r 为矢量长度,大小为 r=\sqrt {x^2+y^2}
  • \mu 为矢量与 x 轴的夹角

二:旋转后的极坐标表示

        如果将矢量 v 绕原点逆时针旋转角度 \theta,旋转后的矢量 v' 表示为:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值