摘要
通过给定在不同照明条件下获取的一组图像,光度立体可以估计表面法线。为了处理涉及图像形成过程的各种因素,最近的光度立体方法需要大量图像作为输入。我们提出了一种方法,该方法可以通过学习在不同照明条件下最有用的图像来显着减少对图像数量的需求。为此,我们使用深度学习框架来自动学习输入时所需的关键照明条件。此外,我们提出了一种可以合成投射阴影的遮挡层,可以有效地提高估计精度。我们在具有挑战性的现实条件下评估我们的方法,在这种条件下,我们在光照条件下的数量大大减少,从而优于文献中的其他技术。
光度立体:
上一篇博客说到了郎勃模型,这里讲一下基于郎勃模型的传统光度立体算法
光度立体三维重建的质量依赖于场景设定约束的满足情况,其基本假设包括以下几条:
(1)目标重建区域没有阴影和高光;
(2)成像过程是线性的;
(3)远光源且入射光平行;
(4)投影过程满足正交投影;
(5)物体为朗伯表面;
传统光度立体方法主要包括以下几步:
(1)图像采集;
(2)相机内参及光照方向标定;
(3)检测阴影及高光;
(4)物体法向估计;
(5)积分重建;
下面讲如何计算表面法向,首先是郎勃模型的反射公式
光度立体算法是对于满足郎勃反射模型的物体,在相机固定的情况下,通过改变光照方向,从而从多张不同的光照图对目标物体进行三维重建的一种算法。具体计算过程就用到了上面写的反射公式,
光度立体的计算前提是需要知道每张图的光照方向和亮度矩阵的,对应到公式中就是L和I,然后对上面的公式做变形,就得到了,于是想求表面法向n就变成了求ρn的乘积,又因为ρ反照率是一个标量,因此求得了ρn就表示求得了一个ρ倍的单位法向量,因此对ρn单位化即可得到单位法向量
又因为法向量的表示可以由下面的公式通过梯度来表示,
因此,知道了n,求解p,q就变成了一个解方程的问题,解得p,q之后,其中p、q为物体表面高度z分别在x、y方向上求偏导,得到的梯度值,表示为:
最后对p,q进行积分得到物体的高度z,就完成了光度立体方法进行三维重建。
1.简介
光度立体技术是一种从固定视角,根据不同照明条件下拍摄的照片,来估算物体表面法线的技术。由于现实世界材料的不同表面,因此需要一种用于处理一般反射率的方法。朝此方向发展的最新方法通过鲁棒估计来提高估计精度,但要以增加图像数量为代价,例如[21](一篇施柏鑫2010年的论文)。但是,这会使数据采集设置和标定过程变得复杂。
最近,基于深度学习的方法出现在光度立体的背景下[16、8、3]。这些方法显示出对具有不同反射率的表面有效,表明即使存在多样性,也可以很好地建立从输入图像到表面法线的映射。与这些主要关注估计准确性的方法不同,我们研究减少所需图像数量以最小化光度立体输入的问题。我们通过学习不同光源方向的相对重要性来解决此问题,这为轻量级数据采集开辟了选择最佳输入光源方向的可能性。
但是,减少输入光源方向的数量而不损失性能是艰巨的任务,因为表面辐射度由照明强度,光源方向,表面法线和BRDF函数确定。例如,Argyriou等文献[2]使用稀疏的照明表示,以在朗伯曲面的假设下将所需的照明数量减少至5。但是投射阴影,镜面反射和相互反射的存在使任务更加复杂。(意思就是非郎勃表面就更困难,这篇论文是在理想条件下减少的光源)
在本文中,我们提出了一种深度学习方法,该方法应用了一个连接表,该连接表可以选择与表面法线预测过程最相关的光源方向。为此,我们使用了一个连接表,以引入可训练的输入图。此图是通过使用L1范数和稀疏损失来训练的。训练模型后,仅在输入图像数量大大减少的情况下,它才能有效地估计表面法线,而不会降低精度。为了我们方法的可扩展性,这里我们使用观察图[8]选择光源方向,并以像素方式估计表面法线。
此外,为了解决全局照明的影响,我们明确地解决了投射阴影的问题。具体地说,通过将投射阴影视为观察图上的局部零模式,我们在网络中引入了一个遮挡层来处理投射阴影。总而言之,我们的贡献是:
1.我们在网络输入中提出一个连接表,以及合适的损失函数和排序选择过程,以便选择与表面法线预测过程最相关的光源方向。
2.我们提出了一个可以模拟物体投射阴影的遮挡层。此遮挡层可以应用于数据增强和实际数据集,并可以增强在阴影区域的性能。
3.我们用于光度立体的端到端深度神经网络可以在减少光源方向数量的情况下预测表面法线。这与我们在DiLiGenT基准测试[17]上得出的结果一致,在该基准测试中,我们最少可以使用8个输入图像来预测表面法线。
图1.仅使用8种输入的性能,DiLiGenT 的“pot1”上的PSFCN [3]和CNN-PS [8]。本文性能略胜PS-FCN一些,比CNN-PS好很多
2.相关工作
光度立体的文献非常丰富,但是可以分为以下几类:
最小二乘法:
由伍德汉姆[20]提出,最小二乘法旨在解决朗伯假设下的问题,即像素强度与光源方向和表面法线之间的角度的余弦成正比。此外,他们通常认为表面是凸面的,没有投射阴影,具有均匀的朗伯反射率。朗伯假设很重要,因为它允许将图像形成模型,转换为可以以封闭形式求解的线性方程组。
稳健的方法:
通过将非朗伯区域视为异常值,这些方法可以应对镜面反射并在要研究的对象上施加阴影。 Wu等[21]在图像形成模型中添加了一个附加项,以便自然地表示误差,该误差解决了那些偏离朗伯假设的像素,并使用秩最小化解决光度立体问题。在上述假设下,许多其他技术也用于解决问题,例如RANSAC [14],期望最大化[22],稀疏回归[9]和变分优化方法[15]。
基于示例的方法:
这些方法以材料和表面几何示例作为参考,以估计示例集中具有相同或相似BRDF函数的未知对象的表面法线。 Hertzmann和Seitz [5]第一次提出了一种将对象上的材料聚类的方法。最近,Hui和Sankaranarayanan [7]使用虚拟渲染的球体代替物理球体进行法线估计。
深度学习: