三维重建(四)PMVS算法 the patch-based MVS algorithm
通过前面的介绍,已经获得了相机的参数,我们可以利用这些参数使用基于面片的三维多视角立体视觉算法(PMVS)重建出稠密的点云。下面详细介绍一下PMVS算法。
一、基本概念介绍
1、面片(patch)
面片p是一个近似的正切与重建物体表面的一个小矩形,他的一边平行于参考相机的x轴。对于一个面片p,他的几何特征如下:
中心点:c§;
单位法向:n§,该向量指向相机的光心;
面片p对应一个参考图像R§,在R§中p是可见的。针对p有扩展矩形,p在R§中的投影是μ×μ大小的,在原论文中μ=5 or 7
2、灰度一致性函数(Photometric Discrepancy Function)在这里, V(p)−R(p)是指出去 R(p)的 V(p)的其他元素; h(p,I1,I2)是指 I和R(p)的灰度一致性函数,计算过程如下:](https://code84.com/wp-content/uploads/2022/10/20201216134405934.png)




二、面片的重构
基于面片的多视角三维立体视觉算法的目的就是保证在每个图像块Ci(x,y)上至少有一个面片的的投影。主要分为以下三步:
- 初始化特征匹配(initial feature matching);
- 面片生成(patch expansion);
- 面片筛选(patch filtering);
初始化特征匹配的目的就是生成一系列稀疏的面片,面片的生成和筛选都要执行n次使得面片足够稠密,同时去除不好的面片。下面依次进行介绍。
1、初始化特征匹配






CMVS算法概述:
CMVS目的
任务是将SFM的稀疏点聚类到不同的影像集(image cluster),每个影像集分别进行MVS算法。
这样做的好处是根据SFM稀疏点的信息对浩大的影像分块成多个小块,分别进行MVS,分治思想,减少MVS算法的资源峰值。
CMVS影像聚类的特点
1.删除多余影像(质量极差的影像)
2.保证cluster的size(保证每个cluster内影像数量小于某一size)
3.保证完整性和质量
完整性由每个特征点都会被cluster覆盖来保证
4.cluster之间有重叠
目标方程
为实现保证质量的目的,给出目标方程:
目标方程中包含了:
1)最小化影像数量;
2)保证cluster大小;
3)保证收敛。
1、点收敛;
2、影像收敛;

衡量质量的标准(measurement):
一个点P对应于一个影像集C


方法步骤
1.SFM滤波—融合SFM点
2.除去质量不好的影像
3.使用normalized cut初始分割
边权:在这里插入图片描述
4.贪心的向初始分割中添加影像