专利名称:从单幅图像估计物体表面材质反射属性的方法
专利类型:发明专利
专利申请号:CN202210113032.7
专利申请(专利权)人:北京师范大学
权利人地址:北京市海淀区新街口外大街19号
专利发明(设计)人:段福庆,程斌,周明全
专利摘要:本发明涉及一种从与相机并置的点光源照明条件下获取的单幅图像估计物体表面材质反射属性的方法,首先对一组复杂三维形状模型,分别在与相机并置和偏置的点光源照明条件下,渲染不同材质属性的图像数据,构建材质数据集;其次构建一个基于注意力机制的单幅图像材质反射属性估计网络,单幅图像材质反射属性估计网络包含一个初始估计网络模块和两个优化估计网络模块,每个模块采用注意力机制提取反射属性特定的特征;损失函数中加入了与相机偏置的点光源照明条件下根据材质属性估计结果渲染生成的图像的损失项,用来减小高光部分对于材质属性估计的影响。本发明可应用于计算机图形学、虚拟现实与增强现实领域,提升属性的估计精度并能降低高光影响。
主权利要求:
1.一种从单幅图像估计物体表面材质反射属性的方法,其特征在于,包括:
步骤1,对一组带有材质反射属性的三维模型,分别在与相机并置和偏置的点光源照明条件下,设定相机内外参数矩阵,在不同视点下渲染生成不同材质属性的图像数据,构建材质数据集;
步骤2,构建基于注意力机制的材质反射属性估计网络,其中,材质反射属性估计网络包含一个初始估计网络模块和两个优化估计网络模块,初始估计网络模块和优化估计网络模块均采用自编码器结构,初始估计网络模块先使用编码器对输入图像提取特征,然后对每个反射属性用一个单独的注意力模块提取属性特定的编码特征,再使用解码器对特征进行解码,得到初始反射属性估计结果,在初始估计模块后以堆栈的形式接入两个优化估计网络模块对初始估计结果进行优化,优化网络模块对每个反射属性采用单独的自编码器进行优化,同样在编码器后接入注意力模块提取属性特定的特征,并在对应的编码层和解码层之间添加了跳连结以加速网络的训练;
步骤3,设计损失函数,采用步骤1中的材质数据集对材质反射属性估计网络进行网络训练,获得神经网络模型,其中,损失函数包括如下损失:初始估计网络模块和每个优化估计网络模块对每种材质属性估计结果的L2损失;采用与相机并置的点光源照明条件下,分别根据初始估计网络模块和每个优化估计网络模块估计的材质反射属性渲染生成的图像的L2损失;以及与相机偏置的点光源照明条件下,分别根据初始估计网络模块和每个优化估计网络模块估计的材质反射属性渲染生成的图像的L2损失;
其中,损失函数采用下式计算:
其中,下标A,R,S分别表示漫反射项、粗糙度和镜面反射项,上标0,1,2则分别表示初始估计、第一次优化和第二次优化, 分别表示漫反射系数初始估计、第一次优化和第二次优化的L2损失; 表示粗糙度初始估计、第一次优化和第二次优化的L2损失; 分别表示镜面反射系数初始估计、第一次优化和第二次优化的L2损
失,Lrender表示渲染损失,包含分别在与相机并置和偏置的点光源照明条件下,分别对初始估计和优化估计的材质属性渲染生成的图像的L2损失,λA、λR、λS、λrender分别表示漫反射损失、粗糙度损失、镜面反射损失和渲染损失的权重;
步骤4,根据步骤3中训练完成的神经网络模型,输入与相机并置的点光源照明条件下获取的单幅图像,输出单幅图像中物体表面的材质反射属性贴图。
2.根据权利要求1所述的从单幅图像估计物体表面材质反射属性的方法,其特征在于,步骤1中,材质数据集包括分别在与相机并置和偏置的点光源照明条件下渲染生成的图像及其对应的漫反射、粗糙度、镜面反射的材质反射属性贴图和深度、法线的几何属性贴图。
3.根据权利要求1所述的从单幅图像估计物体表面材质反射属性的方法,其特征在于,步骤1中,不同视点下渲染生成不同材质属性的图像数据包括:步骤1.1,对每一个带有材质反射属性的三维模型,设定相机的内参数,随机产生20组相机外参数,根据相机的内外参数对其进行透视投影,得到20个不同视角下观察到的材质反射属性贴图、深度图及法线贴图,每张图像大小为256*256;
步骤1.2,分别在与相机并置和偏置的点光源照明条件下,对每一个视角下得到的材质属性贴图和几何属性贴图,进行模型渲染,分别得到并置和偏置点光源照明下的图像数据。 说明书 : 从单幅图像估计物体表面材质反射属性的方法技术领域[0001] 本发明涉及计算机图形学技术领域,具体涉及一种从单幅图像估计物体表面材质反射属性的方法。背景技术[0002] 材质反射属性是对光线在物体表面及物体内部传播性质的一种描述,它从本质上刻画了光与物体之间的交互作用,光线在不同材质的物体表面反射不同,材质属性直接影响物体的外观,例如在同等光照条件下,金属的外观会比木材更加明亮,有着更为明显的镜面反射效果,材质反射属性通常用于真实感绘制中使虚拟物体外观产生逼真的效果,材质属性建模一直是计算机图形学中的研究热点,在3D动画、电影、游戏以及虚拟现实领域有十分广泛的运用。[0003] 一般物体的表面反射材质通常由空间双向反射分布函数(SVBRDF)来表示,SVBRDF描述了物体表面不同点处给定入射方向上的辐射照度如何影响给定出射方向上的辐射率,即入射光线经过物体表面反射后如何在各个出射方向上分布,SVBRDF主要由物体表面法向量和漫反射、粗糙度和镜面反射等属性决定,根据这些属性和物体表面几何信息可以渲染出任意光照下的物体外观。[0004] 材质反射属性建模是一项非常具有挑战性的任务,现有技术中的方法大都依赖精心设计的光场采集系统,在高度校准的条件下稠密采集物体在不同光照和视角下的纹理照片,然后利用这些纹理照片进行逆向渲染来估计材质反射属性,通常一个物体的数据采集需要数个小时,费时费力,近年来,基于深度学习进行材质反射属性估计逐渐引起研究人员的关注,这类方法旨在减少数据采集的复杂度,通常从拍摄的稀疏视点图像中估计材质属性,简单高效,但需要大量的材质数据进行训练,而现有的材质数据库非常有限且基本都是近平面样本的数据,这使得这类方法的应用受限,不适于复杂形状物体的外观建模,此外,物体的外观取决于物体的几何特性、材质、光照和视点等因素,这四者的不同组合可能会导致相同的外观,这也给材质反射属性建模增加了一定的困难。[0005] 针对现有技术存在的如上述技术问题,本发明提供一种基于单幅图像的物体表面材质反射属性估计的方法。发明内容[0006] 本发明的目的在于提供一种从单幅图像估计物体表面材质反射属性的方法。[0007] 本发明采取以下技术方案:[0008] 一种从单幅图像估计物体表面材质反射属性的方法,包括以下步骤:[0009] 步骤1,对一组带有材质反射属性的三维模型,分别在与相机并置和偏置的点光源照明条件下,设定相机内外参数矩阵,在不同视点下渲染生成不同材质属性的图像数据,构建材质数据集;[0010] 步骤2,构建基于注意力机制的材质反射属性估计网络;[0011] 步骤3,设计损失函数,采用步骤1中的材质数据集对材质反射属性估计网络进行网络训练,获得神经网络模型;[0012] 步骤4,根据步骤3中训练完成的神经网络模型,输入与相机并置的点光源照明条件下获取的单幅图像,输出单幅图像中物体表面的材质反射属性贴图。[0013] 进一步地,步骤1中,材质数据集包括分别在与相机并置和偏置的点光源照明条件下渲染生成的图像及其对应的漫反射、粗糙度、镜面反射的材质反射属性贴图和深度、法线的几何属性贴图。[0014] 进一步地,步骤2中,材质反射属性估计网络包含一个初始估计网络模块和两个优化估计网络模块,每个模块采用自编码器结构,初始估计网络模块先使用编码器对输入图像提取特征,然后对每个反射属性用一个单独的注意力模块提取属性特定的编码特征,再使用解码器对特征进行解码,得到初始反射属性估计结果,在初始估计模块后以堆栈的形式接入两个优化估计网络模块对初始估计结果进行优化,优化网络模块对每个反射属性采用单独的自编码器进行优化,同样在编码器后接入注意力模块提取属性特定的特征,并在对应的编码层和解码层之间添加了跳连结以加速网络的训练。[0015] 进一步地,步骤3中,损失函数包括如下损失:[0016] 初始估计网络模块和每个优化估计网络模块对每种材质属性估计结果的L2损失;采用与相机并置的点光源照明条件下,分别根据初始估计网络模块和每个优化估计网络模块估计的材质反射属性渲染生成的图像的L2损失;以及与相机偏置的点光源照明条件下,分别根据初始估计网络模块和每个优化估计网络模块估计的材质反射属性渲染生成的图像的L2损失。[0017] 进一步地,步骤1中,不同视点下渲染生成不同材质属性的图像数据包括:[0018] 步骤1.1,对每一个带有材质属性的三维模型,设定相机的内参数,随机产生20组相机外参数,根据相机的内外参数对其进行透视投影,得到20个不同视角下观察到的材质属性图、深度图及法线图,每张图像大小为256*256;[0019] 步骤1.2,分别在与相机并置和偏置的点光源照明条件下,对每一个视角下得到的材质属性图和几何属性图,按照微表面BRDF模型进行模型渲染,分别得到并置和偏置点光源照明下的图像,其中,微表面BRDF模型表述为下式(1):[0020][0021] 上式(1)中,F为菲涅耳函数,D为法向分布函数,G为阴影遮挡函数,表述为如下式(2)至(4):[0022] F(S,V,H)=S+(1‑S)·2‑[5.55473(V·H)+6.8316](V·H)……(2),[0023][0024][0025] 式(4)中,G1和G2分别是与视线和入射光线有关的遮挡函数:[0026][0027][0028] 上式(1)至(6)中,A,N,R,S分别表示漫反射系数、单位法线向量、粗糙度和镜面反[0029] 射系数,V和L分别表示视线和光线的单位方向向量, 为V和L的中间向量,α2=R,[0030] 进一步地,步骤3中,损失函数采用下式(7)计算:[0031][0032] 上式(7)中,下标A,R,S分别表示漫反射项、粗糙度和镜面反射项,上标0,1,2则分别表示初始估计、第一次优化和第二次优化, 分别表示漫反射系数初始估计、第一次优化和第二次优化的L2损失; 分别表示粗糙度初始估计、第一次优化和第二次优化的L2损失; 分别表示镜面反射系数初始估计、第一次优化和第二次优化的L2损失,Lrender表示渲染损失,包含分别在与相机并置和偏置的点光源照明条件下,根据Karis提出的微表面BRDF模型分别对初始估计和优化估计的材质属性渲染生成的图像的L2损失,λA、λR、λS、λrender分别表示漫反射损失、粗糙度损失、镜面反射损失和渲染损失的权重。[0033] 本发明的优越技术效果在于:利用一组具有复杂表面形状的三维模型,渲染生成了一个材质数据集,相比已有的材质数据集,更适于任意复杂形状物体表面的材质反射属性估计;提出了一个端到端的基于注意力机制的材质反射属性估计网络框架,针对每种材质属性分别加入注意力模块,能够学习属性特定的特征,提升属性的估计精度;设计了一个偏置光源照明渲染的损失项,能降低高光的影响。附图说明[0034] 图1是本发明实施例中从单幅图像估计物体表面材质反射属性的方法的流程示意图;[0035] 图2是本发明实施例中神经网络结构图;[0036] 图3是本发明实施例中神经网络参数图。具体实施方式[0037] 为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述,需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。[0038] 实施例[0039] 如图1所示,所述从单幅图像估计物体表面材质反射属性的方法包括如下步骤:[0040] 步骤1,数据生成,对一组带有材质反射属性的三维模型,选取不同的材质属性,分别在与相机并置和偏置的点光源照明条件下,在不同视点下渲染生成不同材质属性的图像数据,构建材质数据集,数据集包括渲染生成的图像及其对应的漫反射、粗糙度、镜面反射的材质反射属性贴图和深度、法线几何属性贴图;[0041] 步骤2,网络设计,构建基于注意力机制的单幅图像材质反射属性估计网络;[0042] 步骤3,网络训练,设计损失函数,采用步骤1中的材质数据集进行网络训练;[0043] 步骤4,材质估计,根据训练好的神经网络模型,输入与相机并置的点光源照明条件下获取的单幅图像,输出图像中物体表面的材质反射属性贴图。[0044] 在上述实施例中,步骤1中述及的一组带有材质反射属性的三维模型,是从Sketchfab网站中下载的真实的带有材质属性UV贴图的一组82个文物三维模型,通过对文物模型的材质UV贴图进行随机线性变换对材质数据进行扩充,生成新的材质UV贴图,具体操作如下:[0045] Y=wX+b,[0046] 上式中,X为原始的材质UV图,Y为新生成的材质UV贴图,w和b为随机生成的稀疏变换矩阵,要满足计算所得的Y的每个元素在0到1之间,经过22次随机线性变换,每个模型最终生成了23组不同材质属性的UV贴图,每组材质属性包含漫反射系数、粗糙度和镜面反射系数,得到带有不同材质反射属性的三维模型;[0047] 不同视点下渲染生成不同材质属性的图像数据按照如下方式:对每一个带有材质属性的三维模型,设定相机的内参数,随机产生20组相机外参数,根据相机的内外参数对其进行透视投影,得到20个不同视角下观察到的材质属性图、深度图及法线图,每张图像大小为256*256像素,分别在与相机并置和偏置的点光源照明条件下,对每一个视角下得到的材质属性图和几何属性图,根据Karis提出的微表面BRDF模型进行渲染,分别得到并置和偏置点光源照明下的图像;[0048] 其中,微表面BRDF模型表述为:[0049][0050] 各项表述如下:[0051] F(S,V,H)=S+(1‑S)·2‑[5.55473(V·H)‑6.8316](V·H),[0052][0053][0054][0055] α=R2,[0056][0057][0058][0059] 上式中,A,N,R,S分别表示漫反射属性,法线,粗糙度和镜面反射属性,V和L分别表示视线和光线的方向,H为V和L的中间向量,D为法向分布函数,G为阴影遮挡函数,G1和G2分别是与视线和入射光线有关的遮挡函数,F为菲涅耳函数。[0060] 在上述实施例中,如图2所示,步骤2中材质反射属性估计网络包含一个初始估计网络模块和两个优化估计网络模块,每个网络模块均采用Unet的结构,初始估计网络模块先使用编码器对输入图像提取特征,在编码器后接入注意力模块,学习不同材质反射属性对应的特征权重分配,以提取相应反射属性特定的编码特征,然后使用解码器对特征进行解码,得到初始反射属性估计结果,在此初始估计模块后以堆栈的形式接入两个优化估计网络模块对初始估计结果进行优化,优化网络模块同样采用U‑net结构加注意力机制的方法,但是在编码器和解码器的设计中为了加快网络的训练速度,在对应的编码层和解码层之间添加了跳连结,网络中的具体参数设置如图3所示,R表示resnet残差块,cM1‑kM2‑sM3‑dM4表示输出通道M1、卷积核大小M2、步长M3和卷积核膨胀M4的网络层;Attention表示注意力模块;W、H、C表示特征的宽、高和通道数;GAP表示全局平均池化操作;conv表示卷积操作。[0061] 在上述实施例中,步骤3中的损失函数的设计包括如下损失:初始估计网络模块和每个优化估计网络模块对每种材质属性估计结果的L2损失,采用与相机并置的点光源照明条件下,分别根据初始估计和优化估计的材质属性渲染生成的图像的L2损失,以及与相机偏置的点光源照明条件下,分别根据初始估计和优化估计的材质属性渲染生成的图像的L2损失,具体采用下式计算:[0062][0063] 上式中,下标A,R,S分别表示漫反射项、粗糙度和镜面反射项,上标0,1,2则分别表示初始估计、第一次优化和第二次优化, 分别表示漫反射系数初始估计、第一次优化和第二次优化的L2损失; 表示粗糙度初始估计、第一次优化和第二次优化的L2损失; 分别表示镜面反射系数初始估计、第一次优化和第二次优化的L2损失,Lrender表示渲染损失,包含分别在与相机并置和偏置的点光源照明条件下,根据Karis提出的微表面BRDF模型分别对初始估计和优化估计的材质属性渲染生成的图像的L2损失,λA、λR、λS、λreneer分别表示漫反射损失、粗糙度损失、镜面反射损失和渲染损失的权重,其中,λA=λR=λS=1,λrender=0.5。[0064] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的范围内,能够轻易想到的变化或替换,都应涵盖在本发明权利要求的保护范围内。
专利地区:北京
专利申请日期:2022-01-29
专利公开日期:2024-07-26
专利公告号:CN114549431B