立体匹配任务,就是选择左视图一个像素,找到右视图中与之对应的像素;或者选择右视图一个像素,找到左视图中与之对应的像素。这些匹配像素直观理解为3D空间中的同一个点,但是这些点在左右视图中的特征/可视性可能不太一样(遮挡),也有可能有无数多的可选匹配(无纹理区域),这些都是立体匹配过程中的难点。
立体匹配通常与深度估计、视差估计等价,也可用于各种下游任务,比如场景重建、表面重建等等。
卷积可以很有效地提取图像的上下文特征,但是卷积本身感受野不可能做得太大,而视差对于不同深度而言可能很大也可能很小,单一的卷积核尺度没法自适应这种变化。Cost Volume的提出就是显式地构建了视差维度,使得提取的特征能够包括所有视差的信息(只使用卷积只会包括感受野内最大视差的信息)。
但是以往的Cost Volume方案都是使用全分辨率(或者金字塔)的4D维度Cost Volume,然后再去进行3D卷积提取特征。这种参数量太大了,本文的核心是认为这种构建方式over-parametered了,只用一个小的Cost Volume就可以恢复出全部信息,而且这种恢复精度也相当高,最高可以达到1/30的sub-pixel精度。
$$ W/2^K \times H/2^K \times D/2^K \times C $$
可是高精度的功劳主要是refine网络在运作,Cost Volume最终也只得到了单通道的视差图用于后续的refine(而且refine阶段还有不同尺度的输入图片在起作用),所以这里1/16会不会只是一个假设性的卖点,或者Cost Volume的作用仅是良好的初始化?