一种基于光度立体视觉的测量材质几何特征重构方法与流程

文档序号:11992456阅读:203来源:国知局
一种基于光度立体视觉的测量材质几何特征重构方法与流程
本发明涉及一种基于光度立体视觉的测量材质几何特征重构方法。

背景技术:
在计算机图形学中,对布料织物、皮肤等复杂材质的真实感渲染一直是很大的挑战。这类问题的难点在于,材质的高度真实感呈现依赖于其几何建模以及材质建模。几何建模描述物体的形状特性,是构建物体表面的可见凹凸特征的宏观几何结构,而传统的宏观几何模型对材质的表达能力不够;材质建模描述物体对光照的反射特性,是构建能够影响高光分布的微观几何结构。相同几何模型的不同物体,由于表面几何结构、材料、密度、颜色等属性存在差异,在不同光照下会呈现出复杂而丰富的光学现象。微观材质模型如果不正确,图像看起来就有人造的痕迹。将几何建模与材质建模结合,BTF变成了一个很好的选择。BTF(BidirectionalTextureFunction)即双向纹理函数,能够定义与传递任意材质表面的唯一性,考虑光源和视点的因素,捕捉阴影、掩膜与复杂的非漫反射效果,使材质具有真实感,无人造痕迹。BTF是一种6维的纹理表示方法,包括光源、视点、位置信息,采集、测量、捕获真实世界的各种材质信息,将真实感材质表示为在变换光照和视角方向下的二维纹理。测量装置对材质在不同光源与视角方向下捕获的图像序列,即为BTF数据,因而BTF可以被看成空间变换的BRDF和中观-几何结构的结合。本发明旨于从BTF数据中重构材质的中观几何结构,包括物体表面的法向信息和深度信息,重构的对象为毛衣织物、壁纸、窗帘等测量材质。从图像中重构物体的几何特征,可借用计算机视觉中的三维重建方法,恢复物体表面的朝向,并根据表面的梯度场来拟合曲面。常见的三维重建方法有ShapeFromX方法、光度立体视觉法、运动图像序列法、立体视觉法等方法。在重构测量材质的几何特征过程中,重构法向信息可采用光度立体视觉方法(PhotometricStereo),采集不同光照条件下的图像序列作为该方法的输入,利用图像亮度的变化计算材质表面的法向。重构深度信息可采用最小二乘的表面重建方法,利用重构出的法向信息估计表面的梯度场,然后新建一个离散表面,使它的梯度与测量的梯度在全局垂直距离的最小二乘意义上相等,据此求解出表面的深度信息。计算过程中不受任何边界条件的约束,重建的表面能够达到二次多项式或更高级别的多项式精度,且保证是最小二乘表面重建的唯一解。光度立体视觉的方法实现简单且适用于任意近似漫反射表面的三维重建,能够恢复出场景的细节信息,适合材质从BTF数据中重构法向信息。但由于反射模型假设为理想的Lambert反射模型,而实际上输入的图像序列中都有非Lambert的异常部分,易受高光、阴影、噪声等因素的影响,使表面重建的结果出现偏差,存在低频噪声。且光度立体视觉对测量设备有严格要求,容易引入系统误差。

技术实现要素:
本发明为了解决上述问题,提出了一种基于光度立体视觉的测量材质几何特征重构方法,本方法,利用测量材质在不同角度光源与视角下的BTF数据,对光度立体视觉方法进行了优化,去除图像序列中高光、阴影、噪声等对光度立体视觉方法的影响,从而重构出物体表面的朝向。再经由重构的法向信息计算出材质表面的梯度场,采用最小二乘的表面重建方法,求解出表面的深度信息。为了实现上述目的,本发明采用如下技术方案:一种基于光度立体视觉的测量材质几何特征重构方法,包括以下步骤:(1)对测量材质在不同光源、不同视角方向下拍摄一组图像,进行多曝光-高动态范围合成和正视图校准,得到BTF数据;(2)选取视角为正视方向且光源的俯仰角为固定方位角变换的目标图像,计算其的亮度信息,根据此光源方向下所有视角的BTF数据计算相应目标图像的亮度均值;(3)计算每幅目标图像的mask图,根据mask图标记图像中每个像素位置的亮度值是否可用,若不可用,将计算的亮度均值替换相应的目标图像的亮度值;(4)遍历每个像素位置,建立所有目标图像的亮度矩阵,根据光度立体视觉方法,计算测量材质的法向信息;(5)根据测量材质的法向信息,计算测量的梯度场信息,并将其作为输入,采用最小二乘的曲面重建方法计算测量材质的深度信息。所述步骤(1)中,具体步骤包括:(1-1)采集不同视角、光源方向与曝光时间下的测量材质的数据;(1-2)通过材质测量设备拍摄的图像,利用每个曝光时间相对应的LDR图像中图像细节清晰可见的部分来合成相应视角与光源方向下的HDR图像;(1-3)根据拍摄设备的内外参数与裁剪边长,使得拍摄得到的像素按照正视视角相机的像素排列方式进行重排列,最终获得校准后的正视图像。优选的,所述步骤(1-1)中,利用相机光源阵列模式的真实感材质测量装置采集测量材质。所述步骤(2)中,具体步骤包括:(2-1)选取视角的俯仰角为0度、方位角为0度,光源方向的俯仰角固定为某一数值的所有图像,作为目标图像,获取目标图像的灰度信息,并计算这些目标图像相应的光源方向;(2-2)对每幅目标图像对应的所有视角下的图像,获取其灰度信息作为亮度值,对每一个像素位置,将这些图像在这一点的亮度值升序排序,分别去掉最大的n个值与最小的n个值,取中值作为这幅目标图像在这一像素位置的亮度均值。优选的,所述步骤(2-2)中,n为自然数,优选为5个。所述步骤(3)中,具体步骤包括:(3-1)对每幅目标图像,计算相应的mask图,用于标记此图像中每个像素位置的亮度值是否可用;(3-2)更新mask图,设定灰度阈值上下限,对每幅目标图像的每个像素位置进行灰度信息判断,若灰度信息小于下限,将此像素点视为受阴影影响,若灰度信息大于上限,将此像素点视为受高光影响,其mask值均标记为0;(3-3)对每一个像素位置,遍历目标图像的mask图,若mask值标记为1的个数小于预设值,此像素位置无法通过光度立体视觉正确计算法向信息,将所有目标图像的此像素位置的亮度值用亮度均值代替。所述步骤(3-1)中,初始mask图的mask值标记为1,记为可用。优选的,所述灰度阈值上下限为[0.2*M,1.2M],其中,M为目标图像在此像素位置的亮度均值。所述步骤(4)中,具体步骤包括:(4-1)遍历每一个像素位置,计算所有目标图像的亮度矩阵和相应的光源方向矩阵;(4-2)利用亮度矩阵和光源方向矩阵,依照光度立体视觉方法计算像素位置的法向信息。所述步骤(4-2)中,具体方法为:法向信息n=(STS)-1STI,其中,I为所有目标图像的亮度矩阵,s为相应的光源方向矩阵。所述步骤(5)中,具体步骤包括:(5-1)利用函数表示待重构材质的表面,定义参数,构成梯度空间;(5-2)根据已计算出的法向信息,计算测量的梯度场信息;(5-3)使待重构表面的测量梯度值与实际梯度的平方差的卷积最小,表达价值函数的离散形式,根据最小二乘的曲面重建方法求解,得到深度信息。所述步骤(5-1)具体为:待重构材质的表面记为z=z(x,y),则定义参数p与q如下,构成梯度空间(p,q)∈R2;所述步骤(5-2)中,具体方法为,测量的梯度场信息p与q的计算方法为:其中nx,ny,nz分别为法向量n的三个分量,p与q构成梯度空间(p,q)。所述步骤(5-3)的具体方法为:使待重构表面的测量梯度值与实际梯度的平方差的卷积最小,对应的价值函数ε的离散形式如下所示:其中和是经过光度立体视觉方法计算的测量梯度p与q,而zx与zy是待恢复表面z的真实梯度值,根据最小二乘的曲面重建方法求解此最小化问题的最优解,即计算出待重构表面的深度信息z。本发明的有益效果为:(1)本发明适用于真实世界中所有可测量的材质,利用BTF测量数据所有视角的图像信息,对光度立体视觉方法进行优化,重构材质的表面朝向,进而重构深度信息;(2)本发明在计算材质表面的法向信息阶段,使输入的图像序列出现高光、阴影等非Lamertian漫反射部分的因素影响时,能计算出较为准确的法向信息;在重构深度信息阶段,通过滤波,减少了测量梯度场的噪声对深度计算的影响。附图说明图1为基于光度立体视觉方法对测量材质的几何特征进行重构的总体流程图;图2为计算目标图像对应mask图方法的流程图;图3(a)为实例中待重构几何特征的测量材质图像;图3(b)为重构出的法向图;图3(c)重构出的未经优化的深度图;图3(d)为经中值滤波方法优化后的深度图。具体实施方式:下面结合附图与实施例对本发明作进一步说明。如图1所示,在采集BTF数据步骤中,利用相机光源阵列模式的真实感材质测量装置采集待恢复几何特征的测量材质的信息,并经过多曝光-高动态范围合成图像、正视图校准、图像预处理等数据预处理步骤,最终获得测量材质在不同视角、不同光源方向下的图像,计算相应图像的灰度值,作为测量材质在此视角此光源方向下的亮度信息。在测量材质的法向信息计算步骤中,采用光度立体视觉的方法,选取BTF数据中,视角方向固定为正视方向(俯仰角和方位角都为零),光源方向固定为某一俯仰角,变换方位角的目标图像的灰度值作为测量材质在相应光源方向的亮度值,根据其他所有视角下的图像的亮度信息,修复目标图像的亮度信息,避免阴影、高光等非Lambertian的异常部分对恢复法向信息的影响。将修复的图像的亮度信息与相应的光源方向作为输入,计算每一个像素位置上测量材质的法向信息。在测量材质的深度信息计算步骤中,采用最小二乘的曲面重建方法,利用光度立体视觉计算出的法向信息,估计出测量的梯度场,使曲面的梯度与测量的梯度的平方差的卷积价值函数最小,经过计算求出离散的测量材质的深度信息。由于测量的梯度场存在噪声,对恢复的深度信息进行中值滤波,将滤波后的深度信息作为重构的结果。一种基于光度立体视觉的测量材质几何特征重构方法,包括如下步骤:步骤1.BTF数据采集,利用相机光源阵列模式的真实感材质测量装置采集测量材质,对采集的结果进行预处理,得到BTF数据;步骤2.选取视角为正视方向,光源的俯仰角固定方位角变换的目标图像,计算目标图像的亮度信息,根据此光源方向下所有视角的BTF数据计算相应目标图像的亮度均值;步骤3.对每幅目标图像计算相应mask图,以确保测量材质的每个像素位置的数据是否可用,若不可用,利用目标图像的亮度均值更新目标图像的亮度值。步骤4.计算测量材质的法向信息,输入目标图像的亮度信息及相应的光源方向,采用光度立体视觉方法计算法向信息;步骤5.计算测量材质的深度信息,根据测量材质的法向信息,计算测量的梯度场信息作为输入,采用最小二乘的曲面重建方法计算测量材质的深度信息;步骤6.对计算的深度信息进行中值滤波,将滤波后的深度信息作为重构的结果。所述步骤(1)包括如下步骤:步骤(1.1):利用相机光源阵列模式的真实感材质测量装置采集不同视角、光源方向、与曝光时间下的测量材质的数据。步骤(1.2):多曝光-高动态范围合成图像(合成HDR),通过材质测量设备拍摄的图像,利用每个曝光时间相对应最佳细节的LDR图像来合成相应视角与光源方向下的HDR图像。步骤(1.3):正视图校准,由于拍摄时视角是俯仰角从0到90,方位角0到360度,并不都是正视图像,这里根据相机内外参数与裁剪边长,让该视角相机拍摄得到的像素按照正视视角相机的像素排列方式进行重排列,最终获得校准后的正视图像。所述步骤(2)包括如下步骤:步骤(2.1):选取视角的俯仰角为0度、方位角为0度,光源方向的俯仰角固定为某一数值的所有图像,作为目标图像。获取目标图像的灰度信息,记为i,并计算这些目标图像相应的光源方向,记为s。步骤(2.2):对每幅目标图像对应的所有视角下的图像,获取其灰度信息作为亮度值,对每一个像素位置,将这些图像在这一点的亮度值升序排序,分别去掉最大的五个值与最小的五个值,取中值作为这幅目标图像在这一像素位置的亮度均值,记为i’。所述步骤(3)包括如下步骤:步骤(3.1):对每幅目标图像,计算相应的mask图,用于标记此图像中每个像素位置的亮度值是否可用,初始mask图的mask值标记为1,记为可用;步骤(3.2):更新mask图,对每幅目标图像,每个像素位置,若i<0.2*i’,将此像素点视为受阴影影响,其mask值标记为0;若i>1.2*i’,将此像素点视为受高光影响,其mask值标记为0;步骤(3.3):对每一个像素位置,遍历目标图像的mask图,若mask值标记为1的个数小于3,此像素位置无法通过光度立体视觉正确计算法向信息,将所有目标图像的此像素位置的亮度值i用亮度均值i’代替。所述步骤(4)包括如下步骤:步骤(4.1):遍历每一个像素位置,计算所有目标图像的亮度矩阵为I,相应的光源方向矩阵为S;步骤(4.2):根据光度立体视觉方法的公式(1),计算出此像素位置的法向信息n;n=(STS)-1STI公式(1)所述步骤(5)包括如下步骤:步骤(5.1):待重构材质的表面记为z=z(x,y),则定义参数p与q如公式(2),构成梯度空间(p,q)∈R2;步骤(5.2)根据已计算出的法向信息,计算测量的梯度场信息p与q,计算公式如公式(3);步骤(5.3):使待重构表面的测量梯度值与实际梯度的平方差的卷积最小,价值函数的离散形式如公式(4),其中和是经过光度立体视觉方法计算的测量梯度p与q,而zx与zy是待恢复表面的真实梯度值。根据最小二乘的曲面重建方法求解,即计算出待重构表面的深度信息z。实施例一:选定毛衣织物的材质如图3(a),作为待重构的测量材质,采用相机光源阵列模式的真实感材质测量装置拍摄数据。测量装置包括工作台,所述工作台上固定拍摄支架,所述拍摄支架包括半圆弧形相机固定臂、半圆弧形光源旋转臂和中心旋转托盘,所述相机固定臂上架设有多台相机,所述光源固定臂上架设有多个光源;拍摄支架和工作台通过计算机串口编程控制。通过测量相机拍摄,并经过多曝光-高动态范围合成图像(合成HDR)、正视图校准、图像预处理等数据预处理步骤,获得材质在视角的俯仰角为0度到90度(间隔15度),方位角为0度到360度(间隔15度),光源方向为0度到90度(间隔15度),方位角为0度到360度(间隔15度)拍摄的图像共6561张,像素为256*256。选定视角方向为正视方向,光源方向俯仰角为15度的六个光源方向为目标光源方向,对应的六张图像作为目标图像。步骤1.对六张目标图像计算灰度值,存储到6*65536的矩阵intensity中,矩阵的每一行存储了一张目标图像的256*256的所有像素点的亮度信息。将目标图像相应的六个光源方向,转化为笛卡尔坐标系,存储到6*3的矩阵S中;步骤2.对每个目标光源方向,计算材质在所有视角下的图像的亮度均值。首先,对每个像素位置,将所有视角下的图像的亮度值即灰度值按升序排序,然后分别去掉最大的五个值与最小的五个值,取中值作为材质在这一光源方向、这一像素位置的亮度均值。将数据存储到6*65536的矩阵intensityMean中;步骤3.初始化一个6*65536的全1矩阵mask,然后更新mask矩阵。遍历每一张目标图像i=1,2,3,…,6,对每一个像素位置j=1,2,3,…,65536,遵循如下规则:1.若intensity(i,j)<0.2*intensityMean(i,j),将此像素点视为受阴影影响,mask(i,j)标记为0;2.若intensity(i,j)>1.2*intensityMean(i,j),将此像素点视为受高光影响,mask(i,j)值标记为0。Mask矩阵更新结束后,按列j=1,2,3…65536遍历mask矩阵,若标记为1的数小于3,此像素位置无法通过光度立体视觉正确计算法向信息,将矩阵intensity的第j列替换成intensityMean的第j列;步骤4.声明一个3*65536的矩阵normal作为测量材质的法向矩阵。遍历所有的像素位置j=1,2,3…65536,根据公式(1)求出每个像素位置的法向n,存储到矩阵normal的第j列中。公式中的I为此处的第j列intensity,S为此处的光源方向矩阵S;步骤5.待重构材质的表面记为z=z(x,y),根据公式(3)计算测量的梯度场,根据最小二乘的曲面重建方法求解公式(4),求得离散的测量材质深度信息,存储到256*256的矩阵Z中;步骤6.采用5*5的滤波窗口,对矩阵Z进行滤波,得到测量材质最终的深度信息。上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1