立体视觉入门指南-坐标系与相机参数

干货第一时间送达

亲爱的同学们,我们的世界是3D世界,我们的双眼能够观测三维信息,帮助我们感知距离,导航避障,从而翱翔于天地之间。而当今世界是智能化的世界,我们的科学家们探索各种机器智能技术,让机器能够拥有人类的三维感知能力,并希望在速度和精度上超越人类,比如自动驾驶导航中的定位导航,无人机的自动避障,测量仪中的三维扫描等,都是高智机器智能技术在3D视觉上的具体实现。
立体视觉是三维重建领域的重要方向,它模拟人眼结构用双相机模拟双目,以透视投影、三角测量为基础,通过逻辑复杂的同名点搜索算法,恢复场景中的三维信息。它的应用十分之广泛,自动驾驶、导航避障、文物重建、人脸识别等诸多高科技应用都有它关键的身影。
本课程将带大家由浅入深的了解立体视觉的理论与实践知识。我们会从坐标系讲到相机标定,从被动式立体讲到主动式立体,甚至可能从深度恢复讲到网格构建与处理,感兴趣的同学们,来和我一起探索立体视觉的魅力吧!
本课程是电子资源,所以行文并不会有太多条条框框的约束,但会以逻辑清晰、浅显易懂为目标,水平有限,若有不足之处,还请不吝赐教!

随课代码地址:在公众号「3D视觉工坊」,后台回复「坐标系与相机参数」,即可直接下载。

文章目录

针孔模型Pinhole mode
坐标系简介
  • 影像坐标系
  • 相机坐标系
  • 内参矩阵
  • 世界坐标系
  • 外参矩阵
    投影矩阵
  • 总结
  • 练习作业

针孔模型Pinhole mode

在科学研究中,一个现象内部的过程总是复杂而难以清晰看透,而聪明的学者们总会用最简单的模型去做初始描述,提出一个相对简单的模型。成像过程亦不例外,他们将三维世界中的坐标点映射到二维图像平面的过程用一个几何模型进行描述,这个模型有很多种,其中最简单的称为针孔模型。
针孔成像的原理大家都学过,现实世界中源于某个物体的光线穿过针孔,会在底板上投影成一幅倒立的图像。如图1所示:
图1 针孔模型1
将针孔模型对应到成像过程中,现实世界的物体即为三维空间的成像目标,针孔为摄像机中心,倒影成像平面则为二维影像平面。如图二(左)所示,我们用简单的线条来绘制这样的关系,摄像机中心到成像平面之间的距离我们称之为焦距f。但是倒立的成像总感觉别扭,因此转换一下,将成像平面拿到相机前方来,保持焦距为f,由成像过程可知,图像此时不再是倒立的了,解放了大家的脖子,见图2(右)所示。
图2 针孔模型2
从针孔模型中,我们可以找到一个特征,那就是现实世界的任一点、其在成像平面上的投影点、相机中心在一条直线上,这种特征称为中心投影或者透视投影,也是做成像分析的基础。透视投影将三维空间投影到二维平面上,是一种降秩空间透射变换(三维空间降成了二维空间)。

坐标系简介

通过针孔模型,我们了解了成像过程,似乎非常简单,但它此时只是一张图片,给你感官上的理解,要基于它完成复杂的3D测量,必须借用那一连串噼里啪啦让人又爱又恨的数学公式,而公式建立的基础,就是一个个坐标系,具体来说,是一个个笛卡尔坐标系。如果你不知道什么是笛卡尔坐标系,我想你也不会点开我的博客看到这里,所以介绍就此略过。
我认为你们已经掌握了一个前提知识:立体视觉的三个关键坐标系是影像坐标系、相机坐标系、世界坐标系。如果没有,那我就强塞给你这个概念。

影像坐标系

图3 影像坐标系
上面提到像主点,特别说明一下,它是摄影中心到成像平面的垂点,它是一个非常重要的点位。
为了便于矩阵运算,我们会写成矩阵形式:

公式两边的三维矢量是一种齐次表达方式,即把第三维设置为1来用三维矢量表示二维矢量,这样做的好处是可以用矩阵运算的方式完成三维到二维的变换。为什么要做这个转换呢?是因为坐标系和相机坐标系的紧密联系,同学们往后看。

相机坐标系

相机坐标系是一个三维空间坐标系,是非常关键的一个坐标系,它承担着建立影像坐标系和世界坐标系之间联系的重任。所以前人们在建立相机坐标系时,有一个很关键的考量是如何能更好的把影像坐标系和世界坐标系之间联系起来。
两个三维坐标系(相机和世界)之间的转换用旋转和平移就可以方便表达,重点是三维的相机坐标系和二维的影像坐标系之间如何更好转换。方案是这样的:相机坐标系的原点在相机中心,轴和影像坐标系的轴平行,轴垂直于像平面且朝向像平面,轴和像平面的交点正是影像坐标系的原点(像主点)。如图4所示。
图4 相机坐标系
在此方案下,像平面上的所有像素点在相机坐标系下的Z坐标等于焦距,坐标和影像坐标系下的值相等,即若像素点在影像坐标系下的坐标为,则其在相机坐标系下的坐标为。
根据中心投影的特征,假设像素点是空间点的投影点,那么如何建立两兄弟之间的坐标关系呢?
图5 相机坐标系2
为了便于矩阵运算,我们会写成矩阵形式:

还记得上一节,我们把坐标系转换成坐标系,结合上式,便可以把相机坐标系转换成坐标系,即

内参矩阵
额外需要了解的一点是,由于制造工艺的偏差,像素不是绝对的矩形(图6左),而是一个平行四边形(图6右)。
图6 倾斜像素

世界坐标系

世界坐标系是一个固定的三维坐标系,是一个绝对坐标系,它旨在将空间中的所有点都统一到同一个坐标系下表达,在不同的应用场景中,世界坐标系的定义并不一样,比如大地测量中,将水准原点当做世界坐标系的原点;在相机标定中,将标定板的某个角点作为世界坐标系。

图7 世界坐标系
世界坐标系和相机坐标系都是三维坐标系,它们之间可以用旋转平移来做转换

图8 坐标系之间的旋转平移

或者写成另一种形式:

我们把旋转矩阵 和平移矢量 称为相机的外参矩阵。

外参矩阵
外参矩阵也是相机的关键参数之一,由一个3x3的单位正交旋转矩阵  和3x1的平移矢量  组成,它们描述的是世界坐标系到相机坐标系之间的转换关系。需要提一点的是,在不同学科中外参矩阵会有一些定义区别,比如在摄影测量学科中,将相机坐标系转换到世界坐标系的旋转矩阵  以及摄影中心在世界坐标系中的位置  作为外参。它们目的一致,都是为了描述相机和世界坐标系之间的转换关系。
同样用一个简单表达式来描述世界坐标系到相机坐标系的变换:

投影矩阵
虽然我们花很多篇幅介绍了相机坐标系,但是在实践过程中,最直接接触的却是影像坐标系和世界坐标系,在影像三维重建中,通常前者是输入,后者是输出,所以将世界坐标系转换成坐标系是很关键的转换。
上文已经得到了世界到相机,相机到的转换公式,因此世界到并没有什么难度:

世界坐标系到影像坐标系的转换实际上表达的是透视投影中空间点到像点的投影关系,所以把该转换矩阵叫做投影矩阵,通过矩阵运算可知投影矩阵是一个3x4的矩阵,它是内参矩阵和外参矩阵的乘积。

同样用一个简单表达式来表达这种转换:

总结

本节我们通过针孔模型引入以透视投影为基本原理的相机成像模型,并对一切公式推导的源头:三大坐标系(影像/相机/世界) 做了详细的介绍,在深入了解坐标系的过程中,几类关键的相机参数(内参/外参)也缓缓而出。用图示加公式推导,让大家直观且有逻辑性的掌握这方面的知识,希望能够给入门的同学一些帮助,下一节我们再见。

练习作业

这里为大家准备了一些练习题,可以通过实践加深理解:
练习:写一个Camera类(基于Eigen库 ),用内参矩阵K、旋转矩阵R、平移矩阵t(或相机中心C)来构造
实现接口:
  1. 世界坐标系到相机坐标系的转换 W2C
  2. 相机坐标系到世界坐标系的转换 C2W
  3. 相机坐标系到图像坐标系的转换 C2I
  4. 世界坐标系到图像坐标系的转换 W2I
  5. 有深度作为参数,图像坐标系到相机坐标系的转换I2C
  6. 有深度作为参数,图像坐标系到世界坐标系的转换I2W
(0)

相关推荐

  • 机器人视觉感知原理

    机械人的蓝海,机器人的世界, 如果机器人需要和外界环境进行交互,那么机器人首先必须要感知周围的环境.机器视觉是最为常用的一种感知周围环境的方法.这里,我们将简单介绍机器视觉领域一些基本的概念.机器视觉 ...

  • 头戴式AR/VR 光学标定

    文章:A Survey of Calibration Methods for Optical See-Through Head-Mounted Displays 作者:Jens Grubert , Y ...

  • 基于OpenCV的位姿估计

    重磅干货,第一时间送达 今天我们的目标是找出我们相对于球场上的位置,从而了解我们在比赛中的全局位置. 01.什么是单应性 单应性是一种平面关系,可将点从一个平面转换为另一个平面.它是一个3乘3的矩阵, ...

  • 相机模型与张氏标定

    视觉测量使用的日益广泛和频繁,对于基础知识的学习是掌握机器视觉的学习的关键:本文针对成像模型,坐标系转换和相机标定等知识进行简介,虽然网上相关资料很多,但是本人在学习过程中同样为某些概念所困扰,写下学 ...

  • 结构光系统标定方法详解(二)

    来源:CSDN 作者:明天的阵雨(已授权) 前言:上篇介绍了标准结构光系统和改进的结构光系统模型,这篇我们来讲结构光系统标定方法,结构光系统标定的方法实际上还挺多的,本篇我们只讨论分析我实现过的比较方 ...

  • 一文详解双目相机标定理论

    一文详解双目相机标定理论

  • 基于消失点的相机自标定(1)

    标题:Camera calibration using two or three vanishing points 作者:Radu Orghidan∗, Joaquim Salvi†, Mihaela ...

  • SLAM实习生面试基础知识点总结

    重磅干货,第一时间送达 白白最近的时间投了一些SLAM相关的实习,通过各种公司的面试了解了流程以及侧重点,有答的不好被拒绝的,也有拿到offer的,也有简历石沉大海的.发现很多基础的问题自己都明白但是 ...

  • 在OpenCV中使用单应性进行姿势估计

    重磅干货,第一时间送达 什么是单应性 单应性是一种平面关系,可将点从一个平面转换为另一个平面.它是3乘3的矩阵,转换3维向量表示平面上的2D点.这些向量称为同构坐标,下面将进行讨论.下图说明了这种关系 ...

  • 怎样拍好延时 延时摄影的相机参数设置 延时摄影入门

    由于延时摄影拍摄题材众多,拍摄方法又区别于其他题材,通常都要花费比较长的时间,在拍摄过程中有说用手动模式的的,也有说用光圈优先的,在拍摄时用大光圈还是小光圈,快一点的快门速度还是慢一点的快门速度,网络 ...

  • 微单相机入门指南 | 果核指南

    我们希望通过一篇文章,让你完成摄影入门. 序言 我曾经写过一篇非常详细的相机购买指南,也帮助过上千人解答如何挑选自己心仪的相机.但是,很难过的是,我在相机购买文章中担心的事仍然还在继续上演着: 很多人 ...

  • 巧妙设置相机参数,应用不同的景别,拍出梦幻缥缈的云雾

    我们都知道雾是由许多细小的水滴组成的,它能反射大量的散射光.距离愈远,散射光越多,看上去越明亮,远处景物越看不清.所以在薄雾笼罩下的景物,更能明显地区分出前景.中景.远景,空间的纵深感很强.而且薄雾也 ...

  • 6,免费好用!修图神器 Snapseed 入门指南,教你用手机修出大片 | 爱范儿

    本文来自微博@摄影师钟楼怪人 ,原标题<Tutorial | Snapseed 照片编辑完全手册(1)>,AppSo 经授权发布,后面的连载我们也会长期跟进,感兴趣的朋友可以保持关注. 每 ...

  • 隶书经典《曹全碑》入门指南,写的太绝了,新手必看!

    隸書作為壹種最為靈動和高古的字體,不少人由隸入門也是無可厚非.說起入門的隸書選擇,不少人第壹想到<曹全碑>,那麽曹全碑到底好在哪裏?今天書思就重點和大家說說. 1.<曹>字保持 ...

  • 快速入门指南到,教你超捷径轻松上手SMOOTH-Q3

    拿到新机「SMOOTH-Q3手机稳定器」不知道该从何下手?别烦恼,快速入门指南.按键介绍.模式介绍教程都为你准备好了.照着做,轻松玩转SMOOTH-Q3那都不是事. 1 快速入门指南 安装手机 / 调 ...

  • 研究僧入门指南(含科研)

    本文由考研斯基原创 本文约2000字,预计需要7分钟 大家好,我是考研斯基. 目前大部分同学都已经收到了拟录取通知,学长在这里先恭喜大家啦,但同时也想告诉大家上岸并不是终点,而是新的起点.这几天中科院 ...

  • 再见了,被文献检索折磨的日子!因为这篇入门指南了,我上岸了!

    解螺旋公众号·陪伴你科研的第2549天 文献筛选 文献浩如烟海,却是我们站在巨人肩上前行的资本,毕竟,众多科研思路.研究套路均隐藏在海面之下,静待挖掘.所以,要快速确定课题的研究方向,关键就在于多读文 ...

  • 拍婚礼相机参数设置

    学过摄影的朋友,都知道,周围的熟人知道你会摄影后,很多人会邀请你参加一些婚礼当天的拍摄活动,这可是个体力活,很不好拍的奥!下面我把自己多年的一些拍摄经验跟大家分享下,请老师们斧正. 逆光拍摄,气氛烘托 ...