利用循环GAN将真实图像变换成虚拟图像的方法及装置与流程

文档序号:21732408发布日期:2020-08-05 01:27阅读:273来源:国知局
利用循环GAN将真实图像变换成虚拟图像的方法及装置与流程

本发明涉及使用于自动驾驶汽车、虚拟行驶等的学习方法及学习装置、利用该学习方法及学习装置的测试方法及测试装置,更具体地,涉及利用循环gan而将真实世界上的真实图像变换成虚拟世界上的虚拟图像的学习方法及学习装置、利用该学习方法及学习装置的测试方法及测试装置。



背景技术:

深度卷积神经网络(deepconvolutionneuralnetworks;deepcnns)是在深度学习领域中发生的惊人的发展核心。cnn虽然在90年代已被用来解决文字识别问题,但它之所以能够像现在这样被广泛使用,还要归功于近年来的研究结果。这样的cnn在2012年的imagenet图像分类比赛中击败其他竞争者而获得冠军。之后,卷积神经网络在机器学习(machinelearning)领域中成为非常有用的工具。

近年来cnn在自动驾驶汽车领域中非常广泛地得到使用。在自动驾驶汽车领域中使用时,cnn从附着于汽车的照相机获得影像并执行探测车道等的作用。为此,cnn利用现实世界上的训练图像及与此对应的gt(groundtruth)来学习参数。这样的传统的接近方法的缺点在于:在获得现实世界上的训练图像并生成与此对应的gt时,其不能由被编程的计算机自动地处理,需要人的投入,因此在训练过程中需要较多的费用和时间。

作为训练cnn的对策,提出了利用通过被编程的计算机而模拟的虚拟世界上的虚拟图像的方法。此时,虚拟图像和与此对应的gt可通过被编程的计算机而获得,与传统的接近方法相比,在训练过程中显著地减少费用和时间。

但是,在该情况下存在如下缺点:cnn利用虚拟图像而学习参数,因此在检测关于具备与虚拟图像的特性稍微不同的特性的真实世界的真实图像内所包含的对象时,作业性能下降。



技术实现要素:

发明要解决的课题

本发明的目的在于解决上述问题。

本发明的另一目的在于提供一种如下的方法:通过利用循环gan(cyclegenerativeadversarialnetwork)而学习的变换器将真实图像变换成虚拟图像,从而使利用虚拟世界上的虚拟图像而学习的对象检测器检测真实世界上的真实图像所包含的对象。

用于解决课题的手段

用于达到如上述的本发明的目的并实现后述的本发明的特征性效果的本发明的特征性结构如下。

根据本发明的一个方式,一种学习方法,利用循环gan(cyclegenerativeadversarialnetwork)而将真实世界上的至少一个真实图像(realimage)变换成虚拟世界上的至少一个虚拟图像(virtualimage),其特征在于,包括如下步骤:(a)当获得作为上述真实图像之一的至少一个第1图像时,学习装置,(i)使第1变换器(transformer)将上述第1图像变换成具备与上述虚拟图像相同或类似的至少一个特性(characteristic)的至少一个第2图像,(ii)(ii-1)使第1判别器(discriminator)判断上述第2图像是初级虚拟图像(primaryvirtualimage)之一还是次级虚拟图像(secondaryvirtualimage)之一,从而生成第1_1结果,上述初级虚拟图像是并非从上述真实图像的至少一部分变换的上述虚拟图像的至少一部分,上述次级虚拟图像是从上述真实图像的至少一部分变换的上述虚拟图像的至少一部分,(ii-2)使第2变换器将上述第2图像变换成具备与上述真实图像相同或类似的至少一个特性的至少一个第3图像;(b)当获得作为上述虚拟图像之一的至少一个第4图像时,上述学习装置,(i)使上述第2变换器将上述第4图像变换成具备与上述真实图像相同或类似的至少一个特性的至少一个第5图像,(ii)(ii-1)使第2判别器判断上述第5图像是初级真实图像(primaryrealimage)之一还是次级真实图像(secondaryrealimage)之一,从而生成第2_1结果,上述初级真实图像是并非从上述虚拟图像的至少一部分变换的上述真实图像的至少一部分,上述次级真实图像是从上述虚拟图像的至少一部分变换的上述真实图像的至少一部分,(ii-2)使上述第1变换器将上述第5图像变换成具备与上述虚拟图像相同或类似的至少一个特性的至少一个第6图像;及(c)上述学习装置参照上述第1图像、上述第2图像、上述第3图像、上述第4图像、上述第5图像、上述第6图像、上述第1_1结果及上述第2_1结果中的至少一部分来算出至少一个损失,从而学习上述第1变换器、上述第2变换器、上述第1判别器及上述第2判别器的参数中的至少一部分。

在一个实施例中,在上述(c)步骤中,

g*=argmin(log(1-dg(g(i)))+γ|i-f(g(i))|+log(1-df(f(x)))

+β|x-g(f(x))|)

上述至少一个损失所包含的变换器损失(transformerloss)根据上述式而被定义,i表示上述第1图像,g(i)表示上述第2图像,dg(g(i))表示上述第1_1结果,f(g(i))表示上述第3图像,x表示上述第4图像,f(x)表示上述第5图像,df(f(x))表示上述第2_1结果,g(f(x))表示上述第6图像,γ及β为用于调整各个|i-f(g(i))|及|x-g(f(x))|的各个加权值的常数。

在一个实施例中,其特征在于,在上述(c)步骤中,当获得(i)通过检测输入到自己的图像所包含的至少一个虚拟对象的虚拟对象检测器而生成的、关于上述第2图像及上述第6图像中的至少一部分的虚拟对象检测结果及(ii)与此对应的gt时,上述学习装置使损失单元(lossunit)进一步参照上述虚拟对象检测结果而生成上述至少一个损失的至少一部分。

在一个实施例中,其特征在于,在上述(c)步骤中,

g*=argmin(log(1-dg(g(i)))+γ|i-f(g(i))|+log(1-df(f(x)))

+β|x-g(f(x))|)+argmax(λ1×od(g(i))+λ2×od(g(f(x))))

上述至少一个损失所包含的变换器损失(transformerloss)根据上述式而被定义,i表示上述第1图像,g(i)表示上述第2图像,dg(g(i))表示上述第1_1结果,f(g(i))表示上述第3图像,x表示上述第4图像,f(x)表示上述第5图像,df(f(x))表示上述第2_1结果,g(f(x))表示上述第6图像,γ及β是用于调整各个|i-f(g(i))|及|x-g(f(x))|的各个加权值的常数,

argmax(λ1×od(g(i))+λ2×od(g(f(x))))表示与上述虚拟对象检测结果对应的上述变换器损失的部分损失(partialloss),λ1和λ2是用于调整各个od(g(i))及od(g(f(x)))的各个加权值的常数。

在一个实施例中,其特征在于,在上述(c)步骤中,

上述损失所包含的上述第1判别器用fd损失根据上述式而被定义,vi表示上述虚拟图像中的任意虚拟图像,dg(vi)表示关于上述任意虚拟图像的上述第1判别器的判断内容即第1_2结果,g(i)表示上述第2图像,dg(g(i))表示上述第1_1结果。

在一个实施例中,其特征在于,在上述(c)步骤中,

上述损失所包含的上述第2判别器用sd损失根据上述式而被定义,ri表示上述真实图像中的任意真实图像,df(ri)表示关于上述任意真实图像的上述第2判别器的判断内容即第2_2结果,f(x)表示上述第5图像,df(f(x))表示上述第2_1结果。

在一个实施例中,其特征在于,上述第1变换器及上述第2变换器分别包括至少一个编码层及至少一个解码层中的至少一部分。

在一个实施例中,其特征在于,彼此关联地学习(i)(i-1)作为上述第1变换器所包含的第1编码层中的至少一部分的至少一个第1特定编码层及(i-2)作为上述第1变换器所包含的第1解码层中的至少一部分的至少一个第1特定解码层所包含的第1参数中的至少一部分与(ii)(ii-1)作为上述第2变换器所包含的第2编码层中的至少一部分的至少一个第2特定编码层及(ii-2)作为上述第2变换器所包含的第2解码层中的至少一部分的至少一个第2特定解码层所包含的第2参数中的至少一部分,从而使上述第1参数与上述第2参数之间的相关性超过临界值。

在一个实施例中,其特征在于,上述第1特定编码层及上述第1特定解码层以从位于上述第1编码层与上述第1解码层之间的第1隐空间(latentspace)隔开的至少一个第1距离(distance)小于第1临界距离的方式分别从上述第1编码层及上述第1解码层中被选择,上述第2特定编码层及上述第2特定解码层以从位于上述第2编码层与上述第2解码层之间的第2隐空间隔开的至少一个第2距离小于第2临界距离的方式分别从上述第1解码层及上述第2解码层中被选择。

根据本发明的另一方式,一种测试方法,利用循环gan(cyclegenerativeadversarialnetwork)而将真实世界上的至少一个真实图像(realimage)变换成虚拟世界上的至少一个虚拟图像(virtualimage),其特征在于,(1)学习装置,(i)使第1变换器(transformer)将作为学习用真实图像之一的至少一个学习用第1图像变换成具备与至少一个学习用虚拟图像相同或类似的至少一个特性(characteristic)的至少一个学习用第2图像,(ii)(ii-1)使第1判别器(discriminator)判断上述学习用第2图像是初级虚拟图像(primaryvirtualimage)之一还是次级虚拟图像(secondaryvirtualimage)之一,从而生成第1_1结果,上述初级虚拟图像是并非从上述学习用真实图像的至少一部分变换的上述学习用虚拟图像的至少一部分,上述次级虚拟图像是从上述学习用真实图像的至少一部分变换的上述学习用虚拟图像的至少一部分,(ii-2)使第2变换器将上述学习用第2图像变换成具备与上述学习用真实图像相同或类似的至少一个特性的至少一个学习用第3图像,(2)上述学习装置,(i)使上述第2变换器将作为上述学习用虚拟图像之一的至少一个学习用第4图像变换成具备与上述学习用真实图像相同或类似的至少一个特性的至少一个学习用第5图像,(ii)(ii-1)使第2判别器判断上述学习用第5图像是初级真实图像(primaryrealimage)之一还是次级真实图像(secondaryrealimage)之一,从而生成第2_1结果,上述初级真实图像是并非从上述学习用虚拟图像的至少一部分变换的上述学习用真实图像的至少一部分,上述次级真实图像是从上述学习用虚拟图像的至少一部分变换的上述学习用真实图像的至少一部分,(ii-2)使上述第1变换器将上述学习用第5图像变换成具备与上述学习用虚拟图像相同或类似的至少一个特性的至少一个学习用第6图像,(3)上述学习装置参照上述学习用第1图像、上述学习用第2图像、上述学习用第3图像、上述学习用第4图像、上述学习用第5图像、上述学习用第6图像、上述第1_1结果及上述第2_1结果中的至少一部分而算出至少一个损失,从而在学习上述第1变换器、上述第2变换器、上述第1判别器及上述第2判别器的参数中的至少一部分的状态下,测试装置使上述第1变换器获得作为上述测试用真实图像之一的至少一个测试图像,将上述测试图像变换成具备与上述测试用虚拟图像相同或类似的至少一个特性的至少一个变换的测试图像。

在一个实施例中,其特征在于,上述变换的测试图像是为了对上述虚拟对象检测器所包含的参数进行微调(fine-tuning)而使用的。

在一个实施例中,其特征在于,上述测试图像是通过自动驾驶车辆所包含的照相机而获得的上述测试用真实图像之一,上述自动驾驶汽车所包含的虚拟对象检测器(virtualobjectdetector)检测上述变换的测试图像所包含的至少一个对象而协助上述真实世界中的上述自动驾驶车辆的行驶。

根据本发明的又一方式,一种学习装置,其利用循环gan(cyclegenerativeadversarialnetwork)而将真实世界上的至少一个真实图像(realimage)变换成虚拟世界上的至少一个虚拟图像(virtualimage),其特征在于,其包括:至少一个存储器,其存储指令;及至少一个处理器,其执行用于执行如下处理的上述指令:(i)当获得作为上述真实图像之一的至少一个第1图像时,(i)使第1变换器(transformer)将上述第1图像变换成具备与上述虚拟图像相同或类似的至少一个特性(characteristic)的至少一个第2图像,(ii)(ii-1)使第1判别器(discriminator)判断上述第2图像是初级虚拟图像(primaryvirtualimage)之一还是次级虚拟图像(secondaryvirtualimage)之一,从而生成第1_1结果,上述初级虚拟图像是并非从上述真实图像的至少一部分变换的上述虚拟图像的至少一部分,上述次级虚拟图像是从上述真实图像的至少一部分变换的上述虚拟图像的至少一部分,(ii-2)使第2变换器将上述第2图像变换成具备与上述真实图像相同或类似的至少一个特性的至少一个第3图像;(ii)当获得作为上述虚拟图像之一的至少一个第4图像时,(i)使上述第2变换器将上述第4图像变换成具备与上述真实图像相同或类似的至少一个特性的至少一个第5图像,(ii)(ii-1)使第2判别器判断上述第5图像是初级真实图像(primaryrealimage)之一还是次级真实图像(secondaryrealimage)之一,从而生成第2_1结果,上述初级真实图像是并非从上述虚拟图像的至少一部分变换的上述真实图像的至少一部分,上述次级真实图像是从上述虚拟图像的至少一部分变换的上述真实图像的至少一部分,(ii-2)使上述第1变换器将上述第5图像变换成具备与上述虚拟图像相同或类似的至少一个特性的至少一个第6图像;及(iii)参照上述第1图像、上述第2图像、上述第3图像、上述第4图像、上述第5图像、上述第6图像、上述第1_1结果及上述第2_1结果中的至少一部分而算出至少一个损失,从而学习上述第1变换器、上述第2变换器、上述第1判别器及上述第2判别器的参数中的至少一部分。

在一个实施例中,其特征在于,在上述(iii)处理中,

g*=argmin(log(1-dg(g(i)))+γ|i-f(g(i))|+log(1-df(f(x)))

+β|x-g(f(x))|)

上述至少一个损失所包含的变换器损失(transformerloss)根据上述式而被定义,i表示上述第1图像,g(i)表示上述第2图像,dg(g(i))表示上述第1_1结果,f(g(i))表示上述第3图像,x表示上述第4图像,f(x)表示上述第5图像,df(f(x))表示上述第2_1结果,g(f(x))表示上述第6图像,γ及β是用于调整各个|i-f(g(i))|及|x-g(f(x))|的各个加权值的常数。

在一个实施例中,其特征在于,在上述(iii)处理中,(i)当获得通过检测输入到自己的图像所包含的至少一个虚拟对象的虚拟对象检测器而生成的关于上述第2图像及上述第6图像中的至少一部分的虚拟对象检测结果及(ii)与此对应的gt时,上述处理器使损失单元(lossunit)进一步参照上述虚拟对象检测结果而生成上述至少一个损失的至少一部分。

在一个实施例中,其特征在于,在上述(iii)处理中,

g*=argmin(log(1-dg(g(i))+γ|i-f(g(i))|+log(1-df(f(x)))

+β|x-g(f(x))|)+argmax(λ1×od(g(i))+λ2×od(g(f(x))))

上述至少一个损失所包含的变换器损失(transformerloss)根据上述式而被定义,i表示上述第1图像,g(i)表示上述第2图像,dg(g(i))表示上述第1_1结果,f(g(i))表示上述第3图像,x表示上述第4图像,f(x)表示上述第5图像,df(f(x))表示上述第2_1结果,g(f(x))表示上述第6图像,γ及β是用于调整各个|i-f(g(i))|及|x-g(f(x))|的各个加权值的常数,argmax(λ1×od(g(i))+λ2×od(g(f(x))))表示与上述虚拟对象检测结果对应的上述变换器损失的部分损失(partialloss),λ1和λ2是用于调整各个od(g(i))及od(g(f(x)))的各个加权值的常数。

在一个实施例中,其特征在于,在上述(iii)处理中,

上述损失所包含的上述第1判别器用fd损失根据上述式而被定义,vi表示上述虚拟图像中的任意虚拟图像,dg(vi)表示关于上述任意虚拟图像的上述第1判别器的判断内容即第1_2结果,g(i)表示上述第2图像,dg(g(i))表示上述第1_1结果。

在一个实施例中,其特征在于,在上述(iii)处理中,

上述损失所包含的上述第2判别器用sd损失根据上述式而被定义,ri表示上述真实图像中的任意真实图像,df(ri)表示关于上述任意真实图像的上述第2判别器的判断内容即第2_2结果,f(x)表示上述第5图像,df(f(x))表示上述第2_1结果。

在一个实施例中,其特征在于,上述第1变换器及上述第2变换器分别包含至少一个编码层及至少一个解码层中的至少一部分。

在一个实施例中,其特征在于,彼此关联地进行学习(i)(i-1)作为上述第1变换器所包含的第1编码层中的至少一部分的至少一个第1特定编码层及(i-2)作为上述第1变换器所包含的第1解码层中的至少一部分的至少一个第1特定解码层所包含的第1参数中的至少一部分与(ii)(ii-1)作为上述第2变换器所包含的第2编码层中的至少一部分的至少一个第2特定编码层及(ii-2)作为上述第2变换器所包含的第2解码层中的至少一部分的至少一个第2特定解码层所包含的第2参数中的至少一部分,从而使上述第1参数与上述第2参数之间的相关性超过临界值。

在一个实施例中,其特征在于,上述第1特定编码层及上述第1特定解码层以从位于上述第1编码层与上述第1解码层之间的第1隐空间(latentspace)隔开的至少一个第1距离(distance)小于第1临界距离的方式分别从上述第1编码层及上述第1解码层中被选择,上述第2特定编码层及上述第2特定解码层以从位于上述第2编码层与上述第2解码层之间的第2隐空间隔开的至少一个第2距离小于第2临界距离的方式分别从上述第1解码层及上述第2解码层中被选择。

根据本发明的又一方式,一种测试装置,其利用循环gan(cyclegenerativeadversarialnetwork)而将真实世界上的至少一个真实图像(realimage)变换成虚拟世界上的至少一个虚拟图像(virtualimage),其特征在于,其包括:至少一个存储器,其存储指令;及至少一个处理器,其执行用于执行如下处理的上述指令:(1)学习装置,(i)使第1变换器(transformer)将作为学习用真实图像之一的至少一个学习用第1图像变换成具备与至少一个学习用虚拟图像相同或类似的至少一个特性(characteristic)的至少一个学习用第2图像,(ii)(ii-1)使第1判别器(discriminator)判断上述学习用第2图像是初级虚拟图像(primaryvirtualimage)之一还是次级虚拟图像(secondaryvirtualimage)之一,从而生成第1_1结果,上述初级虚拟图像是并非从上述学习用真实图像的至少一部分变换的上述学习用虚拟图像的至少一部分,上述次级虚拟图像是从上述学习用真实图像的至少一部分变换的上述学习用虚拟图像的至少一部分,(ii-2)使第2变换器将上述学习用第2图像变换成具备与上述学习用真实图像相同或类似的至少一个特性的至少一个学习用第3图像,(2)上述学习装置,(i)使上述第2变换器将作为上述学习用虚拟图像之一的至少一个学习用第4图像变换成具备与上述学习用真实图像相同或类似的至少一个特性的至少一个学习用第5图像,(ii)(ii-1)使第2判别器判断上述学习用第5图像是初级真实图像(primaryrealimage)之一还是次级真实图像(secondaryrealimage)之一,从而生成第2_1结果,上述初级真实图像是并非从上述学习用虚拟图像的至少一部分变换的上述学习用真实图像的至少一部分,上述次级真实图像是从上述学习用虚拟图像的至少一部分变换的上述学习用真实图像的至少一部分,(ii-2)使上述第1变换器将上述学习用第5图像变换成具备与上述学习用虚拟图像相同或类似的至少一个特性的至少一个学习用第6图像,(3)上述学习装置参照上述学习用第1图像、上述学习用第2图像、上述学习用第3图像、上述学习用第4图像、上述学习用第5图像、上述学习用第6图像、上述第1_1结果及上述第2_1结果中的至少一部分而算出至少一个损失,从而在学习上述第1变换器、上述第2变换器、上述第1判别器及上述第2判别器的参数中的至少一部分的状态下,使上述第1变换器获得作为上述测试用真实图像之一的至少一个测试图像,将上述测试图像变换成具备与上述测试用虚拟图像相同或类似的至少一个特性的至少一个变换的测试图像。

在一个实施例中,其特征在于,上述变换的测试图像是为了对上述虚拟对象检测器所包含的参数进行微调(fine-tuning)而使用的。

在一个实施例中,其特征在于,上述测试图像是通过自动驾驶车辆所包含的照相机而获得的上述测试用真实图像之一,上述自动驾驶汽车所包含的虚拟对象检测器(virtualobjectdetector)检测上述变换的测试图像所包含的至少一个对象而协助上述真实世界中的上述自动驾驶车辆的行驶。

此外,还提供用于记录执行本发明的方法的计算机程序的计算机可读取的记录介质。

发明效果

本发明通过可应用于域自适应的循环gan(cyclegenerativeadversarialnetwork)而将rgb形式的训练图像集变换成非rgb形式,从而具有缓和非rgb形式的训练图像集中出现的问题的效果。

附图说明

为了对本发明的实施例进行说明而所附的下面的附图仅为本发明的实施例中的一部分,具有本发明所属技术领域的普通知识的人(以下,称为“本领域技术人员”)在无需创作性劳动的情况下,可基于该附图而获得其他的图。

图1是概略性地示出根据本发明的一个实施例而执行利用循环gan(cyclegenerativeadversarialnetwork)来将真实图像变换成虚拟图像的学习方法的学习装置的图。

图2是概略性地示出根据本发明的一个实施例而利用循环gan来将真实图像变换成虚拟图像的第1变换器及第2变换器的图。

图3是概略性地示出根据本发明的一个实施例而利用循环gan来将真实图像变换成虚拟图像的学习装置的图。

图4是概略性地示出根据本发明的一个实施例而利用循环gan来算出变换器损失(transformerloss)所包含的部分损失(partialloss)的处理的图。

具体实施方式

在后述的对本发明的详细的说明中,参照例示的实施本发明的特定实施例的附图。在此对这些实施例进行详细说明,以供本领域技术人员充分地实施本发明。虽然本发明的各种实施例彼此不同,但并非是排他性的。例如,在此记载的特定形状、结构及特性在一个实施例中在未脱离本发明的精神及范围的情况下可体现为另一个实施例。另外,关于各个公开的实施例内的个别构成要素的位置或配置,在不脱离本发明的精神及范围的情况下可进行变更。因此,后述的详细的说明并非具备限定性的意思,关于本发明的范围,确切地来讲应根据与其权利要求所主张的内容均等的所有范围及所附权利要求来限定。附图中的类似的符号在各个侧面上指相同或类似的功能。

另外,在本发明的详细的说明及权利要求中,“包含”这一用语及它们的变形并非表示排除其他技术特征、附加物、构成要素或步骤。对于本领域技术人员来讲,关于本发明的另一目的、优点及特性,可根据本说明书来理解其一部分,并通过实施本发明来理解另一部分。下面的例示及附图仅为示例,并非对本发明进行限定。

本发明中提及的各种图像可以包括道路相关图像,在该情况下,可假设在道路环境中会出现的物体(如汽车、人、动物、植物、物件、建筑、其他障碍物),但并非仅限于此,在本发明中提及的各种图像也可以是与道路无关的图像(如关于非柏油路、小胡同、空地、室内的图像),在该情况下,可假设在非柏油路、小胡同、空地、室内环境中出现的物体(如汽车、人、动物、植物、物件、建筑、其他障碍物),但不仅限于此。

下面,参照附图,对本发明的优选的实施例进行详细说明,以供本领域技术人员能够容易地实施本发明。

图1是概略性地示出根据本发明的一个实施例而执行利用循环gan(cyclegenerativeadversarialnetwork:循环生成对抗网络)来将真实图像变换成虚拟图像的学习方法的学习装置的图。

参照图1,学习装置100包括详细后述的构成要素即第1变换器130、第1判别器140、第2变换器150、第2判别器160及虚拟对象检测器170。第1变换器130、第1判别器140、第2变换器150、第2判别器160及虚拟对象检测器170的输入输出及运算过程分别由通信部110及处理器120而实现。但是,在图1中省略了通信部110及处理器120的具体的连接关系。此时,存储器115可以是存储有后述的多个指令的状态,处理器120被设定为执行存储于存储器115的指令,处理器120执行后述的处理,从而执行本发明的处理。在此虽然记载了这样的学习装置100,但并非排除学习装置100包括将用于实施本发明的处理器、存储器、介质或其他计算要素综合的形态的综合处理器(integratedprocessor)的情况。

此时,第1变换器130及第2变换器150能够变换分别输入到自己的图像的特性。具体地,第1变换器130能够将作为真实世界上的真实图像之一的至少一个第1输入图像变换成具备与虚拟世界上的虚拟图像相同或类似的至少一个特性的至少一个第1输出图像(outputimage)。并且,第2变换器150能够将作为虚拟图像之一的至少一个第2输入图像变换成具备与真实图像相同或类似的至少一个特性的至少一个第2输出图像。

此时,虚拟图像的至少一个特性是指,(i)色度高,(ii)对比度(contrast)高,(iii)以某种程度省略了对象的详细的细节,(iv)光线的相对单纯且非现实的移动路径。关于这样的虚拟图像的例示,可在伟大的旅行(granturismo)系列、极限竞速(forzamotorsport)系列、gta系列等的开放式世界游戏(openworldgame)中确认。但是本发明的范围不限于此。

真实图像的至少一个特性是指,与此相反地,(i)色度低,(ii)对比度低,(iii)充分地反映了对象的详细的细节,(iv)光线相对地精致且现实的移动路径。但是本发明不限于此。下面,参照图2,对例示性的第1变换器130及第2变换器150的结构进行说明。

图2是概略性地示出根据本发明的一个实施例而利用循环gan来将真实图像变换成虚拟图像的第1变换器及第2变换器的图。

第1变换器130及第2变换器150包括至少一个编码层及至少一个解码层中的至少一部分。编码层对所输入的图像而至少应用一次卷积运算而生成至少一个特征图(featuremap),解码层对上述特征图至少应用一次解卷积运算来生成具备变换的特性的图像。这样,各个变换器分别向将真实图像变换成具备与虚拟图像相同或类似的特性的图像的方向或将虚拟图像变换成具备与真实图像相同或类似的特性的图像的方向变换。第1判别器140及第2判别器160判断输入到各个判别器的输入图像是具备调制的特性的图像还是具备未调制的特性的图像。具体地,第1判别器140判断输入到自己的输入图像为初级虚拟图像之一还是次级虚拟图像之一,从而在前者的情况下可以输出1,在后者的情况下可以输出0。此时,初级虚拟图像是并非从真实图像的至少一部分变换的虚拟图像的至少一部分,次级虚拟图像是从真实图像的至少一部分变换的虚拟图像的至少一部分。另外,第2判别器160判断输入到自己的输入图像是初级真实图像之一还是次级真实图像之一,从而在前者的情况下可以输出1,在后者的情况下可以输出0。此时,初级真实图像是并非从虚拟图像的至少一部分变换的真实图像的至少一部分,次级真实图像是从虚拟图像的至少一部分变换的真实图像的至少一部分。第1判别器140及第2判别器160也可以由cnn构成,但本发明不限于此。

另外,虚拟对象检测器170可以由至少一个cnn构成,具体地,可以包括卷积层及fc层。卷积层对输入到自己的输入图像应用卷积运算来生成特征图,fc层对特征图应用边框回归(boundingboxregression)来检测至少一个虚拟对象。当然,虚拟对象检测器170不限于这样的结构。在一个实施例中,虚拟对象检测器170是利用作为虚拟图像中的至少一部分的训练图像及对此的gt的设置而已完成学习的状态。

以上,对根据本发明的一个实施例而执行利用循环gan来将真实世界上的至少一个真实图像变换成虚拟世界上的至少一个虚拟图像的学习方法的学习装置100的结构进行了说明,下面参照图3,对本发明的学习方法进行具体说明。

图3是概略性地示出根据本发明的一个实施例而利用循环gan来将真实图像变换成虚拟图像的学习装置的图。

参照图3可确认到第1变换器130、第1判别器140、第2变换器150、第2判别器160及虚拟对象检测器170进行动作的概括性的方式。大体存在两个处理,将此定义为正向处理101及反向处理102。

在正向处理101中,作为真实图像之一的至少一个第1图像通过第1变换器130而变换成具备与虚拟图像相同或类似的至少一个特性的至少一个第2图像,然后通过第1判别器140而生成判断第2图像的结果即第1_1结果,第2图像通过第2变换器150而变换成具备与真实图像相同或类似的至少一个特性的至少一个第3图像。可并行地执行生成第1_1结果的处理和将第2图像变换成第3图像的处理或也可以先执行任一个处理。

在反向处理102中,作为虚拟图像之一的至少一个第4图像通过第2变换器150而变换成具备与真实图像相同或类似的至少一个特性的至少一个第5图像,然后通过第2判别器160而生成判断第5图像的结果即第2_1结果,第5图像通过第1变换器130而变换成具备与虚拟图像相同或类似的至少一个特性的至少一个第6图像。可并行地执行生成第2_1结果的处理和将第5图像变换成第6图像的处理或也可以先执行任一个处理。此外,先执行正向处理101和反向处理102中的哪一个处理也无妨,也可以并行地执行。

之所以通过这样的处理,是为了算出用于更好地学习第1变换器130、第1判别器140、第2变换器150及第2判别器160的至少一个损失(loss)。为了对此进行具体说明,下面对算出用于学习学习装置100的各个构成要素的损失的处理进行说明。

首先,关于应用于第1变换器130及第2变换器150的至少一个变换器损失说明如下。

g*=argmin(log(1-dg(g(i)))+γ|i-f(g(i))|+log(1-df(f(x)))

+β|x-g(f(x))|)

上述至少一个损失所包含的变换器损失可根据上述式而被判断,i表示第1图像,g(i)表示第2图像,dg(g(i))表示第1_1结果,f(g(i))表示第3图像,x表示第4图像,f(x)表示第5图像,df(f(x))表示第2_1结果,g(f(x))表示第6图像,γ及β可以是分别调整|i-f(g(i))|及|x-g(f(x))|的加权值的常数。

在用于进行上述变换的第1损失中对argmin的实际参数(argument)的项(term)进行观察可知,log(1-dg(g(i)))是用于使第1变换器130向欺瞒第1判别器140的方向学习的项。即,argmin函数引导作为结果而得出的最终值变小,因此log(1-dg(g(i)))项也变小。但是log函数是递增函数,因此引导log内的1-dg(g(i))变小。即,dg(g(i))增加。第1判别器140对其特性不变的图像输出1,因此本项用于使第1变换器130向欺瞒第1判别器140的方向学习。

第二个项即γ|i-f(g(i))|可以使变换的图像与原始图像类似,也就是使第2图像与第1图像类似。当第1变换器130单纯地仅向欺瞒第1判别器140的方向学习时,可能不能存储图像内的特征(feature),因此设置了减少与原始图像之间的差异的项。即,其目的在于减少第1图像与第3图像之间的差异即i-f(g(i))。在此,差异是指,第1图像内的各个值和与此对应的第3图像内的各个值之间的差。因为该第二个项,存在在正向处理101中将第2图像变换成第3图像的部分。

第三个项和第四个项分别执行与第一个项和第二个项的作用类似的作用,区别在于第三个项和第四个项是用于第2变换器150的部分。只有学习好第2变换器150,才能通过第二个项学习好第1变换器130。第三个项和第四个项中使用的值可以在反向处理102中获得。关于第三个项和第四个项的其他的具体事项与第一个项及第二个项大同小异,因此本领域技术人员通过上述记载可容易导出,因此省略说明。

此时,如上述,包含在式中的γ及β分别是用于调节|i-f(g(i))|及|x-g(f(x))|的加权值的常数,当第二个项和第四个项在公式中反映过多,则变换后的图像变模糊,当在公式中反应过少时,则变换后的图像无法反映原始图像的内容。因此,程序员调节γ及β来调节|i-f(g(i))|及|x-g(f(x))|的影响力。

变换器损失还可以包括与通过虚拟对象检测器170而生成的虚拟对象检测结果对应的部分损失。将此用式表达如下。

g*=argmin(log(1-dg(g(i)))+γ|i-f(g(i))|+log(1-df(f(x)))

+β|x-g(f(x))|)+argmax(λ1×od(g(i))+λ2×od(g(f(x))))

与虚拟对象检测结果对应的部分损失表达为argmax(λ1×od(g(i))+λ2×od(g(f(x))))项。在此,λ1和λ2是分别调节od(g(i))及od(g(f(x)))的加权值的常数。对此,将参照图4进行更具体的说明。

图4是概略性地示出根据本发明的一个实施例而利用循环gan来算出变换器损失所包含的部分损失的处理的图。

参照图4可观察到利用关于通过虚拟对象检测器170而生成的第2图像及第6图像的虚拟对象检测结果来生成部分损失的特定处理。为了便于说明,首先对与第2图像对应的特定处理的第1部分进行说明。

虚拟对象检测器170检测第2图像所包含的对象而生成包括与各个对象对应的类别(class)的概率的各个柔性最大值。与第2图像所包含的特定对象对应的部分损失的特定部分参照特定柔性最大值所包含的至少一个第1概率和至少一个第2概率而生成。此时,第1概率表示对象类别(例如,步行者类别或汽车类别)所包含的特定对象的概率,第2概率表示背景类别(例如,天空类别)所包含的特定对象的概率。作为一例,部分损失的特定部分可选择为将(i)第1概率中最大的概率和(ii)从1减去第2概率的值相加的值变大的方向。对此,可通过如下式来表示。

在上述式中,为在i表示特定对象的数量的情况下,表示第1概率中最大的概率值。并且为在0表示背景类别的情况下,表示第2概率与1之间的差异。根据如上述的式,执行生成与第2图像对应的部分损失的特定处理的第1部分。关于第6图像,与上述第1部分类似地,可执行生成与第6图像对应的部分损失的特定处理的第2部分。

部分损失在变换处理之后也为了保存图像内的对象的细节而包含于变换器损失中。上述公式的第二个和第四个项及部分损失执行互补的作用。具体地,如上所述,第二个项及第四个项使变换的图像形成为和与此对应的原始图像类似,但这仅仅是使图像大概类似,不能执行使原始图像所包含的对象的细节选择性地、优先保存的作用。相反地,部分损失还保存在将原始图像所包含的对象变换的图像,但可将原始图像中不存在的新的对象生成在变换的图像中。但是,能够防止通过保持原始图像与变换的图像之间的类似度的第二个项及第四个项而生成不希望的新的对象的副作用。因此,通过追加部分损失而能够将第1变换器130大幅地优化。

以上,对变换器损失进行了说明,下面对算出应用于各个判别器的损失的处理进行说明。

第1判别器140用损失即fd损失根据上述式而被定义。此时,vi表示虚拟图像中的任一图像,dg(vi)表示从第1判别器生成的、判断上述任意虚拟图像的结果即第1_2结果,g(i)表示第2图像,dg(g(i))表示第1_1结果。argmax以整体结果值变大的方式进行引导,将dg(vi)输出为1,将dg(g(i))输出为0。因此,第1判别器140能够准确地判断所输入的图像的特性与之前相比是否变换。在图4中仅图示了输入第2图像的处理,但并非仅将第2图像这样的调制了特性的图像限定为输入图像,也可以输入作为虚拟图像之一的任一图像。因此,将调制了特性的图像和未调制特性的图像区分而进行学习。

可根据上述式而定义关于第2判别器的损失即sd损失。此时,ri表示真实图像中的任一图像,df(ri)表示从第2判别器生成的、对上述任意真实图像进行判断的结果即第2_2结果、f(x)表示上述第5图像,df(f(x))表示第2_1结果。与fd损失同样地,由此第2判别器160能够准确地判断所输入的图像的特性与之前相比是否被调制。另外,能够输入作为真实图像之一的任一图像来使用于学习。

当算出包括上述变换器损失、关于第1判别器的fd损失及关于第2判别器的sd损失的至少一个损失时,学习装置100可学习第1变换器130、第1判别器140、第2变换器150、第2判别器160的参数的至少一部分。

在学习过程中,在一般情况下,第1变换器130及第2变换器150所包含的编码层及解码层彼此无相关地单独学习。与一般的实施例不同地,关于第1变换器130及第2变换器150所包含的层可彼此关联地进行学习。下面,对这样的学习处理进行说明。

具体地,第1参数可包含于(i)作为第1变换器130所包含的第1编码层中的至少一部分的至少一个第1特定编码层及(ii)作为第1变换器130所包含的第1解码层中的至少一部分的至少一个第1特定解码层。另外,第2参数可包含于(i)作为上述第2变换器150所包含的第2编码层中的至少一部分的至少一个第2特定编码层及(ii)作为第2变换器150所包含的第2解码层中的至少一部分的至少一个第2特定解码层。

并且,第1参数的至少一部分和第2参数的至少一部分以它们之间的相关性为规定临界值以上的方式彼此关联地进行学习。此时,相关性是指第1参数所包含的值与第2参数中与此相同的位置的值之间的比率。在一个实施例中,第1参数的至少一部分以和与此对应的第2参数相同的状态来学习。

此时,第1特定编码层及第1特定解码层以从第1隐空间(latentspace)离开的至少一个第1距离(distance)小于第1临界距离的方式分别从第1编码层及第1解码层中被选择。在此,第1隐空间是位于第1编码层与第1解码层之间的通过第1编码层而生成的第1特征图所在的位置。

第2特定编码层及第2特定解码层以使从第2隐空间离开的至少一个第2距离小于第2临界距离的方式分别从第2编码层及第2解码层中被选择。

靠近隐空间的层内的参数包含较多的关于输入到变换器的图像的内容的信息,这样的接近法能够将变换处理优化,由此将从真实图像和虚拟图像的全部中获得的稳健性信息(robustinformation)反映到相关参数。

通过这样的学习,第1变换器130在变换图像的特性的同时能够保持图像的内容与原始图像相同或类似。

以上,对学习过程进行了说明,下面对完成学习之后的测试过程进行说明。

作为参考,在下面的说明中为了避免混淆,对与以上说明的学习处理相关的用语追加“学习用,”对与测试处理相关的用语追加“测试用”。

(1)当学习装置100获得作为真实图像之一的至少一个学习用第1图像时,(i)使第1变换器130将作为学习用真实图像之一的至少一个学习用第1图像变换成具备与至少一个学习用虚拟图像相同或类似的至少一个特性的至少一个学习用第2图像,(ii)(ii-1)使第1判别器140判断学习用第2图像是初级虚拟图像之一还是次级虚拟图像之一,从而生成第1_1结果,初级虚拟图像是并非从学习用真实图像的至少一部分变换的学习用虚拟图像的至少一部分,次级虚拟图像是从学习用真实图像的至少一部分变换的学习用虚拟图像的至少一部分,(ii-2)使第2变换器150将学习用第2图像变换成具备与学习用真实图像相同或类似的至少一个特性的至少一个学习用第3图像,(2)由学习装置100(i)使第2变换器150将作为学习用虚拟图像之一的至少一个学习用第4图像变换成具备与学习用真实图像相同或类似的至少一个特性的至少一个学习用第5图像,(ii)(ii-1)使第2判别器140判断学习用第5图像是初级真实图像(primaryrealimage)之一还是次级真实图像(secondaryrealimage)之一,从而生成第2_1结果,初级真实图像是并非从学习用虚拟图像的至少一部分变换的学习用真实图像的至少一部分,次级真实图像是从学习用虚拟图像的至少一部分变换的学习用真实图像的至少一部分,(ii-2)使第1变换器将学习用第5图像变换成具备与学习用虚拟图像相同或类似的至少一个特性的至少一个学习用第6图像,(3)使学习装置100参照学习用第1图像、学习用第2图像、学习用第3图像、学习用第4图像、学习用第5图像、学习用第6图像、第1_1结果及第2_1结果中的至少一部分而算出至少一个损失,从而在学习了第1变换器、第2变换器、第1判别器及第2判别器的参数中的至少一部分的状态下,测试装置使第1变换器130获得作为测试用真实图像之一的至少一个测试图像。之后,测试装置使第1变换器130将测试图像变换成具备与测试用虚拟图像相同或类似的至少一个特性的至少一个变换的测试图像。

测试装置除了第2变换器150、第1判别器140及第2判别器160,包括图1所示的学习装置100的结构。

但是,虚拟对象检测器170在第1变换器130的学习处理及测试处理之前已经进行了学习,但可以利用微调用图像及对此的gt来对虚拟对象检测器170所包含的参数进行微调。微调处理与第1变换器130的学习处理类似,因此省略具体的说明。但是,这并非执行本发明时所必须的要件。

之后,包括虚拟对象检测器170及第1变换器130的测试装置可用于协助自动驾驶车辆的行驶。具体地,通过自动驾驶车辆所包含的照相机而获得作为真实图像的至少一部分的测试图像时,测试装置100使第1变换器130将测试图像变换成变换的测试图像,使虚拟对象检测器170检测具备与虚拟图像相同或类似的特性的变换的测试图像所包含的对象,从而在现实世界中能够协助自动驾驶车辆的行驶。

通过这样的测试过程,能够将利用关于虚拟世界的信息而学习的虚拟对象检测器170使用在现实世界的自动驾驶中。

关于本发明的正面的效果,提供如下的方法:使使用虚拟世界上的虚拟图像而学习的对象检测器通过利用gan(generativeadversarialnetwork)而学习的变换器来将真实图像变换成虚拟图像,从而检测真实世界上的真实图像所包含的对象。

因此,关于本发明的方法,可利用运行时输入变换器而在虚拟行驶环境中使用。另外,该方法可减少虚拟与现实之间的差异和注释(annotation)费用。

本领域技术人员可以理解,上述说明的图像,例如原始图像、原始标签及追加标签这样的图像数据的收发通过学习装置及测试装置的通信部而实现,可通过学习装置及测试装置的处理器(及/或存储器)而保留/保持特征图和用于进行运算的数据,并且卷积运算、解卷积运算、损失值运算过程主要通过学习装置及测试装置的处理器而执行,但本发明不限于此。

以上说明的本发明的实施例可体现为通过各种计算机构成要素来实现的程序命令的形态来记录到计算机可读取的记录介质。上述计算机可读取的记录介质可单独或以组合的方式包括程序命令、数据文件、数据结构等。记录到上述计算机可读取的记录介质的程序命令可以是为本发明特别设计并构成的命令或计算机软件领域的技术人员公知而使用的命令。作为计算机可读取的记录介质的例子,包括硬盘、软盘及磁带这样的磁性介质、cd-rom、dvd这样的光记录介质、光碟(flopticaldisk)这样的磁光介质(magneto-opticaledia)及rom、ram、闪存等这样的以存储程序命令且执行的方式特别构成的硬件装置。作为程序命令的例子,不仅包括由编译器制作的机器代码,而且还包括使用解释器等而通过计算机来执行的高级语言代码。上述硬件装置既可构成为一个以上的软件模块,以执行本发明的处理,也可以与其相反的方式构成。

以上,通过具体的构成要素等这样的特定事项和限定的实施例及附图而对本发明进行了说明,但这是为了整体地理解本发明而提供的,本发明不限于这样的上述实施例,本领域技术人员可从这样的记载进行各种修改及变形。

因此,本发明的思想不限于上述说明的实施例,不仅是后述的权利要求书,与该权利要求书均等或等价地变换的所有内容均包括在本发明的思想的范围中。

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