Neural Inverse Rendering for General Reflectance Photometric Stereo阅读

用于一般反射光度立体模型的逆渲染神经网络

摘要

我们提出了一种用于光度立体(Woodham,1980)的新型卷积神经网络体系结构,该问题是从在不同照明下观察到的多个图像中恢复3D对象表面法线的问题。尽管它在计算机视觉领域具有悠久的历史,但是对于具有未知的一般反射特性(BRDF)的表面,该问题仍然显示出基本的挑战。利用深层神经网络来学习复杂的反射模型是有前途的,但是由于难以获得准确的GroundTruth信息进行训练以及难以设计不变于输入图像置换的网络,因此在这一方向上的研究非常有限。为了解决这些挑战,我们提出了一种基于物理学的无监督学习框架,其中网络预测表面法线和BRDFs,并将其输入到渲染方程中以合成观察到的图像。通过最小化观察到的图像和合成图像之间的重建损失,可以在测试过程中优化网络权重。因此,我们的学习过程不需要GroundTruth 法向,甚至不需要对外部图像进行预训练。我们的方法在具有挑战性的真实场景基准测试中表现出了最先进的性能。

1.简介

从图像中恢复3D形状是计算机视觉中的核心问题。尽管双目(Kendall等,2017; Taniai等,2017)和多视图立体(Furukawa&Ponce,2010)等几何方法使用来自不同视点的图像对3D点进行三角剖分,而光度立体(Woodham,1980)使用多个图像的阴影提示以恢复3D表面法线。众所周知,光度法主要用于恢复表面的精细细节,并且在组合方法中对高精度3D形状恢复起着至关重要的作用(Nehab等,2005; Esteban等,2008; Park等,2017)。 )。尽管存在对最简单的朗伯面的闭合形式的最小二乘解,但这种理想的漫反射材料很少存在于真实世界中。对于具有一般反射特性未知的表面(即双向反射分布函数或BRDFs)的光度立体图像仍然是一个基本挑战(Shi et al。,2018)。

同时,深度学习技术已在许多计算机视觉任务(例如图像识别(Krizhevsky等人,2012; He等人,2015; 2016)),分割(He等人(2017b))和立体视觉(Kendall等,2017)中极大地推动了最新技术的发展。至于光度学立体,它有望用深度神经网络代替手工反射模型来学习复杂的BRDF。然而,迄今为止,这一方向的研究令人惊讶地受到限制(Santo等,2017; Hold-Geoffroy等,2018)。这可能是由于难以制作大量有GT的训练数据造成的。准确测量真实对象的表面法线非常困难,因为我们需要高度精确的3D形状来可靠地计算表面梯度。实际上,最近才通过将激光扫描的3D网格精确地配准到2D图像上来引入具有GT的光度立体的真实场景基准(Shi等人,2018)。可以使用合成训练数据(Santo等人,2017),但是我们需要进行照片逼真的渲染,理想情况下应考虑各种逼真的BRDF和对象形状,空间变化的BRDF和材质,投射阴影和相互反射的存在等。比立体声和光流的训练数据综合要求更高(Mayer等人,2016),在这种情况下,通过最简单的朗伯反射率进行渲染通常就足够了。而且,测量实际材料的BRDF需要付出努力,现有的BRDF数据库(Matusik等,2003)仅提供有限数量的材料。

将深度学习应用于光度立体的另一个困难是,当对网络进行预训练时,它们需要对输入的排列保持不变(已解决),即,对输入图像(和相应的照明)进行排列不改变所得的表面法线。现有的神经网络方法(Santo等人,2017)通过在整个训练和测试阶段采用相同的照明模式来避免此问题,这限制了方法的应用场景。

在本文中,我们提出了一种用于一般BRDF光度立体的新颖卷积神经网络(CNN)体系结构。给定观察到的图像和相应的照明方向,我们的网络会根据图像反渲染表面法线和空间变化的BRDF,将其进一步输入到反射率(或渲染)方程式中,以合成观察到的图像(见图1)。通过最小化观察到的图像和合成图像之间的重建损失来优化网络权重,从而实现不使用GT法线的无监督学习。此外,学习是在测试阶段直接在测试场景上进行的,无需任何预训练。因此,输入排序不变性问题在我们的框架中无关紧要。我们的方法在具有挑战性的真实场景基准上进行了评估(Shi等人,2018),并且表现出优于基于最新学习方法的方法(Santo等人,2017)和其他经典的无监督方法(Shi等人,2014; 2012; Ikehata&Aizawa,2014; Ikehata等人,2012; Wu等人,2010; Goldman等人,2010; Higo等人,2010)等人,2010年; Alldrin等人,2008年)。我们总结了我们方法的优势如下。
•现有的神经网络方法要求每当测试场景的光照条件与训练后的场景发生变化时就使用合成数据进行预训练。相反,我们基于物理的方法可以以无监督的方式直接拟合测试场景的网络权重。
•与基于经典物理学的方法相比,我们利用深度神经网络来学习复杂的反射率模型,而不是手动分析和发明反射率特性和模型。
•然而,我们基于物理的网络体系结构使我们能够利用有关反射率特性的先验知识,这些知识在文献中已得到广泛研究。

Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
图1.基于光度立体的重建。 给定在变化的光照下观察到的多个图像,我们的逆神经网络估计表面法线贴图和反射率图像。 然后,我们使用这些估计和输入照明来重建(或渲染)观察到的图像。(还是同一个方向下的,光照方向没改变) 合成图像用于定义无监督学习的重建损失

2.初步

在介绍我们的方法之前,我们将回顾光度立体的基本设置和方法。假设具有单位法向量Neural Inverse Rendering for General Reflectance Photometric Stereo阅读的反射面被点光源Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 照亮(其中Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的强度 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读Neural Inverse Rendering for General Reflectance Photometric Stereo阅读方向为单位方向),而没有反射和环境照明。当用线性响应照相机在观察方向 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读上观察该表面时,其像素强度 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读如下确定。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
在此,s∈{0,1}是存在cast阴影的二进制函数,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 是BRDF,max(·,0)表示attached阴影。图2说明了这种情况。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
图2.表面反射和BRDF。我们说明了一种情况,其中具有法向矢量Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的物体表面点被无限远的点光源沿方向 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读照亮,并由摄像机沿视图方向v观察到。未知的BRDF具有漫反射和镜面反射的主要成分。阴影出现在 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读(attached阴影)或光线被物体遮挡(cast阴影)的表面上。

光度立体测量的目的是在改变光照Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 时从强度I恢复表面法线 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读。在这里,我们通常假设摄像机具有固定的视点和正交投影模型,在这种情况下,视线方向v是恒定的,典型地Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。而且,假定光源是无限远的,因此Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 在整个物体表面上是均匀的。

2.1。 Lambertian模型和最小二乘法

当BRDF Neural Inverse Rendering for General Reflectance Photometric Stereo阅读恒定为 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读时,表面是纯漫反射的。这种模型称为朗伯反射,而值Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 称为反照率。在这种情况下, Neural Inverse Rendering for General Reflectance Photometric Stereo阅读的估计相对容易,因为对于亮像素(I> 0),反射率方程1变成了线性方程:Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,其中Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。因此,如果我们至少知道三个强度测量值 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读,并且它们的照明条件 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
然后我们得到一个线性系统 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
用最小二乘Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 作为求解。

这里,L†是L的伪逆,然后对所得的矢量 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读进行L2-归一化,以获得单位法线Neural Inverse Rendering for General Reflectance Photometric Stereo阅读

实际上,由于传感器噪声,相互反射等原因,图像被污染为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。因此,我们经常设置阈值τ以选择内部观察像素Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
当照明条件L未知时,该问题称为未校准的光度立体。众所周知,该问题具有所谓的浅浮雕模糊性(Belhumeur et al。,1999),甚至对于朗伯表面也很困难。在本文中,我们着重于在已知照明条件下标定的光度立体设置。

2.2。适用于一般BRDF表面的光度立体

当BRDFNeural Inverse Rendering for General Reflectance Photometric Stereo阅读 具有未知的非朗伯性质时,光度立体变得非常具有挑战性,因为我们本质上需要通过假设它具有某种反射率模型或通过直接估计 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读以及表面法线Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 来了解BRDFNeural Inverse Rendering for General Reflectance Photometric Stereo阅读 的形式。下面简要回顾一下现有的此类方法及其局限性。有关更全面的评论,请参考Shi等人最近的出色调查。 (2018)。

基于异常值拒绝的方法。
一组方法将包括镜面高光和阴影在内的非朗伯反射分量视为朗伯模型的离群值。因此,等式(2)被改写为 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
假设非高斯离群点e稀疏,最近的方法通过使用鲁棒的统计技术(Wu et al。,2010; Ikehata et al。,2012)或可学习的优化网络(Xin et al。,2016; He et al。,2017a)解决了稀疏回归问题。然而,由于稀疏离群假设的崩溃,这种方法无法处理宽泛的和柔和的镜面反射(Shi et al。,2018)。

解析BRDF模型。
与计算机图形学文献中成熟的Lambertian模型相比,另一种方法使用的是更逼真的BRDF模型,例如Torrance-Sparrow模型(Georghiades,2003年),Ward模型(Chung&Jia,2008年)或Ward混合模型( Goldman等,2010)。这些模型明确地考虑了镜面反射而不是将其视为离群值,并且通常采用如下形式的漫反射分量和镜面反射分量之和。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
但是,这些方法依赖只能处理狭窄类别材料的手工模型

一般的各向同性BRDF属性。
更高级的方法通过利用一些常规的BRDF属性直接估计未知的BRDFNeural Inverse Rendering for General Reflectance Photometric Stereo阅读 。例如,许多材料的各向同性BRDF仅取决于Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 之间的相对角度。鉴于各向同性,Ikehata&Aizawa(2014)进一步假设以下双变量BRDF函数
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
具有单调性和非负性约束。
同样,Shi等(2014)利用BRDF的低频先验,提出了双多项式BRDF:
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
式中,
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
我们的方法接近最后一种方法,因为我们可以从观察中学习BRDF的广泛类别,而不必将其局限于特定的反射率模型。但是,与那些完全依赖于人类对BRDF属性的仔细分析的方法不同,我们利用深度神经网络的强大可表达性来学习通用的复杂BRDF。然而,我们的网络体系结构也明确在内部使用了Eq1的物理反射率方程。这使我们能够将文献中开发的有关反射率的丰富知识纳入基于神经网络的方法中。

3.提出的方法

在本节中,我们介绍了用于光度立体的新颖的基于反渲染的神经网络体系结构,并使用 early-stage weak supervision来解释其学习过程。在此,作为校准的光度立体的标准设置,我们假设M个光源方向Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 模式和相应的图像观测值 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读作为输入。我们还假定提供了目标对象区域的mask O。我们的目标是估计目标物体区域的表面法线贴图Neural Inverse Rendering for General Reflectance Photometric Stereo阅读

符号说明。
张量和矩阵使用粗体大写字母,向量使用粗体小写字母。我们使用维数D×H×W的张量来表示图像,以及法线和其他特征图,其中D是一些通道数,H×W是空间分辨率。因此,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读Neural Inverse Rendering for General Reflectance Photometric Stereo阅读,其中C是图像的颜色通道数。我们使用下标p表示此类张量的像素位置,例如 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读是p处的法向向量。光向量Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 也可以具有颜色通道,在这种情况下Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 是矩阵,但是为了直观起见,我们使用小写字母。索引i总是用来表示观测索引Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。当我们使用维数B×D×H×W的张量时,第一维B表示在一个SGD迭代中处理的minipatch大小。

3.1。网络架构

Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
图3.提出的光度立体网络架构。 我们使用两个子网络,它们都是全卷积的。 [TOP]给定一个在测试场景上将所有观察到的图像Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 连接起来的图像张量Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,输出表面法线贴图Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 作为所需解决方案。 [底部]图像重建网络(IRNet)使用渲染方程式合成每个观察到的图像Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。 IRNet用于定义观察和合成图像之间的重建损失,以实现无监督学习。 请注意,作为校准的光度立体,照明方向 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读也作为输入提供,并用于渲染方程式和镜面反射分量输入Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的计算。 另外,张量的维数B×D×H×W分别表示小patch大小B,通道数D和空间分辨率H×W,其中PSNet中省略了B = 1。

3.1.1.光度立体网络

给出了一个沿channel axis连接所有M个输入图像的张量 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读,PSNet首先将其转换为抽象特征图,将其作为
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
然后使用给定的特征图 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读输出一个曲面法向贴图Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 作为
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
这里,fps1是具有可学习参数Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的三层前馈CNN,其中每层应用3x3的 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读channel的Conv、BatchNorm(Ioffe&Szegedy,2015)和ReLU。我们使用Dps=384的通道,并且不使用skip-connection或pool。类似地,fps2应用3x3 Conv和L2规范化,使每个Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 成为一个单位向量。

3.1.2.图像重建网络

IRNet根据公式(1)的渲染公式将每个观测图像Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 Ii合成为ˆIi。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
具体地说,IRNet首先预测Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,这是投射阴影和BRDF的乘积,在特定照明条件 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读下,R是Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
,这些参数值分别是第I张输入图像,第I张输入图像的估计法向图N,第I张图像的照明方向li,观察方向,所有输入图像的特征图,网络参数。
这里,我们称Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 为反射图像,如后文所述,它由CNN Neural Inverse Rendering for General Reflectance Photometric Stereo阅读产生。然后,IRNet通过下面的渲染公式合成每个图像
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
这里,光Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 和法向量 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读之间的内积在每个像素p处由 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读计算。注意,当 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读具有色通道时,我们将矩阵Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 乘上Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。因此,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 具有与Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 相同的维数**。最大值(·,0)是按元素进行的,由ReLU实现,**是元素的乘法。我们现在把 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读分成三部分来解释它的细节。
单个观察图像转化为特征图。
第一部分将每幅观察到的图像 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读(我们称之为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 )变换成特征映射Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
,如下所示。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的网络结构与式(8)中的fps1相同,只是我们对fir1使用Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的channel。为了更有效地学习brdfs,我们对输入Xi使用额外的镜面反射Channel Si作为
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
其中,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 作为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
在每个像素p处计算。

这里,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 是镜面反射的方向(图2中Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 之间的虚线)。过去的研究表明, Neural Inverse Rendering for General Reflectance Photometric Stereo阅读与BRDF的实际镜面反射分量高度相关。因此,直接将其作为网络提示将促进复杂brdf的学习。

特征融合。
由于 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读在特定光照Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 下的观测信息有限,我们用公式(8)中的**Φ【所有输入图像的特征图】**来丰富它,公式(8)中有更全面的场景信息。我们的做法类似于作为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
的全局特征和局部特征融合(Charles et al.,2017;Iizuka et al.,2016)
其中,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 适用于1x1 Conv、BatchNorm和ReLU。注意,将Conv应用于Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 有效地完成为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,其中W2Φ+b的Conv仅计算一次,并重复用于所有观测i。

输出。
混合后,我们最终将 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读输出到
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
其中Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 是3x3 Conv、BatchNorm、ReLU和3x3 Conv。如等式(11)所述,所得Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 用于将每个图像重建为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,这是IRNet的最终输出。

注意,IRNet的内部通道都与 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读相同。此外,IRNet在SGD迭代期间同时重建所有图像,方法是将它们作为一个mini patch处理Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
。下一节将详细介绍此学习过程。

3.2.学习程序(优化)

我们使用SGD通过最小化下列损失函数来优化网络参数θ。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
第一项定义了合成Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 和观察图像 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读之间的重建损失,这在第3.2.1节中解释。第二项定义了预测Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 和一些先验法向图 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读之间的弱监督损失。该项仅在SGD的早期迭代中**Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,以预热随机初始化的网络并稳定学习。这在第3.2.2节有更多的解释。其他实现详细信息和超参数设置在第3.2.3节中描述。
最重要的是,通过在SGD迭代中更新网络参数θ,网络可以直接适应特定的测试场景,而无需对其他数据进行任何预训练。在收敛时得到了最终结果。

3.2.1重建损失

重建损失定义为目标区域O上 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读之间的平均绝对误差,即
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
这里,范围是 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的O是二进制对象掩码,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 是它的对象区域大小。使用绝对误差增加了对高强度镜面高光的鲁棒性。

3.2.2.EARLY-STAGE WEAK SUPERVISION

如果目标场景具有相对简单的反射特性,即使从随机初始化的网络开始,单靠重建损失往往可以得到很好的解决方案,但是对于复杂场景,需要通过添加以下弱监督来预热网络。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
在这里,先验的法线贴图 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读是使用第2.1节中描述的最简单的最小二乘方法,即使用所有观察到的像素,而不进行任何阈值设置。由于阴影和非朗伯镜现象的存在,这种最小二乘解可能非常不准确。但是,即使这样的先验在我们的方法中也能很好地工作,因为我们只在优化的早期阶段使用它们来指导优化。为此,我们为初始的50次迭代设置Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,然后在之后将其设置为零。系数c为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 之间的自适应权值,计算为I在目标对象区域上的平均强度,即,Neural Inverse Rendering for General Reflectance Photometric Stereo阅读

3.2.3.实现细节

我们使用Adam (Kingma & Ba, 2015)作为优化器。对于每个测试场景,我们迭代SGD更新1000步。Adam的超参数α被设为Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 在前900次迭代,然后在最后100次迭代优化中下降到Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。我们使用其他超参数的默认值。通过He初始化(He et al., 2015)随机初始化卷积权值。

在每次迭代中,PSNet都会预测表面法线贴图 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读,然后IRNet会将所有观察到的图像Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 作为minibatch样本重建。 给定Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 ,我们计算损耗 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读并更新两个网络的参数θ。

在计算式(18)中的重构损失Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 时,我们将其90%的元素随机去掉,代之以10倍的比例缩放Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 。这种处理是为了弥补众所周知的SGD局部收敛性差的问题,使用了一个大的minibatch (Keskar et al., 2017)。

因为我们在测试过程中学习网络参数,所以我们总是使用给定数据的统计信息(即,我们从不使用移动平均数据)。

在输入到网络之前,输入图像 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读被目标对象区域的一个平滑边界框裁剪,以减少冗余计算。然后,将图像通过全局缩放归一化为
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
其中σ是目标区域上Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 的均方根强度的平方根。对于PSNet,归一化图像张量Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 进一步与二进制掩码O连接作为输入(这不就是mask?)。

4. 实验

在本节中,我们将使用一个具有挑战性的真实场景基准来评估我们的方法,该基准名为DiLIGent(Shi et al.,2018)。在第4.1节中,我们展示了与最先进的光度立体方法的比较。然后我们进一步在4.2和4.3节中分析了网络结构和弱监督技术。在实验中,我们对D数据集提供的每个场景使用M = 96的观察图像。我们的方法是在Chainer (Tokui et al.,2015)中实现的,运行在单个nVidia Tesla V100 GPU上,具有16gb内存和32位浮点精度。

4.1。真实场景基准(D)

我们在表1中展示了我们在D基准测试(Shi et al.,2018)上的结果,其中我们通过平均角度误差将我们的方法与10个现有方法进行了比较。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
表1. DiLiGenT光度立体基准的十个真实场景的比较(Shi等人,2018)。我们将我们提出的方法与十个现有的校准光度立体方法进行比较。在这里,我们显示了十个场景的平均角度误差(以度为单位)(即使用GT法线 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读)在对象区域上的 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读的平均值)。除了GOBLET和HARVEST的两个场景,我们的方法均能达到最佳精度。第二好的方法(Santo et al。,2017)也使用了深度神经网络,但是它需要对合成数据进行有监督的预训练,并且仅在HARVEST方面优于其他现有方法。baseline最小二乘法的结果在我们的方法中用作弱监督的先验法线。由于先验仅用于早期学习,因此其低准确性对我们方法的性能并不重要。请注意,由于我们方法的不确定性,因此将其在每个场景中的准确性评估为11轮的平均得分。

我们还在图4中显示了前三种方法和基线方法在reading和Harvest的可视比较。我们的方法对于包含不同材质和反射率面的8个场景(除了两个高脚杯和收获场景)取得了最好的平均分和最佳的个体分。考虑到另一种神经网络方法(Santo et al.,2017)尽管具有监督学习,但仅在Harvest方面优于其他现有方法,这是值得注意的。这次收获是所有场景中最困难的,因为铸件展示cast阴影和相互反射的强烈相互作用,以及空间变化的材料和复杂的金属BRDFs。对于这样复杂的场景,监督预训练(Santo等,2017)是有效的。baseline方法性能很差,特别是对于镜面对象。虽然我们使用它的结果作为指导先验,但由于我们提出的早期监督,它的低准确性对我们的方法并不重要。我们将在第4.3节中进一步分析它。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
图4. READING和HARVEST场景的视觉比较。 在每个场景的左至右列中,我们显示1)观察到的图像和合成图像,2)GT法线和图像重建误差图,以及3-6)通过四种方法估算的表面法线和角度误差图。 角度误差图中的数字表示其平均误差。 有关更多比较,请参见补充材料。

4.2。网络架构分析

在表2的中间部分,我们通过修改方法的架构来展示方法的性能变化。具体来说,我们测试了两个设置,其中我们禁用了两个从PSNet到IRNet的连接,即,第3.1.2节描述了反射通道输入和全局观测混合。如图所示,所提出的完整体系结构执行得最好,而去除通道输入的反射性影响最大。正如预期的那样,直接输入一个反射通道确实简化了复杂BRDFs的学习(例如,COW中的金属表面),展示了我们基于物理的网络架构的强大,可以利用已知的pysical反射率特性来学习BRDF。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
表2.对提出的网络体系结构和弱监督的评估。 对于每个项目,我们通过11轮显示中位数和均值(左右)。 在此,S,G和WS分别表示镜面反射输入,特征融合和通过先验法线图的弱监督。 与建议的设置相比,红色/蓝色的单元格颜色表示相对精度较差/更好。

4.3.前期弱监督的影响

本文通过比较两种不使用或全阶段监督(即 Neural Inverse Rendering for General Reflectance Photometric Stereo阅读或常数)的情况,评估了早期弱监督对学习策略的有效性。性能比较见表2的底部。与早期监督相比,没有监督的学习产生可接受的中位数分数,但平均分数更差。这表明,没有监督的学习是非常不稳定的,并且经常陷入糟糕的局部极小值,如图5所示(绿色轮廓)。另一方面,在所有阶段的监督下学习相对稳定,但由于不准确的最小二乘先验值而有很大的偏差,通常会产生如图5所示的更差的解(蓝色轮廓)。相比之下,使用建议的早期监督(红色轮廓)进行学习更为稳定,并且即使在t=50(以垂直虚线显示)终止监督后,仍能持续提高准确性。
Neural Inverse Rendering for General Reflectance Photometric Stereo阅读
图5.具有不同类型的弱监督的收敛性分析。 我们显示了READING和COW的平均角度误差(顶部)和loss值(底部)的学习曲线,通过11轮行程(有色区域)和中位数(实线)的分布进行了剖析。 与建议的早期弱监督(红色)相比,不使用/进行所有阶段的监督(绿色/蓝色)通常是不稳定或不准确的。 t = 50处的垂直线表示终止了早期监督。 有关其他场景的结果,请参见补充材料。 最好在彩色下观看。

5.讨论和相关工作

我们的方法受到了最近Ulyanov等人关于深度图像先验的工作的启发(2018年)。结果表明,CNNs的结构本身是自然图像的良好正则化器,并且通过对单个测试图像进行CNN拟合,在图像超分辨率和修复等非监督任务中取得了成功的结果。然而,他们简单的glass-hour网络并不直接适用于光度立体,因为我们这里需要同时考虑表面法向估计,它解释了观测的全局统计,以及用于定义损失的单个观测的重建。我们的新架构通过使用基于经典物理的光度立体方法来解决这个问题。
我们的网络架构也部分受到了(Santo等人,2017)的影响,该架构使用五个完全连接和ReLU层加一个输出层的简单前馈网络,将每像素观测Neural Inverse Rendering for General Reflectance Photometric Stereo阅读 回归为三维法向量。如果我们使用具有更多层和通道的1x1 Conv(即,他们使用4096通道和2048通道作为五个内部层),那么我们的PSNet将变得与他们的PSNet相似。由于我们的方法只需要学习单个测试场景的反射特性,因此我们的PSNet需要更少的层和通道。更重要的是,我们还引入了IRNet,它允许对测试数据进行直接的无监督学习。
利用(浅层)神经网络对光度立体进行了其他一些早期研究。这些方法在更为受限的条件下工作,例如,假设使用具有目标物体的相同材料的校准球体(Iwahori等人,1993;1995)、特殊图像捕捉设置(Iwahori等人,2002;Ding等人,2009)或Lambertian表面(Cheng,2006;Elizondo等人,2008)进行预训练,而这些都不是我们的方法。

目前,我们的方法具有运行时间慢(例如,每一个场景执行1000次SGD迭代需要1小时)和对复杂场景的性能有限(例如,收获)的限制。然而,一些研究(Akiba等人,2017年;You等人,2017年;Goyal等人,2017年)显示,CNN使用非常大的minibatch进行快速训练,并调整SGD步长的调度。由于我们的稠密预测方法最多可以使用M×H×W的minibatch像素样本,因此使用这种加速方案可以提高收敛速度。此外,类似于(Santo等人,2017)的预训练方法对我们的方法仍然可行,这将加速收敛,并将提高复杂场景的精度(丢失置换不变性)。对这些方向的深入分析

未来的工作

6。结论

本文提出了一种新的用于光度立体的CNN结构。所提出的无监督学习方法弥补了现有监督神经网络方法和许多其他基于经典物理的无监督方法之间的差距。因此,我们的方法可以利用深神经网络的强大表达能力和以往研究所知的物理反射特性来学习复杂的brdf,像经典方法一样以无监督的方式实现最先进的性能。我们也希望,我们的基于物理的无监督学习的想法能够刺激我们对缺乏训练用的GT数据的任务的进一步研究,因为即使如此,物理在现实世界中无处不在,这将为我们想要的隐藏数据提供强有力的线索。