多相机坐标转换_自动驾驶入门之视觉定位坐标转换

本文详细介绍了计算机视觉中多相机坐标转换的过程,从世界坐标系通过旋转和平移变换到相机坐标系,接着转换到图像坐标系,最后到像素坐标系。涉及关键概念如外参矩阵、内参矩阵和齐次坐标,并探讨了相机成像模型在自动驾驶中的应用。
摘要由CSDN通过智能技术生成

计算机视觉当中相机成像模型坐标转换

32989cb6d6e773e90409bf29946e8cd8.png
  • 世界坐标系到相机坐标系的转换

  世界坐标系是在环境当中选定的一个三维坐标系,用于描述环境中任何物体的位置,符合右手坐标系。相机坐标系的原点位于镜头的光心,x,y轴分别与相机的边缘平行,z轴为垂直于成像平面的光轴。世界坐标系到相机坐标系属于刚体变换,即只发生平移及旋转,属于3D到3D的转换。

绕x轴旋转为俯仰角,对应的旋转矩阵可以表示为

fb11189b2bfaddd9f4a823ff8bc7a273.png

绕y轴旋转为翻滚角,对应的旋转矩阵可以表示为

4fddcdc3a121ec3ef5f52afb73df7a86.png
绕z轴旋转为航向角,对应的旋转矩阵可以表示为

cf1ff5d9ad8d09959fcef33d67f25933.png

  世界坐标系的建立一般为东北天方向,按照航向,俯仰,翻滚的顺序进行旋转,则旋转矩阵可记为

4be3afa672fe258705f40d0c573e7b7f.png

由此可见旋转矩阵为一个33的矩阵,记为R,平移矩阵为31的矩阵,记为t,R与t共同构成了外参矩阵

  设相机坐标系为

13b12f687da9d6f975b49b72320c90fd.png
  世界坐标系为ed247a7fc765ac93c68b5c338b6737c8.png

为了方便描述问题,下面我们在三维坐标的基础上增加一维,采用齐次坐标形式进行描述,世界坐标系与相机坐标系之间的关系为

d50ffddcdf82c7d8161c9e6b143d73cc.png

  • 相机坐标系到图像坐标系的转换

  图像坐标系用物理单位描述目标位置,坐标原点为光轴与坐标系的交点处,投影示意图如下图所示:

1a0880cf29d8afc238a3944d1aa2f86b.png

  三角相似公式可以得到:

db130a3fdf8120b8776103fd071e7d7f.png
则相机坐标系到图像坐标系的齐次坐标变换关系为:

2b85e6cb4fa2abf1949d463eaf32b74c.png

  • 图像坐标系到像素坐标系的转换

  像素坐标系以图像左上顶点为坐标原点,假设每个像素点在图像坐标系x轴与y轴方向上的尺寸为dx,dy,则图像坐标系到像素坐标系可以表示为:

983050693e343d6db802e5c71712c697.png
齐次坐标表示为:

3508ec1a5c09fb4d4adcc35650f71d29.png
将3个方程连续相乘可得:

2ebf9b44bf25d42defb31a34b1c26d88.png

记:

fb5ccb15babb080e1b2ad1ece9dbda83.png
则可进一步表示为:

66180c0aaf56dbaf5ce904fbd1fd2e95.png
其中s为尺度因子,记作:


其中矩阵

fe22182f5fb1d106cacd9be0c2d5ae35.png
为内参矩阵。

往期文章:

  • FPGA 中的有符号数乘法

    猫叔,公众号:科学计算technomaniaFPGA 中的有符号数乘法
  • 为什么推荐使用XPM?

  • FPGA资料分享

  •  RAM IP Core中 Write First Read First和No Change的区别

  •  Vivado调试小结:ILA debug中的数据也许并不可信

  • FPGA复位的正确打开方式

  • 如何使用Git进行Vivado工程的管理

  • 大家一致避免使用的锁存器为什么依然存在于FPGA中?我们对锁存器有什么误解?

  • 影响FPGA时序的进位链(Carry Chain), 你用对了么??

  • Virtex7 Microblaze下DDR3测试

  • Matlab高效编程技巧

  • 生成Verilog HDL例化模板

  • DCM/DLL/PLL/MMCM区别

FPGA时序约束教程:

  1. FPGA时序约束理论篇之建立保持时间

  2. FPGA时序约束理论篇之时序路径与时序模型

   3. FPGA时序约束理论篇之IO约束

   4. FPGA时序约束理论篇之时钟周期约束

   5. FPGA时序约束理论篇之两种时序例外

   6. FPGA时序约束理论篇之xdc约束优先级

   7. FPGA时序约束实战篇之梳理时钟树

   8. FPGA时序约束实战篇之主时钟约束

   9. FPGA时序约束实战篇之衍生时钟约束

  10. FPGA时序约束实战篇之延迟约束

  11. FPGA时序约束实战篇之伪路径约束

  12. FPGA时序约束实战篇之多周期路径约束

  13. Vivado时序约束辅助工具

  14. FPGA时序约束之Tcl命令的对象及属性

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值