单视图度量(Single View Metrology)总结
前面我们介绍了标定相机,并且我们知道,如果我们能够确定三维点的坐标以及标定相机的参数,就能够确定它在图像平面的位置。那我们现在思考一个问题,如果我们知道图像平面的坐标以及标定相机的参数,我们能够确定这个三维点的位置吗?
答案是否定的。因为一般情况下,三维点可以在由相机光心和投影点所确定的直线上的任何位置,因此仅通过单张图像上的投影点无法唯一确定三维空间中的点的位置。
因此,本节课我们将会介绍如何从三维世界中恢复结构。
二维变换(Transformation in 2D)
等距变换(Isometries)
等距变换也叫欧式变换,它的齐次坐标矩阵形式为
,其中
等距变换的性质
-
Preserve distance (areas):即保持距离(面积)不变,这是等距变换的一个重要特性,变换前后图形的距离和面积关系保持恒定。
-
3 DOF:表示有3个自由度(Degree - of - Freedom),通常对应二维空间中刚体运动的两个平移自由度(沿 (x) 轴和 (y) 轴方向的平移)和一个旋转自由度(绕垂直于平面的轴旋转)。
-
Regulate motion of rigid object:说明等距变换用于描述刚体的运动,刚体在二维平面中的运动可以通过这种变换来进行建模和分析。
相似变换(Similarities)
相似变换就是在等距变换的基础上允许图像进行缩放,它的齐次坐标矩阵形式为:
相似变换的性质
-
Preserve ratio of lengths - angles:即保持长度比例和角度不变。这意味着相似变换前后,图形的形状保持相似,对应线段的长度比例恒定,对应角度相等。
-
4 DOF:表示有 4 个自由度(Degree - of - Freedom)。相比等距变换,除了二维空间中刚体运动的两个平移自由度和一个旋转自由度外,增加了一个缩放自由度。
仿射变换(Affinities)
与前两种变换相比,仿射变换较为复杂,仿射变换的齐次坐标矩阵形式为
这个
仿射变换的性质
-
保持平行线关系不变,即原本平行的直线在仿射变换后仍然平行。
-
保持面积比例不变。
-
保持共线线段的长度比例不变等。
-
具有6个自由度。
除了按照上面根据平移旋转进行分解,我们还有另外一种分解方法,即通过奇异值进行分解
射影变换(Projective)
射影变换相较于仿射变换有更高的自由度,它在齐次坐标下的矩阵运算形式:
射影变换的性质:
-
射影变换具有8个自由度(8 DOF)。这意味着有8个独立参数可用于定义该变换,相比前面介绍的等距变换、相似变换和仿射变换,它的自由度更高,能描述更复杂的变换关系。
-
射影变换保持共线性(collinearity),即原本共线的点在射影变换后仍然共线。
消影点和消影线(Vanishing points and lines)
对于一个二维平面上的直线,我们通常有一般形式:
这种表示方法能为我们带来许多好处,比如如果一个点
此外,这种形式能够帮助我们计算两条直线的交点,如果两条直线分别为
二维点的表示
我们前面介绍过,对于一般的二维点,如果我们需要把齐次坐标形式转为非齐次坐标,只需要把坐标除以第三维即可,因此对于普通二维点,我们用三维向量
但是如果第三维是零,那么我们就无法将其转化非非齐次坐标的形式了,那这种表示是什么含义呢?我们把这种点定义为无穷远点,即
平行线的表示
对于两条平行线
同时,我们也可以得到一个关于直线和无穷远点的式子,如果直线
无穷远直线
我们认为,所有的无穷远点都位于一条直线上,这条直线被称为无穷远直线,它的形式为
无穷远点和无穷远线的射影变换
我们知道一般的射影变换矩阵
但是如果是仿射变换,结果又会有所不同。给出仿射变换矩阵
对于直线的射影变换公式为:
而对于仿射变换矩阵
三维点和平面
与二维点的定义类似,我们定义三维点为
由于三维空间中的直线具有 4 个自由度,这使得在三维空间中表示直线较为困难,我们把直线可以定义为两个平面的交线。我们在这里定义直线的方向向量
与二维点类似,三维世界中的无穷远点也能写做
3D中的消影点和消影线(Vanishing points and lines)
如图所示,世界坐标系中有两条平行的直线,这组平行线对应的无穷远点用蓝色点表示,其齐次坐标形式为
除此之外,直线的方向向量和消影点能够互相表示,即
在我们把三维世界的点变换到二维点的过程中,消影线也被称为地平线(horizon line),与二维点的计算方法类似,
通过地平线,我们也能求出图像平面的法向量,即
平行平面交于无穷远线,那么无穷远线组成的集合也被定义为无穷远平面
如果我们有两个直线的方向向量,那么我们就能得到他们对应的消影点,现在我们希望知道这两个点之间的角度关系。如下图,我们得出了下述公式:
这里我们引入了一个
-
性质1:
可展开为 ,它是对称矩阵,并且在一定尺度下是已知的。 -
性质2:当
时,表示零倾斜,即图像像素之间不存在倾斜关系。 -
性质3:当
且 时,表示像素为正方形,意味着图像在水平和垂直方向上的像素尺度相同。
最后我们总结一下:
利用这些信息,我们可以更好地去标定相机或者估计三维世界的几何形态。
从单视图估计几何图形(Estimating geometry from a single image)
如果我们知道消影点的角度关系,特别地这里我们选取正交的消影点,则我们有
事实上,如果我们选取三个两两正交的形成的消影点,那么我们就可以建立出三个方程,如图中公式31,同时由于我们前面介绍的
一旦我们求出了
进一步地,如果
单视图重建的目标是在相机参考系中恢复场景的结构,但是由于歧义,单视图重建无法恢复场景的实际尺度。本节课的内容到此就结束了,谢谢观看。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具