本文翻译的外国学者的一份talk,主要内容是关于立体视觉算法和应用的基础知识。限于个人水平,如有疏漏之处请谅解。
大纲
4、计算优化
5、硬件实现
6、应用
视觉匹配算法(代价聚合)
代价聚合
以简单的固定窗口(Fixed Window)为例(代价计算策略为TAD,视差计算采用WTA策略)。效果如下,可以看出实际的深度图(ground truth)与采用上述的方案计算出的深度图对比可知,该方法在某些部分并不能很好的体现实际的深度信息。
之所以会出现这种现象,可能有以下几个原因:
a)隐含的假设(frontal-parallel surfaces)未成立。无独有偶,大部分的代价聚合算法都是基于在支持窗口中点的视差值相同的假设。
b)忽略了深度不连续。在深度不连续的区域往往会造成(a)的发生。聚合两个深度不同的区域会使得边界信息不明确,TAD算法能够部分的较少这些特殊点的影响。因此现在的部分算法都在尝试去寻找合适的窗口来聚合相同深度的区域的匹配代价。然而较小FW的尺寸大小又会使得在重复和不均匀区域出现模糊不明确的现象发生。所以,支持窗口的大小优化往往依靠经验来选取。
c)未较好地处理明显的模糊(不均匀区域,重复模式区域)区域。在这些区域应该尽可能的让窗口包含更多的相同深度的点。
尽管简单的FW策略有着多种缺陷,但在实际应用中却得到广泛应用。因为这种方法:简单且执行速度快,占据的内存小,可以做实时处理,耗能低等特点。为了更好的实现FW算法,可以采用部分的优化技术,这些技术也可以应用于其他的算法。
优化算法
1、积分图像(Integral Images (II))
2、盒滤波(Box-Filtering(BF))
两种优化方法都需要四个操作。积分图像可以handle不同尺寸的支持窗后,在实际应用中如果需要考虑不同的窗口可以选择这种方式。但积分图像会产生溢出问题,因此也需要更多的内存。
3、Single Instruction Multiple Data (SIMD)
一种操作方法,允许并行的处理相同操作的多个数据。