OpenCV3历程(8)——三维空间坐标系变换

本文深入探讨了机器视觉中三维定位的关键技术,包括位置矢量表示、不同三维坐标系间的转换,如平移、旋转及复合转动等。通过具体实例,讲解了如何使用齐次坐标变换矩阵统一表示坐标系的平移和旋转。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、序言

在机器视觉中,涉及到三维定位的问题我们很大程度上会遇到从相机坐标系转换到机械臂坐标系,这篇文章讲述一下关于图像三维空间坐标系变换的相关知识。

二、相关知识点

1、位置的表示:

坐标系建立后,任意点p在空间的位置可以用一个3×1的位置矢量来描述;例如,点p在三维坐标系中表示为:

其中px,py,pz为P点的坐标分量(位置矢量不同于一般矢量,它的大小与坐标原点的选择有关)。

 2、不同三维坐标系之间的转换关系

(1)平移

设坐标系{i}和坐标系{j}具有相同的姿态,但他俩的坐标原点不重合,若用3×1矩阵iPjorg表示坐标系{j}的原点相对坐标系{i}的位置,则同一点P在两个坐标系中的表示关系为:

 (2)绕z轴旋转\theta

坐标系{i}和坐标系{j}的原点重合,坐标系{j}的坐标轴方向相对于坐标系{i}绕z轴旋转一个\theta角(\theta角的正负一般按右手法则确定,即由z轴的矢端来看,逆时钟为正)。

 

 令:

(3)绕x轴旋转α角的旋转变换矩阵为:

(4)绕y轴旋转β角的旋转变换矩阵为:

(5)复合转动

 

(6)绕任意轴转动

设绕k轴转动\theta角,则旋转矩阵为:

其中:

若给出一定旋转矩阵:

则可计算出:

3、例子

已知坐标系{B}沿坐标系{A}x轴移动12个单位,并沿坐标系{A}y轴移动6个单位,绕坐标系{A}z轴旋转30°,求平移变换矩阵和旋转变换矩阵。

假设某点在坐标系{B}中的矢量为             ,求该点在坐标系{A}中的表示。

解:由题意可得平移变换矩阵和旋转变换矩阵分别为:

则:

4、齐次坐标变换

用齐次坐标可以将坐标系的平移和旋转用一个矩阵统一表示。

(1)齐次坐标的定义

空间中任一点在直角坐标系中的三个坐标分量用表示,若有四个不同时为零的数与三个直角坐标分量之间存在以下关系:

则称是空间该点的齐次坐标。

以后用到齐次坐标时,一律默认k=1

所以,坐标变换将平移与旋转写成统一的矩阵形式则有:

 式中,  称为齐次坐标变换矩阵它是一个4×4的矩阵。

(2)齐次坐标变换矩阵的意义

若将齐次坐标变换矩阵分块,则有:

 意义:左上角的3×3矩阵是两个坐标系之间的旋转变换矩阵,它描述了姿态关系;右上角的3×1矩阵是两个坐标系之间的平移变换矩阵,它描述了位置关系,所以齐次坐标变换矩阵又称为位姿矩阵。  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值