IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 相机成像---世界坐标系、相机坐标系、图像坐标系和像素坐标系之间的转换关系 -> 正文阅读

[人工智能]相机成像---世界坐标系、相机坐标系、图像坐标系和像素坐标系之间的转换关系

? ? ? ?新学期第一天开始写的这篇文章,看看我啥时候能把他发出去。假期当然是啥也没干了,之前还信誓旦旦说回家一定能学习,学个毛线。开始学习啦,去年年末把环境配置好了之后,实验发现他不准,用的D435i摄像头是红外的,在水里误差太大,所以最终目地的话就是要给他整准,这脑子一天天啥也不记得,真想去测一个记忆力,看看是不是有问题...首先的话学习一下基础的摄像头的成像原理~

双目立体视觉深度相机的深度测量过程,如下:

1、标定:首先需要对双目相机进行标定,得到两个相机的内外参数、单应矩阵。

2)校正:根据标定结果对原始图像校正,校正后的两张图像位于同一平面且互相平行。

3)找像素点:对校正后的两张图像进行像素点匹配。

4)深度:根据匹配结果计算每个像素的深度,从而获得深度图。

目录

一、理想双目相机成像模型

二、相机成像原理

2.1世界坐标系和相机坐标系之间的转换(刚体变换:物体不会发生形变,只需要进行旋转和平移)

2.2相机坐标系(Oc)与图像坐标系(Ox-y)之间的转换(透视投影:从3D转换到2D)

2.3图像坐标系(Ox-y)与像素坐标系(Ou-v)(仿射变换)

三、总结一下下


一、理想双目相机成像模型

c1、c2是左右两个双目相机(位置对齐)。相机焦距f,相机之间距离为b,右上角为目标位置P(x,y),目标的水平坐标为x,相机离目标垂直距离(所求目标距离相机的深度)为z。

如果要计算深度z,必须要知道:

(1)相机焦距f,左右相机之间距离b。这些参数可以通过先验信息或者相机标定得到。

(2)视差d。需要知道左相机的每个像素点(xl, yl)和右相机中对应点(xr, yr)的对应关系。这是双目视觉的核心问题。

二、相机成像原理

想标定得先成像,所以先来搞清楚相机是如何成像滴

相机成像系统中,共包含四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。

世界坐标系:描述目标物体在真实世界的位置而引入的三维世界坐标系。

相机坐标系:以相机为中心,从相机角度描述物体位置,作为像素坐标系—世界坐标系的桥梁。

图像坐标系:描述真实物体在相机焦距处成像的坐标系,用来连接相机坐标系与像素坐标系。

像素坐标系:描述物体在照片上数字图像的位置而引入的一种数字坐标系。

?从一个坐标系到另一个坐标系,物体之间的坐标系变换都可以表示坐标系的旋转变换加上平移变换。

?为啥向上面那样写呢:以绕Z轴旋转\theta为例

?如下图,绕Z转,Z不变,我们把三维转为二维,根据几何关系就可以得到,其他两个也一样。

原理知道了以后,我们看这四个坐标系如何变换,由现实中的物体最后在图像中成像

世界坐标系\rightarrow相机坐标系\rightarrow图像坐标系\rightarrow像素坐标系

2.1世界坐标系和相机坐标系之间的转换(刚体变换:物体不会发生形变,只需要进行旋转和平移)

如下图,R表示旋转矩阵,T表示偏移变量

2.2相机坐标系(Oc)与图像坐标系(Ox-y)之间的转换(透视投影:从3D转换到2D)

? ? ? ? ?说白了就是用X{c},Y{c},Z{c}来表示x,y,下图为理想的图像坐标系,实际会产生畸变,需要矫正。

2.3图像坐标系(Ox-y)与像素坐标系(Ou-v)(仿射变换)

像素坐标系和图像坐标系都在成像平面上,但是原点所在位置不同,单位不同。图像坐标系的原点为相机光轴与成像平面的交点(上图点o),通常情况下是成像平面的中点,图像坐标系的单位是mm,而像素坐标系的原点在图像左上角(本文第三张图上有画),单位是pixel。

2.3.1两坐标轴都为直角坐标系(uv垂直)

图像上的每点坐标 (u,v) 分别表示每一帧采集的图像在系统中的存储的数组的列数与行数,坐标 (u,v) 所对应的值就是该点的灰度信息。设点o在图像像素坐标系中记为 (u0,v0) ,每个像素沿 x 轴的实际物理尺寸大小是 dx,沿 y 轴的实际物理尺寸大小是dy ,单位值mm,即1pixel=dx mm。则能得到两个坐标系间的关系式 。

2.3.2两坐标轴有一个轴平行,一个轴不平行

三、总结一下下

三个穿起来就变成了:

其中,Xw,Yw,Zw为在世界坐标系下一点的物理坐标,u,v为该点对应的在像素坐标系下的像素坐标,Zc为尺度因子。最右边等式的第一个是相机的内参,内参矩阵取决于相机的内部参数。其中, f为像距,dx,dy分别表示X,Y方向上的一个像素在相机感光板上的物理长度(即一个像素在感光板上是多少毫米),u0,v0分别表示相机感光板中心在像素坐标系下的坐标,\theta表示感光板的横边和纵边之间的角度(90度表示无误差)。第二是相机的外参,外参矩阵取决于相机坐标系和世界坐标系的相对位置,R表示旋转矩阵,T表示平移矢量。

下一篇我们就看一下啥叫标定。

?

?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 13:02:47  更:2022-03-06 13:06:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 16:27:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码