基于对抗网络的快速多视角三维合成和展示方法及装置与流程

文档序号:14250696
基于对抗网络的快速多视角三维合成和展示方法及装置与流程

本发明涉及包含游戏交互,三维动画制作与合成,虚拟现实内容获取,三维虚拟物体展示等领域,具体涉及一种可将现实物体基于对抗网络快速在不同视角下合成和展示的方法及装置。



背景技术:

在过去的几年里,随着移动互联网和智能设备的快速普及,人们对人机交互方式有了更高的要求,虚拟现实(VR)技术也因此有了快速的发展,三星的Gear VR头盔和Oculus Rift等VR设备的出现,给人们带来了全新的交互体验,人们可以通过VR设备体验VR游戏,VR社交,甚至可以将一个局部的现实世界重建出来,带给人强烈的真实感。目前,已有许多科研技术人员在研究三维重建技术,如何将现实中的物体或者场景真实的反映在虚拟世界中,然后将重建结果展示出来。所谓三维重建技术,就是通过相机采集的二维的图像,经过几何映射和点对应等方法,在三维世界中重建出三维物体,然后可以对该重建出的虚拟物体在各个视角进行观测展示,给人一种逼真的感觉。现有的对现实物体到虚拟世界的展示技术,均是通过三维重建技术进行建模,然后再通过纹理映射重光照等技术,恢复物体表面的色彩纹理和光照,然后对其进行展示。其中仅三维重建模型就包含了采集多视角图像,寻找匹配点对应,几何投影,点云融合,面片融合等各项复杂的流程,整个过程纷繁复杂,速度慢而且效果也不是尽好,重建的模型中时而会出现黑色的空洞,反而降低了模型的质量,给人不真实的感觉。鉴于以上问题,本发明从三维展示的本质出发,提出了一种无需对现实物体进行三维建模,而直接对其进行多视角展示的方法。



技术实现要素:

为解决上述技术问题,本发明提供一种基于对抗网络的快速多视角三维合成和展示方法及装置,无需对三维模型进行重建,仅仅对某一视角下深度图和RGB图进行处理,无需重建高质量的三维模型,便可得到连续的多视角下物体的二维映射,通过变换视角,可以实时的获取该二维图像,简化了三维物体展示的流程,能实现对三维物体的多视角的实时较高质量的展示。

为实现上述技术目的,所采用的技术方案是:基于对抗网络的快速多视角三维合成和展示方法,对某一视角下深度图和RGB图进行处理,利用构建生成对抗网络(GAN),便可得到连续的多视角下物体的二维映射,其具体实现方法是:

步骤一、学习过程

1.1、获取目标物体多视角下的RGB图像P和其对应的深度图像D,并且记录其视点位置V,得到有多个(P,D,V)构成的一个数据集;

1.2、从数据集中随机取出两组数据作为输入,构建出一个训练样本,首先对训练样本进行特征提取和变换,将一组数据作为原图像,将另一组数据的视点位置作为新视角位置,得到了一个粗糙的在原图像在新视角下的投影RGBD图像;

1.3、构建生成对抗网络GAN,将粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量Z输入GAN的生成器中得到生成器生成图像,将粗糙的RGBD图形与原图像作为判别图像,与生成器生成图像一起输入CAN的判别器判别真假,通过最大化判别器的差别能力和最小化生成器的分布损失函数,得到最优图像结果,生成对抗网络CAN的整体参数;

步骤二、合成过程

在完成上述学习部分后,任意的给定一个物体的RGB图p和相应的深度图d,给定一个视角v, 将其进行视角变换后的得到的粗糙的RGBD图像输入GAN网络中,便可得到该视角下的生成图像,保持RGB图和深度图不变,变换视角位置v,便可得到不同视点下的RGB图像,即得到了对该物体多视角下的展示图。

进一步,所述的最大化判别器的差别能力和最小化生成器的分布损失函数为

其中,x是来自真实数据集的图像,z是一个均匀分布随机数产生器产生的一组随机变量,G是生成器,D是判别器。

进一步,所述的步骤一中的1.3步骤具体实现方法是:

(一)首先对GAN网络中所有参数,包括生成器和判别器进行随机初始化;

(二)将样本输入网络中,得到生成图像并使用判别器得到结果;

(三)固定生成器参数,应用改进的梯度下降或者其他方法,优化判别器的参数,使其判别能力得到最大;

(四)固定判别器参数,应用改进的梯度下降或者其他方法,优化生成器的参数,使得整个最大化判别器的差别能力和最小化生成器的分布损失函数最小化;

(五)判断结果是否收敛,如果没有收敛,重复(二)-(五)的操作直到收敛或最大迭代轮数;

(六)最后得到生成对抗网络CAN的整体参数。

进一步,所述的学习过程为离线过程,在系统为运行时先对该网络进行训练。

进一步,所述的合成部分为在线过程,与系统一起运作,可以边采集图像边切换视角,同时获取切换视角下的生成图像。

进一步,所述的生成器生成图像的具体实现方法是,将粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量Z输入GAN的生成器中,通过对粗糙的RGBD图形N*N的不同卷积核多次对RGBD图像进行卷积核池化操作,得到粗糙的RGBD图形的中间结果,对随机变量Z采取多次逆卷积,生成随机变量Z的中间结果,将两个中间结果拼接在一起,而后进行多次卷积和逆卷积操作最后得到生成器生成图像。

进一步,所述的获取目标物体多视角下的RGB图像P和其对应的深度图像D,并且记录其视点位置V的装置为深度相机。

实现基于对抗网络的快速多视角三维合成和展示方法的装置,包括:

物体信息获取单元,获取目标物体多视角下的RGB图像P和其对应的深度图像D,并且记录其视点位置V,得到有多个(P,D,V)构成的一个数据集;

粗糙图像获取单元,从物体信息获取单元的数据集中随机取出两组数据作为输入,构建出一个训练样本,首先对训练样本进行特征提取和变换,将一组数据作为原图像,将另一组数据的视点位置作为新视角位置,得到了一个粗糙的在原图像在新视角下的投影RGBD图像;

学习训练单元,构建生成对抗网络GAN,将粗糙图像猎取单元得到的粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量Z输入GAN的生成器中得到生成器生成图像,将粗糙的RGBD图形与原图像作为判别图像,与生成器生成图像一起输入CAN的判别器判别真假,通过最大化判别器的判别能力和最小化生成器的损失函数,得到最优图像结果,生成对抗网络CAN的整体参数;

合成单元,任意的给定一个物体的RGB图p和相应的深度图d,给定一个视角v, 将其进行视角变换后的得到的粗糙的RGBD图像输入学习训练单元中,便可得到该视角下的生成图像,保持RGB图和深度图不变,变换视角位置v,便可得到不同视点下的RGB图像,即得到了对该物体多视角下的展示图。

本发明有益效果是:本发明中方法与传统的物体的三维展示不同,传统的物体三维展示需要先对物体进行三维建模,生成表面,而后再做纹理映射等方法得到其在特定视角下的二维映射。而本发明的方法,不需要建立精确的三维模型和表面,而是从物体本身的属性出发,将图像经过投影矩阵得到新视点下粗糙的图像,而后通过深度学习的方法,学习物体从粗糙图像到高质量图像映射,简化了三维重建的复杂过程,同时,该方法在学习阶段时离线的,在推断阶段时在线的,训练完成后可以实时的对进行多视角变换映射,从而实现对物体的展示。本系统中的方法对1024*1024的图像处理速度跟硬件水平密切相关,在装有英伟达1080显卡的情况下,可以达到每秒钟34帧,符合实时性的要求。

附图说明

图1为本发明的工作流程图;

图2为本发明的GAN网络整体结构图;

图3为本发明的GAN的生成器的网络结构图;

图4为利用本发明所到的结果示意图。

具体实施方式

本发明方法从三维物体展示的本质出发,不管中间过程如何处理,人眼和相机一样最终看到的都是二维图像。普通的三维重建方法需重建高质量的三维模型,经过纹理映射和重光照之后,将其投影到具体的某一视角下的二维映射进行展示。

然而通过对各个样本进行观测,可以发现,某一相机视角下的物体,其实包含两个属性,一是其本质属性,反映其本身的三维结构颜色纹理等,另一个是视角属性,反映该相机视角的位置投影所产生的变化。物体本质不会随视角的变化而改变,而视角属性却会引起二维投影的变化。因此本发明从这两个属性出发,应用与三维重建技术同样的输入,包括一张RGB图和一张深度图,和一个视点位置,使用深度学习中的生成模型,便可获取该视点下物体的展示。

本技术方案分为两部分,包括学习过程和合成过程。本方案假设所用相机的参数矩阵,包括内参外参均已知。

该方法所用的软硬件配置:

CPU Intel i7-6700k 4.0GHz

GPU NVIDIA 1080ti

内存 32GB DDR4 3000

硬盘 三星 960PRO 1TB

操作系统 Ubuntu16.04

相关程序库 Tensorflow v1.0 CUDA8.0

基于对抗网络的快速多视角三维合成和展示方法,如图1所示,对某一视角下深度图和RGB图进行处理,利用构建生成对抗网络(GAN),便可得到连续的多视角下物体的二维映射,其具体实现方法是:

步骤一、学习部分

1.1、获取目标物体多视角下的RGB图像P和其对应的深度图像D,并且记录其视点位置V,得到有多个(P,D,V)构成的一个数据集,每个样本中P和D反映了物体的本质属性,即颜色和几何结构,而V则反映出其视点属性;

1.2、从数据集中随机取出两组数据作为输入,构建出一个训练样本,首先对训练样本进行特征提取和变换,将一组数据作为原图像,将另一组数据的视点位置作为新视角位置,得到了一个粗糙的在原图像在新视角下的投影RGBD图像;

其具体过程为:从数据集中随机取出两组数据(p1,d1,v1),(p2,d2,v2),将p1,d1,v1,v2作为输入,将p2作为监督数据,从而构建出一个训练样本。首先对训练样本进行特征提取和变换。对于每个深度图d1,假设d1的图像中心点(Xc, Yc)正对着相机光心即视点v1,则根据深度图的特性,则深度图中每个像素(x,y,d)所反映的三维信息为(x-Xc, y-Yc,d), 则根据新视点位置v2,和已知的相机参数,将该三维信息经过摄影变换投影到新视点位置v2下的二维图像中,得到每个像素新的像素位置和像素值(x’, y’, d’)。将这组数据作为从深度图d1提取出的特征。 对于RGB图根据前面对深度图的特征提取的到的结果将自己的值也对应到新的视点下,从而得到新视点下每个像素所对应颜色特征(x’, y’, r’, g’, b’),将其与深度数据拼接到一起得到(x’,y’,r’,g’,b’,d’) 。在这一步中,已经得到了一个非常粗糙的在原图像在新视角下的投影RGBD图像,但是因为空间中的点是非常稀疏的,故存在遮挡或者漏洞问题, 该图像的视觉效果非常差,将在第1.3步应用对抗生成网络来解决这一问题。

1.3、如图2所示,构建生成对抗网络GAN,将粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量Z输入GAN的生成器中得到生成器生成图像,将粗糙的RGBD图形与原图像作为判别图像,与生成器生成图像一起输入CAN的判别器判别真假,通过最大化判别器的差别能力和最小化生成器的分布损失函数,得到最优图像结果,生成对抗网络CAN的整体参数;

1.3.1、构建生成对抗网络(GAN),GAN是深度学习中的一种生成网络模型,它由生成器和判别器构成。生成器会拟合样本数据的分布,而判别器是一个二分类器,估计一个样本来自于训练数据的概率(即判断输入的数据到底是真实数据还是生成器生成的数据)。由此可知,GAN要同时训练一个生成网络模型G和一个判别网络模型D,前者将输入一组随机变量z,输出一张伪造的图像G(z),后者输入一张真实图像或生成的图像,输出一个表示该图像是真实图像的概率。理想情况下,判别器G应尽可能准确的判断图像的真实性,而生成器应该尽可能的去拟合真实图像来欺骗D,从而进行生成对抗的过程。上述过程的形式化表述如下:

其中x是来自真实数据集的图像,z是模拟生成的随机变量,G是生成模型,D是判别模型。最大化D的判别能力,最小化G的拟合分布与真实分布的差异,从而达到最优的结果。

1.3.2、生成器生成图像的具体实现方法是,将粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量Z输入GAN的生成器中,通过对粗糙的RGBD图形N*N的不同卷积核多次对RGBD图像进行卷积核池化操作,得到粗糙的RGBD图形的中间结果,对随机变量Z采取多次逆卷积,生成随机变量Z的中间结果,将两个中间结果拼接在一起,而后进行多次卷积和逆卷积操作最后得到生成器生成图像。

在模型中,如图3所示进行举例,已知一个在第二步中生成的新视角下粗糙的RGBD图像,的目标是生成在该视角下真实的RGB图像。将粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量输入GAN的生成器中,在此假设RGBD图像大小是512*512。通过5*5的不同卷积核多次对RGBD图像进行卷积核池化操作,生成生成器生成图像的64*64的128通道的中间结果。对随机变量Z采取多次逆卷积,生成随机变量Z的64*64的64通道的中间结果,将两个中间结果拼接在一起。而后进行多次卷积和逆卷积操作最后生成生成图像。整个网络结构中的卷积核参数是学习的目标。

1.3.3、判别器也是有多层卷积层与两层全链接层链接构成,卷积层用于提取图像特征,全链接用于接收特征并计算结果。将原图像连同对应的粗糙RGBD图像作为图像队一起输入到判别器中,这样做是为了保证判别器能够判断生成器生成图像和粗糙的RGBD图像是相对应的。如果不这么做,随机的选取单张真实图像和生成器成图像给判别器判断,判别器虽然可以保证图像较为逼真,但无法保证该图像是目标视角下的图像。因此,在判别过程中,随机的选取原图像与其对应的生成器生成图像、真实图像和其对应的粗糙图像RGBD输入判别器中,由判别器返回是真是假。

1.3.4、在整个训练过程中:

(一)首先对GAN网络中所有参数,包括生成器和判别器进行随机初始化;

(二)将样本输入网络中,得到生成图像并使用判别器得到结果;

(三)固定生成器参数,应用改进的梯度下降或者其他方法,优化判别器的参数,使其判别能力得到最大;

(四)固定判别器参数,应用改进的梯度下降或者其他方法,优化生成器的参数,使得整个最大化判别器的差别能力和最小化生成器的分布损失函数最小化;

(五)判断结果是否收敛,如果没有收敛,重复(二)-(五)的操作直到收敛或最大迭代轮数;

(六)最后得到生成对抗网络CAN的整体参数。

以上学习过程是离线的,可以在系统为运行时先对该网络进行训练。

步骤二、合成部分

在完成上述学习部分后,任意的给定一个物体的RGB图p和相应的深度图d,给定一个视角v, 将其进行视角变换后的得到的粗糙的RGBD图像输入GAN网络中,便可得到该视角下的生成图像,保持RGB图和深度图不变,变换视角位置v,便可得到不同视点下的RGB图像,即得到了对该物体多视角下的展示图。

推断过程是在线的,与系统一起运作,可以满足边采集图像,边切换视角,同时获取切换视角下的生成图像。从而满足实时的要求。

获取目标物体多视角下的RGB图像P和其对应的深度图像D,并且记录其视点位置V的装置为深度相机。

实现基于对抗网络的快速多视角三维合成和展示方法的装置,包括:

物体信息获取单元,获取目标物体多视角下的RGB图像P和其对应的深度图像D,并且记录其视点位置V,得到有多个(P,D,V)构成的一个数据集。

粗糙图像获取单元,从物体信息获取单元的数据集中随机取出两组数据作为输入,构建出一个训练样本,首先对训练样本进行特征提取和变换,将一组数据作为原图像,将另一组数据的视点位置作为新视角位置,得到了一个粗糙的在原图像在新视角下的投影RGBD图像。

学习训练单元,构建生成对抗网络GAN,将粗糙图像猎取单元得到的粗糙的RGBD图形与一个均匀分布的随机数产生器产生的一组随机变量Z输入GAN的生成器中得到生成器生成图像,将粗糙的RGBD图形与原图像作为判别图像,与生成器生成图像一起输入CAN的判别器判别真假,通过最大化判别器的差别能力和最小化生成器的分布损失函数,得到最优图像结果,生成对抗网络CAN的整体参数。

合成单元,任意的给定一个物体的RGB图p和相应的深度图d,给定一个视角v, 将其进行视角变换后的得到的粗糙的RGBD图像输入学习训练单元中,便可得到该视角下的生成图像,保持RGB图和深度图不变,变换视角位置v,便可得到不同视点下的RGB图像,即得到了对该物体多视角下的展示图。

本文所实现的方法能够实时的产生对物体的多角度的三维展示。可应用于三维展示,虚拟现实交互,图像合成等领域。

在三维展示中,应用此方法,仅需通过在多个角度固定几个深度相机如kinect,例如在物体360度范围内,每隔60度设置一台相机,将相机获得的RGB图像与深度图实时输入系统,可以实现对物体任意角度的三维展示,包括但不限于物体,场景,人体等模型展示。

如图4所示,该图标为彩图,左上角第一幅为输入图像,其余三幅图像是在改变视点坐标后得到的不同结果图像。

在虚拟现实交互中,应用此方法,在多相机拍摄的场景交互中,通过VR眼镜对作视点坐标的获取,可以将不同的交互者的形象实时清晰的展现在用户眼前。

在图像合成领域,应用此方法,实时合成物体多方位的图像,避免人工手动合成图像的麻烦,减少人工成本。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1