1.概述:
主要包含两部分,cascaded geometry reasoning\per-scene fine-tuning。级联几何推理包含两部分,一部分是由输入图片直接体编码得到粗网格体积,另一部分是几何引导编码得到更细粒度的细网格体积。
然后使用具有一致性的fine-tuning策略优化细网格体积,最终得到精细的曲面。
在外观预计部分,SparseNeus使用了多精度的颜色混合模块将图像、几何信息结合在一起预计表面颜色。
2. 详细内容
1)Geometry reasoning
(注:geometry encoding 和surface extraction方式和one234相同,但是one234省略了cascaded volumes scheme)
a)Geometry encoding 
首先根据n张输入图像,估计bounding box大小能够覆盖region of intrest。通过2d神经网络,对n张图片分别提取n张feature map。然后将bounding box中的每个顶点都投影到N个feature map上插值出对应的特征值。
通过求所有特征值的方差,将所有的特征体整合为一个cost volume(认为每个特征体对cost volume的贡献相同)。
然后用稀疏的3d cnn从cost volume中提取geometry encoding volume
b)Surface extraction 
将经过位置编码的3d坐标PE(q)和q坐标下的geometry encoding volume M(q),输入MLP f ,网络预测q坐标下的SDF值。
c)Cascaded volumes scheme
为了平衡计算效率和重建精度,geometry encoding volume被分为两个精度。前者主要用于推断粗糙的几何。在重建更高精度的volume时,远离粗糙的平面的顶点会被抛弃。
2)Appearance prediction
和MVSNeRF等方法使用类似NeRF的结构,输入坐标、视角方向、特征,得到颜色值不同。本文比MVSNeRF更进一步,MVSNeRF只是将输入图片的像素考虑在输入中,而本文是使用blending weight直接将q位置对应的n张输入图片的像素值混合。
a) Blending weights:
位置q的Blending weight通过将geometry encoding volume M(q)、查询的光线view direction与输入图片视角方向之差δdi、某一视角的特征图q处特征与所有Fi(q)的方差、均值Fi拼接后输入神经网络得到Fi’(q),将三者共同输入神经网络fc,得到对应视角i,q位置下的权重ωiq
最后所有权重经过softmax归一化。
某点的颜色为所有投影颜色的带权平均。
b) Pixel-based color blending: sdf渲染图像的方式
用离散渲染公式
颜色:U(r)为像素点patch level/pixel level像素值。u(i)为位于ray r上的M个采样点的patch level/pixel level的查询颜色。
体密度:通过公式,将sdf值f(p(t))即s(q)转化为体密度(Φs
的是softmax
,类似于综合多个sdf。
)。
(ps: 连续渲染公式。volumetric rendering的渲染方式,通过
,渲染sdf在某一视角d的某点位置o的像素值。(其中p以输出点o位置为始、视角方向向量上所有点坐标等价于q
;v为视角方向等价于di)。
c)Patch-based color blending
虽然pixel-based color blending包含geometry encoding信息,但是像素中只包含局部信息,而缺乏内容信息。因此参考patch matching构造了patch-based color blending.
构造方式为:假定q周围局部可以被近似为平面。因此在q周围的局部平面(q,)随机采样点,假设这些采样点的blending weight与q点相同,采样点投影到各个视角的input view获取颜色,再加权平均。
3)Per-scene fine-tuning
由于场景的多样性和复杂性可能不能被稀疏的输入图片所包含,所以输出中包含异常值和缺少细节,所以提出了针对每个场景的fine-tuning(前两步可以看作是通过网络推理对模型初始化).
只对sdf提取网络、精细的geometry encoding volume 微调。
a)修改了blending weights生成的网络:
PE(d):因为把feature map替换为sdf,视角信息需要被补充,类似nerf的做法将其编码映射到高频空间。相邻位置在高维空间变稀疏,可能更容易收敛到最优解,提高训练速度。并且减弱相邻位置的颜色信息相互影响的概率。
s(q):使用sdf而不是feature map,使得网络减少了CNN相关的部分,这样提高优化速度不损失精度。
nq:猜测是和patch wise match的思想类似,考虑局部几何信息。
b)可感知一致性的Color loss:
由于multiview图像可能受图像噪音遮挡或污染,使得部分图像陷入局部最优。为了解决这个问题,设计基于O(r)的可感知一致性的logistic 项。在降低权重值λ0/λ1时,使得O(r)接近1,保留更多原有区域。
O(r)为该条光线上的累积w权重和。D pix为pixel loss L1(更希望渲染图像与GT完全吻合,严格区分接近与完全一致所以用L1 loss), D pat为patch loss Normalized Cross correlation loss.
c)Eikonal term : 
为了使得曲面尽可能平滑,增加的正则项,由于ekinonal方程的解满足:( Signed Distance Function and the Eikonal Equation - Mathematics Stack Exchange),所以设计正则项将sdf的二阶导数(文中所写为surface extraction网络权重,可能有误)拉近1,
d)Sparse loss
为了减少不可见的模型部分生成不可控的曲面,绝对值符号使得0处sparse loss最大。鼓励sdf值远离0,少生成在平面上的点。惩罚程度由τ决定
Ps:补充Normalized Cross correlation loss.
问题设定,求解template和原图像坐标系原点之间位移:
1)Cross-correlation :
,
f is filtered image; t is the template. (u,v)is the size of template; (x,y) is size of filtered image.
2)Normalized cross-correlation:
为了解决cross-correlation受特征大小、图像亮度、对比度的影响,对cross correlation归一化。