本发明涉及计算机视觉领域,尤其是基于潜在空间扩散的神经辐射场三维重建方法。
背景技术:
1、三维场景重建作为计算机视觉和图形学领域的重要问题,旨在从一系列二维图像中还原出三维场景的几何和外观信息。这一问题在虚拟现实、增强现实和三维打印等领域有广泛应用。然而,由于二维图像仅包含有限的视角和光照信息,而三维场景则具有无限的复杂性和多样性,因此三维场景重建一直以来都是一项极具挑战性的任务。
2、近年来,深度学习方法在三维场景重建领域取得了令人瞩目的进展。其中,神经辐射场作为一种新颖而有效的方法,能够从二维图像中恢复出三维几何和外观信息,但其仍然面临一些限制。其中之一是模型经常在生成场景体块时出现误差,导致出现并不存在于实际场景中的体。这种误差表现为场景中出现类似云雾效果的伪影,给重建结果带来了一定的不真实感。此外,神经辐射场模型在处理物体边界时存在挑战,导致边界呈现出明显的模糊效果,进而影响了整体重建的精确性和真实感。为了解决以上的问题,本发明提出了基于潜在扩散模型的方法,通过重新构建了神经辐射场的基础神经网络,为神经辐射场重建方法提供了一个新方向,而不再局限于多层感知机。并且能够显著提高场景的重建质量与定量指标。
技术实现思路
1、本发明提出基于潜在空间扩散的神经辐射场三维重建方法,能够提升神经辐射场重建的质量与相应的性能指标。
2、本发明采用以下技术方案。
3、基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:包括以下步骤:
4、步骤s1:通过相机拍摄真实场景的各个视角的视图,并将该视图集合通过算法计算相机的空间位置与方向,整理成数据集后进行预处理;
5、步骤s2:输入每个视图与相机位姿,对场景空间进行采样,并采用预训练的神经辐射场模型得到场景中每个采样点的颜色与密度信息,组合成采样点的特征;
6、步骤s3:将所有采样点的特征输入编码器对其进行隐空间编码,得到整个空间的潜在表示,并通过解码器将其恢复成与原特征形状相同的新特征,并将原特征与新特征作损失,联合训练此编码器与解码器;
7、步骤s4:对潜在表示使用潜在空间扩散,逐步添加噪声,得到每一步的残差,得到随机噪声表示,再使用其逆过程,输入随机噪声,逐步恢复成潜在表示,通过训练得的解码器解码成新特征,使用体渲染方法将其重建出完整的三维场景。
8、所述步骤s1具体为:
9、步骤s11:使用手持相机在真实场景中拍摄各个视角的视图图像,确保覆盖不同的角度和视野;
10、步骤s12:根据相机的运动轨迹和拍摄时的姿态信息,计算出相机在空间中的位置和拍摄方向;
11、步骤s13:对计算得到的相机位置和方向数据进行整理和预处理,去除异常值和错误数据、将相机坐标系转换为世界坐标系。
12、所述步骤s2具体为:
13、步骤s21:将每个视图与对应的相机位姿信息输入到神经辐射场中,包括相机在世界坐标系中的位置坐标position与视角方向direction;
14、步骤s22:在场景中进行随机采样,在随机方向上取光线ray,并在光线ray上取采样点sample,并输出所有采样点的位置信息并输入预训练的神经辐射场模型;
15、步骤s23:输出神经辐射场模型的中间结果,即空间中每个采样点所在空间位置所对应的颜色rgb和密度density,并将每个采样点的颜色rgb和密度density组合成表示整个场景的特征向量featuresample。
16、所述步骤s3具体为:
17、步骤s31:将所得到的神经辐射场场景特征表示向量featuresample输入隐空间编码器encoder,将其编码为场景的潜在特征表示featurelantent_sample;
18、步骤s32:将featurelantent_sample输入解码器decoder,将其恢复成与featuresample同维度的特征向量featureautoencoder_sample;
19、步骤s33:对featureautoencoder_sample与featuresample作损失,并进行反向传播与梯度下降,联合训练此编码器encoder与解码器decoder。
20、所述的编码器的过程具体为:
21、设r表示空间中所取光线数量,s表示在每条光线上采样点的数量,将维度为(r,s,4)的场景特征表示向量featuresample拆分成一个维度为(r,s,3)的featurergb与一个维度为(r,s,1)的featuredensity,并输入编码器encoder,将两个特征分别通过多层感知机mlp投影成维度为(r,s,n)的featuremlp_rgb与featuremlp_density(在此处n表示128),使用点乘融合两个特征得到featurelantent_sample;具体表示为:
22、featurergb,featuredensity=split(featuresample)
23、featuremlp_rgb=mlps1(featurergb)
24、featuremlp_density=mlps2(featu.redensity)
25、featurelantent_sample=featuremlp_density*featuremlp_rgb
26、其中split表示分割操作,mlps1、mlps2分别表示两个多层感知机。
27、所述的解码器的训练过程具体为:
28、将得到的featurelantent_sample输入解码器,分别通过多层感知机mlps3与mlps4投影成维度为(r,s,3)的featuredecoder_rgb与维度为(r,s,1)的featuredecoder_density,并按最后一维拼接在一起成为featureautoencoder_sample;将其与featuresample作mse损失,通过梯度下降与反向传播训练该解码器;具体为:
29、featuredecoder_rgb=mlps3(featurelantent_sample)
30、featuredecoder_density=mlps4(featurelantent_sample)
31、featureautoenoder_sample=cat(featuredecoder_rgb,featuredecoder_density)
32、其中mlps3、mlps4分别表示两个多层感知机,cat表示拼接操作。mse损失
33、具体为:
34、lossmse=(featureautoencoder_sample-featuresample)2
35、其中lossmse表示计算得到的mse损失值。
36、所述步骤s4具体为:
37、步骤s41:将潜在表示featurelantet_sample逐步添加噪声,得到一个随机噪声表示;
38、步骤s42:输入一个随机噪声noiserandom,逐步去噪,即逆向处理随机噪声表示,使其重建成新的潜在表示特征featurediffusion_lantent_sample;
39、步骤s43:将重建的潜在表示特征featurediffusion_lantent_sample输入训练好的解码器decoder,使其恢复成与featuresample相同维度的全新特征表示featuredecoder_diffusion_sample;
40、步骤s44:将featuredecoder_diffusion_sample替代神经辐射场的中间结果featuresample进行后续体渲染过程,重建得完整的三维场景。
41、所述添加噪声具体方法为:
42、将特征的潜在表示featurelantent_sample逐步加噪,得到一组噪声表示featurenoise:
43、
44、其中featurelantent_t表示加噪第t步的潜在表示,featurelantent_0表示初始的潜在表示,q(featurelantent_t|featurelantent_0)表示t步对于初始特征需要添加的随机噪声,n表示自然数集,i表示整数集,αk表示第k步时α的数值,αt表示在t步时α的数值,表示在t步时α从第一步累乘到第t步的数值,不同步数的α是预先定义好的,逐渐递减;
45、当t为最后一步时,q(featurenoise|featurelantent_sample)表示从潜在特征加噪到随机噪声所需要添加噪声的过程,表示为:
46、featurenoise=featurelantent_sample+q(featurenoise|featurelantent_sample)。
47、所述去除噪声具体方法为:
48、去除噪声即上述逐步加噪的逆向过程,使用一个u-net拟合逆向过程:
49、
50、p(featurelantent_t-1|featurelantent_t)表示t-1步对于t步特征需要去除的随机噪声,设t和featurelantent_t已知,只需使用神经网络拟合ε即能进行逐步加噪的过程,整个训练过程视同为训练u-net网络的参数的过程。
51、所述体渲染具体方法为:
52、给定相机位置坐标position与视角方向direction,通过输入的featurederoder_diffusion_sample,拆分成每个采样点的体密度density与颜色rgb,得到该位置视角下物体与其表面的颜色color;具体方法如下:
53、
54、式中rgbi为沿方向第i个采样点的颜色,weighti为沿方向第i个采样点颜色的权重,densityi表示沿方向第i个采样点的密度,densityj表示沿方向第,个采样点的密度,distancei表示第i+1与第i个采样点间的距离,distancej表示第h+1与第,个采样点间的距离,s表示采样点的上限,此处为65536;最后,在待合成场景中的物体表面上,通过跟踪相机光线,渲染出完整的三维模型。
55、本发明与现有技术相比具有以下有益效果:
56、1、对比已有的神经辐射场方法,本发明在尽可能保持推理速度的情况下,重新构建了神经辐射场的基础神经网络,提高了方法的重建精度,使得其更适用于真实场景;
57、2、本发明创新使用潜在扩散模型方法,不同于神经辐射场方法,本发明仅利用预训练的神经辐射场模型的中间结果,训练独立的特征生成模型,并替代原来的中间结果进入体渲染阶段;
58、3、本发明重新构建并训练了神经辐射场重建的新方向,并将其与潜在空间方法相结合,提升了三维重建的质量与相应性能指标。
1.基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述步骤s1具体为:
3.根据权利要求1所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述步骤s2具体为:
4.根据权利要求1所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述步骤s3具体为:
5.根据权利要求4所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述的编码器的过程具体为:
6.根据权利要求4所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述的解码器的训练过程具体为:
7.根据权利要求1所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述步骤s4具体为:
8.根据权利要求7所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述添加噪声具体方法为:
9.根据权利要求7所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述去除噪声具体方法为:
10.根据权利要求7所述的基于潜在空间扩散的神经辐射场三维重建方法,其特征在于:所述体渲染具体方法为:
