首页 生活指南 正文内容

意大利大学立体视觉系统概述(上一文)

阿立指南 生活指南 2022-09-17 03:09:34 130 0

写这一系列博客的目的是记录我在3D重建领域学习相关知识的过程和经验。它不涉及任何商业意图。欢迎大家互相交流,批评指正。

立体声匹配

立体匹配在上一篇博客中简单介绍过。是MVS密集重构中的一个重要环节。本篇博客会详细介绍立体匹配的相关概念,详细过程和原理参考教程:70.3D重建5立体匹配1、立体匹配算法的整体理解,笔者对意大利某大学教授2012年所写的《: and》进行了详尽透彻的解读。

立体视觉系统概述

在这里插入图片描述

上一篇文章介绍了很多立体视觉相关的基础知识。通过整合各个部分,可以建立一个完整的立体视觉系统,包括相机标定、对极校正、立体匹配、三角测量,最后是物体的场景或深度信息:

4d 立体城市拼图_立体拼图方法_夜市卖3d立体拼图

1. 相机校准

在这里插入图片描述

相机标定的目的是获取两个相机的内参(焦距、图像中心、畸变参数等)和外参(世界坐标系与相机坐标系之间的变换矩阵R和T),以及然后校准图像。获取图像的立体点对;

2. 极线校正

在这里插入图片描述

接下来,使用校准后的图像点对信息进行极线校正,以消除镜头畸变并将立体点对转换为标准形式。(对应点对根据核约束理论限制在两幅图像核线形成的平面内,通过核线校正将对应点的二维搜索空间缩减为一维)

在这里插入图片描述

这样做后,在水平方向上搜索另一幅图像上的一个点的对应点是非常方便的。如上图所示,左图上a点p在右图上的对应点为p',视差d=xR−xTd=x_R-x_Td=xR​−xT​,b为之间的距离两个相机的光学中心,f 是焦距。

3. 立体匹配

目的是在原始图像中找到目标图像的对应点,找到对应点之后,求空间点到相机距离的关键就变成了求其投影点的视差。整幅图像上所有点的视差构成一幅图像,称为视差图;通过一对校正后的图像得到视差图的过程称为立体匹配。立体匹配属于立体视觉,MVS密集重建是重要部分立体拼图方法,下面将详细讨论;

4. 三角剖分

如上图立体拼图方法,根据相似三角形的计算,很容易得到物体到相机观察点的距离(或深度):bZ=(b+xT)-xRZ-f→Z=b ⋅fxR−xT=b⋅fd \frac{b}{Z}=\frac{(b+x_T)-x_R}{Zf} \ Z=\frac{bf}{x_R-x_T}=\frac{bf} {d}Zb​=Z−f(b+xT​)−xR​​→Z=xR​−xT​b⋅f​=db⋅f​

给定视差图(立体匹配得到)、基线和焦距(标定后),三角剖分可以计算出该点在三维空间中对应的位置,从而得到深度图。

在这里插入图片描述

立体匹配基本流程

如果要得到两幅校正后的视差图,即转换为给定源图像上的一个点,在目标图像的同一线约束范围内搜索与源图像匹配的对应点{max}dmax​ ,如下图1所示;让匹配成本为∣IR(x,y)−IT(x+d,y)∣|I_R(x,y)-I_T(x+d,y)|∣IR​(x,y )−IT​ (x+d,y)∣,则目标图像中所有待处理像素的匹配代价如下图2所示;WTA(Takes All,胜者通吃)是一种搜索策略,即从所有候选像素中选择匹配成本最低的最对应的点;

在这里插入图片描述

在这里插入图片描述

立体拼图方法_4d 立体城市拼图_夜市卖3d立体拼图

但是由于噪声和距离等因素的影响,通过最基本的方法无法得到理想的视差结果,这就导致了立体匹配优化视差结果的基本思想——图像预处理、匹配代价计算、代价聚合和视差优化。,检查和细化;

在这里插入图片描述

基本思想

在这部分,@Wang Hawk 还对“:”和“:”进行了详细解读,分为以下几个模块:

71. 3D 重建 6 立体匹配 2、立体匹配中的代价聚合

72. 3D重建7-立体匹配3、立体匹配算法中的视差优化

立体拼图方法_4d 立体城市拼图_夜市卖3d立体拼图

73. 3D 重建 8 - 立体匹配 4,使用视差后处理来细化结果

图像预处理(Pro-):如果两幅图像的亮度和噪点不一致,一般对图像进行预处理,使两幅图像的整体质量区域一致;匹配成本计算(Cost):衡量待匹配像素与候选像素之间的相关性。无论两个像素是否同名,都可以通过匹配代价函数计算匹配代价。成本越小,相关性越大,同名的概率就越大。局部成本聚合(Cost):通过在一定程度上聚合成本立方体中相同差异的成本,减少或消除错误成本的影响;全局视差优化( ):通过优化某个能量函数 E(d)= Edata(d)+(d)E(d)=E_{data}(d)+E_{}(d)E(d)=Edata ​(d)+​(d), 找到每个像素的最大值优秀的视差结果,使全局和整体匹配成本最小化;视差细化/后处理( ):按照前面的步骤,最终会输出一个视差图,但是即使在上面的约束场景中,得到的视差图仍然不完美,还有很多错误。因此,需要一个细化步骤来消除错误并获得更准确的视差图;方法分类 需要一个细化步骤来消除错误并获得更准确的视差图;方法分类 需要一个细化步骤来消除错误并获得更准确的视差图;方法分类

立体匹配通常有几种不同(不相互排斥)的策略类别:

局部匹配算法:1+2+WTA(通吃,赢家通吃)——使用简单的 WTA 视差选择策略,并通过在支持窗口( )上聚合匹配成本来减少模糊();全局匹配算法:1+(可选2)+3 - 使用基于像素的匹配成本,通过优化一些能量函数 E(d)=Edata(d)+(d)E(d)=E_{data} (d )+E_{}(d)E(d)=Edata​(d)+​(d),求每个像素的最优视差结果;半全局匹配算法:1+2+3,如SGM ; 参考文献和信息

[1]70. 3D重建5立体匹配1、立体匹配算法的整体理解

[2和 ”

欢迎 发表评论:

文章目录
    搜索