3 绝对圆锥曲线

在进一步了解相机标定前,有必要了解绝对圆锥曲线(Absolute Conic)这一概念。

对于一个3D空间的点x,其投影空间的坐标为:x~=[x1,x2,x3,x4]T。我们定义无穷远处的平面用符号Π∞表示,该平面内的投影空间点坐标满足x4=0,则位于圆锥曲线Ω上的点满足:

{x21+x22+x23=0x4=0.(1)

令x∞=[x1,x2,x3]T是绝对圆锥曲线Ω上的点,如上图所示。由定义可知xT∞x∞=0,同时也有x~∞=[x1,x2,x3,0]T满足x~T∞x~∞=0。读至此处,我们发现不管是Π∞和Ω,还是x∞和x~∞都是存粹想象出来的,很难在实际生活里找到实例,但是科学就是这么迷人,给定一个起始点,想象和求知探索的渴求却不受其限制,直至永无止境。

让我们再看公式(1),如果我们令:x=x1/x3,y=x2/x3,显而易见,位于曲线Ω上的点方程就可以写成:x2+y2=−1,这就是一个圆方程,只不过我们所想象出来的这个虚拟圆的半径为−1−−−√,当然对于了解复数(Complex number)概念的我们,这并没什么不可。

此时,或许我们会困惑,为什么要费尽心机想象出绝对圆锥曲线呢?原因在于绝对圆锥曲线所具有的一条重要特性:对于刚体变换具有不变性,这么说是不是有点不明觉厉,那就继续往下看。

首先简单讲一下刚体变换:只有物体的位置(平移变换)和朝向(旋转变换)发生改变,而形状不变,得到的变换称为刚体变换。以三维刚体变换为例:

x=[R  t]X(2)

或者表述为:

x=RX+t   or   x=R(X+C)(3)

令H=[R0t1],对于位于绝对圆锥曲线Ω上的点x~∞=[x∞0],刚体变换后的点x~′∞可表示为:

x~′∞=Hx~∞=[Rx∞0](4)

则x′∞很明显也是位于无穷远平面上的点,而且是位于同一绝对圆锥曲线Ω上点:

x′T∞x′∞=(Rx∞)T(Rx∞)=xT∞(RTR)x∞=0(5)

令绝对圆锥曲线Ω对应的图像称为ω,也被简记为IAC(Image of the absolute conic),当然这也是想象出来的~于是对于Ω上的任一点x∞,其像点m∞满足:

m~∞=sA[R  t][x∞0]=sARx∞(6)

m~∞A−TA−1m~∞=s2xT∞RTRx∞=s2xT∞x∞=0(7)

因此,绝对圆锥曲线成像构成一个虚构曲线,并且由公式(7)可以看出,这个虚拟曲线由A−TA−1决定,这与相机的外参完全无关,而仅仅由相机内参决定。可以设想,如果我们找到了绝对圆锥曲线通过相机所成的图像,那就可以求解出相机内参。至此,我想大家也就明白为什么会提出Absolute Conic这一概念了吧。事实上,这一理论在相机自检校标定法(Self-calibration)中作为基础理论,十分重要。

后续文章将会为大家介绍几种确定绝对圆锥曲线Ω对应的图像ω的方法。

Camera Calibration 相机标定:原理简介(三)的更多相关文章

  1. Camera Calibration 相机标定

    Camera Calibration 相机标定 一.相机标定方法 在opencv中提供了一组函数用于实现相机的标定,标定返回的值包括:相机内参矩阵(fx fy xc yc).相机外参矩阵(R t)以及 ...

  2. Camera Calibration 相机标定:原理简介(五)

    5 基于2D标定物的标定方法 基于2D标定物的标定方法,原理与基于3D标定物相同,只是通过相机对一个平面进行成像,就可得到相机的标定参数,由于标定物为平面,本身所具有的约束条机,相对后者标定更为简单. ...

  3. Camera Calibration 相机标定:原理简介(四)

    4 基于3D标定物的标定方法 使用基于3D标定物进行相机标定,是一种传统且常见的相机标定法.3D标定物在不同应用场景下不尽相同,摄影测量学中,使用的3D标定物种类最为繁杂,如图-1的室内控制场,由多条 ...

  4. Camera Calibration 相机标定:原理简介(一)

    1 相机标定常见方法 广义来说,相机标定不单包括成像过程的几何关系标定,还包括辐射关系的标定,本文只探讨几何关系.相机标定是3D计算机视觉(Computer Vision)里从2D图像中提取量测信息的 ...

  5. Camera Calibration 相机标定:原理简介(二)

    2 针孔相机模型 常见的相机标定中,使用的相机多为针孔相机(Pinhole camera),也就是大家熟知的小孔成像理论.将其中涉及的坐标系之间的相互转换抽离出来,即为针孔相机模型的核心. 上图所示的 ...

  6. Camera Calibration 相机标定:Opencv应用方法

    本系列文章由 @YhL_Leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/49427383 Opencv中Camer ...

  7. 【视频开发】【计算机视觉】相机标定(Camera calibration)原理、步骤

    相机标定(Camera calibration)原理.步骤 author@jason_ql(lql0716)  http://blog.csdn.net/lql0716 在图像测量过程以及机器视觉应用 ...

  8. 相机标定:PNP基于单应面解决多点透视问题

              利用二维视野内的图像,求出三维图像在场景中的位姿,这是一个三维透视投影的反向求解问题.常用方法是PNP方法,需要已知三维点集的原始模型. 本文做了大量修改,如有不适,请移步原文:  ...

  9. 相机标定简介与MatLab相机标定工具箱的使用(未涉及原理公式推导)

    相机标定 一.相机标定的目的 确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,建立摄像机成像的几何模型,这些几何模型参数就是摄像机参数. 二.通用摄像机模型 世界坐标系.摄像机坐标 ...

随机推荐

  1. NuSOAP笔记:如何创建复杂数据类型

    PHP已经有了内置的SOAP扩展,但是它不具备自动生成WSDL的能力,所以很多时候,NuSOAP还是有一定诱惑力的. 在应用稍微复杂点的时候,单靠integer, string等简单数据类型是不能满足 ...

  2. HDU 1756 Cupid's Arrow( 判断点在多边形的内外 )

    链接:传送门 思路:判断每支箭是否在多边形内,计算几何点定位中水题,不清楚下面的代码能不能适用于给定点的顺序不确定( 既不是顺时针又不是逆时针 ) /************************* ...

  3. [转载] Linux新手必看:浅谈如何学习linux

    本文转自 https://www.cnblogs.com/evilqliang/p/6247496.html 本文在Creative Commons许可证下发布 一.起步 首先,应该为自己创造一个学习 ...

  4. Laravel核心解读--Contracts契约

    Contracts Laravel 的契约是一组定义框架提供的核心服务的接口, 例如我们在介绍用户认证的章节中到的用户看守器契约IllumninateContractsAuthGuard 和用户提供器 ...

  5. React:关于虚拟DOM(Virtual DOM)

    Virtual DOM 是一个模拟 DOM 树的 JavaScript 对象. React 使用 Virtual DOM 来渲染 UI,当组件状态 state 有更改的时候,React 会自动调用组件 ...

  6. 洛谷 P3912 素数个数

    P3912 素数个数 题目描述 求1,2,\cdots,N1,2,⋯,N 中素数的个数. 输入输出格式 输入格式: 1 个整数NN. 输出格式: 1 个整数,表示素数的个数. 输入输出样例 输入样例# ...

  7. 上机题目(0基础)-计算两个正整数的最大公约数和最小公倍数(Java)

    题目例如以下:

  8. 文件类似性推断 -- SimHash

    近期调研了一下simhash算法,它主要用在谷歌网页去重中.网上有非常多原理性的介绍. 既然能够用来推断文件的相似性,就想知道效果怎么样.simhash的准确度是否依赖于分词算法?是否和simhash ...

  9. True or False? and WHY??? Java HashSet Contains

    import java.util.HashSet; public class MyClass { public String s; public MyClass(String s) { this.s ...

  10. poj_3468线段树成段更新求区间和

    #include<iostream> #include<string.h> #include<cstdio> long long num[100010]; usin ...