基于cGAN的无限地形生成方法、系统、存储介质和终端技术方案

技术编号:20120955 阅读:32 留言:0更新日期:2019-01-16 12:38
本发明专利技术公开了基于cGAN的无限地形生成方法、系统、存储介质和终端,方法包括:获取草图;数据预处理:将所述草图覆盖已存在的生成地形对应位置,并打包该位置与周围八个方向邻接区域的地形灰度图,形成一整张待处理图像,作为地形生成网络的输入;网络处理:将待处理图像在地形生成网络中进行处理,网络的输出将对中心草图区域进行地形的创作,通过该区域的草图与周围已有地形的高低起伏生成拟合周围走向的中心区域的地形灰度图;后期处理:将输出的中心区域的地形灰度图与已有地形对应位置的区域分别乘以一个权重并相加,再赋值到已有地形中,形成当前的大地形灰度图;主题渲染。本发明专利技术通过深度学习,根据用户的简单输入生成复杂的3D地形。

Infinite terrain generation method, system, storage medium and terminal based on cGAN

The invention discloses an infinite terrain generation method, system, storage medium and terminal based on cGAN, which includes: obtaining sketches; data preprocessing: covering the existing corresponding position of the generated terrain, and packaging the terrain gray map of the location adjacent to eight directions to form a whole image to be processed as input of the terrain generation network; Rationality: The image to be processed will be processed in the terrain generation network, and the output of the network will create the terrain of the central sketch area. The terrain gray map of the central area which fits the direction of the surrounding terrain will be generated by the sketch of the area and the fluctuation of the surrounding terrain. The post-processing: the terrain gray map of the output central area will be multiplied by the corresponding area of the existing terrain. A weight is added together, and then assigned to the existing terrain to form the current large terrain gray map; theme rendering. The invention generates complex 3D terrain according to user's simple input through in-depth learning.

【技术实现步骤摘要】
基于cGAN的无限地形生成方法、系统、存储介质和终端
本专利技术涉及3D地形建模领域,尤其涉及基于cGAN的无限地形生成方法、系统、存储介质和终端。
技术介绍
3D地形是虚拟环境中不可或缺且极其重要的视觉内容。目前,计算机图形技术在地形生成领域已经取得了很多突破性的工作,但开发人员仍在追求更好质量和更快速度的地形生成。地形建模在各种可视化应用程序、计算机游戏和计算机图形中都很重要。目前,地形生成的主要方法可分为基于样本、基于仿真和程序生成技术。在Mandelbrot[1982]的工作中引入了基于仿真的技术,他使用Poisson断层生成了分形地形。Musgrave等[1989]将建模细分为两个步骤:地形生成和侵蚀仿真,使用各种侵蚀来修改分形地形。在计算机图形学中,用于地形生成的侵蚀技术已经被提出近30年了。侵蚀仿真方法用以改善地形特征的真实性[Cordonnier,2018],且可以应用于任何地形模型。在Benes等人[2002]的工作中提出了水力地形侵蚀,为了改善地形的真实感,将侵蚀过程分为四个独立的步骤。基于样本的方法从现有样本生成新地形。Lagae[2005]提出了一种通过样本进行几何合成的方法,该方法是分为分析阶段和合成阶段。基于纹理的地形与草图相结合,用于通过用户控制来定义地形,该方法可以生成较为真实的地形[Tasse等,2012]。然而,基于样本的方法仅限于,在原有地形之上对地形做出微小的改变,和仅限于基于物理的编辑[Vanek等,2011]。程序生成技术是当前主流的生成地形方法,使用连续的过程函数来定义地形的高程,具有较高的计算效率。研究人员已经提出了各种方法,将复杂的特征,如河流、丘陵和山脉纳入程序性地形[Kelley,1988;Smelik等,2014]。Génevaux等[2015]提出了基于程序原始的地形表示,其通过组合基元的贡献来描述具有不同细节水平的复杂地形。最近,Guérin等人[2017]引入了地形建模框架,该框架结合了程序建模和交互式草图,实现从输入草图生成复杂的地形。该框架不仅限于编写程序规则或定义基于物理的模拟的参数。然而,我们发现地形在Guérin等人的工作中受限于固定大小。具体地,深度学习的研究和发展在计算机图形学方面取得了很大进展。在众多的深度学习方法中,GAN模型的训练方法更为彻底,因为它生成了数据本身。如今,在GAN技术的支持下,可以自动生成电影和游戏中经常出现的图像。用户只需绘制一些草图,就可以自动生成高分辨率的3D地形模型。上述过程是通过程序生成完成的,且无需花费数十小时的工作时间。GAN技术根据手绘图学习如何输出地形图像,然后输入用户绘制的河流、山脊的景观草图,受过训练后的GAN将自动输出高质量的地形高度图。更理想的方法是使用GAN实现无缝地形拼接,该方法同时生成地形,也可以无限地扩展地形。无限地形的基本思想是生成一块可以与周围环境拼接的地形。如果用户不断输入草图,则GAN将继续生成地形,而整体地形不限于固定大小。我们将用户期望生成的超大地形划分为多个正方形方块。首先给定用户一个初始小块,即当前地形为1×1块大小,用户在该方块绘制草图以生成初始瓦片地形。在绘制草图时,用户可选择的画笔具有两种:山脊和河流。用户绘制了山脊和河流的大致方向,网络根据草图的粗略信息并添加细节而生成地形。其中,草图的概念参考[Guérin等,2017]。然后,用户可以继续在该区域的相邻区域(顶部,底部,左侧,右侧,左下角,右上角和右下角)绘制地形草图,如图1所示,灰色区域被视为初始瓦片地形,并不断扩展其相邻区域。新生成的地形连接到初始瓦片地形的边缘并平滑过渡,即高度不会突然间断。在新地形小块与原有的初始小块进行拼接之后,整张地图便得到扩展,例如若用户在初始小块左侧绘制,则拼接后整体地形大小变为2×1块,若用户在初始块右上角绘制,则拼接后整体地形为2×2大小,其中包含左上角与右下角2个空白区域,空白区域可在后续进行绘制填补。之后,用户可以继续在已有地形小块区域其相邻区域绘制地形草图。因此,用户可以不断扩展地形的大小而不是限制于某一固定大小。如果时间允许,该方法可以实现近无限扩展。为了实现逼真的实时显示和交互,大规模的3D地形建模和渲染依然面临许多技术挑战。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种基于cGAN的无限地形生成方法、系统、存储介质和终端,通过使用cGAN网络(条件生成对抗网络)可以根据用户输入的草图生成复杂的地形。本专利技术的目的是通过以下技术方案来实现的:基于cGAN的无限地形生成方法,包括以下步骤:获取草图,所述的草图包括绘制的山脊线和河流线;数据预处理:将所述草图覆盖已存在的生成地形对应位置,并打包该位置与周围八个方向邻接区域的地形灰度图,形成一整张待处理图像,作为地形生成网络的输入;网络处理:将所述待处理图像在地形生成网络中进行处理,其中网络的输出将对中心草图区域进行地形的创作,通过该区域的草图与周围已有地形的高低起伏生成拟合周围走向的中心区域的地形灰度图;后期处理:将输出的中心区域的地形灰度图与已有地形对应位置的区域分别乘以一个权重并相加,再赋值到已有地形中,形成当前的大地形灰度图;主题渲染:通过主题渲染器来根据现有的较大地形生成并渲染成3D场景。进一步地,所述的地形生成网络包括生成器G和鉴别器D;所述的生成器G由特征/真实图像对(X,Y)训练形成,其中X是九宫格图像,其中心区域是特征图,高度图在其周围随机出现,特征图表示地形的山脊和河流特征,Y是与X对应的真实地形的高度图;受过训练的生成器G对输入的中心区域是特征图的X进行变换,以获得输出中心区域是高度图的G(X);受过训练的鉴别器D用于判别未知图像是否是由生成器产生的图像G(X),所述的未知图像包括来自数据集的真实目标图像Y或来自生成器G的输出图像G(X);所述的地形生成网络的目标函数为:其中:式中,D(X,Y)与D(X,G(X))均为鉴别器D对不同图像对的判别结果,代表判断为真的概率;而E(X,Y)表示对来自样本的所有特征/真实图像对(X,Y)的判别计算结果进行累加,并进一步使用概率分布的期望形式写出;EX则表示是对特征/生成图像对(X,G(X))进行上述相应处理;VL1(G)为L1范数损失函数,其中,λ表示L1范式的影响权重,以增加输出图像与输入图像的相似程度。进一步地,所述的生成器G包括顺序连接的m层编码器和m层解码器,编码器的输入端输入中心区域是特征图的图像X,解码器的输出端输出输出图像G(X);其中,每个编码器均包括顺序连接的卷积层、BatchNorm层和ReLU层,每个解码器包括反卷积/上采样层、BatchNorm层和ReLU层;并且第n层的卷积层的输出端与第m-n层的反卷积层的输入端跳跃连接,其中m为层数;所述的鉴别器D包括顺序连接的多个卷积层,相邻卷积层之间包括BatchNorm层和ReLU层;生成器G和鉴别器D中的每层网络中包含若干训练优化的参数权重,通过训练动态更新其值。进一步地,特征图的图像X大小为256×256×3,其中输入通道为3,表示输入图像为RGB三通道,因为对草图中山脉与河流进行了着色区分;输出图像G(X)大小为256×256×1,其中输出通道1,即是输本文档来自技高网
...

【技术保护点】
1.基于cGAN的无限地形生成方法,其特征在于:包括以下步骤:获取草图,所述的草图包括绘制的山脊线和河流线;数据预处理:将所述草图覆盖已存在的生成地形对应位置,并打包该位置与周围八个方向邻接区域的地形灰度图,形成一整张待处理图像,作为地形生成网络的输入;网络处理:将所述待处理图像在地形生成网络中进行处理,其中网络的输出将对中心草图区域进行地形的创作,通过该区域的草图与周围已有地形的高低起伏生成拟合周围走向的中心区域的地形灰度图;后期处理:将输出的中心区域的地形灰度图与已有地形对应位置的区域分别乘以一个权重并相加,再赋值到已有地形中,形成当前的大地形灰度图;主题渲染:通过主题渲染器来根据现有的较大地形生成并渲染成3D场景。

【技术特征摘要】
1.基于cGAN的无限地形生成方法,其特征在于:包括以下步骤:获取草图,所述的草图包括绘制的山脊线和河流线;数据预处理:将所述草图覆盖已存在的生成地形对应位置,并打包该位置与周围八个方向邻接区域的地形灰度图,形成一整张待处理图像,作为地形生成网络的输入;网络处理:将所述待处理图像在地形生成网络中进行处理,其中网络的输出将对中心草图区域进行地形的创作,通过该区域的草图与周围已有地形的高低起伏生成拟合周围走向的中心区域的地形灰度图;后期处理:将输出的中心区域的地形灰度图与已有地形对应位置的区域分别乘以一个权重并相加,再赋值到已有地形中,形成当前的大地形灰度图;主题渲染:通过主题渲染器来根据现有的较大地形生成并渲染成3D场景。2.根据权利要求1所述的基于cGAN的无限地形生成方法,其特征在于:所述的地形生成网络包括生成器G和鉴别器D;所述的生成器G由特征/真实图像对(X,Y)训练形成,其中X是九宫格图像,其中心区域是特征图,高度图在其周围随机出现,特征图表示地形的山脊和河流特征,Y是与X对应的真实地形的高度图;受过训练的生成器G对输入的中心区域是特征图的X进行变换,以获得输出中心区域是高度图的G(X);受过训练的鉴别器D用于判别未知图像是否是由生成器产生的图像G(X),所述的未知图像包括来自数据集的真实目标图像Y或来自生成器G的输出图像G(X);所述的地形生成网络的目标函数为:其中:VCGAN(G,D)=E(X,Y)[logD(X,Y)]+EX[log(1-D(X,G(X)))];式中,D(X,Y)与D(X,G(X))均为鉴别器D对不同图像对的判别结果,代表判断为真的概率;而E(X,Y)表示对来自样本的所有特征/真实图像对(X,Y)的判别计算结果进行累加,并进一步使用概率分布的期望形式写出;EX则表示是对特征/生成图像对(X,G(X))进行上述相应处理;VL1(G)为L1范数损失函数,其中,λ表示L1范式的影响权重,以增加输出图像与输入图像的相似程度。3.根据权利要求2所述的基于cGAN的无限地形生成方法,其特征在于:所述的生成器G包括顺序连接的m层编码器和m层解码器,编码器的输入端输入中心区域是特征图的图像X,解码器的输出端输出输出图像G(X);其中,每个编码器均包括顺序连接的卷积层、BatchNorm层和ReLU层,每个解码器包括反卷积/上采样层、BatchNorm层和ReLU层;并且第n层的卷积层的输出端与第m-n层的反卷积层的输入端跳跃连接,其中m为层数;所述的鉴别器D包括顺序连接的多个卷积层,相邻卷积层之间包括BatchNorm层和ReLU层;生成器G和鉴别器D中的每层网络中包含若干训练优化的参数权重,通过训练动态更新其值。4.根据权利要求3所述的基于cGAN的无限地形生成方法,其特征在于:特征图的图像X大小为256×256×3,其中输入通道为3,表示输入图像为RGB三通道,因为对草图中山脉与河流进行了着色区分;输出图像G(X)大小为256×256×1,其中输出通道1,即是输出的图像仅为灰度图,范围是0到255;而每一层编码器得到的图像大小分别为:64×64×128、32×32×256、16×16×512、8×8×512、4×4×512、2×2×512,编码器的输出端输出的图像大小为1×1×5...

【专利技术属性】
技术研发人员:匡平郑庭颖杜雪梅付蓉
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1