论文
Pyramid Stereo Matching Network
摘要
学习双目立体匹配,传统方法里不能不知道SGM,深度学习方法里则不能不知道PSMNet。这篇文章在GCNet的基础上,对网络进行了全面的改进,使得双目立体匹配迈上了一个新的台阶。
网络模型
熟悉GCNet后去理解PSMNet的网络模型,还是比较容易的。PSMNet整体还是可以分成4个模块,作者对其中的“特征提取”和“代价聚合”两个模块进行大幅度的改进。“代价计算”和“可微视差生成”则保持原样。
另外,文章中给出了详细的网络参数,如下
1 特征提取
在GCNet里,通过一些堆砌的卷积层完成特征提取,导致最终提取的特征的感受野其实是非常小的,难以形成对大范围纹理的理解;并且如果简单的通过扩大卷积核,又会大幅度的提高计算量,反而可能会得不偿失。
在这篇文章里,作者使用了SPP模块和带洞卷积(对应conv3_x
和conv4_x
)两种工具,来尽可能的增大感受野。
2 代价聚合
在GCNet中,代价聚合仅仅使用了一个3D-UNet结构,网络可能还是对代价的理解仍旧不够深刻。本篇论文的作者可能是受到了FlowNet2的影响,使用3个串联在一起的3D-UNet结构,并且每一个3D-UNet都输出一个预测值。
损失函数
PSMNet的损失函数引入了一个类似Huber的操作,对粗差进行一定程度的抑制。除此之外,需要注意的是,前文已经说过3个3D-UNet都会预测视差;因此,实际的loss是由三个
L
L
L加权组合得到。
结果与讨论
1 模型参数设计
在本篇文中,作者也秉承炼丹学的一贯原则,对网络中的一些参数进行实验验证。
下表验证了带洞卷积、SPP和堆叠3D-UNet的作用。显然所有的东西都用上才是最棒的。
下表展示了如何通过炼丹的方式确定3个UNet的loss之间权重设计的问题。
2 结果
PSMNet的结果是很棒的。