目录

  • 一、各坐标系简要介绍
  • 二、坐标系转换
    • 2.1 世界坐标系转为相机坐标系
    • 2.2 相机坐标系转为物理图像坐标系
    • 2.3 物理图像坐标系转为图像坐标系
    • 2.4 总结
    • 2.5 为什么要使用齐次坐标
  • 参考文献

一、各坐标系简要介绍

首先介绍数字图像处理领域中的图像坐标系,如上图左图所示,坐标系O_0为图像坐标系,其原点是在图像的左上角,每一个像素通过其所在位置的列数和行数索引 (u,v) 来表示。

另外需要建立图像坐标与物理单位的关系,而后才能将目标的真实世界坐标转换为图像坐标。即建立以物理单位表示的物理图像坐标系有些文章将这个坐标系称为图像坐标系,而将数字图像中的坐标系称为像素坐标系,但是本文延续大多数把数字图像的坐标系称为图像坐标系的习惯,就把此坐标系称为物理图像坐标系),即上图左图中的坐标系O_1,其横纵轴用X,Y来标识,单位一般为mm(根据具体成像设备而定,不过单位不会影响坐标系的转换)。

再介绍世界坐标系相机坐标系,如上图右图所示,坐标系O为相机坐标系,为一个3维坐标系,各维度分别用x,y,z表示,z轴称为摄像机光轴,与图像平面垂直,并且交点O_1为物理图像坐标系的原点。
上图右图左上角为世界坐标系,可以用来描述环境内的任何物体的位置,包括相机的位置,其各轴用X_w,Y_w,Z_w来标识。并且世界坐标系可以通过旋转与平移转换为相机坐标系。

二、坐标系转换

2.1 世界坐标系转为相机坐标系

点P为空间中的任一点,设其世界坐标系下的坐标为(X_w,Y_w,Z_w), 相机坐标系下的坐标为(x,y,z), 则可以通过相机坐标系与世界坐标系的关系可以由(X_w,Y_w,Z_w)计算(x,y,z):

R, t 分别为3×3的旋转矩阵和3×1的平移向量。

2.2 相机坐标系转为物理图像坐标系

由第一节中图的右图所示,p为P在图像平面上的投影,设p的物理图像坐标为(X, Y), P的相机坐标系坐标为(x, y, z),则根据比例关系得:

其中f为焦距,转为齐次坐标+矩阵形式为:

2.3 物理图像坐标系转为图像坐标系

设物理图像坐标系的原点在图像坐标系的位置为(u_0,v_0)(一般在图像的中心,不过有时候会存在偏差等)。对于物理图像坐标系中的任意一点(X,Y)都可以转换为图像坐标系中的坐标(u, v):

其中dX, dY 是成像元件的每个像素所对应的物理宽高,单位一般为mm。u_0, v_0, dX, dY 均为相机的固有参数。
通过齐次坐标将其写成矩阵形式:

2.4 总结

结合上述公式即可以将任意一点的世界坐标转换为图像坐标:

M1,M2分别仅与相机的内外参数相关。
由上式可知,当给出目标的世界坐标时,可以得到三个方程,消去z后可求得(u, v)
反之给出图像坐标(u, v)并不能求得其唯一的世界坐标,因为矩阵M为3×4维,不可逆,仅能解得一个射线方程,即该射线上的点投影均为(u, v)

2.5 为什么要使用齐次坐标

(个人思考)
假如不使用齐次坐标的话,物理图像坐标系转为图像坐标系的矩阵将为2×3维,而相机坐标系转物理图像坐标系的矩阵变为2×3维,这两个矩阵分别为2.4节公式第一行等号右边的前两个矩阵,可以看出,不使用齐次坐标的话矩阵无法相乘,那就无法完成坐标转换。

参考文献

《机器视觉理论及应用》 电子工业出版社

本文仅为本人学习过程中的笔记以及一些个人思考,文中如有错误的地方还请指正

世界坐标系/相机坐标系/图像坐标系 转换相关推荐

  1. 世界坐标系,相机坐标系,图像坐标系,像素坐标系是什么?

    四种坐标系 相机标定过程中涉及的坐标系类型:世界坐标系,相机坐标系,图像坐标系,像素坐标系. 世界坐标系(xw,yw,zw):摄像机与被摄物体可以放置在环境中任意位置,这样就需要在环境中建立一个坐标系 ...

  2. 【自动驾驶】16.计算机视觉:相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换

    本篇博客为转载,我对其中的细节添加了一些说明. 原文链接:https://blog.csdn.net/chentravelling/article/details/53558096 0.前言 最近整理 ...

  3. 世界坐标系,相机坐标系和图像坐标系的转换(Python)

    世界坐标系,相机坐标系和图像坐标系的转换(Python) 相机内参外参说明:相机内参外参_pan_jinquan的博客-CSDN博客_相机内参 计算机视觉:相机成像原理:世界坐标系.相机坐标系.图像坐 ...

  4. 相机成像---世界坐标系、相机坐标系、图像坐标系和像素坐标系之间的转换关系

    新学期第一天开始写的这篇文章,看看我啥时候能把他发出去.假期当然是啥也没干了,之前还信誓旦旦说回家一定能学习,学个毛线.开始学习啦,去年年末把环境配置好了之后,实验发现他不准,用的D435i摄像头是红 ...

  5. 相机标定----世界坐标系,相机坐标系,图像坐标系,像素坐标系的转换

    1.坐标系介绍 相机模型中,三维世界中的某一点  和  其对应的像素点是通过坐标系的转换得到的.这个过程中会涉及到四个坐标系,即世界坐标系.相机坐标系.图像坐标系.像素坐标系.下面将详细介绍四个坐标系 ...

  6. 相机标定总结(像素坐标系、图像坐标系、相机坐标系和世界坐标系之间的转换关系说明)

    近期做了一些机器手臂和摄像头之间手眼标定的内容,在这里对相机的标定做一下总结,手眼标定内容后续更新. 关于三维重建基础知识可以关注更新:MVS学习(一):综述论文阅读记录 1. 相机成像原理说明 数码 ...

  7. 像素坐标系、图像坐标系、相机坐标系、世界坐标系

    像素坐标系.图像坐标系.相机坐标系.世界坐标系 文章目录 像素坐标系.图像坐标系.相机坐标系.世界坐标系 1.图像坐标系 → \rightarrow →​像素坐标系 2.图像坐标系 → \righta ...

  8. 相机参数和相机模型各个坐标系(世界坐标系、相机坐标系、图像坐标系、像素坐标系之间变换)

    坐标系变换 1. 几个坐标系: 世界坐标系(world coordinate system): 用户定义的三维世界的坐标系,为了描述目标物在真实世界里的位置而被引入.单位为m. 相机坐标系(camer ...

  9. 像素坐标系、图像坐标系、相机坐标系和世界坐标系的关系(简单易懂版)

    搞视觉SLAM的,如果对这个关系都不是很清楚的话,那说明你太忙了,忙于写着业务代码,却忘了原理才是我们业务的骨架,不搞清楚这些,升职加薪无望啊,那我们就来看看,这些极具价值的知识究竟是什么东西. 计算 ...

最新文章

  1. 2022-2028年中国演出市场深度调研与投资可行性报告
  2. 万物皆对象java_又一次认识java(一) ---- 万物皆对象
  3. 安卓桌面软件哪个好_简单好用的手机记事本软件哪个好?
  4. JVM加载class文件的原理简述
  5. Knockout.Js案例一Introduction
  6. android 获取当前画布,Android硬件位图填坑之获取硬件画布
  7. PowerDesigner物理数据模型
  8. Linux禁止ip拒绝访问80,Linux iptables 设置允许(禁止)IP范围
  9. win7怎么把计算机放到桌面6,win7系统如何设置更改桌面图标?
  10. WebStorm 代码文字发虚模糊 - 解决篇
  11. centos6下安装php7的memcached扩展
  12. swfupload 无法加载_文件上传插件SWFUpload的使用指南
  13. java获取上周一_java如何得到上周一和上周日的日期
  14. 好书推荐 -- 《智能时代》-- 吴军(著)
  15. 做中台,我从一名产品经理做成了合伙人
  16. 中维带你揭秘倾斜摄影三维实景
  17. 奇思妙想:小程序wxapkg包一键运行至浏览器是什么操作?
  18. FreeCodeCamp:Slasher Flick
  19. IPhoneApp发布:手机号速查
  20. python网络爬虫学习(六)利用Pyspider+Phantomjs爬取淘宝模特图片

热门文章

  1. 上海航芯 |带CAN的128k Flash通用MCU ACM32F0优势
  2. 【c++开发】C++ Linux Ubuntu imagemagick以及magick++安装;c++调用magick++库;找不到Magick++.h
  3. 六年级下册计算机电子板报教案,电子工业出版社六年级下册信息技术全册教案.doc...
  4. Python xlwings插入图片(Excel插入图片)
  5. 运用Jupyter中的报错解决
  6. Windows PartitionMagic对电脑硬盘/移动硬盘分区
  7. Xlookup函数、VBA字典和哈希数组“竞速“
  8. Hypermedia模型是什么,举个栗子
  9. ​在Windows环境下下安装Kafka​
  10. 最新《四脚猫高级PHP培训课程》