笔记-多视图几何、三维构建

3D空间点与2D图像点的对应

其实是几个相似三角形,所以存在比例关系可以对应。
射影空间:对n维欧式空间加入无穷远元素,并对有限元 素和无穷远元素不加区分,则他们共同构成n维射影空间

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

齐次坐标是射影空间的坐标表达方式

在这里插入图片描述

在这里插入图片描述

三维计算机视觉坐标系

  1. 世界坐标系、2. 相机坐标系
    R、t 旋转平移
    在这里插入图片描述

相机模型

小孔相机成像模型

三维图像就是通过左边的二维图像还原右边所以的未知量。
在这里插入图片描述
在这里插入图片描述

两视图几何——寻找最小配置解的意义
在计算F和E时为什么要寻找做小配置解(最少的对应点)? 图像匹配点中不可避免的存在外点,因此使用RANSAC进行鲁 棒估计。
RANSAC计算流程: 1.随机选r对匹配点计算模型; 2.计算模型的一致集(所有符合模型的匹配点构成的集合); 3.步骤1-2循环n次; 4.使用最大一致集中的所有匹配点重新计算模型。

注意:
单幅图像无法重建场景结构,因为不同的三维场景在一个图像里面可能表现一样。

解决: 多幅图像的投影–多视图才能重建

在这里插入图片描述

在这里插入图片描述

待补充:两视图几何
在这里插入图片描述

SFM稀疏重建:

•已知x,求K、R、t、X
通过两个副二维图像得到F(八点法)在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
注意:从F中无法唯一分解出K1、K2、R、t
当内参数矩阵K1和K2已知时,E=R[t]×称为本质矩阵
在这里插入图片描述

第一步是求解K

通过图片(图片的隐式信息) EXIF 获取相机焦距、镜头型号等。
通过镜头型号确定CCD物理尺寸

在这里插入图片描述

第二步就是通过五点法求解本质矩阵E

在这里插入图片描述
通过SVD分解从E中分解R和t(假设camera 1为R1=I, t1=0): 在这里插入图片描述
在这里插入图片描述

3.选择四组解中三角化得到的X在两个相机前方数量最多的解

在这里插入图片描述

在获得K、R、t后,通过三角化计算空间点X

以给定的K、通过E分解求得的R、t、以及三角化后的X为初 始值,迭代求解重投影误差最小化问题:在这里插入图片描述
得到 几何误差最小化意义下 的K、R、t、X

最后都是最小化重投影误差最小化的问题:
在这里插入图片描述

流程都是一样的:首先是通过线性方法DLT求解初始值(代数误差最小化);通过非线性优化迭代求精(几何误差最小化)

重投影误差最小化问题的求解

最后就是化成非线性最小二乘问题。
在这里插入图片描述
在这里插入图片描述
最后就写成向量的二范数最小化平方和问题。

!!!重投影误差最小化是一个非线性最小二乘问题,求解非线性最小二乘问题的方法:非线性最小二乘是非线性优化的一类特殊形式;针对一般非线性优化的梯度下降法(1阶)、牛顿法(二阶)

非线性最小二乘问题迭代优化的基本思路:

局部最优
1)给定初始值;
2)开始迭代优化 选择最优移动方向使目标函数值下降最快; 以一定步长沿最优方向移动当前值; —如果两次迭代间目标函数值差异小于阈值或迭代次数 超出阈值,则转步骤3),否则返回2);
3)迭代结束,输出当前值。

对于步长使用启发式的方法,如深度学习的学习率。

1.梯度下降法
雅可比矩阵:在这里插入图片描述
在这里插入图片描述
梯度下降法比较慢,因为每次计算的下降方向不是最精准的。

2.牛顿法:二阶泰勒展开,拟合得更好,肯定更精准。但是带来了计算的复杂,还需要二阶导数Hessian矩阵。在这里插入图片描述
3.高斯牛顿法:专门为非线性最小二乘设计的。
直接丢掉了不好乘的二阶成分。
在这里插入图片描述
高斯牛顿法表现好就像牛顿法,不好可能导致函数值增加我,不稳定。

4.阻尼高斯牛顿法在这里插入图片描述
在这里插入图片描述

LM法 通过启发性方法在每一步动态调整阻尼系数λ

在这里插入图片描述
LM法是一种启发式的阻尼高斯牛顿法,在计算机 视觉中广泛使用。 •使用LM求解重投影误差最小化的方法称为Bundle Adjustment (捆绑调整,摄影测量中称为光束平差)

FSM实践

1.先找到图片资源。
2.用SIFT提取特征点(N副图像如果不多,就两两匹配;如果太多,就只和比较相似的图像进行匹配)

在这里插入图片描述
通过鲁棒的Ransac估计一个基本矩阵,然后把不符合这个基本矩阵的特征点去掉。只留下符合的稳定的匹配点。

•在确定了两两图像匹配点之后,下一步需要将匹 配点连接为Tracks

每一个Track表示同一特 征点在图像间的轨迹;每一个Track 都将最终成 为一个3D点;某些Track可能存在不一 致性,不一致的 图像特征点删除;

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

下一步:通过Structure from Motion计算相机位姿和3D空间点。在这里插入图片描述
上述的主要问题是参数量太大。
解决:在这里插入图片描述
思路:两视图的SFM相对容易,在初始模型中添加新的相机相对容易。——增量式SFM

增量式SFM

1.选择初始图像对
2.通过两视图SfM计算初始模型
3.如果图像连接关系图还有未选择的图像,则: a.选择一幅能看到目前模型中最多3D点的图像; b.根据3D‐2D点对应估计相机位姿; c.三角化新的特征点Tracks d.Bundle adjustment

在这里插入图片描述两视图重建的结果:
在这里插入图片描述
不停添加新的相机
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值