计算机视觉之三维重建-单视几何

相机标定后,也无法从2D图像恢复出3D场景,因为2D点与光心连线上的任意3D点都满足条件。

一、无穷远点、无穷远线、无穷远平面

1.1 2D平面
(1)2D平面上的直线

对于一条2D平面上的直线,我们可以用 来表示,一个参数向量的形式(后续将沿用这种方法来表示一条线),即下面的l是直线的参数,求直线就是求l ,x作为直线上的一个点表示为,这也满足了表示点在直线上,后续对于直线上的点与直线的关系均满足条件

(2)2D平面直线交点

定义两条直线叉乘得到的积,表示交点的坐标。如何证明2D平面上两条线的交点,的点与两条直线分别垂直,则他一定同时在两条线上,即相交。

点乘:也叫数量积,表示一个向量在另一个方向上的投影长度。

(3)2D平面无穷远点

无穷远点在齐次坐标下才能表示,所以在2维空间中,第三维为0表示无穷远点。

首先任意选取两条直线,即斜率相同两条线平行,那么若存在两条平行直线的交点,则一定满足,且交点的第三维为0则为无穷远点。

证明? 两条直线的任意一条均穿过无穷远点,只需要满足(满足点乘为0,表示点在直线上),对于2D平面上广义的无穷远点可以定义为(后续无穷远点变换会用到)。

(4)2D平面无穷远线

同一平面的无穷远点均位于同一无穷远线上,无穷远线为,对于任意一个无穷远点一定满足最后一个齐次坐标为0,所以对于任意一个2D平面下的无穷远点一定会在无穷远线上满足成立。

1.2 3D空间
(1)3D空间的面

对于一个3D空间中的面可以定义为,同理可以将参数拆解为参数向量形式,定义参数表示的面,对于一个面上的点,则 成立,表示点在平面上。

(2)3D空间的直线

3D空间中的直线,很难表示,可以用直线方向来表示。(两个平面的交线)

(3)3D空间无穷远点

三维空间中齐次下第4维为0:3D空间中的无穷远点,定义为为0,其他三个坐标任意。

a,b,c表示线的方向

eg:直线方向=[a,b c],则无穷远点就是在第四维上加一个0

(4)3D空间无穷远平面

同一平面上的平行线的无穷远点的连线就是无穷远线。每一个平面对应一个无穷远线。而若干条无穷远直线形成无穷远平面。定义无穷远平面为

两个平行平面对应的无穷远线是同一根线。(另一个角度解释:这根线也可以理解为这两个平面在无穷远处的交线)

2. 影消点与影消线

2.1 2D平面无穷远点和线的变换
(1)2D平面无穷远点的变换

变换主要考察投影变换和仿射变换,对于2D平面上点到点的变换就是乘以一个变换矩阵的映射关系,即表示变换矩阵,对于透视和仿射变换而言,仿射变换的无穷远点不变,透视变换的无穷远点不同(透视变换中平行性变了,平行线会相交)。

(2)2D平面无穷远线的变换

线的变换等价于任意点在线上,该点进行变换得到 ,变换后的点又一定在变换后的线上,所以通过式子的代换得到了线与线之间变换是乘以一个变换矩阵的转置的逆的映射关系。

根据线到线的变换关系,可以得到对于无穷远线经过仿射变换不变,透视变换会改变。

2.2 影消点

影消点(像素坐标系下):三维空间中的无穷远点(世界坐标系下齐次坐标表示,最后一维为0)在图像中的投影点,在多视几何中,三维空间中两条平行线相交于无穷远点,而投影到二维空间的像平面坐标下就是一个有有意义坐标的点。

像素坐标系下欧式表示:

2.3 影消点与直线方向

摄像机坐标系到像素坐标系,所以没有旋转平移(不考虑摄像机外参数)。

三维空间的平行线方向为,无穷远点为,假设像平面的影消点为,那么一定有成立,建立起影消点与无穷远点的关系(在不考虑摄像机外参数的情况下,即)。此时d没有规定模长为1,所以进行规范化直线方向,得到

给出影消点v和摄像机的内参数k则可以求出三维空间中一组平行线的方向d(已知二维的求三维的)

2.4 影消线

影消线(单位是像素):三维空间中的无穷远线在图像中的投影线,即影消线,由于摄像机经过一个透视变换将三维空间的坐标转换为二维坐标,那么可以利用线与线的变换关系,计算出影消线与无穷远线的关系

2.5 影消线与平面法向量

多个平行平面会聚在无穷远处得到无穷远线,无穷远线经过投影变换到像平面得到影消线,假设一个点位于生成无穷远线的平行平面中的任意一个上的一点,记平面法向量为,那么一定满足,另外该点经过投影变换一定在影消线上,满足成立,所以一定有成立。

已知影消线和摄像机内参数矩阵K,求三维空间中的平面(平面π对应的影消线的投影为(已知二维的求三维的)

三维空间中平面的法向量与像素平面内的影消线通过摄像机内参数矩阵建立联系

2.6 总结

二维与三维之间的关系

影消点与直线的关系

影消线与面的关系

3. 单视重构

先估计相机内参数(假设摄像机零倾斜且具有方形像素,给出3个垂直的面就可以求出K)

有了摄像机内参数可以建立法向量和影消线的关系,求出法向量就可以知道面的信息了

就可以大致恢复场景

但是需要很多先验知识(空间中线、面之间的关系需要手动输入到系统中去)

3.1 两组平行线的夹角与影消点

注意是一共是四条线,两组平行线之间的夹角为θ,根据余弦定理可以得到夹角与两组平行线直线方向的关系,其中定义只与摄像机的内参数有关。

3.2 w的性质
3.3 单视图标定举例

由于具有5个自由度,目前列出的3个方程无法求出,因此假定摄像机零倾斜且具有方形像素,则,此时就可以求出,进而分解出(利用影消点和线的关系求解)三个面垂直求出摄像机内参数

根据影消线与面之间的关系重构平面的法向量。(求出面的方向)

存在弊端,我们无法还原出真实世界与重构场景之间的缩放比例大小,我们也不知道摄像机如何拍摄这张照片(朝向和具体位置都不知道),场景的真实世界地理位置。

差一个相似性变换

弊端:需要先验信息

不需要先验信息怎么进行重构

相关推荐
NAGNIP2 小时前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
冬奇Lab3 小时前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab3 小时前
OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"
人工智能·开源·源码阅读
AngelPP7 小时前
OpenClaw 架构深度解析:如何把 AI 助手搬到你的个人设备上
人工智能
宅小年7 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了
人工智能·ai编程·claude
九狼7 小时前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
ZFSS7 小时前
Kimi Chat Completion API 申请及使用
前端·人工智能
天翼云开发者社区8 小时前
春节复工福利就位!天翼云息壤2500万Tokens免费送,全品类大模型一键畅玩!
人工智能·算力服务·息壤
知识浅谈9 小时前
教你如何用 Gemini 将课本图片一键转为精美 PPT
人工智能
Ray Liang9 小时前
被低估的量化版模型,小身材也能干大事
人工智能·ai·ai助手·mindx