文章目录

  • 一、平行视图
  • 1.1 示意图
  • 1.2 平行视图的基础矩阵
  • 1.3 平行视图的极几何
  • 1.4 平行视图的三角测量
  • 二、图像校正
  • 三、对应点问题
  • 3.1 相关匹配法
  • 3.2 归一化相关匹配法
  • 3.3 窗口问题
  • 3.4 相关法存在的问题
  • 3.5 约束问题



一、平行视图

1.1 示意图

opencv双目立体重建_双目立体视觉opencv双目立体重建_opencv双目立体重建_02

opencv双目立体重建_人工智能_03

1.2 平行视图的基础矩阵

opencv双目立体重建_双目立体视觉_04,推导过程如下所示。

opencv双目立体重建_双目立体视觉_05

opencv双目立体重建_双目立体视觉_06,平行视图下,opencv双目立体重建_双目立体视觉_07opencv双目立体重建_opencv双目立体重建_08,那么对于平行视图有:

opencv双目立体重建_计算机视觉_09

1.3 平行视图的极几何

opencv双目立体重建_人工智能_10

opencv双目立体重建_计算机视觉_11opencv双目立体重建_三维重建_12opencv双目立体重建_三维重建_13

 3. 极点位于无穷远处。

opencv双目立体重建_计算机视觉_11opencv双目立体重建_opencv双目立体重建_15 的情况下,opencv双目立体重建_三维重建_12 只需要按着扫描线寻找即可,扫描线指的是过 opencv双目立体重建_计算机视觉_11 且平行于 opencv双目立体重建_人工智能_10

opencv双目立体重建_计算机视觉_19

opencv双目立体重建_计算机视觉_20

1.4 平行视图的三角测量

opencv双目立体重建_双目立体视觉_21opencv双目立体重建_三维重建_22opencv双目立体重建_三维重建_23 的距离表示为深度 opencv双目立体重建_计算机视觉_24opencv双目立体重建_三维重建_22opencv双目立体重建_三维重建_23 的距离为 opencv双目立体重建_人工智能_27,焦距为 opencv双目立体重建_opencv双目立体重建_28。利用相似三角形底比高可得视差与深度 opencv双目立体重建_计算机视觉_24

opencv双目立体重建_opencv双目立体重建_30

opencv双目立体重建_计算机视觉_31

 2. (1) 平行视图中的视差图:根据两台平行摄像机在不同角度观察同一物体或场景时,由于视角差异造成的图像的差异进而推断出物体的深度和距离,得到一幅信息图,可以用于对物体或场景的三维重建和识别。 (2) 3D电影通过用两个摄像头同时模拟拍摄同一场景,模拟人眼双眼视觉,再将两个平行视图分别投影到屏幕上,由于使用特殊的偏振式眼睛,通过人眼的立体视觉原理,会给观众感知到一种立体的深度效果。

opencv双目立体重建_双目立体视觉_32

opencv双目立体重建_人工智能_33

二、图像校正

 1. 图像校正:使一组非平行视图通过校正构建成平行视图。

 2. 图像校正有五步:
 (1) 在两幅图像 opencv双目立体重建_双目立体视觉_34opencv双目立体重建_人工智能_35 上找到一组匹配点 opencv双目立体重建_三维重建_36,不少于 opencv双目立体重建_人工智能_37

opencv双目立体重建_opencv双目立体重建_15(八点法),求解两幅图像中的极点 opencv双目立体重建_双目立体视觉opencv双目立体重建_opencv双目立体重建_02

opencv双目立体重建_opencv双目立体重建_41

opencv双目立体重建_计算机视觉_42opencv双目立体重建_opencv双目立体重建_02 映射到无穷远点 opencv双目立体重建_计算机视觉_44,变换公式:opencv双目立体重建_人工智能_45
 ① 先将图像的中心点从左下角移到中心。② 构造 opencv双目立体重建_三维重建_46。③ 构造 opencv双目立体重建_opencv双目立体重建_47

opencv双目立体重建_opencv双目立体重建_48

opencv双目立体重建_双目立体视觉_49 进行变换,使得经过 opencv双目立体重建_双目立体视觉_49opencv双目立体重建_计算机视觉_42 变换后的两个像平面满足平行视图要求:opencv双目立体重建_计算机视觉_52

opencv双目立体重建_双目立体视觉_49opencv双目立体重建_计算机视觉_42,对左右两幅图像 opencv双目立体重建_双目立体视觉_34opencv双目立体重建_人工智能_35

opencv双目立体重建_三维重建_57

三、对应点问题

opencv双目立体重建_计算机视觉_11 点寻找对应 opencv双目立体重建_三维重建_12 点的问题,我们根据平行视图极几何关系可知,opencv双目立体重建_三维重建_12

3.1 相关匹配法

opencv双目立体重建_opencv双目立体重建_61

opencv双目立体重建_双目立体视觉_62

3.2 归一化相关匹配法

 1. 对于一个图像上存在像素颜色或灰度变化突变的情况,上一种方法会出现计算误差较大,所以需要进行归一化。

 2. 归一化相关匹配法:改变原来的相似性度量,通过每个窗口向窗口均值进行归一化,达到平滑的效果。

opencv双目立体重建_opencv双目立体重建_63

opencv双目立体重建_三维重建_64

3.3 窗口问题

 对于较小的窗口:会引入更多的噪声,更容易受到噪声影响,但反之也会在没有噪声影响的地方提供更精确的信息。对于较大的窗口:通过归一化操作可以平滑更多的噪声,但也会丢失一部分细节。

opencv双目立体重建_双目立体视觉_65

3.4 相关法存在的问题

 1. 透视缩短和遮挡问题:

opencv双目立体重建_三维重建_66

opencv双目立体重建_三维重建_67 的过大,两个像平面无法得到更多的信息交互,导致信息丢失,所以可以适当减小 opencv双目立体重建_三维重建_67。但当 opencv双目立体重建_三维重建_67 过小时,由于双目视觉上遮挡的信息只能尽量的去弱化,不能去消除,所以当 opencv双目立体重建_三维重建_67

opencv双目立体重建_双目立体视觉_71

 3. 同质区域:由于存在世界坐标下不同区域但颜色非常相近的地方,所以会导致误差的产生,比如用双目视觉去测量一堵白墙的形状,但光影极其不明显。

opencv双目立体重建_计算机视觉_72

 4. 对于世界实物上存在重复的区域,这会对双目视觉的三维重建产生较大的影响。

opencv双目立体重建_人工智能_73

3.5 约束问题

 1. 唯一性约束:对于一张图像中的任何点,在另一张图像上最多只有一个匹配点,不存在同质区域和重复区域。

opencv双目立体重建_人工智能_74

 2. 顺序约束/单调性约束:左右视图中的对应点次序一致,保证不存在遮挡。

opencv双目立体重建_三维重建_75

 3. 平滑性约束:视差函数通常是平滑的,减少曝光亮度突变的问题。

opencv双目立体重建_计算机视觉_76