成本聚合涉及在多个方向上进行搜索,以对您的解决方案实施全局平滑约束。没有这些约束,计算每个像素的视差时不考虑其邻居的估计视差,结果通常会包含大量“噪声”,因为匹配过程将返回许多误报。
通过假设观察到的表面非常光滑,如果像素与其邻居不一致,则可以通过设置为像素分配深度的额外成本来惩罚视差偏移。松散地说,这意味着当您尝试估计深度并有多个可能的匹配项时,您可能会选择与相邻像素的深度估计值非常一致的匹配项。搜索更多方向会增加您在成本计算中考虑的邻居数量,并且通常会增加
OpenCV 不提供减少此搜索路径长度的方法,但如果您希望算法运行得更快,您可以禁用某些方向,只搜索 5 个路径而不是 8 个(这是通过设置参数 fullDP 来执行的)为假)或通过减少视差搜索范围。