一种室外场景光照参数恢复装置及其工作方法 【技术领域】
本发明涉及室外场景光照参数恢复,尤其涉及一种室外场景光照参数恢复装置及其工作方法。
背景技术
E.Nakamae于1986年首次提出将一个计算机生成的虚拟物体合成到真实场景的照片中[NHIN86]。作者通过用户简单交互场景中一些漫射材质的阴影点和非阴影点建立方程组分别求解出太阳光和天空光的红、绿、蓝色道的数值,再用恢复出来的这两个光源绘制虚拟物体,使虚拟物体和真实照片的光照看起来一致。这种方法对于一帧或者几帧图像的光照恢复尚具可操作性,对于在线的视频流则无法进行交互操作,从而完全无法进行处理。此后,由于场景的外貌很大程度上受到入射光照的影响,在逆向绘制、从明暗恢复形状以及本征图像分析等领域,都有一些获取光照参数的工作。下面对这些方法进行简单的介绍。
1、逆向绘制
在逆向绘制中,为了避免直接求解的复杂性,[LDR2000]采用手工测量的方法获得室内场景中光源的位置、颜色和强度大小。借助于仪器,这种方法可以获得较为准确的光照参数。但是显而易见,这种方法对于获取室外光照是不可行的。为了获得复杂场景和复杂光照环境下的光照参数,[DYB98]提出一种基于图像的方法。该方法把一个镜面球放入场景中来获得镜面球所在处的全向(360°)入射光,通过对镜面球拍摄若干张曝光度不同的图像,可以获得场景的全向的高动态范围的光照,把这幅图像映射到球面或者立方体上就可以对虚拟物体进行绘制。这种基于图像的光照环境的获取方法在绘制算法中得到了广泛的应用,极大地方便了复杂环境下光照环境的获取。但是,这种方法并不适合于恢复室外场景的光照环境。原因有两个:1)、室外光照中,晴朗天气下太阳光的强度非常大,对现有相机而言,即使采用最小曝光速度,太阳在镜面球上的反射光仍然会过饱和,难以恢复太阳光的正确亮度,导致光照恢复的失败。2)、室外场景中经常有云飘过,或者有微风拂过,这样难以保证用不同曝光度拍摄的多张照片的像素是完全静止或者是完全对齐的,因此获得的高动态范围图像往往不准确。
2、基于物理的方法
图像里一个物体的外貌是由物体表面的材质属性(BRDF),物体几何以及光照共同决定的。如果已知场景的几何和材质属性,则可以求解场景的光照。这种基于物理的求解方法往往利用图像像素的亮度信息、阴影、关键点等来求取光照参数。采用可控光源,[NKGR06]将一张场景图像分解成两张图像,分别为直射光照射下的场景图像和全局光照下的场景图像。此外,在shape from shading中也有一些工作恢复场景的光照参数,如[SJ08]。上述基于物理模型的光照求解方法在室内环境下如可控的实验室内能取得令人满意的效果。但是,由于这些方法大都需要场景的三维建模,因此不适合于室外场景的光照分析
3、本征图像分析
近年来,本征图像分析受到越来越多的计算机图形和计算机视觉研究者的关注[TFA05]。本征图像分解技术将一张自然图像分解成一张材质图像(本征图像)和一张光照图像,其中光照图像是光照参数与场景几何的乘积。本征图像分析的主要用途是提取出场景中光照不变的量即材质属性,可以允许用户对材质图像做进一步的编辑操作等。由于光照图像是光照参数与场景几何的乘积,因此这种方法并不能显式地求解出光照参数。此外,现有的从单幅图像里恢复场景的本征图像技术还不够鲁棒和精确,而且计算复杂度较高,不能实时进行。
4、室外场景的光照分析
近年来,室外场景的光照分析越来越受到人们的重视,[SMPR07]将一个静态场景随时间流逝而拍摄的视频体分解成3幅材质图像,两个基曲线,以及一个可压缩地阴影表示,视频体里任意张图像都可以由上述要素重构出来。由于受到假设条件的影响,即认为在晴朗天气条件下,所有像素的外貌向量在差了一个偏移量和一个尺度因子的意义下是相同的,因此这种方法只适合用于晴朗天气下的视频分解。进一步的,[SRM08]提出将室外光源的颜色分布表示为三维线性空间中的一个二维线性子空间,通过阴影提取等方法获得场景光源的色度。上述两种方法对室外场景图像进行了分析,但是没有求出明确的光照参数且没有用光照参数对虚拟物体进行绘制。此外,由于这两种方法是在视频体上进行求解的,因此只适用于对视频进行后处理,不能在线实时处理视频。
与本发明最为相关的工作是[AJM06]。这篇文章的目标也是向一个真实的场景中添加虚拟物体,当场景的光照变化时能实时的改变虚拟物体的光照。该工作把太阳光模拟为平行光,天空光模拟为泛光,通过对场景建立3D模型,可以确定出图像上每一个像素所对应的场景点,将室外光照模拟为Phong模型,建立方程组求解太阳光和天空光的值。通过在离线阶段进行一系列的预处理,并采用基于图像的绘制方法,使得对虚拟物体的嵌入可以达到实时的效果。这种方法的缺点是需要已知场景的三维模型,而如前所述室外场景的建模非常困难,因此在实际应用中具有很大的局限性。
室外场景的光照分析主要存在两个方面的挑战:(1)几何复杂性。与室内场景相比,室外场景的规模要大得多。另外,室外场景通常包括一些造型复杂如树木、地形等难以建模的物体。而现有的室内光照算法一般都要求已知场景的三维表示,因此室内的光照分析方法并不适合于室外场景的光照分析。(2)光照复杂性。室外场景中的自然光源(太阳光和天空光)具有一些特殊的属性,如室外场景的光照受云层、天气条件的影响较大,而且不能人为控制,由于场景结构复杂直接根据精确的光照明模型来反求光照参数难以进行,更难以满足实时性要求。
【发明内容】
本发明的目的在于针对现有技术的不足,提供一种室外场景光照参数恢复装置及其工作方法。该装置简便易行,由一台计算机及一台摄像机构成。该方法在不需要已知三维场景的几何信息和材质信息的前提下,能实时地获取室外场景的光照参数,使得计算机生成的虚拟物体可以无缝地融合到任意时刻的真实场景的图像序列中。光照参数是指太阳光和天空光的亮度值。
一种室外场景光照参数恢复装置,包括计算机和摄像机,计算机和摄像机通过数据线连接。
一种室外场景光照参数恢复装置的工作方法,方法如下:
1)摄像机拍摄场景的一张阴天图像,作为天空光基图像,并输入计算机;
2)根据天空光基图像,采用交互的方式确定天空光亮度值的单位;
3)摄像机拍摄任意天气情况下场景的图像序列,实时传送至计算机,计算机对当前帧进行处理;
4)通过权重函数计算当前帧的每一像素所对应的权重值;
5)根据当前帧所有像素所对应的权重值计算天空光亮度值;
6)当前帧图像的像素值减去天空光亮度值与天空光基图像对应像素值的乘积,得到当前帧图像对应像素的太阳光分量值;
7)判断当前帧是否为图像序列的第一帧?是,则令太阳光亮度值为1,太阳光分量值即为太阳光基图像;否,则用当前帧图像的太阳光分量除以太阳光基图像得到太阳光亮度值,通过当前帧图像的太阳光分量值,得到更新的太阳光基图像;
8)判断当前帧是否为最后一帧?是,工作结束;否,则下一帧作为当前帧,重复步骤(3)至(7)。
具体介绍本发明的五个方面:
1)室外光照场景下的图像线性表示模型
在太阳光为平行光源,天空光为均匀分布的面光源的假设下,室外场景中任一三维点x处的光亮度L(x,λ)都可表示成由太阳光照射的亮度部分Csun(x,λ)与由天空光照射的亮度部分Csky(x,λ)的线性组合。I(x,λ)为图像像素x在λ通道的像素值,其中λ=1,2,3分别为红、绿、蓝三个颜色通道,有:
I(x,λ)=Lsun(λ)Csun(x,λ)+Lsky(λ)Csky(x,λ) (1)
在上式中,Csun(x,λ)、Csky(x,λ)分别表示x处的阴影、几何以及x处关于天空光和太阳光的遮挡关系的综合效果。对于给定的太阳方位,无论太阳光和天空光怎么变化,这两项是确定不变的,因此分别将其称为太阳光和天空光的基图像。一般情况下,由于天空光的泛光特性,其基图像对任意太阳方位均保持不变。任意一幅室外场景的图像可以表示成太阳光基图像和天空光基图像的线性组合。
2)天空光基图像的获取
由摄像机拍摄一张场景在阴天的图像,作为该场景的天空光基图像Csky(x,λ)。
3)根据太阳光基图像的特点求解每一帧的天空光亮度值
记有在任意时刻拍摄的当前帧图像I(x,λ),计算当前帧图像的每一像素的权重值其权重函数为再对下面的能量函数对不同的颜色通道λ分别求最小解以获取参数a(λ):
其中Ω为I(x)中所有像素的集合,则有Lsky(λ)=a(λ)。在本方法中,对于灰度级为255的图像,一般取r1=r2=18。
4)根据恢复出的天空光亮度值,恢复太阳光亮度值
在恢复出天空光亮度Lsky(λ)后,即可从公式(1)中求解出当前帧的太阳光分量值Lsun(λ)Csun(x,λ)。因为太阳绕着赤道面缓慢运动,在线图像序列中两帧相邻图像的太阳位置相差很小,因此认为相邻两帧的太阳光基图像是相同的。如果当前帧为第一帧,则其太阳光分量值Lsun(λ)Csun(x,λ)为其太阳光基图像(故相对太阳光亮度为1),记为Csun0(x,λ);否则,用当前帧的太阳光分量值除以第一帧的太阳光基图像csun0(x,λ)就可以得到当前帧的太阳光亮度值,而当前帧太阳光分量Lsun(λ)Csun(x,λ)除以太阳光亮度便能获得当前帧的太阳光基图像,并将其作为新的太阳光基图像。
5)本发明定义的如式(2)所示的目标函数具有如下三个特点:
a)使用图像I(x)中的所有像素来求解天空光亮度值Lsky(λ),而非使用单个像素求解,提高了算法对噪声的鲁棒性。另一方面,虽然按照定义Csun(x,λ)应为非负值,但考虑到图像噪声易出现在阴影区域,因此目标函数要求目标函数在一个平方意义下最小,进一步提高了算法对噪声的鲁棒性。
b)无需对I(x)进行明确的二值阴影检测,使用一个权值函数控制不同亮度的像素在目标函数中的权重。
c)目标函数具有解析解:
本发明与背景技术相比较,其优点在于:
本发明采用基于图像的线性模型方法,不需要场景的三维几何信息,因而避免了对大规模室外场景进行重建时面临的种种技术挑战,使光照恢复方法更为实用。该方法在初始设定完成后,在在线阶段不需要人机交互处理,从而保证了方法可以处理视频流。由于保证了光照一致性,虚拟物体可以无缝融合到真实场景的背景视频序列中。
【附图说明】
图1是方法的流程图。
图2装置的示意图。
【具体实施方式】
下面结合附图和实例对本发明作进一步说明。
实施例:
一种室外场景光照参数恢复装置,如图2所示,包括计算机和摄像机,计算机和摄像机通过数据线连接。
一种室外场景光照参数恢复装置的工作方法,如图1所示,方法如下:
1)摄像机拍摄场景的一张阴天图像,作为天空光基图像,并输入计算机;
2)根据天空光基图像,采用交互的方式确定天空光亮度值的单位;
3)摄像机拍摄任意天气情况下场景的图像序列,实时传送至计算机,计算机对当前帧进行处理;
4)通过权重函数计算当前帧的每一像素所对应的权重值;
5)根据当前帧所有像素所对应的权重值计算天空光亮度值;
6)当前帧图像的像素值减去天空光亮度值与天空光基图像对应像素值的乘积,得到当前帧图像对应像素的太阳光分量值;
7)判断当前帧是否为图像序列的第一帧?是,则令太阳光亮度值为1,太阳光分量值即为太阳光基图像;否,则用当前帧图像的太阳光分量除以太阳光基图像得到太阳光亮度值,通过当前帧图像的太阳光分量值,得到更新的太阳光基图像;
8)判断当前帧是否为最后一帧?是,工作结束;否,则下一帧作为当前帧,重复步骤(3)至(7)。