CN116958367A - 一种快速组合并渲染复杂神经场景的方法 - Google Patents
一种快速组合并渲染复杂神经场景的方法 Download PDFInfo
- Publication number
- CN116958367A CN116958367A CN202310759183.4A CN202310759183A CN116958367A CN 116958367 A CN116958367 A CN 116958367A CN 202310759183 A CN202310759183 A CN 202310759183A CN 116958367 A CN116958367 A CN 116958367A
- Authority
- CN
- China
- Prior art keywords
- depth
- nerve
- scene
- neural
- field model
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 title claims abstract description 72
- 210000005036 nerve Anatomy 0.000 title claims abstract description 66
- 230000001537 neural effect Effects 0.000 claims abstract description 76
- 230000005855 radiation Effects 0.000 claims abstract description 49
- 238000012549 training Methods 0.000 claims abstract description 29
- 238000003780 insertion Methods 0.000 claims abstract description 10
- 230000037431 insertion Effects 0.000 claims abstract description 10
- 230000002452 interceptive effect Effects 0.000 claims abstract description 9
- 230000000750 progressive effect Effects 0.000 claims abstract description 6
- 230000000007 visual effect Effects 0.000 claims abstract description 6
- 230000009466 transformation Effects 0.000 claims description 19
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 11
- 230000011218 segmentation Effects 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 6
- 238000005266 casting Methods 0.000 claims description 5
- 238000012952 Resampling Methods 0.000 claims description 4
- 238000004040 coloring Methods 0.000 claims description 4
- 230000010354 integration Effects 0.000 claims description 4
- 239000003086 colorant Substances 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 9
- 238000010276 construction Methods 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 7
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000003786 synthesis reaction Methods 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 5
- 238000003860 storage Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000008188 pellet Substances 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Classifications
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种快速组合并渲染复杂神经场景的方法,包括:根据收集的多个物体的不同视角下的2D图像,训练每个物体对应的神经辐射场模型以及神经辐射场模型相对应的神经深度场模型,准备数字资源;根据当前场景包含的每一个物体所对应的神经辐射场模型和神经深度场模型快速渲染组合的虚拟场景的结果。本发明采用神经辐射场模型和创新性的神经深度场模型相结合,支持在神经场景中进行点光源和平行光的动态阴影的投射。使用本方法,用户可以实现渐进式的物体插入和交互级速度的物体操作功能,从而为目标虚拟场景提供快速的结果预览,辅助神经场景的构建。
Description
技术领域
本发明涉及神经渲染技术领域,具体涉及一种快速组合并渲染复杂神经场景的方法。
背景技术
在过去几十年的计算机图形学领域中,构建逼真的虚拟场景一直是一个长期的任务。传统的计算机图形学技术通过合成数以万计的物体、材质和纹理已经能够创建广阔而生动的虚拟世界,这通常需要大量的前期工作。相比较之下,神经渲染是一个快速发展的领域,它采用神经技术在不使用复杂物理参数的情况下生成高质量图像。
神经辐射场(NeRF)是近几年出现的一项全新的视图合成技术,根据2D图像集合生成复杂3D场景的新视图,最早在“NeRF:Representing Scenes as Neural RadianceFields for View Synthesis”(Computer Vision–ECCV 2020:16th EuropeanConference,Glasgow,UK,August 23–28,2020,Part I 16.Springer InternationalPublishing,2020:405-421.)被提出。NeRF网络通过使用体积渲染从视角和空间位置(5D输入)直接映射到不透明度和颜色(4D),以渲染新视图。由于其出色的场景建模能力,NeRF随后在计算机图形学和视觉的各种领域得到了广泛的研究。例如,在人脸编辑,自动驾驶,风格化,网格重建,神经逆渲染等领域。
近年来,神经辐射场(NeRF)已经证明了其在以高保真度渲染复杂现实世界场景的能力,同时还具备场景压缩表示的优势,其所占用的存储空间远小于传统方法。因此将多个由NeRF表示的对象进行组合来构建高度逼真虚拟场景是神经渲染一项重要任务,具有重要的应用价值。
授权公告号为CN 114820906 B的专利文献公开了一种图像渲染方法、装置、电子设备及存储介质,该方法包括:对环境物体模型进行渲染,得到目标视角下的环境物体图像;基于目标物体的神经辐射场,确定目标物体模型和目标视角下的目标物体图像;根据所述目标物体模型,将所述目标物体图像融合渲染到所述环境物体图像中。通过上述技术方案能够提高图像渲染质量。
公开号为CN 115937394 A的专利文献公开了一种基于神经辐射场的三维图像渲染方法及系统,通过确定拍摄目标的第一三维坐标和对应的第一光线方向,进而将第一三维坐标和第一光线方向输入预构建的神经辐射场模型,基于神经辐射场模型预测第一三维坐标在对应的第一光线方向上的体密度以及对应颜色值的漫反射特征和镜面反射特征,基于漫反射特征和体密度进行体渲染得到第一渲染结果,基于镜面反射特征和体密度进行体渲染得到第二渲染结果,根据第一渲染结果和第二渲染结果输出拍摄目标的渲染图像。采用上述技术手段,可以保障图像渲染质量,缩短图像体渲染耗时,提升用户体验。
虽然现有的针对神经场景的组合方法已经取得了令人印象深刻的结果,但现有方法一般通过将场景建模为多个语义部分而非整体来增强场景的可编辑性,但实时地组合(操作物体,动态光照)神经辐射场仍然是一大难题。现有的针对神经辐射场的渲染加速方法在组合这一任务中都不适用。举例来说:隐式方法依赖于有限的摄像机活动范围,极大的限制了复杂神经场景的自由组合;混合方法依赖额外的复杂空间结构进行查询难以实时;预计算方法虽然针对单一NeRF表示的物体可以做到实时,但这种方法消耗大量的存储空间,内存开销随着场景中物体的增加变得不可接受。
实时地组合并渲染由NeRF表达的多个对象(物体)组成的大规模神经场景是一个极具挑战的问题。首先,支持任意仿射变换的几何表达、低成本的存储开销,和实时的渲染速度这三个需求难以被同时满足。其次,随着待合成对象数量的增加(例如,简单复制1k个小球),渲染整个场景所需的时间变得更长,并且混合方法或预计算方法的存储开销和内存开销将迅速增加。第三,在组合复杂场景时阴影计算的开销将显著增加,这阻碍NeRF的场景组合向着实时的目标发展。此外,阴影在提供场景内合成对象之间清晰的空间关系方面发挥着重要作用,但投射阴影将增加计算成本,特别是对于以体渲染为基础的NeRF模型。在过去的所有针对NeRF渲染加速的方法均未涉及针对阴影项的加速优化。
发明内容
本发明的目的在于提供一种快速组合并渲染复杂神经场景的方法,该方法同时支持点光源和平行光的动态阴影的投射,使用该方法,用户可以实现渐进式的物体插入和交互级速度的物体操作功能,从而为目标虚拟场景提供快速的结果预览,辅助神经场景的构建。
一种快速组合并渲染复杂神经场景的方法,包括以下步骤:
(1)根据收集的多个物体的不同视角下的2D图像,训练每个物体对应的神经辐射场(NeRF)模型以及神经辐射场(NeRF)模型相对应的神经深度场(NeDF)模型,准备数字资源;
(2)根据当前场景包含的每一个物体所对应的神经辐射场(NeRF)模型和神经深度场(NeDF)模型快速渲染组合的虚拟场景的结果。
进一步地,步骤(1)中,所述的根据收集的多个物体的不同视角下的2D图像,训练每个物体对应的神经辐射场(NeRF)模型以及神经辐射场(NeRF)模型相对应的神经深度场(NeDF)模型,准备数字资源的具体步骤为:
(1-1)训练每个物体对应的神经辐射场模型;
(1-2)使用训练好的神经辐射场模型提供的若干张新视角下每个物体对应的深度图和二值遮罩图,用作每一个物体的神经深度场模型的监督训练数据集;
(1-3)采用神经深度场模型的监督训练数据训练每一个物体对应的神经深度场模型,迭代至模型完全收敛。
进一步地,步骤(1-1)中,依据Springer International Publishing(2020)第405-421页“NeRF:Representing Scenes as Neural Radiance Fields for ViewSynthesis”公开的方法训练每一个物体对应的神经辐射场模型。
进一步地,步骤(1)中,所述的神经深度场模型(NeDF)为本发明提出的创新性的新模型,其具体定义如下:
神经深度场(NeDF)是一个5D函数,给定空间中一条光线r,神经深度场输出从该光线的起点到达物体表面的深度(距离)D(r),但NeDF不直接预测D(r),而是预测物体局部空间中切点p⊥到光线与表面交点(intersection)之间的距离μ,神经深度场模型为一个求交网络,其本质是一个多层感知机(deep MLP),表示为:
其中Φ表示求交网络,是当前物体对应的神经深度场模型,光线r可以表示为起点o和方向d的组合,/>是二值化的指示器,0表示光线和物体不存在交点,1表示相交;一旦切点p⊥到光线与表面交点(intersection)之间的距离μ被预测出来,深度D(r)可以通过如下公式计算得到:
D(r)=|o-p⊥|-μ (2)
求交网络进一步被建模为多层分类器以提高深度预测的精度,同时μ的值域范围被分段操作符S划分成了粗糙、精细两层,每一层有多段区间,相比较公式(1)将深度预测建模为回归问题,公式(3)将深度预测建模为分类问题。多层分类器可以表示为:
其中是1D的向量,分别表示表面交点在粗糙、精细层属于不同分段区间的概率,得到分类结果后,μ可以通过如下方式还原:
其中是分割操作符/>的逆操作符,/> λ1=2l,λ2=2l/Nc,l是μ的值域范围长度的一半,argmax是一个取向量最大索引下标的函数,/>表示取粗糙层(coarse-level)的1D向量中最大概率的索引,/>表示取精细层(fine-level)的1D向量中最大概率的索引。粗糙层有Nc个分段区间,精细层有Nf个分段区间。
由于argmax操作本身不可微,为了能够训练求交网络,训练中使用如下训练策略:将步骤(1-2)中获得的神经深度场的监督训练数据转化成μ并使用同样的分段操作符对μ表示的距离进行分段,得到1D的one-hot向量来监督多层分类器的训练,损失函数如下:
其中vc,vf为通过得到的one-hot向量,α为步骤(1-2)中获得的二值遮罩。BCE为二值交叉熵(Binary Cross Entropy)损失函数。
进一步地,步骤(2)中,获取当前场景包含的每一个物体的步骤为:渐进式的插入新的物体和编辑已有物体,通过缓冲区重用的技术,将对象的编辑操作加速至交互级速率。具体包括:
渐进式的插入新的物体:固定相机视角,停止渲染场景中已经存在的所有物体以减少计算负担,对插入前的缓冲区(深度图、颜色帧)进行保留和重用,仅对当前新插入的物体进行渲染,并依据重用的深度图和当前物体的深度值,完成重用的颜色帧和当前物体的渲染结果的快速混合,以实现新的物体的快速插入和调整。
交互级速率编辑已有物体:同样固定相机视角,先渲染一帧不包含编辑对象的结果,然后停止渲染场景中除需要编辑物体外的所有物体以减少计算负担,对缓冲区(深度图、颜色帧)进行保留和重用,仅对当前正在编辑的物体进行渲染,并依据重用的深度图和当前编辑重绘物体的深度值,完成重用的颜色帧和当前物体的渲染结果的快速混合,以实现交互级速率编辑,其中编辑指调整仿射变换参数。
进一步地,步骤(2)中,根据当前场景包含的每一个物体所对应的神经辐射场(NeRF)模型和神经深度场(NeDF)模型快速渲染虚拟场景的组合结果的具体步骤为:
(2-1)根据场景中已有的每一个物体的神经深度场模型和对应物体当前时刻的仿射变换参数生成当前帧(视角下)的深度图和ID图;
(2-2)依据深度图和ID图,对每一个物体对应的神经辐射场完成快速查询,并且对组合场景中所有物体进行着色,得到不带有阴影的颜色帧;
(2-3)依据解析光源的位置,利用神经深度场模型实施阴影映射算法,在物体之间快速产生阴影,最终得到带有阴影的颜色帧。
进一步地,步骤(2-1)中,根据场景中已有的每一个物体的神经深度场模型和对应物体当前时刻的仿射变换参数生成当前帧的深度图和ID图的具体步骤为:
(2-1-1)对于当前场景可见的任何一个物体,一条光线到达该隐式物体表面的距离可通过如下方式计算:将物体局部空间中一点q变换到世界空间中一点v的仿射变换表示为其中R,T分别表示控制旋转的矩阵和控制平移矩阵,s表示缩放因子,则对于当前物体,像素发出的光线r对应的深度可以表示为:
其中表示将当前世界空间中的光线变换到物体的局部空间中;
(2-1-2)遍历当前视域四棱锥区域包含的所有物体,通过步骤(2-1-1)的方法计算每一个像素的深度信息,在遍历过程中,如果新的深度小于像素位置存储的原有深度,则更新深度缓冲区并且用对应物体的ID更新ID缓冲区,当遍历完成时获得深度图和ID图;深度图中每一个像素指示着从像素发出的光线到达场景中最近隐式表面的距离,ID图中对应的像素则指示该隐式表面属于哪一个物体。
进一步地,步骤(2-2)中,依据深度图和ID图,对每一个物体对应的神经辐射场完成快速查询,并且对组合场景中所有物体进行着色,得到不带有阴影的颜色帧的具体步骤为:
(2-2-1)依据深度图将屏幕空间的可见2D像素点投影到世界空间中变成3D坐标,依据物体的仿射变换参数将该3D投影坐标变换到物体的局部坐标空间中在神经辐射场中进行查询,得到对应像素位置的颜色c,可以表示为:
其中是当前物体对应的神经辐射场模型,c是查询到的颜色,σ是3D坐标对应的体密度,/>表示将3D投影坐标变换到物体的局部坐标空间,/>表示将光线方向变换到物体的局部坐标空间。过小的σ(σ<0.1)指示着当前的深度预测不准确,对于这些不准确位置的像素,采用体渲染的积分方法对这些像素位置发出的光线进行重采样来计算颜色,所述不准确位置的像素是指求交网络计算出的交点不在表面附近。
进一步地,步骤(2-2-1)中,依据Springer International Publishing(2020)第405-421页“NeRF:Representing Scenes as Neural Radiance Fields for ViewSynthesis”公开的体渲染的积分方法对这些像素位置发出的光线进行重采样来计算颜色。
进一步地,步骤(2-3)中,依据解析光源的位置,利用神经深度场实施阴影映射算法,在物体之间快速产生阴影,最终得到带有阴影的颜色帧的具体步骤为:
(2-3-1)从光源位置L向步骤(2-2-1)中投影到世界空间的所有3D可见点发射光线形成阴影光线(shadow ray),计算L到所有3D可见点的欧氏距离,并且使用和步骤(2-1-1)和步骤(2-1-2)中相同的方法遍历物体利用神经深度场计算这些阴影光线对应的深度;
(2-3-2)实施阴影映射算法,比较L到所有3D可见点的欧氏距离和对应的阴影光线的深度,如果欧氏距离大于阴影光线的深度则该3D可见点在阴影中,反之不在;
(2-3-3)对于所有在阴影中的3D可见点对应的像素位置标记为1,反之标记为0,得到和当前帧同大小的阴影缓冲区,将颜色帧中对应的所有在阴影缓冲区为1的像素颜色进行衰减,得到带有阴影的颜色帧。
进一步地,步骤(2-3)中,由于平行光可以被看作无穷远的点光源,故上述步骤(2-3)中仅展示点光源。
进一步地,步骤(2)之后,还包括将步骤(2)中得到的虚拟场景的结果与现有的渲染管线得到的场景结果相结合,获取混合表示的场景结果。具体步骤为:
(3-1)使用传统的渲染引擎(如Blender 3D)得到由网格和纹理表示的传统的场景结果(颜色帧,深度图);
(3-2)将步骤(2)中得到的虚拟场景的结果(颜色帧,深度图)与传统的场景结果进行深度图和颜色帧的混合;
(3-3)使用阴影映射技术在由网格组成的物体和神经隐式表示的物体之间投射阴影,并组成混合表示的场景结果。
进一步地,光源位置和相机位置在传统渲染和本发明的神经渲染之间是共享的。
与现有技术相比,本发明至少具备以下有益效果:
1、本发明是第一个支持交互级速率预览和快速组合神经辐射场表示物体的框架,支持对组合好的场景进行实时的编辑,修改其中的物体。
2、本发明的渲染流程是完全的隐式,极大幅的减少了模型对象的存储开销;所提出的神经深度场模型是适用于所有隐式Nerf渲染的通用加速插件。
3、本发明是第一个支持在神经辐射场中快速投射阴影的方法,完成了之前所有NeRF加速方法未能完成的挑战。
4、本发明能够与传统的渲染管线结合,在由网格组成的物体和神经隐式表示的物体之间投射阴影,并组成混合表示的场景。
附图说明
图1(a)为实施例提出的神经深度场的原理示意图;图1(b)为实施例中求交网络作为多层分类器的工作原理图。
图2(a)为神经辐射场模型的场景组合示意图;图2(b)为组合虚拟场景中的数据流动图。
图3为实施例的神经渲染与传统的渲染管线结合,组成混合表示的场景结果示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
本实施例提供了一种快速组合并渲染复杂神经场景方法,包括以下步骤:
(1)根据收集的多个物体的不同视角下的2D图像,训练每个物体对应的神经辐射场(NeRF)模型,以及神经辐射场(NeRF)模型相对应的神经深度场(NeDF)模型,准备数字资源。
在本发明的一个实施例中,步骤(1)的具体实施过程如下:
(1-1)依据Springer International Publishing(2020)第405-421页“NeRF:Representing Scenes as Neural Radiance Fields for View Synthesis”公开的方法训练每一个物体对应的神经辐射场模型;
(1-2)采用使用训练好的神经辐射场模型提供1000张新视角下该物体对应的深度图和二值遮罩图,用作每一个物体的神经深度场的监督训练数据集;
(1-3)对每一个物体均采用1000张神经深度场模型的监督训练数据训练对应的神经深度场模型,总计迭代60w步至模型完全收敛。
具体的,本实施例的神经深度场(NeDF)模型为的具体定义如下:
神经深度场(NeDF)是一个5D函数,给定空间中一条光线r,神经深度场输出从该光线的起点到达物体表面的深度(距离)D(r),但NeDF不直接预测D(r),而是预测物体局部空间中切点p⊥到光线与表面交点(intersection)之间的距离μ,如图1(a)所示。神经深度场模型为一个求交网络,其本质是一个多层感知机(deep MLP),表示为:
其中Φ表示求交网络,是当前物体对应的神经深度场模型,光线r可以表示为起点o和方向d的组合,/>是二值化的指示器,0表示光线和物体不存在交点,1表示相交;一旦切点p⊥到光线与表面交点(intersection)之间的距离μ被预测出来,深度D(r)可以通过如下公式计算得到:
D(r)=|o-p⊥|-μ (2)
求交网络进一步被建模为多层分类器以提高深度预测的精度,同时μ的值域范围被分段操作符划分成了粗糙、精细两层,每一层有多段区间,相比较公式(1)将深度预测建模为回归问题,公式(3)将深度预测建模为分类问题。如图1(b)所示,多层分类器可以表示为:
其中是1D的向量,分别表示表面交点在粗糙、精细层属于不同分段区间的概率,得到分类结果后,μ可以通过如下方式还原:
其中是分割操作符/>的逆操作符,/> λ1=2l,λ2=2l/Nc,l是μ的值域范围长度的一半。argmax是一个取向量最大索引下标的函数,/>表示取粗糙层(coarse-level)的1D向量中最大概率的索引,/>表示取精细层(fine-level)的1D向量中最大概率的索引。粗糙层有Nc个分段区间,精细层有Nf个分段区间。
由于argmax操作本身不可微,为了能够训练求交网络,训练中使用如下训练策略:将步骤(1-2)中获得的神经深度场的监督训练数据转化成μ并使用同样的分段操作符对μ表示的距离进行分段,得到1D的one-hot向量来监督多层分类器的训练,损失函数如下:
其中vc,vf为通过得到的one-hot向量,α为步骤(1-2)中获得的二值遮罩。BCE为二值交叉熵(Binary Cross Entropy)损失函数。
(2)根据当前场景包含的每一个物体所对应的神经辐射场模型(NeRF)和神经深度场(NeDF)模型快速渲染组合的虚拟场景的结果。
具体的,步骤(2)中,获取当前场景包含的每一个物体的步骤为:渐进式的插入新的物体和编辑已有物体,通过缓冲区重用的技术,将对象的编辑操作加速至交互级速率。具体包括:
渐进式的插入新的物体:固定相机视角,停止渲染场景中已经存在的所有物体以减少计算负担,对插入前的缓冲区(深度图、颜色帧)进行保留和重用,仅对当前新插入的物体进行渲染,并依据重用的深度图和当前物体的深度值,完成重用的颜色帧和当前物体的渲染结果的快速混合,以实现新的物体的快速插入和调整。
交互级速率编辑已有物体:同样固定相机视角,先渲染一帧不包含编辑对象的结果,然后停止渲染场景中除需要编辑物体外的所有物体以减少计算负担,对缓冲区(深度图、颜色帧)进行保留和重用,仅对当前正在编辑的物体进行渲染,并依据重用的深度图和当前编辑重绘物体的深度值,完成重用的颜色帧和当前物体的渲染结果的快速混合,以实现交互级速率编辑,其中编辑指调整仿射变换参数。
图2(a)为神经辐射场模型场景组合示意图;图2(b)为组合虚拟场景中的数据流动图,其具体实施过程如下:
(2-1)根据场景中已有的每一个物体的神经深度场模型和对应物体当前时刻的仿射变换参数生成当前帧(视角下)的深度图和ID图(NeDF生成步骤)。
(2-1-1)对于当前场景可见的任何一个物体,一条光线到达该隐式物体表面的距离可通过如下方式计算:将物体局部空间中一点q变换到世界空间中一点v的仿射变换表示为其中R,T分别表示控制旋转的矩阵和控制平移矩阵,s表示缩放因子,则对于当前物体,像素发出的光线r对应的深度可以表示为:
其中表示将当前世界空间中的光线变换到物体的局部空间中;
(2-1-2)遍历当前视域四棱锥区域包含的所有物体,通过(2-1-1)的方法计算每一个像素的深度信息,在遍历过程中,如果新的深度小于像素位置存储的原有深度,则更新深度缓冲区并且用对应物体的ID更新ID缓冲区,当遍历完成时获得深度图和ID图;深度图中每一个像素指示着从像素发出的光线到达场景中最近隐式表面的距离,ID图中对应的像素则指示该隐式表面属于哪一个物体。
(2-2)依据深度图和ID图,对每一个物体对应的神经辐射场完成快速查询,并且对组合场景中所有物体进行着色,得到不带有阴影的颜色帧(延迟渲染步骤)。
(2-2-1)依据深度图将屏幕空间的可见2D像素点投影到世界空间中变成3D坐标,依据物体的仿射变换参数将该3D投影坐标变换到物体的局部坐标空间中在神经辐射场中进行查询,得到对应像素位置的颜色c,可以表示为:
其中是当前物体对应的神经辐射场模型,c是查询到的颜色,σ是3D坐标对应的体密度,/>表示将3D投影坐标变换到物体的局部坐标空间,/>表示将光线方向变换到物体的局部坐标空间。过小的σ(σ<0.1)指示着当前的深度预测不准确,对于这些不准确位置的像素,依据Springer International Publishing(2020)第405-421页“NeRF:Representing Scenes as Neural Radiance Fields for View Synthesis”公开的体渲染的积分方法对这些像素位置发出的光线进行重采样来计算颜色。
(2-3)依据解析光源的位置,利用神经深度场模型实施阴影映射算法,在物体之间快速产生阴影,最终得到带有阴影的颜色帧(阴影步骤)。
(2-3-1)从光源位置L向步骤(2-2-1)中投影到世界空间的所有3D可见点发射光线形成阴影光线(shadow ray),计算L到所有3D可见点的欧氏距离,并且使用和步骤(2-1-1)和步骤(2-1-2)中相同的方法遍历物体利用神经深度场计算这些阴影光线对应的深度;
(2-3-2)实施阴影映射算法,比较L到所有3D可见点的欧氏距离和对应的阴影光线的深度,如果欧氏距离大于阴影光线的深度则该3D可见点在阴影中,反之不在;
(2-3-3)对于所有在阴影中的3D可见点对应的像素位置标记为1,反之标记为0,得到和当前帧同大小的阴影缓冲区,将颜色帧中对应的所有在阴影缓冲区为1的像素颜色进行衰减,得到带有阴影的颜色帧。
步骤(2-3)中,由于平行光可以被看作无穷远的点光源,故上述步骤(2-3)中仅展示点光源。
步骤(2)之后,还包括将步骤(2)中得到的虚拟场景的结果与现有的渲染管线得到的场景结果相结合,获取混合表示的场景结果。
图3为将本实施例的快速组合渲染技术与传统的渲染管线结合,获取混合表示的场景示意图,包括:
(3-1)使用传统的渲染引擎Blender 3D得到由网格和纹理表示的传统的场景结果(颜色帧,深度图);
(3-2)将步骤(2)中得到的虚拟场景的结果(颜色帧,深度图)与传统的场景结果进行深度图和颜色帧的混合;
(3-3)使用阴影映射技术在由网格组成的物体和神经隐式表示的物体之间投射阴影,并组成混合表示的场景结果。
具体的,光源位置和相机位置在传统渲染和本发明的神经渲染之间是共享的。
Claims (10)
1.一种快速组合并渲染复杂神经场景的方法,其特征在于,包括以下步骤:
(1)根据收集的多个物体的不同视角下的2D图像,训练每个物体对应的神经辐射场模型以及神经辐射场模型相对应的神经深度场模型,准备数字资源;
(2)根据当前场景包含的每一个物体所对应的神经辐射场模型和神经深度场模型快速渲染组合的虚拟场景的结果。
2.根据权利要求1所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(1)中,所述的根据收集的多个物体的不同视角下的2D图像,训练每个物体对应的神经辐射场模型以及神经辐射场模型相对应的神经深度场模型,准备数字资源的具体步骤为:
(1-1)训练每个物体对应的神经辐射场模型;
(1-2)使用训练好的神经辐射场模型提供的若干张新视角下每个物体对应的深度图和二值遮罩图,用作每一个物体的神经深度场模型的监督训练数据集;
(1-3)采用神经深度场模型的监督训练数据训练每一个物体对应的神经深度场模型,迭代至模型完全收敛。
3.根据权利要求1所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(1)中,所述的神经深度场模型的具体定义如下:
神经深度场是一个5D函数,给定空间中一条光线r,神经深度场输出从光线的起点到达物体表面的深度D(r),但神经深度场不直接预测D(r),而是预测物体局部空间中切点p⊥到光线与表面交点之间的距离μ,神经深度场为一个求交网络,表示为:
其中Φ表示求交网络,是当前物体对应的神经深度场模型,光线r表示起点o和方向d的组合,/> 是二值化的指示器,0表示光线和物体不存在交点,1表示相交;当切点p⊥到光线与表面交点之间的距离μ被预测出来时,深度D(r)通过如下公式计算得到:
求交网络进一步被建模为多层分类器,μ的值域范围被分段操作符划分成了粗糙、精细两层,每一层有多段区间,多层分类器表示为:
其中是1D的向量,分别表示表面交点在粗糙、精细层属于不同分段区间的概率,得到分类结果后,μ通过如下方式还原:
其中是分割操作符/>的逆操作符,/> λ1=2l,λ2=2l/Nc,l是μ的值域范围长度的一半,argmax是一个取向量最大索引下标的函数,/>表示取粗糙层的1D向量中最大概率的索引,/>表示取精细层的1D向量中最大概率的索引,粗糙层有Nc个分段区间,精细层有Nf个分段区间;
训练求交网络:将步骤(1-2)中获得的神经深度场的监督训练数据转化成μ并使用同样的分段操作符对μ表示的距离进行分段,得到1D的one-hot向量来监督多层分类器的训练,损失函数如下:
其中vc,vf为通过得到的one-hot向量,α为步骤(1-2)中获得的二值遮罩,BCE为二值交叉熵损失函数。
4.根据权利要求1所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(2)中,获取当前场景包含的每一个物体的步骤为:渐进式的插入新的物体和编辑已有物体,通过缓冲区重用的技术,将对象的编辑操作加速至交互级速率。
5.根据权利要求1所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(2)中,根据当前场景包含的每一个物体所对应的神经辐射场模型和神经深度场模型快速渲染虚拟场景的组合结果的具体步骤为:
(2-1)根据场景中已有的每一个物体的神经深度场模型和对应物体当前时刻的仿射变换参数生成当前帧的深度图和ID图;
(2-2)依据深度图和ID图,对每一个物体对应的神经辐射场完成快速查询,并且对组合场景中所有物体进行着色,得到不带有阴影的颜色帧;
(2-3)依据解析光源的位置,利用神经深度场模型实施阴影映射算法,在物体之间快速产生阴影,最终得到带有阴影的颜色帧。
6.根据权利要求5所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(2-1)中,根据场景中已有的每一个物体的神经深度场模型和对应物体当前时刻的仿射变换参数生成当前帧的深度图和ID图的具体步骤为:
(2-1-1)对于当前场景可见的任何一个物体,一条光线到达隐式物体表面的距离通过如下方式计算:将物体局部空间中一点q变换到世界空间中一点v的仿射变换表示为 其中R,T分别表示控制旋转的矩阵和控制平移矩阵,s表示缩放因子,则对于当前物体,像素发出的光线r对应的深度表示为:
其中表示将当前世界空间中的光线变换到物体的局部空间中;
(2-1-2)遍历当前视域四棱锥区域包含的所有物体,通过步骤(2-1-1)的方法计算每一个像素的深度信息,在遍历过程中,如果新的深度小于像素位置存储的原有深度,则更新深度缓冲区并且用对应物体的ID更新ID缓冲区,当遍历完成时获得深度图和ID图;深度图中每一个像素指示着从像素发出的光线到达场景中最近隐式表面的距离,ID图中对应的像素则指示隐式表面属于哪一个物体。
7.根据权利要求5所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(2-2)中,依据深度图和ID图,对每一个物体对应的神经辐射场完成快速查询,并且对组合场景中所有物体进行着色,得到不带有阴影的颜色帧的具体步骤为:
(2-2-1)依据深度图将屏幕空间的可见2D像素点投影到世界空间中变成3D坐标,依据物体的仿射变换参数将3D投影坐标变换到物体的局部坐标空间中在神经辐射场中进行查询,得到对应像素位置的颜色c,表示为:
其中是当前物体对应的神经辐射场模型,c是查询到的颜色,σ是3D坐标对应的体密度,/>表示将3D投影坐标变换到物体的局部坐标空间,/>表示将光线方向变换到物体的局部坐标空间,当σ<0.1时,指示着当前的深度预测不准确,对于这些不准确位置的像素,采用体渲染的积分方法对这些像素位置发出的光线进行重采样来计算颜色。
8.根据权利要求5所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(2-3)中,依据解析光源的位置,利用神经深度场实施阴影映射算法,在物体之间快速产生阴影,最终得到带有阴影的颜色帧的具体步骤为:
(2-3-1)从光源位置L向步骤(2-2-1)中投影到世界空间的所有3D可见点发射光线形成阴影光线,计算L到所有3D可见点的欧氏距离,使用和步骤(2-1-1)和步骤(2-1-2)中相同的方法遍历物体利用神经深度场计算这些阴影光线对应的深度;
(2-3-2)实施阴影映射算法,比较L到所有3D可见点的欧氏距离和对应的阴影光线的深度,如果欧氏距离大于阴影光线的深度则该3D可见点在阴影中,反之不在;
(2-3-3)对于所有在阴影中的3D可见点对应的像素位置标记为1,反之标记为0,得到和当前帧同大小的阴影缓冲区,将颜色帧中对应的所有在阴影缓冲区为1的像素颜色进行衰减,得到带有阴影的颜色帧。
9.根据权利要求1所述的快速组合并渲染复杂神经场景的方法,其特征在于,步骤(2)之后,还包括将步骤(2)中得到的虚拟场景的结果与现有的渲染管线得到的场景结果相结合,获取混合表示的场景结果。
10.根据权利要求9所述的快速组合并渲染复杂神经场景的方法,其特征在于,获取混合表示的场景结果的具体步骤为:
(3-1)使用传统的渲染引擎得到由网格和纹理表示的传统的场景结果;
(3-2)将步骤(2)中得到的虚拟场景的结果与传统的场景结果进行深度图和颜色帧的混合;
(3-3)使用阴影映射技术在由网格组成的物体和神经隐式表示的物体之间投射阴影,并组成混合表示的场景结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310759183.4A CN116958367A (zh) | 2023-06-26 | 2023-06-26 | 一种快速组合并渲染复杂神经场景的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310759183.4A CN116958367A (zh) | 2023-06-26 | 2023-06-26 | 一种快速组合并渲染复杂神经场景的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116958367A true CN116958367A (zh) | 2023-10-27 |
Family
ID=88457453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310759183.4A Pending CN116958367A (zh) | 2023-06-26 | 2023-06-26 | 一种快速组合并渲染复杂神经场景的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116958367A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117911633A (zh) * | 2024-03-19 | 2024-04-19 | 成都索贝数码科技股份有限公司 | 一种基于虚幻引擎的神经辐射场渲染方法及框架 |
CN117911633B (zh) * | 2024-03-19 | 2024-05-31 | 成都索贝数码科技股份有限公司 | 一种基于虚幻引擎的神经辐射场渲染方法及框架 |
-
2023
- 2023-06-26 CN CN202310759183.4A patent/CN116958367A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117911633A (zh) * | 2024-03-19 | 2024-04-19 | 成都索贝数码科技股份有限公司 | 一种基于虚幻引擎的神经辐射场渲染方法及框架 |
CN117911633B (zh) * | 2024-03-19 | 2024-05-31 | 成都索贝数码科技股份有限公司 | 一种基于虚幻引擎的神经辐射场渲染方法及框架 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108648269B (zh) | 三维建筑物模型的单体化方法和系统 | |
CN108986195B (zh) | 一种结合环境映射和全局光照渲染的单镜头混合现实实现方法 | |
CN108961390B (zh) | 基于深度图的实时三维重建方法 | |
TW201805894A (zh) | 三維渲染方法以及三維繪圖處理裝置 | |
CN115841559A (zh) | 一种基于神经辐射场的城市大场景重建方法 | |
CN115937461B (zh) | 多源融合模型构建及纹理生成方法、装置、介质及设备 | |
Zhu et al. | Learning-based inverse rendering of complex indoor scenes with differentiable monte carlo raytracing | |
Wang et al. | Voge: a differentiable volume renderer using gaussian ellipsoids for analysis-by-synthesis | |
WO2023004559A1 (en) | Editable free-viewpoint video using a layered neural representation | |
Yang et al. | Reconstructing objects in-the-wild for realistic sensor simulation | |
WO2022217470A1 (en) | Hair rendering system based on deep neural network | |
Gu et al. | Ue4-nerf: Neural radiance field for real-time rendering of large-scale scene | |
Buck et al. | Ignorance is bliss: flawed assumptions in simulated ground truth | |
CN116958367A (zh) | 一种快速组合并渲染复杂神经场景的方法 | |
CN112002019B (zh) | 一种基于mr混合现实的模拟人物阴影的方法 | |
Johnston et al. | Single View 3D Point Cloud Reconstruction using Novel View Synthesis and Self-Supervised Depth Estimation | |
CN116993894B (zh) | 虚拟画面的生成方法、装置、设备、存储介质及程序产品 | |
Colom et al. | 3D shape reconstruction from non-realistic multiple-view depictions using NVDiffRec | |
CN117541755B (zh) | 一种基于rgb-d三维重建的刚性物体虚实遮挡方法 | |
RU2749749C1 (ru) | Способ синтеза двумерного изображения сцены, просматриваемой с требуемой точки обзора, и электронное вычислительное устройство для его реализации | |
JP2003099800A (ja) | 3次元画像情報生成方法および装置、ならびに3次元画像情報生成プログラムとこのプログラムを記録した記録媒体 | |
Zhang et al. | Visual Nondestructive Rendering of 3D Animation Images Based on Large Data | |
Yang et al. | TUDF-NeRF: Generalizable Neural Radiance Field via Truncated Unsigned Distance Field | |
Mihut et al. | Lighting and Shadow Techniques for Realistic 3D Synthetic Object Compositing in Images | |
Jaspe Villanueva | Scalable exploration of 3D massive models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |