【论文学习笔记-5】立体匹配:MC-CNN
本篇博客主要关注MC-CNN的SGM及后处理部分。
Cross-based cost aggregation
如上图所示的十字架聚合法,对costvolume中每个像素进行上下左右四个方向的十字架延伸,各方向延伸长度由如下两个因素控制:
①当十字架中心像素和待延伸像素的pixel intensity的绝对值差小于阈值;
②当两像素点的空间距离小于阈值。
以上两点同时满足时进行延伸。在左右图中均进行如上操作,联合区域定义为:
聚合采用求取平均值,并进行迭代(希望迭代收敛?):
SGM过程
除了传统的p1,p2外,mc-cnn还加入了q1,q2进行惩罚值放缩,是否采用以及采用何种放缩手段由下列判断决定:
首先设置intensity阈值sgm_D,并设:
①当D1,D2均小于sgm_D阈值时,不进行放缩
②当D1,D2均大于等于sgm_D阈值时,将P1,P2除以Q2。
③其他情况下,将P1,P2除以Q1作为最后的惩罚值。
通过加入Q1,Q2,SGM获得了一定的鲁棒性,能够控制惩罚的力度。
最后的聚合值不采用Winner-takes-all策略,而是四个方向的平均值
左右一致性检验
通过SGM可以获得A左右图的视差图,将左图左右参考图,查看左右图中对应点是否互相预测为匹配点:当预测差小于等于1时认为匹配正确,而与其他的点匹配则认为匹配失败。
亚像素增强
进行亚像素图像增强获得新的视差图,公式为:
传统滤波器
通过5*5的中值滤波和双边滤波进行去噪及保边性平滑处理,其中双边滤波公式为:
如此便获得了最后的视差图。