CN117456128A - 三维重建方法、装置、设备及存储介质 - Google Patents
三维重建方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117456128A CN117456128A CN202311506622.7A CN202311506622A CN117456128A CN 117456128 A CN117456128 A CN 117456128A CN 202311506622 A CN202311506622 A CN 202311506622A CN 117456128 A CN117456128 A CN 117456128A
- Authority
- CN
- China
- Prior art keywords
- grid
- vertex
- dimensional
- reconstruction
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000009877 rendering Methods 0.000 claims abstract description 142
- 238000012549 training Methods 0.000 claims abstract description 84
- 230000008569 process Effects 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims description 41
- 230000006870 function Effects 0.000 claims description 34
- 238000010586 diagram Methods 0.000 claims description 31
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000000605 extraction Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012216 screening Methods 0.000 claims description 5
- 238000009825 accumulation Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 description 23
- 238000005516 engineering process Methods 0.000 description 19
- 238000013473 artificial intelligence Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了一种三维重建方法、装置、设备及存储介质,属于三维重建技术领域。该方法包括:从三平面特征中提取空间四面体的网格顶点的网格顶点特征;基于网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的三维网格;基于三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图;基于渲染预测图和真实拍摄图之间的预测损失,对三平面特征、网格重建网络以及可微渲染网络进行训练;在训练完成的情况下,基于网格顶点特征,通过网格重建网络和可微渲染网络对目标物体进行模型重建,得到目标物体对应的目标三维模型;减少了三维重建过程中的参数量,提高了三维重建效率。
Description
技术领域
本申请实施例涉及三维重建技术领域,特别涉及一种三维重建方法、装置、设备及存储介质。
背景技术
三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术。
相关技术中,通过学习一个连续的三维空间中的颜色和密度函数来表示场景,并通过体积渲染对三维物体和纹理进行渲染,从而通过对渲染图的监督优化MLP(MultilayerPerceptron,多层感知器)网络。
而体积渲染过程中需要在每条视角射线上统计数百个采样点的预测值,且每次迭代需要运行数十万次MLP网络的推理,具有较大的参数量,且需要消耗大量时间,并且训练完成的MLP网络需要运行行进立方体(Marching Cube)算法以得到几何表达,导致几何模型的精度较低。
发明内容
本申请实施例提供了一种三维重建方法、装置、设备及存储介质,能够减少三维重建过程中的参数量,提高三维重建效率。所述技术方案如下:
一方面,本申请实施例提供了一种三维重建方法,所述方法包括:
从三平面特征中提取空间四面体的网格顶点的网格顶点特征,所述三平面特征为所述空间四面体在三个轴相交的二维平面上的特征表示;
基于所述网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到所述目标物体对应的三维网格;
基于所述三维网格,通过可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的渲染预测图;
基于所述渲染预测图和真实拍摄图之间的预测损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练,所述真实拍摄图为基于各个相机位姿对所述目标物体进行拍摄得到;
在训练完成的情况下,基于所述网格顶点特征,通过所述网格重建网络和所述可微渲染网络对所述目标物体进行模型重建,得到所述目标物体对应的目标三维模型。
另一方面,本申请实施例提供了一种三维重建装置,所述装置包括:
特征提取模块,用于从三平面特征中提取空间四面体的网格顶点的网格顶点特征,所述三平面特征为所述空间四面体在三个轴相交的二维平面上的特征表示;
第一重建模块,用于基于所述网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到所述目标物体对应的三维网格;
渲染模块,用于基于所述三维网格,通过可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的渲染预测图;
训练模块,用于基于所述渲染预测图和真实拍摄图之间的预测损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练,所述真实拍摄图为基于各个相机位姿对所述目标物体进行拍摄得到;
第二重建模块,用于在训练完成的情况下,基于所述网格顶点特征,通过所述网格重建网络和所述可微渲染网络对所述目标物体进行模型重建,得到所述目标物体对应的目标三维模型。
另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器;所述存储器存储有至少一条计算机指令,所述至少一条计算机指令用于被所述处理器执行以实现如上述方面所述的三维重建方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行以实现如上述方面所述的三维重建方法。
另一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中;计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行如上述方面所述的三维重建方法。
本申请实施例中,通过构建空间四面体的三平面特征,将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,从而在从三平面特征中提取网格顶点特征之后,可以根据网格顶点特征,通过网格重建网络对目标物体进行三维重建,得到目标物体对应的三维网格,进而基于该三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图,从而基于渲染预测图和真实拍摄图之间的预测损失,分别对三平面特征、网格重建网络以及可微渲染网络进行训练,即可以得到经过参数更新的三平面特征、网格重建网络以及可微渲染网络。在训练完成的情况下,根据网格顶点特征,利用网格重建网络和可微渲染网络对目标物体进行模型重建,即可以得到目标物体对应的目标三维模型。
采用本申请实施例提供的方案,通过将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,以二维平面数据的形式表示三维网格顶点的网格顶点特征,可以大大减少网络训练过程中的参数量,提高训练效率。并且在减少参数量的同时,通过依次分别进行网格重建以及可微渲染,优化了训练效果,从而提高了目标三维模型的重建质量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的实施环境的示意图;
图2示出了本申请一个示例性实施例提供的三维重建方法的流程图;
图3示出了本申请一个示例性实施例提供的空间四面体和三平面特征的结构示意图;
图4示出了本申请一个示例性实施例提供的对目标物体进行多角度拍摄得到多个相机位姿下的真实拍摄图的示意图;
图5示出了本申请另一个示例性实施例提供的三维重建方法的流程图;
图6示出了本申请一个示例性实施例提供的对三维网格进行光栅化处理的示意图;
图7示出了本申请另一个示例性实施例提供的三维重建方法的流程图;
图8示出了本申请一个示例性实施例提供的训练过程中的渲染预测图和真实拍摄图的比较示意图;
图9示出了本申请一个示例性实施例提供的目标三维模型的示意图;
图10示出了本申请一个示例性实施例提供的三维重建过程的整体框架图;
图11示出了本申请一个示例性实施例提供的单轮训练过程的训练流程图;
图12示出了本申请一个示例性实施例提供的多轮训练过程的训练流程图;
图13示出了本申请一个示例性实施例提供的三维重建装置的结构框图;
图14示出了本申请一个示例性实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟现实设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、游戏中的智能虚拟角色等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的机器学习等技术,具体通过如下实施例进行说明。
请参考图1,其示出了本申请一个实施例提供的实施环境的示意图。该实施环境中包括终端120和服务器140。其中,终端120与服务器140之间通过通信网络进行数据通信,可选地,通信网络可以是有线网络也可以是无线网络,且该通信网络可以是局域网、城域网以及广域网中的至少一种。
终端120是安装有具有三维重建功能的应用程序的计算机设备。其中,该三维重建功能可以为终端120中原生应用的功能,或者,第三方应用的功能;该终端120可以是智能手机、平板电脑、笔记本电脑、台式电脑、智能电视、可穿戴式设备或车载终端等等,图1中,以终端120为台式电脑为例进行说明,但并不对此构成限定。
服务器140可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。本申请实施例中,服务器140可以为具有三维重建功能的应用的后台服务器。
在一种可能的实施方式下,如图1所示,服务器140和终端120之间存在数据交互。终端120在接收到对目标物体的三维重建任务,并获取到目标物体在多个相机位姿下的真实拍摄图后,向服务器140发送目标物体的真实拍摄图,从而服务器140通过从三平面特征中提取空间四面体的网格顶点的网格顶点特征,并根据网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的三维网格,进而根据三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图,并根据渲染预测图和真实拍摄图之间的预测损失,对三平面特征、网格重建网络以及可微渲染网络进行训练。在训练完成的情况下,服务器140即可以根据网格顶点特征,通过网格重建网络和可微渲染网络对目标物体进行模型重建,得到目标物体对应的目标三维模型,并将目标三维模型返回给终端120。
可选的,本申请实施例提供的三维重建方法还可以应用于游戏的虚拟角色模型搭建中。在一种可能的实施方式中,通过对真实世界中创作出的角色模型进行多角度拍摄,可以获取角色模型的多角度真实拍摄图像。进而,计算机设备通过从三平面特征中提取空间四面体的网格顶点的网格顶点特征,并根据网格顶点特征,通过网格重建网络对角色模型进行网络重建,得到三维网格,进而通过可微渲染网络进行可微渲染,得到角色模型在各个相机位姿下的渲染预测图,从而根据预测渲染图和真实拍摄图之间的预测损失,对三平面特征、网格重建网络以及可微渲染网络进行训练,在训练完成之后,即可以通过网格重建网络以及可微渲染网络进行模型重建,得到真实世界的角色模型在虚拟环境中的虚拟角色模型,从而将虚拟角色模型应用于游戏虚拟场景中,提高游戏虚拟场景中虚拟角色的几何和纹理效果,使得虚拟角色更加生动形象。
请参考图2,其示出了本申请一个示例性实施例提供的三维重建方法的流程图,本实施例以该方法用于计算机设备为例进行说明,该计算机设备可以是图1所示的终端120或服务器140,该方法包括如下步骤:
步骤201,从三平面特征中提取空间四面体的网格顶点的网格顶点特征,三平面特征为空间四面体在三个轴相交的二维平面上的特征表示。
不同于相关技术中,通过哈希网格(Hash Grid)对空间四面体的网格顶点的网格顶点特征进行维护,将网格顶点特征编码为三维数据格式,导致网格顶点特征具有较大参数量,导致三维重建网络的训练效率低,且哈希网格中容易存在哈希冲突,本申请实施例中,通过将三维空间内的网格顶点特征转换为三个二维平面上的平面特征,可以降低网格顶点特征的参数量,从而提高网络训练效率。
在一些实施例中,计算机设备对各个空间四面体进行顶点编码,将三维顶点(x,y,z)投影到三个轴相交的二维平面上,即可以分别得到三维顶点在(x,y)、(x,z)和(y,z)三个平面上的二维投影点,从而三维顶点的顶点特征即可以表示为三个二维投影点的投影点特征。
在一个示意性的例子中,在分辨率为H的三维空间内共有H3个顶点,若对每个顶点单独进行特征编码,则需要C*H3的特征变量,其中,C为每个顶点的特征维度。而通过将三维顶点分别投影到三个轴相交的二维平面,用三个二维平面特征对顶点特征进行表示,则仅需要3*C*H2的特征变量,可见参数量明显减少。
可选的,三平面(Tri-Plane)特征即为空间四面体在三个轴相交的二维平面上的特征表示。示意性的,如图3所示,空间四面体301的顶点特征即可以通过三平面特征302进行表示。
在一些实施例中,为了对目标物体进行网格重建,计算机设备可以从三平面特征中对空间四面体的网格顶点的网格顶点特征进行提取。
步骤202,基于网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的三维网格。
在一些实施例中,为了得到目标物体的三维表达,在得到空间四面体的网格顶点特征之后,计算机设备即可以通过网格重建网络对目标物体进行网格重建,从而得到目标物体对应的三维网格。
可选的,网格重建网络可以基于行进四面体算法(Marching Tetrahedra),对目标物体进行三维重建,从而得到三维网格。
步骤203,基于三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图。
在一些实施例中,为了提高三维网格的重建质量,计算机设备还需要通过重建损失对网格重建网络进行训练,而由于获取目标物体的真实三维结构数据的难度较大,因此为了提高损失确定效率,计算机设备还可以获取目标物体对应的真实拍摄图,并通过生成三维网格对应的渲染预测图,以真实拍摄图和渲染预测图之间的预测损失替代重建损失。
可选的,真实拍摄图为基于各个相机位姿对目标物体进行拍摄得到。示意性的,如图4所示,通过对目标物体401进行多角度拍摄,即可以得到目标物体401在不同相机位姿下的真实拍摄图。
在一些实施例中,在得到目标物体的三维网格之后,计算机设备可以基于各个真实拍摄图对应的相机位姿,通过可微渲染网络,对各个相机位姿下的三维网格进行可微渲染,从而得到渲染预测图。
可选的,为了提高三维重建的准确性,计算机设备需要获取目标物体在多个相机位姿下的真实拍摄图,即需要从多个角度对目标物体进行拍摄,使得真实拍摄图中能够包含目标物体的全部特征。
在一种可能的实施方式中,可以通过对目标物体进行360度环绕式拍摄,从而得到目标物体在各个相机位姿下的真实拍摄图。相应地,计算机设备可以通过虚拟摄像机对三维网格进行360度环绕式拍摄,从而确定各个相机位姿下的网格顶点,并基于网格顶点,通过可微渲染网络进行可微渲染,从而得到各个相机位姿下的渲染预测图。
步骤204,基于渲染预测图和真实拍摄图之间的预测损失,对三平面特征、网格重建网络以及可微渲染网络进行训练,真实拍摄图为基于各个相机位姿对目标物体进行拍摄得到。
在一些实施例中,在得到各个相机位姿下的渲染预测图,并分别确定出各个渲染预测图和真实拍摄图之间的预测损失之后,计算机设备即可以根据预测损失,对三平面特征、网格重建网格以及可微渲染网络进行训练,更新三平面特征、网格重建网络以及可微渲染网络中的参数。
可选的,预测损失可以是渲染预测图和真实拍摄图之间各个像素点的颜色差值,也可以是以颜色差值为基础的数据计算结果,比如,颜色差值的范数计算结果等,本申请实施例对此不作限定。
在一些实施例中,为了提高模型重建的准确率,计算机设备还需要基于更新后的三平面特征、网格重建网络以及可微渲染网络,再次进行网格重建和可微渲染,并根据新的预测损失,继续对三平面特征、网格重建网络以及可微渲染网络进行参数更新,即三平面特征、网格重建网络以及可微渲染网络需要经过多轮训练,以使得预测损失达到最小。
步骤205,在训练完成的情况下,基于网格顶点特征,通过网格重建网络和可微渲染网络对目标物体进行模型重建,得到目标物体对应的目标三维模型。
在一些实施例中,在训练完成,即预测损失达到最小的情况下,计算机设备即可以从训练完成的三平面特征中提取网格顶点的网格顶点特征,并通过网格重建网络和可微渲染网络对目标物体进行模型重建,从而得到目标物体对应的目标三维模型。
在一种可能的实施方式中,计算机设备从训练后的三平面特征中提取网格顶点特征,并将网络顶点特征输入训练后的网格重建网络,得到目标三维网格,进而基于目标三维网络,通过训练后的可微渲染网络进行可微渲染,得到目标三维网格中各个顶点的顶点颜色特征,从而得到目标三维模型。
综上所述,本申请实施例中,通过构建空间四面体的三平面特征,将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,从而在从三平面特征中提取网格顶点特征之后,可以根据网格顶点特征,通过网格重建网络对目标物体进行三维重建,得到目标物体对应的三维网格,进而基于该三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图,从而基于渲染预测图和真实拍摄图之间的预测损失,分别对三平面特征、网格重建网络以及可微渲染网络进行训练,即可以得到经过参数更新的三平面特征、网格重建网络以及可微渲染网络。在训练完成的情况下,根据网格顶点特征,利用网格重建网络和可微渲染网络对目标物体进行模型重建,即可以得到目标物体对应的目标三维模型。
采用本申请实施例提供的方案,通过将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,以二维平面数据的形式表示三维网格顶点的网格顶点特征,可以大大减少网络训练过程中的参数量,提高训练效率。并且在减少参数量的同时,通过依次分别进行网格重建以及可微渲染,优化了训练效果,从而提高了目标三维模型的重建质量。
在一些实施例中,为了提高对目标物体的几何特征的学习效率,网格重建网络中可以包括第一多层感知器,通过第一多层感知器输出网格顶点的顶点偏移量以及符号距离函数值。并且为了提高预测渲染图的生成质量,可微渲染网络中可以包括第二多层感知器,通过第二多层感知器输出顶点颜色特征。
请参考图5,其示出了本申请另一个示例性实施例提供的三维重建方法的流程图,本实施例以该方法用于计算机设备为例进行说明,该计算机设备可以是图1所示的终端120或服务器140,该方法包括如下步骤:
步骤501,基于空间四面体的网格顶点的网格顶点坐标,从三平面特征中分别提取网格顶点在各个二维平面上的二维顶点特征。
在一些实施例中,为了从三平面特征中准确提取网格顶点特征,计算机设备还可以通过先获取各个空间四面体的网格顶点的网格顶点坐标,从而根据网格顶点坐标,从三平面特征中分别提取网格顶点在各个二维平面上的二维顶点特征。
在一种可能的实施方式中,三维空间内网格顶点坐标为(x,y,z),则计算机设备可以分别从(x,y)、(x,z)以及(y,z)三个二维平面中分别提取 以及/>三个二维顶点特征。
步骤502,对各个二维平面上的二维顶点特征进行累加求和,得到网格顶点的网格顶点特征。
在一些实施例中,在得到网格顶点在各个二维平面上的二维顶点特征之后,计算机设备即可以通过对三个二维顶点特征进行累加求和,从而得到网格顶点的网格顶点特征。
在一种可能的实施方式中,网格顶点特征可以表示为f(v),网格顶点坐标为v=(x,y,z),从而通过累加求和得到网格顶点特征的过程可以表示为
步骤503,将网格顶点特征输入网格重建网络中的第一多层感知器,通过第一多层感知器输出网格顶点的顶点偏移量以及符号距离函数值,符号距离函数值用于表征三维空间内网格顶点与物体表面的对应关系。
在一些实施例中,为了使得经过网格重建网络得到的三维网格能够和目标物体具有相同的几何特征,网格重建网络中可以包括第一多层感知器(Multi-Layer Perception,MLP),从而通过第一多层感知器对目标物体的几何特征进行学习。
在一种可能的实施方式中,在提取得到各个网格顶点的网格顶点特征之后,计算机设备可以将网格顶点特征输入网格重建网络中的第一多层感知器,从而通过第一多层感知器输出网格顶点的顶点偏移量以及符号距离函数值。
可选的,顶点偏移量用于指示对网格顶点的当前网格顶点坐标的调整量,通过不断对网格顶点坐标进行调整,可以使得三维网格具有不断接近于目标物体的几何特征。
可选的,符号距离函数(Signed Distance Field,SDF)值用于表征三维空间内网格顶点与物体表面的对应关系。在三维空间内,网格顶点位于物体表面的情况下,其SDF值为0;在网格顶点位于物体内部的情况下,其SDF值为负值;在网格顶点位于物体外部的情况下,其SDF值为正值。
可选的,通过第一多层感知器输出网格顶点的顶点偏移量以及符号距离函数值的这一过程,可以表示为△v,s=MLPgeom(f(v)),其中,网格顶点表示为v,顶点偏移量表示为△v,符号距离函数值表示为s。
步骤504,基于顶点偏移量,对网格顶点的网格顶点坐标进行调整,得到调整后的网格顶点坐标。
在一些实施例中,在得到各个网格顶点的顶点偏移量之后,计算机设备则需要基于顶点偏移量,对网格顶点的网格顶点坐标进行调整,从而得到调整后的网格顶点坐标。
在一种可能的实施方式中,网格顶点的网格顶点坐标为v=(x,y,z),顶点偏移量为△v,则调整后的网格顶点坐标可以表示为v′=v+△v。
步骤505,基于网格顶点坐标以及符号距离函数值,通过可微行进四面体算法生成目标物体的三维网格。
在一些实施例中,在得到调整后的网格顶点坐标之后,计算机设备即可以根据网格顶点坐标以及符号距离函数值,通过可微行进四面体(Marching Tetrahedra)算法生成目标物体的三维网格。
在一种可能的实施方式中,计算机设备基于各个网格顶点的网格顶点坐标以及符号距离函数值,通过可微行进四面体算法在三维空间内构建四面体网格,从而得到目标物体对应的三维网格,其中,三维网格可以表征目标物体的几何特征。
步骤506,基于相机位姿,对三维网格进行多视角光栅化处理,得到三维网格在各个相机位姿下的密集像素图,密集像素图表征相机位姿下位于三维网格面片上的表面顶点的表面顶点信息。
在一些实施例中,在得到三维网格之后,为了确定不同相机位姿下预测渲染图中包含的三维网格的网格面,计算机设备还可以根据相机位姿,对三维网格进行多视角光栅化处理,从而得到三维网格在各个相机位姿下的密集像素图。
可选的,密集像素图表征相机位姿下位于三维网格面片(mesh)上的表面顶点的表面顶点信息,其中,表面顶点信息可以是表面顶点的所属网格面片信息。
在一些实施例中,计算机设备基于相机位姿,对三维网格进行多视角光栅化处理,先得到三维网格在各个相机位姿下的稀疏像素图,进而再通过重心坐标插值的方式,对稀疏像素图进行插值处理,从而得到各个相机位姿下的密集像素图。
可选的,稀疏像素图表征相机位姿下位于三维网格面片上的网格顶点的网格顶点信息,即计算机设备在各个相机位姿下对三维网格进行光栅化处理,得到的是对应相机位姿下各个网格面片的三个网格顶点信息,其中,网格顶点信息可以是网格顶点的所属网格面片信息。
示意性的,如图6所示,通过对三维网格进行光栅化处理,首先得到的是仅包含网格顶点的稀疏像素图601,进而通过重心坐标插值的方式,即可以得到包含表面顶点的密集像素图602。
步骤507,基于密集像素图,确定表面顶点的表面顶点特征。
在一些实施例中,在得到密集像素图之后,计算机设备即可以确定各个相机位姿对应表面顶点的表面顶点信息,从而进一步确定表面顶点的表面顶点特征。
在一些实施例中,在得到各个相机位姿下的密集像素图之后,计算机设备可以通过将密集像素图反投影至三维空间内三维网格的方式,根据经过投影处理的三维网格,获取各个表面顶点的表面顶点坐标,从而基于表面顶点坐标,从三平面特征中提取表面顶点特征。
在一种可能的实施方式中,计算机设备根据密集像素图中各个表面顶点所属网格面片信息,将各个表面顶点投影至三维空间内三维网格中对应的网格面片上,从而根据经过投影处理的三维网格,获取各个表面顶点的表面顶点坐标,进而根据表面顶点坐标,从三平面特征中提取出各个表面顶点特征。
可选的,表面顶点可以表示为vc,表面顶点特征可以表示为
步骤508,基于表面顶点特征,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图。
在一些实施例中,在得到各个相机位姿下包含表面顶点的表面顶点特征之后,计算机设备即可以基于表面顶点特征,通过可微渲染网络进行可微渲染,从而得到三维网格在各个相机位姿下的渲染预测图。
在一些实施例中,计算机设备可以将表面顶点特征输入可微渲染网络中的第二多层感知器,通过第二多层感知器输出表面顶点的顶点颜色特征,从而基于顶点颜色特征,生成三维网格在各个相机位姿下的渲染预测图。
可选的,通过第二多层感知器输出顶点颜色特征的过程可以表示为color=MLPcoloor(f(vc))。
步骤509,基于各个相机位姿对应的预测渲染图以及真实拍摄图,计算预测渲染图与真实拍摄图之间的像素预测差值。
在一些实施例中,在得到各个相机位姿下的预测渲染图之后,计算机设置即需要根据预测渲染图和对应的真实拍摄图,计算预测渲染图与真实拍摄图之间的预测损失。
在一种可能的实施方式中,计算机设备可以先根据渲染预测图和真实拍摄图,计算预测渲染图与真实拍摄图之间的像素预测差值。
在一种可能的实施方式中,真实拍摄图可以表示为Igt,预测渲染图可以表示为Ipred,从而预测渲染图与真实拍摄图之间的像素预测差值可以表示为Ipred-Igt。
步骤510,对像素预测差值进行范数计算以及累加处理,得到预测总损失。
在一些实施例中,在得到各个相机位姿对应的像素预测差值之后,计算机设备则可以通过对像素预测差值进行范数计算,并对计算结果进行累加求和,从而得到预测总损失。
可选的,范数计算可以为通过二范数对像素预测差值进行计算。
在一种可能的实施方式中,相机位姿可以表示为T,真实拍摄图的数量为N,真实拍摄图可以表示为Igt,预测渲染图可以表示为Ipred,从而预测总损失可以表示为
步骤511,基于预测总损失,对三平面特征、网格重建网络以及可微渲染网络进行训练。
在一些实施例中,在得到预测总损失之后,计算机设备即可以通过预测总损失,对三平面特征、网格重建网络以及可微渲染网络进行训练,更新三平面特征、网格重建网络以及可微渲染网络中的参数。
在一种可能的实施方式中,为了提高三维模型的重建准确性,计算机设备需要通过多次重复上述步骤,得到多个预测总损失,从而对三平面特征、网格重建网络以及可微渲染网络进行多次参数更新,从而使得三平面特征、网格重建网络以及可微渲染网络充分学习到目标物体的几何特征和纹理特征。
步骤512,在训练完成的情况下,基于网格顶点特征,通过网格重建网络和可微渲染网络对目标物体进行模型重建,得到目标物体对应的目标三维模型。
步骤512的具体实施方式可以参考步骤205,本实施例在此不作赘述。
上述实施例中,在网格重建过程中,通过利用网格重建网络中的第一多层感知器先输出网格顶点的顶点偏移量以及SDF值,再根据可微行进四面体算法进行网格重建,提高了三维网格的重建质量,可以使得三维网格具有不断接近于目标物体的几何特征。
并且在可微渲染过程中,通过先对三维网格进行多视角光栅化处理,并根据密集像素图确定各个相机位姿下的表面顶点,再通过可微渲染网络中的第二多层感知器输出各个表面顶点的表面顶点特征,从而通过可微渲染得到预测渲染图,提高了预测渲染图的生成效率和质量,进而提高了确定预测损失的准确性,提高了基于预测损失进行网络训练的训练效率。
在一些实施例中,为了提高目标三维模型的生成质量,计算机设备需要进行多轮次的特征提取、网格重建以及可微渲染,从而确定各轮预测损失,通过不断迭代的过程,对三平面特征、网格重建网络以及可微渲染网络进行训练。
请参考图7,其示出了本申请另一个示例性实施例提供的三维重建方法的流程图,本实施例以该方法用于计算机设备为例进行说明,该计算机设备可以是图1所示的终端120或服务器140,该方法包括如下步骤:
步骤701,从三平面特征中提取空间四面体的网格顶点的网格顶点特征,三平面特征为空间四面体在三个轴相交的二维平面上的特征表示。
在一些实施例中,在开始第一轮训练时,由于三平面特征、网格重建网络以及可微渲染网络还未经过参数更新,即尚未获取到目标物体的几何特征以及纹理特征,因此计算机设备可以先将目标物体假设为空间立方体,并在空间立方体内生成均匀分布的多个空间四面体。
在一些实施例中,计算机设备还可以根据空间立方体,对三平面特征进行初始化处理,得到初始三平面特征,进而计算机设备基于各个空间四面体的网格顶点的第一网格顶点坐标,从初始三平面特征中提取第一网格顶点特征。
在一些实施例中,在经过第一轮次的训练,得到第一预测损失之后,计算机设备即可以以第一预测损失,对三平面特征进行参数更新,从而在第二轮训练时,计算机设备即可以从更新后的三平面特征中进行特征提取。通过不断迭代,在第i轮训练过程中,计算机设备即可以根据第i-1轮训练得到的第i-1三维网格,获取第i-1三维网格中网格顶点的第i网格顶点坐标,并根据第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取第i网格顶点特征。
在一种可能的实施方式中,考虑到模型重建的目的是为了得到目标物体的表面几何和纹理,即目标物体内部特征对模型重建结果的影响较小,因此为了提高重建效率,减少重建计算量,计算机设备还可以在训练过程中尽可能多的提取位于物体表面的顶点特征,减少对位于物体内部的顶点特征的提取。
在一些实施例中,在经过i-1轮训练,得到第i-1轮训练对应的第i-1三维网格之后,计算机设备还可以根据第i-1轮训练得到的第i-1三维网格,获取第i-1三维网格中网格顶点的第i-1符号距离函数值,从而根据各个网格顶点的第i-1符号距离函数值,判断各个网格顶点与物体表面的位置关系,并对网格顶点进行筛选,得到筛选后的网格顶点,其中,筛选后的网格顶点中,位于第i-1三维网格表面的网格顶点所表征的顶点密集程度高于位于第i-1三维网格内部的网格顶点所表征的顶点密集程度。进而,计算机设备根据筛选后的网格顶点对应的第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取筛选后的网格顶点的第i网格顶点特征。
在一种可能的实施方式中,为了在减少计算量的同时,保证网格重建的质量,计算机设备还可以在不同训练轮次采取不同的顶点筛选方式,比如,可以每间隔10轮,根据网格顶点的符号距离函数值进行一次网格顶点筛选;也可以根据网格顶点的符号距离函数值,调整网格顶点的顶点筛选比例等等,本申请实施例对此不作限定。
步骤702,基于网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的三维网格。
步骤703,基于三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图。
步骤702~703的具体实施过程可以参考上述各实施例,本实施例在此不作赘述。
步骤704,基于渲染预测图和真实拍摄图之间的预测损失,对三平面特征、网格重建网络以及可微渲染网络进行训练。
在一些实施例中,在经过第一轮次的网格重建和可微渲染之后,计算机设备即可以根据第一渲染预测图和真实拍摄图,计算得到第一预测损失,从而以第一预测损失,对三平面特征、网格重建网络以及可微渲染网络进行参数更新。
在一些实施例中,在经过多轮次的训练之后,渲染预测图和真实拍摄图之间的预测损失逐渐减小,即渲染预测图不断接近于真实拍摄图。示意性的,如图8所示,经过多轮训练后,预测渲染图802与目标物体801的真实拍摄图803逐渐接近,具有相近的视觉效果。
可选的,通过多轮训练确定最小预测损失的过程可以表示为
步骤705,在训练完成的情况下,基于网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的目标三维网格。
在一些实施例中,在训练完成的情况下,即渲染预测图和真实拍摄图之间的预测损失达到最小的情况下,计算机设备即可以根据网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的目标三维网格。
在一种可能的实施方式中,计算机设备从训练完成的三平面特征中提取网格顶点的网格顶点特征,从而通过将网格顶点特征输入网格重建网络中的第一多层感知器,得到训练后的第一多层感知器输出的顶点偏移量和符号距离函数值,进而通过可微行进四面体算法进行网格重建,即可以得到目标物体对应的目标三维网格。
示意性的,如图9所示,计算机设备根据网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到目标物体对应的目标三维网格901,目标三维网格901表征目标物体的几何特征。
步骤706,基于目标三维网格,通过可微渲染网络进行可微渲染,得到目标三维网格中网格顶点的目标顶点颜色特征。
在一些实施例中,在得到目标三维网格之后,计算机设备则可以通过可微渲染网络,对各个相机位姿对应的网格表面进行可微渲染,得到目标三维网格中各个网格顶点的目标顶点颜色特征。
在一种可能的实施方式中,在得到目标三维网格之后,计算机设备根据真实拍摄图对应的相机位姿,对目标三维网格进行多视角光栅化处理,从而确定出各个相机位姿下网格面片上的表面顶点和网格顶点,进而通过可微渲染网络中的第二多层感知器,输出各个表面顶点和网格顶点的目标顶点颜色特征。
步骤707,基于目标三维网格以及目标顶点颜色特征,生成目标物体对应的目标三维模型。
在一些实施例中,在得到表征目标物体几何特征的目标三维网格,以及目标三维网格中各个表面顶点的目标顶点颜色特征之后,计算机设备即可以根据目标三维网格和目标顶点颜色特征,通过渲染生成目标物体对应的目标三维模型,该目标三维模型既能够表征目标物体的几何特征,还能够表征目标物体的纹理特征。
示意性的,如图9所示,计算机设备基于目标三维网格以及目标顶点颜色特征,生成目标物体对应的目标三维模型902,目标三维模型902既表征目标物体的几何特征,又表征目标物体的纹理特征。
上述实施例中,通过多轮预测损失对三平面特征、网格重建网络以及可微渲染网络进行参数更新,使得预测损失达到最小,从而通过更新后的三平面特征、网格重建网络以及可微渲染网络,生成目标三维模型,提高了三维模型的生成质量。
请参考图10,其示出了本申请一个示例性实施例提供的三维重建过程的整体框架图。
步骤1001,获取均匀分布的空间四面体的网格顶点。
首先,计算机设备在空间立方体内生成均匀分布的多个空间四面体,并获取各个空间四面体的网格顶点的网格顶点坐标。
步骤1002,从三平面特征中提取网格顶点的网格顶点特征。
接着,计算机设备根据网格顶点坐标,从三平面特征中提取网格顶点的网格顶点特征。
步骤1003,将网格顶点特征输入MLP网络,输出顶点偏移量和SDF值。
然后,计算机设备通过将网格顶点特征输入MLP网络,即可以得到MLP网络输出的网格顶点的顶点偏移量和SDF值。
步骤1004,通过可微行进四面体算法进行网格重建。
进而,计算机设备基于顶点偏移量,对网格顶点的网格顶点坐标进行调整,并通过可微行进四面体算法,基于调整后的网格顶点坐标和SDF值,进行三维重建,得到三维网格。
步骤1005,通过可微渲染网络进行可微渲染,得到预测渲染图。
在得到三维网格之后,计算机设备即可以通过可微渲染网络进行可微渲染,从而得到三维网格在各个相机位姿下对应的预测渲染图。
步骤1006,根据预测损失,更新特征和网络参数。
最终,计算机设备根据预测渲染图和真实拍摄图之间的预测损失,对三平面特征、网格重建网络以及可微渲染网络进行参数更新。
请参考图11,其示出了本申请一个示例性实施例提供的单轮训练过程的训练流程图。
步骤1101,获取均匀分布的空间四面体的网格顶点。
首先,计算机设备在空间立方体内生成均匀分布的多个空间四面体,并获取各个空间四面体的网格顶点的网格顶点坐标。
步骤1102,从三平面特征中提取网格顶点的网格顶点特征。
在确定网格顶点的网格顶点坐标之后,计算机设备根据网格顶点坐标,从三平面特征1109中提取网格顶点的网格顶点特征。
步骤1103,将网格顶点特征输入MLP网络,输出顶点偏移量和SDF值。
在得到网格顶点的网格顶点特征之后,计算机设备通过将网格顶点特征输入MLP网络,即可以得到MLP网络输出的网格顶点的顶点偏移量和SDF值。
步骤1104,通过网格重建得到三维网格。
在得到顶点偏移量和SDF值之后,计算机设备根据顶点偏移量,对网格顶点的网格顶点坐标进行调整,并通过可微行进四面体算法,基于调整后的网格顶点坐标和SDF值,进行三维重建,得到三维网格。
步骤1105,对三维网格进行多视角光栅化处理。
在得到三维网格之后,计算机设备基于真实拍摄图对应的相机位姿,对三维网格进行多视角光栅化处理,得到各个相机位姿下的稀疏像素图。
步骤1106,通过插值处理,得到三维网格中的表面顶点。
进而计算机设备通过对稀疏像素图进行重心坐标插值,得到密集像素图,并将密集像素图反投影至三维网格,从而获取三维网格中的表面顶点坐标。
步骤1107,从三平面特征中提取表面顶点的表面顶点特征。
在得到表面顶点坐标之后,计算机设备根据表面顶点坐标,从三平面特征1109中提取表面顶点的表面顶点特征。
步骤1108,通过MLP网络得到顶点颜色特征。
在得到表面顶点特征之后,计算机设备通过将表面顶点特征输入MLP网络,即可以得到网络输出的顶点颜色特征,从而根据顶点颜色特征,通过可微渲染即可以得到预测渲染图。
请参考图12,其示出了本申请一个示例性实施例提供的多轮训练过程的训练流程图。
首先,在第一轮训练中,计算机设备在空间立方体内生成均匀分布的空间四面体,并获取各个空间四面体的网格顶点,从而根据网格顶点的第一网格顶点坐标,从三平面特征中提取网格顶点的第一网格顶点特征,并通过将第一网格顶点特征输入第一MLP网络,得到第一MLP网络输出的第一顶点偏移量和第一SDF值,从而计算机设备根据第一顶点偏移量对第一网格顶点坐标进行调整,并根据可微行进四面体算法,基于调整后的第一网格顶点坐标和第一SDF值,生成第一三维网格。进而,计算机设备通过对第一三维网格进行多视角光栅化处理,确定各个相机位姿下的第一表面顶点,并从三平面特征中提取第一表面顶点的第一表面顶点特征,从而通过将第一表面顶点特征输入第二MLP网络,即可以得到第二MLP网络输出的第一顶点颜色特征,从而通过可微渲染,即可以得到各个相机位姿下的第一预测渲染图。然后,根据第一预测渲染图和真实拍摄图,计算第一预测损失,以第一预测损失对三平面特征、第一MLP网络以及第二MLP网络进行第一轮参数更新。
其次,在第i轮训练中,计算机设备根据第i-1轮三维网格,确定第i网格顶点坐标,并从经过第i-1轮更新的三平面特征中提取第i网格顶点特征,并通过将第i网格顶点特征输入经过第i-1轮更新的第一MLP网络,得到第一MLP网络输出的第i顶点偏移量和第iSDF值,从而计算机设备根据第i顶点偏移量对第i网格顶点坐标进行调整,并根据可微行进四面体算法,基于调整后的第i网格顶点坐标和第iSDF值,生成第i三维网格。进而,计算机设备通过对第i三维网格进行多视角光栅化处理,确定各个相机位姿下的第i表面顶点,并从三平面特征中提取第i表面顶点的第i表面顶点特征,从而通过将第i表面顶点特征输入经过第i-1轮更新的第二MLP网络,即可以得到第二MLP网络输出的第i顶点颜色特征,从而通过可微渲染,即可以得到各个相机位姿下的第i预测渲染图。然后,根据第i预测渲染图和真实拍摄图,计算第i预测损失,以第i预测损失对三平面特征、第一MLP网络以及第二MLP网络进行第i轮参数更新。
最后,在预测损失达到最小的情况下,计算机设备根据网格顶点坐标,从更新完成的三平面特征中提取目标网格顶点特征,并通过将目标网格顶点特征输入更新完成的第一MLP网络,得到第一MLP网络输出的目标顶点偏移量和目标SDF值,从而计算机设备根据目标顶点偏移量对目标网格顶点坐标进行调整,并根据可微行进四面体算法,基于调整后的目标网格顶点坐标和目标SDF值,生成目标三维网格。进而,计算机设备通过对目标三维网格进行多视角光栅化处理,确定各个相机位姿下的目标表面顶点,并从三平面特征中提取目标表面顶点的目标表面顶点特征,从而通过将目标表面顶点特征输入更新完成的第二MLP网络,即可以得到第二MLP网络输出的目标顶点颜色特征,从而通过可微渲染,即可以得到目标三维模型。
结合上述各实施例可知,本申请实施例中,通过先构建立方体生成均匀分布的四面体,再从三平面特征中提取网格顶点特征,实现了将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,以二维平面数据的形式表示三维网格顶点的网格顶点特征,减少了网络训练过程中顶点特征的参数量,提高了训练效率。
并且在提取到网格顶点的顶点特征之后,通过依次进行网格重建以及可微渲染,对三维模型的几何特征以及颜色特征进行分别处理,从而在多轮训练后,可以使得网格重建网络中的第一MLP和可微渲染网络中的第二MLP对三维模型的特征进行充分学习,优化了网络学习效率,提高了三维模型的重建质量。
请参考图13,其示出了本申请一个示例性实施例提供的三维重建装置的结构框图,该装置包括:
特征提取模块1301,用于从三平面特征中提取空间四面体的网格顶点的网格顶点特征,所述三平面特征为所述空间四面体在三个轴相交的二维平面上的特征表示;
第一重建模块1302,用于基于所述网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到所述目标物体对应的三维网格;
渲染模块1303,用于基于所述三维网格,通过可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的渲染预测图;
训练模块1304,用于基于所述渲染预测图和真实拍摄图之间的预测损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练,所述真实拍摄图为基于各个相机位姿对所述目标物体进行拍摄得到;
第二重建模块1305,用于在训练完成的情况下,基于所述网格顶点特征,通过所述网格重建网络和所述可微渲染网络对所述目标物体进行模型重建,得到所述目标物体对应的目标三维模型。
可选的,所述第一重建模块1302,用于:
将所述网格顶点特征输入所述网格重建网络中的第一多层感知器,通过所述第一多层感知器输出所述网格顶点的顶点偏移量以及符号距离函数值,所述符号距离函数值用于表征三维空间内所述网格顶点与物体表面的对应关系;
基于所述顶点偏移量,对所述网格顶点的网格顶点坐标进行调整,得到调整后的所述网格顶点坐标;
基于所述网格顶点坐标以及所述符号距离函数值,通过可微行进四面体算法生成所述目标物体的所述三维网格。
可选的,所述渲染模块1303,包括:
光栅处理单元,用于基于所述相机位姿,对所述三维网格进行多视角光栅化处理,得到所述三维网格在各个相机位姿下的密集像素图,所述密集像素图表征所述相机位姿下位于三维网格面片上的表面顶点的表面顶点信息;
特征提取单元,用于基于所述密集像素图,确定所述表面顶点的表面顶点特征;
渲染单元,用于基于所述表面顶点特征,通过所述可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的所述渲染预测图。
可选的,所述光栅处理单元,用于:
基于所述相机位姿,对所述三维网格进行多视角光栅化处理,得到所述三维网格在各个相机位姿下的稀疏像素图,所述稀疏像素图表征所述相机位姿下位于所述三维网格面片上的网格顶点的网格顶点信息;
通过重心坐标插值的方式,对所述稀疏像素图进行插值处理,得到所述密集像素图。
可选的,所述特征提取单元,用于:
将所述密集像素图反投影至所述三维网格,得到经过投影处理的所述三维网格;
基于经过投影处理的所述三维网格,获取所述表面顶点的表面顶点坐标;
基于所述表面顶点坐标,从所述三平面特征中提取所述表面顶点特征。
可选的,所述渲染单元,用于:
将所述表面顶点特征输入所述可微渲染网络中的第二多层感知器,通过所述第二多层感知器输出所述表面顶点的顶点颜色特征;
基于所述顶点颜色特征,生成所述三维网格在各个相机位姿下的所述渲染预测图。
可选的,所述训练模块1304,用于:
基于各个相机位姿对应的所述预测渲染图以及所述真实拍摄图,计算所述预测渲染图与所述真实拍摄图之间的像素预测差值;
对所述像素预测差值进行范数计算以及累加处理,得到预测总损失;
基于所述预测总损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练。
可选的,所述特征提取模块1301,用于:
在第一轮训练过程中,在空间立方体内生成均匀分布的空间四面体;基于所述空间立方体,对所述三平面特征进行初始化,得到初始三平面特征;基于各个空间四面体的网格顶点的第一网格顶点坐标,从所述初始三平面特征中提取第一网格顶点特征;
在第i轮训练过程中,基于第i-1轮训练得到的第i-1三维网格,获取所述第i-1三维网格中所述网格顶点的第i网格顶点坐标;基于所述第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取第i网格顶点特征。
可选的,所述特征提取模块1301,还用于:
基于第i-1轮训练得到的第i-1三维网格,获取所述第i-1三维网格中所述网格顶点的第i-1符号距离函数值;
基于各个网格顶点的所述第i-1符号距离函数值,对所述网格顶点进行筛选,得到筛选后的网格顶点,其中,筛选后的所述网格顶点中,位于第i-1三维网格表面的网格顶点所表征的顶点密集程度高于位于第i-1三维网格内部的网格顶点所表征的顶点密集程度;
基于筛选后的网格顶点对应的第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取筛选后的所述网格顶点的第i网格顶点特征。
可选的,所述特征提取模块1301,用于:
基于所述空间四面体的所述网格顶点的网格顶点坐标,从所述三平面特征中分别提取所述网格顶点在各个二维平面上的二维顶点特征;
对各个二维平面上的所述二维顶点特征进行累加求和,得到所述网格顶点的所述网格顶点特征。
可选的,所述第二重建模块1305,用于:
基于所述网格顶点特征,通过所述网格重建网络对所述目标物体进行网格重建,得到所述目标物体对应的目标三维网格;
基于所述目标三维网格,通过所述可微渲染网络进行可微渲染,得到所述目标三维网格中所述网格顶点的目标顶点颜色特征;
基于所述目标三维网格以及所述目标顶点颜色特征,生成所述目标物体对应的所述目标三维模型。
综上所述,本申请实施例中,通过构建空间四面体的三平面特征,将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,从而在从三平面特征中提取网格顶点特征之后,可以根据网格顶点特征,通过网格重建网络对目标物体进行三维重建,得到目标物体对应的三维网格,进而基于该三维网格,通过可微渲染网络进行可微渲染,得到三维网格在各个相机位姿下的渲染预测图,从而基于渲染预测图和真实拍摄图之间的预测损失,分别对三平面特征、网格重建网络以及可微渲染网络进行训练,即可以得到经过参数更新的三平面特征、网格重建网络以及可微渲染网络。在训练完成的情况下,根据网格顶点特征,利用网格重建网络和可微渲染网络对目标物体进行模型重建,即可以得到目标物体对应的目标三维模型。
采用本申请实施例提供的方案,通过将三维空间内网格顶点的网格顶点特征转换为三个轴相交的二维平面上的顶点特征,以二维平面数据的形式表示三维网格顶点的网格顶点特征,可以大大减少网络训练过程中的参数量,提高训练效率。并且在减少参数量的同时,通过依次分别进行网格重建以及可微渲染,优化了训练效果,从而提高了目标三维模型的重建质量。
需要说明的是:上述实施例提供的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其实现过程详见方法实施例,这里不再赘述。
需要进行说明的是,本申请在收集真实拍摄图等相关用户数据之前以及在收集目标音视频内容等相关用户数据的过程中,都可以显示提示界面、弹窗或输出语音提示信息,该提示界面、弹窗或语音提示信息用于提示用户当前正在搜集其相关数据,使得本申请仅仅在获取到用户对该提示界面或者弹窗发出的确认操作后,才开始执行获取用户相关数据的相关步骤,否则(即未获取到用户对该提示界面或者弹窗发出的确认操作时),结束获取用户相关数据的相关步骤,即不获取用户的相关数据。换句话说,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等、用户对应的操作数据)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的真实拍摄图等数据都是在充分授权的情况下获取的。
请参考图14,其示出了本申请一个示例性实施例提供的计算机设备的结构示意图。具体来讲:所述计算机设备1400包括中央处理单元(Central Processing Unit,CPU)1401、包括随机存取存储器1402和只读存储器1403的系统存储器1404,以及连接系统存储器1404和中央处理单元1401的系统总线1405。所述计算机设备1400还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(Input/Output,I/O系统)1406,和用于存储操作系统1413、应用程序1414和其他程序模块1415的大容量存储设备1407。
所述基本输入/输出系统1406包括有用于显示信息的显示器1408和用于用户输入信息的诸如鼠标、键盘之类的输入设备1409。其中所述显示器1408和输入设备1409都通过连接到系统总线1405的输入输出控制器1410连接到中央处理单元1401。所述基本输入/输出系统1406还可以包括输入输出控制器1410以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1410还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1407通过连接到系统总线1405的大容量存储控制器(未示出)连接到中央处理单元1401。所述大容量存储设备1407及其相关联的计算机可读介质为计算机设备1400提供非易失性存储。也就是说,所述大容量存储设备1407可以包括诸如硬盘或者驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括随机存取记忆体(RAM,Random Access Memory)、只读存储器(ROM,Read Only Memory)、闪存或其他固态存储其技术,只读光盘(Compact Disc Read-Only Memory,CD-ROM)、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1404和大容量存储设备1407可以统称为存储器。
存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1401执行,一个或多个程序包含用于实现上述方法的指令,中央处理单元1401执行该一个或多个程序实现上述各个方法实施例提供的三维重建方法。
根据本申请的各种实施例,所述计算机设备1400还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1400可以通过连接在所述系统总线1405上的网络接口单元1412连接到网络1411,或者说,也可以使用网络接口单元1412来连接到其他类型的网络或远程计算机系统(未示出)。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条计算机指令,至少一条计算机指令由处理器加载并执行以实现上述实施例所述的三维重建方法。
可选地,该计算机可读存储介质可以包括:ROM、RAM、固态硬盘(SSD,Solid StateDrives)或光盘等。其中,RAM可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例所述的三维重建方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种三维重建方法,其特征在于,所述方法包括:
从三平面特征中提取空间四面体的网格顶点的网格顶点特征,所述三平面特征为所述空间四面体在三个轴相交的二维平面上的特征表示;
基于所述网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到所述目标物体对应的三维网格;
基于所述三维网格,通过可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的渲染预测图;
基于所述渲染预测图和真实拍摄图之间的预测损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练,所述真实拍摄图为基于各个相机位姿对所述目标物体进行拍摄得到;
在训练完成的情况下,基于所述网格顶点特征,通过所述网格重建网络和所述可微渲染网络对所述目标物体进行模型重建,得到所述目标物体对应的目标三维模型。
2.根据权利要求1所述的方法,其特征在于,所述基于所述网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到所述目标物体对应的三维网格,包括:
将所述网格顶点特征输入所述网格重建网络中的第一多层感知器,通过所述第一多层感知器输出所述网格顶点的顶点偏移量以及符号距离函数值,所述符号距离函数值用于表征三维空间内所述网格顶点与物体表面的对应关系;
基于所述顶点偏移量,对所述网格顶点的网格顶点坐标进行调整,得到调整后的所述网格顶点坐标;
基于所述网格顶点坐标以及所述符号距离函数值,通过可微行进四面体算法生成所述目标物体的所述三维网格。
3.根据权利要求1所述的方法,其特征在于,所述基于所述三维网格,通过可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的渲染预测图,包括:
基于所述相机位姿,对所述三维网格进行多视角光栅化处理,得到所述三维网格在各个相机位姿下的密集像素图,所述密集像素图表征所述相机位姿下位于三维网格面片上的表面顶点的表面顶点信息;
基于所述密集像素图,确定所述表面顶点的表面顶点特征;
基于所述表面顶点特征,通过所述可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的所述渲染预测图。
4.根据权利要求3所述的方法,其特征在于,所述基于所述相机位姿,对所述三维网格进行多视角光栅化处理,得到所述三维网格在各个相机位姿下的密集像素图,包括:
基于所述相机位姿,对所述三维网格进行多视角光栅化处理,得到所述三维网格在各个相机位姿下的稀疏像素图,所述稀疏像素图表征所述相机位姿下位于所述三维网格面片上的网格顶点的网格顶点信息;
通过重心坐标插值的方式,对所述稀疏像素图进行插值处理,得到所述密集像素图。
5.根据权利要求3所述的方法,其特征在于,所述基于所述密集像素图,确定所述表面顶点的表面顶点特征,包括:
将所述密集像素图反投影至所述三维网格,得到经过投影处理的所述三维网格;
基于经过投影处理的所述三维网格,获取所述表面顶点的表面顶点坐标;
基于所述表面顶点坐标,从所述三平面特征中提取所述表面顶点特征。
6.根据权利要求3所述的方法,其特征在于,所述基于所述表面顶点特征,通过所述可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的所述渲染预测图,包括:
将所述表面顶点特征输入所述可微渲染网络中的第二多层感知器,通过所述第二多层感知器输出所述表面顶点的顶点颜色特征;
基于所述顶点颜色特征,生成所述三维网格在各个相机位姿下的所述渲染预测图。
7.根据权利要求1所述的方法,其特征在于,所述基于所述渲染预测图和真实拍摄图之间的预测损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练,包括:
基于各个相机位姿对应的所述预测渲染图以及所述真实拍摄图,计算所述预测渲染图与所述真实拍摄图之间的像素预测差值;
对所述像素预测差值进行范数计算以及累加处理,得到预测总损失;
基于所述预测总损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练。
8.根据权利要求1所述的方法,其特征在于,所述从三平面特征中提取空间四面体的网格顶点的网格顶点特征,包括:
在第一轮训练过程中,在空间立方体内生成均匀分布的空间四面体;基于所述空间立方体,对所述三平面特征进行初始化,得到初始三平面特征;基于各个空间四面体的网格顶点的第一网格顶点坐标,从所述初始三平面特征中提取第一网格顶点特征;
在第i轮训练过程中,基于第i-1轮训练得到的第i-1三维网格,获取所述第i-1三维网格中所述网格顶点的第i网格顶点坐标;基于所述第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取第i网格顶点特征。
9.根据权利要求8所述的方法,其特征在于,所述基于所述第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取第i网格顶点特征,包括:
基于第i-1轮训练得到的第i-1三维网格,获取所述第i-1三维网格中所述网格顶点的第i-1符号距离函数值;
基于各个网格顶点的所述第i-1符号距离函数值,对所述网格顶点进行筛选,得到筛选后的网格顶点,其中,筛选后的所述网格顶点中,位于第i-1三维网格表面的网格顶点所表征的顶点密集程度高于位于第i-1三维网格内部的网格顶点所表征的顶点密集程度;
基于筛选后的网格顶点对应的第i网格顶点坐标,从经过第i-1轮训练的三平面特征中提取筛选后的所述网格顶点的第i网格顶点特征。
10.根据权利要求1所述的方法,其特征在于,所述从三平面特征中提取空间四面体的网格顶点的网格顶点特征,包括:
基于所述空间四面体的所述网格顶点的网格顶点坐标,从所述三平面特征中分别提取所述网格顶点在各个二维平面上的二维顶点特征;
对各个二维平面上的所述二维顶点特征进行累加求和,得到所述网格顶点的所述网格顶点特征。
11.根据权利要求1所述的方法,其特征在于,所述基于所述网格顶点特征,通过所述网格重建网络和所述可微渲染网络对所述目标物体进行模型重建,得到所述目标物体对应的目标三维模型,包括:
基于所述网格顶点特征,通过所述网格重建网络对所述目标物体进行网格重建,得到所述目标物体对应的目标三维网格;
基于所述目标三维网格,通过所述可微渲染网络进行可微渲染,得到所述目标三维网格中所述网格顶点的目标顶点颜色特征;
基于所述目标三维网格以及所述目标顶点颜色特征,生成所述目标物体对应的所述目标三维模型。
12.一种三维重建装置,其特征在于,所述装置包括:
特征提取模块,用于从三平面特征中提取空间四面体的网格顶点的网格顶点特征,所述三平面特征为所述空间四面体在三个轴相交的二维平面上的特征表示;
第一重建模块,用于基于所述网格顶点特征,通过网格重建网络对目标物体进行网格重建,得到所述目标物体对应的三维网格;
渲染模块,用于基于所述三维网格,通过可微渲染网络进行可微渲染,得到所述三维网格在各个相机位姿下的渲染预测图;
训练模块,用于基于所述渲染预测图和真实拍摄图之间的预测损失,对所述三平面特征、所述网格重建网络以及所述可微渲染网络进行训练,所述真实拍摄图为基于各个相机位姿对所述目标物体进行拍摄得到;
第二重建模块,用于在训练完成的情况下,基于所述网格顶点特征,通过所述网格重建网络和所述可微渲染网络对所述目标物体进行模型重建,得到所述目标物体对应的目标三维模型。
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器;所述存储器存储有至少一条计算机指令,所述至少一条计算机指令用于被所述处理器执行以实现如权利要求1至11任一所述的三维重建方法。
14.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行以实现如权利要求1至11任一所述的三维重建方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中;计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行如权利要求1至11任一所述的三维重建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311506622.7A CN117456128A (zh) | 2023-11-13 | 2023-11-13 | 三维重建方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311506622.7A CN117456128A (zh) | 2023-11-13 | 2023-11-13 | 三维重建方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117456128A true CN117456128A (zh) | 2024-01-26 |
Family
ID=89589011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311506622.7A Pending CN117456128A (zh) | 2023-11-13 | 2023-11-13 | 三维重建方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117456128A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118298128A (zh) * | 2024-06-04 | 2024-07-05 | 浙江凌迪数字科技有限公司 | 三维网格处理方法、装置、设备及可读存储介质 |
CN118587389A (zh) * | 2024-07-29 | 2024-09-03 | 广州趣丸网络科技有限公司 | 三维模型生成方法、装置、存储介质及计算机设备 |
-
2023
- 2023-11-13 CN CN202311506622.7A patent/CN117456128A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118298128A (zh) * | 2024-06-04 | 2024-07-05 | 浙江凌迪数字科技有限公司 | 三维网格处理方法、装置、设备及可读存储介质 |
CN118587389A (zh) * | 2024-07-29 | 2024-09-03 | 广州趣丸网络科技有限公司 | 三维模型生成方法、装置、存储介质及计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111369681B (zh) | 三维模型的重构方法、装置、设备及存储介质 | |
CN113822982B (zh) | 一种人体三维模型构建方法、装置、电子设备及存储介质 | |
CN117456128A (zh) | 三维重建方法、装置、设备及存储介质 | |
CN112085835B (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN116051747A (zh) | 一种基于缺失点云数据的房屋三维模型重建方法及设备、介质 | |
CN116977522A (zh) | 三维模型的渲染方法、装置、计算机设备和存储介质 | |
CN114926581A (zh) | 二维到三维人脸表情迁移方法、电子装置及存储介质 | |
CN116385667B (zh) | 三维模型的重建方法、纹理重构模型的训练方法以及装置 | |
CN117218300B (zh) | 三维模型的构建方法、三维构建模型的训练方法及装置 | |
CN117333637B (zh) | 三维场景的建模及渲染方法、装置及设备 | |
CN115222917A (zh) | 三维重建模型的训练方法、装置、设备及存储介质 | |
CN117351133B (zh) | 一种数据渲染方法、装置、设备及计算机可读存储介质 | |
CN117994482A (zh) | 基于图像进行三维模型重建的方法、装置、介质和设备 | |
CN115953330B (zh) | 虚拟场景图像的纹理优化方法、装置、设备和存储介质 | |
CN116152419A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN115965736A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN115953524A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN115546408A (zh) | 模型简化方法、装置、存储介质、电子设备及产品 | |
CN115578542A (zh) | 三维模型的处理方法、装置、设备及计算机可读存储介质 | |
Erra et al. | Ambient Occlusion Baking via a Feed-Forward Neural Network. | |
US11562504B1 (en) | System, apparatus and method for predicting lens attribute | |
Liu et al. | 3D Animation Graphic Enhancing Process Effect Simulation Analysis | |
CN118470170A (zh) | 可驱动人体表示方法和装置、电子设备及存储介质 | |
CN117218278A (zh) | 三维模型的重建方法、装置、设备及存储介质 | |
近藤生也 et al. | 3D Physical State Prediction and Visualization using Deep Billboard |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |