这篇文章的效果很好,但是没有开源代码。
1. 研究问题
基于立体深度估计的场景三维重建系统中,现有的立体深度算法(如PSMNet,GCNet)估计的视差图导致重建表面几何不一致的问题(左右视差不一致,导致融合后表面法向量误差较大),以及代价过滤模块计算量大的问题。
2. 研究方法
StereoDRNet(Dilated Residual StereoNet)提出一种新的视差细化网络,预测左右一致视差图和遮挡图,有助于产生几何一致性的重建。提出使用多尺度3D空洞卷积(ASPP)进行代价过滤,产生了更好的过滤效果,而且减少了一半的计算量。另外,使用Vortex Pooling 进行特征提取,产生了比SPP更好的效果。
2.1 特征提取
首先使用卷积块和残差块提取局部特征,然后使用 Vortex Pooling
[24] 捕获全局上下文,相比于SPP,Vortex Pooling 使用空洞卷积扩大感受野,提高了网络的表征能力。
2.2 代价过滤
一般成本量构建方法有两种:
- 串联左右特征
- 左右特征点积
文章使用简单地减法构建成本量,即(左图特征 - 右图特征),(右图特征 - 左图特征),也很有效。
虽然简单的 argmin
原则应该得到正确的局部最小值解,但是相关文献中已经多次表明,解具有多个局部最小值
是很常见的。具有均匀或重复纹理的表面
特别容易出现此问题。通过将成本过滤
视为具有多个卷积和非线性激活的深度学习过程,我们试图解决这些歧义并找到正确的局部最小值
。
针对 PSMNet 和 GCNet 等网络中 3D成本过滤计算量大的问题,提出在宽度、高度和视差三个维度使用并行的多尺度3D空洞卷积,联合了多尺度信息,产生了更好的过滤效果,而且相比于PSMNet减少了近一半的计算量。
采用多次残差学习,预测了三个尺寸为原始的1/4
大小的左右视差图,可以进行中间监督,最后一个视差图用于视差细化。
2.3 视差回归
采用双线性插值将视差图放大到原始图像的大小,并采用soft argmax回归视差。
2.4 视差细化
为了使视差估计对遮挡和视图一致性具有鲁棒性,我们进一步优化估计。
2.5 损失函数
3. 实验结果
训练:
- 优化器:Adam, β 1 = 0.9 \beta_1=0.9 β1=0.9, β 2 = 0.999 \beta_2=0.999 β2=0.999
- 数据预处理:颜色归一化。代码中使用了与ImageNet一样的颜色归一化。
__imagenet_stats = {'mean': [0.485, 0.456, 0.406], 'std': [0.229, 0.224, 0.225]}
- 图像剪裁:
512x256
- 批量:
8
- 损失函数超参数:
w1 = 0.2、w2 = 0.4、w3 = 0.6、λ1 = 1.2 和 λ2 = 0.3
数据集:
- SceneFlow
- KITTI 2012
- KITTI 2015
- ETH3D
3.1 SceneFlow Dataset
3.2 KITTI Datasets
3.3 ETH3D Dataset
4. 结论
(1)StereoDRNet使用 Vortex Pooling 和 3D空洞卷积代价过滤 增加了感受野,捕获了更丰富的上下文信息,并减少了计算代价。此外,提出的视差细化网络利用了遮挡和视差一致性信息,产生了几何一致的视差图,获得了接近结构光的三维重建效果。
(2)所提出的方法在 KITTI 2012、KITTI 2015 和 ETH 3D 测试中取得了最先进的结果。
5. 启发
采用空洞卷积可以增加感受野,提取更多的上下文信息,从而减少了卷积层的使用,从而减少计算量。
参考文献
- Chen-Wei Xie, Hong-Yu Zhou, and JianxinWu. Vortex pooling: Improving context representation in semantic segmentation.