CN112784867A - 利用合成图像训练深度神经网络 - Google Patents

利用合成图像训练深度神经网络 Download PDF

Info

Publication number
CN112784867A
CN112784867A CN202011213901.0A CN202011213901A CN112784867A CN 112784867 A CN112784867 A CN 112784867A CN 202011213901 A CN202011213901 A CN 202011213901A CN 112784867 A CN112784867 A CN 112784867A
Authority
CN
China
Prior art keywords
neural network
image
composite image
deep neural
processor
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
Application number
CN202011213901.0A
Other languages
English (en)
Inventor
尼基塔·斋普里亚
罗汉·巴辛
舒博·古普塔
古萨姆·肖林格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of CN112784867A publication Critical patent/CN112784867A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/772Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/778Active pattern-learning, e.g. online learning of image or video features
    • G06V10/7784Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors
    • G06V10/7788Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors the supervisor being a human, e.g. interactive learning with a human teacher
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)

Abstract

本公开提供了“利用合成图像训练深度神经网络”。本公开公开了一种系统和方法。所述系统和所述方法经由深度神经网络基于模拟图像生成第一合成图像,基于所述合成图像生成分割掩模,将所述分割掩模与所述合成图像的地面实况掩模进行比较,基于所述比较来更新所述深度神经网络,以及经由所述更新的深度神经网络基于所述模拟图像生成第二合成图像。

Description

利用合成图像训练深度神经网络
技术领域
本公开总体上涉及深度神经网络。
背景技术
深度神经网络(DNN)可用于执行许多图像理解任务,包括分类、分割和生成字幕。通常,DNN需要大量的训练图像(数万至数百万)。另外,为了训练和预测的目的,通常需要对这些训练图像进行注解。
发明内容
一种系统,所述系统包括计算机,所述计算机包括处理器和存储器,并且所述存储器包括指令,使得所述处理器被编程为:经由深度神经网络基于模拟图像生成第一合成图像;基于所述合成图像生成分割掩模;将所述分割掩模与所述合成图像的地面实况掩模进行比较;基于所述比较来更新所述深度神经网络;以及经由所述更新的深度神经网络,基于所述模拟图像生成第二合成图像。
在其他特征中,所述处理器还被编程为经由孪生神经网络将所述分割掩模与所述地面实况掩模进行比较。
在其他特征中,所述模拟图像描绘多个对象。
在其他特征中,所述分割掩模包括将所述多个对象中的相似对象分类为单个实例的二进制掩模。
在其他特征中,所述模拟图像由游戏引擎生成。
在其他特征中,所述深度神经网络包括解卷积神经网络。
在其他特征中,所述处理器还被编程为:基于所述比较来确定对比损失;以及基于所述对比损失来更新所述深度神经网络。
在其他特征中,所述处理器还被编程为更新与所述深度神经网络的神经元相关联的至少一个权重。
在其他特征中,所述处理器还被编程为:评估所述第二合成图像;以及生成指示所述第二合成图像是机器生成的还是源自真实数据分布的预测。
在其他特征中,所述处理器还被编程为:基于所述预测生成反馈;以及当所述预测指示所述第二合成图像是机器生成的时,更新与所述深度神经网络的神经元相关联的至少一个权重。
在其他特征中,所述处理器还被编程为经由卷积神经网络评估所述第二合成图像。
一种方法包括:经由深度神经网络基于模拟图像生成第一合成图像;基于所述合成图像生成分割掩模;将所述分割掩模与所述合成图像的地面实况掩模进行比较;基于所述比较来更新所述深度神经网络;以及经由所述更新的深度神经网络,基于所述模拟图像生成第二合成图像。
在其他特征中,所述方法包括经由孪生神经网络将所述分割掩模与所述地面实况掩模进行比较。
在其他特征中,所述模拟图像描绘多个对象。
在其他特征中,所述分割掩模包括将所述多个对象中的相似对象分类为单个实例的二进制掩模。
在其他特征中,所述模拟图像由游戏引擎生成。
在其他特征中,所述深度神经网络包括解卷积神经网络。
在其他特征中,所述方法包括:基于所述比较来确定对比损失;以及基于所述对比损失来更新所述深度神经网络。
在其他特征中,所述方法包括更新与所述深度神经网络的神经元相关联的至少一个权重。
在其他特征中,所述方法包括:评估所述第二合成图像;以及生成指示所述第二合成图像是机器生成的还是源自真实数据分布的预测。
附图说明
图1是用于训练对抗网络的示例性系统的图示。
图2是系统内的示例性服务器的图示。
图3是示例性对抗网络的图示。
图4是示例性深度神经网络的图示。
图5是示出用于训练对抗网络的示例性过程的流程图。
图6是示出用于确定图像是源自真实数据分布还是机器生成的示例性过程的流程图。
具体实施方式
自主车辆通常采用感知算法或代理来感知车辆周围的环境。然而,训练感知算法通常需要大量数据。可使用游戏引擎来模拟向感知算法描绘感兴趣的对象的数据,诸如合成图像。感兴趣的对象可包括其他车辆、挂车、行人、街道标记、标志等。然而,合成数据可能看起来不是“真实的”。因此,使用合成数据的感知算法的训练可能不对应于使用真实(即,非生成的)数据的感知算法的训练。
在一些情况下,生成式对抗网络(GAN)用于变换模拟数据以使其看起来更逼真。然而,在变换期间并不保留模拟数据内的对象的位置、大小和/或形状,这可能使得从模拟生成的地面实况标签不可用于训练目的。
本公开公开了一种对抗神经网络,所述对抗神经网络将分割掩模与地面实况掩模进行比较以改善图像转换,诸如模拟到真实。例如,本公开的对抗神经网络可从模拟图像生成逼真图像并且维护地面实况以用于训练目的。如本文所讨论的,对抗神经网络可包括生成器,所述生成器基于模拟输入图像生成合成图像。分割器基于合成图像生成分割掩模,并且孪生网络(Siamese network)将分割掩模与模拟输入图像的地面实况掩模进行比较。基于所述比较,所述孪生网络生成对比损失输出,所述对比损失输出被提供给生成器。可基于对比损失输出更新生成器,以减轻图像转换期间的对象地面实况损失,诸如对象的大小、位置和形状。
虽然本公开描述了车辆系统和服务器,但应理解,可使用任何合适的计算机系统来执行本文描述的对抗神经网络的技术和/或功能。另外,本文描述的技术可包括训练生成器以用于图像生成目的,这可导致车辆系统内的处理效率提高。例如,可利用本文描述的生成器来训练在车辆系统内使用的一个或多个神经网络,以改善神经网络的性能。
图1是示例性车辆系统100的框图。系统100包括车辆105,所述车辆是陆地车辆,诸如汽车、卡车等。车辆105包括计算机110、车辆传感器115、用于致动各种车辆部件125的致动器120以及车辆通信模块130。经由网络135,通信模块130允许计算机110与服务器145通信。
计算机110包括处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并且存储可由计算机110执行以执行各种操作(包括如本文所公开的操作)的指令。
计算机110可以自主模式、半自主模式或非自主(手动)模式来操作车辆105。出于本公开的目的,自主模式被限定为其中由计算机110控制车辆105推进、制动和转向中的每一者的模式;在半自主模式下,计算机110控制车辆105推进、制动和转向中的一者或两者;在非自主模式下,人类操作员控制车辆105推进、制动和转向中的每一者。
计算机110可包括编程以操作车辆105制动、推进(例如,通过控制内燃发动机、电动马达、混合动力发动机等中的一者或多者来控制车辆的加速)、转向、气候控制、内部灯和/或外部灯等中的一者或多者,以及确定计算机110(而非人类操作员)是否以及何时控制此类操作。另外,计算机110可被编程为确定人类操作员是否以及何时控制此类操作。
计算机110可包括一个以上的处理器,或者例如经由如以下进一步描述的车辆105通信模块130而通信地耦合到所述一个以上的处理器,所述一个以上的处理器例如包括在车辆105中所包括的用于监测和/或控制各种车辆部件125的电子控制器单元(ECU)等(例如动力传动系统控制器、制动控制器、转向控制器等)中。此外,计算机110可经由车辆105通信模块130与使用全球定位系统(GPS)的导航系统通信。作为示例,计算机110可请求并接收车辆105的位置数据。位置数据可以是已知的形式,例如地理坐标(纬度坐标和经度坐标)。
计算机110通常被布置用于依靠车辆105通信模块130并且还利用车辆105内部有线和/或无线网络(例如车辆105中的总线等,诸如控制器局域网(CAN)等)和/或其他有线和/或无线机制进行通信。
经由车辆105通信网络,计算机110可向车辆105中的各种装置传输消息和/或从所述各种装置接收消息,所述各种装置例如车辆传感器115、致动器120、车辆部件125、人机界面(HMI)等。替代地或另外地,在计算机110实际上包括多个装置的情况下,车辆105通信网络可用于在本公开中表示为计算机110的装置之间的通信。此外,如以下所提及,各种控制器和/或车辆传感器115可向计算机110提供数据。
车辆传感器115可包括诸如已知的用于向计算机110提供数据的多种装置。例如,车辆传感器115可包括设置在车辆105的顶部上、在车辆105前挡风玻璃后面、在车辆105周围等的一个或多个光探测和测距(lidar)传感器115等,所述传感器提供车辆105周围的对象的相对位置、大小和形状和/或周围的状况。作为另一示例,固定到车辆105保险杠的一个或多个雷达传感器115可提供数据以提供对象(可能地包括第二车辆106)等相对于车辆105的位置的速度并进行测速。车辆传感器115还可包括一个或多个相机传感器115(例如,前视、侧视、后视等),其提供来自车辆105的内部和/或外部的视野的图像。
车辆105致动器120经由如已知那样可根据适当控制信号致动各种车辆子系统的电路、芯片、马达或其他电子和/或机械部件来实现。致动器120可用于控制部件125,包括车辆105的制动、加速和转向。
在本公开的上下文中,车辆部件125是适于执行机械或机电功能或操作(诸如使车辆105移动、使车辆105减速或停止、使车辆105转向等)的一个或多个硬件部件。部件125的非限制性示例包括推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可包括方向盘、转向齿条等中的一者或多者)、制动部件(如以下所描述)、驻车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等。
另外,计算机110可被配置用于经由车辆对车辆通信模块或接口130与车辆105外部的装置通信,例如,通过车辆对车辆(V2V)或车辆对基础设施(V2X)无线通信与另一车辆、(通常经由网络135)远程服务器145通信。模块130可包括计算机110可借以通信的一种或多种机制,包括无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望组合以及任何期望网络拓扑(或者当利用多种通信机制时为多个拓扑)。经由模块130提供的示例性通信包括提供数据通信服务的蜂窝、
Figure BDA0002759695220000071
IEEE 802.11、专用短程通信(DSRC)和/或广域网(WAN),包括互联网。
网络135可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望的组合以及任何期望的网络拓扑(或当利用多种通信机制时,多个拓扑)。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用蓝牙、低功耗蓝牙(BLE)、IEEE802.11、车辆对车辆(V2V)(诸如专用短程通信(DSRC))等)、局域网(LAN)和/或广域网(WAN),包括互联网。
计算机110可基本上连续地、周期性地和/或当由服务器145指示时等从传感器115接收并分析数据。此外,对象分类或识别技术可在例如计算机110中基于lidar传感器115、相机传感器115等的数据用于识别对象的类型(例如,车辆、人、岩石、坑洞、自行车、摩托车等)以及对象的物理特征。
图2是示例性服务器145的框图。服务器145包括计算机235和通信模块240。计算机235包括处理器和存储器。存储器包括一种或多种形式的计算机可读介质,并且存储可由计算机235执行以用于执行各种操作(包括如本文所公开的操作)的指令。通信模块240允许计算机235与其他装置(诸如车辆105)通信。
图3是示例性对抗神经网络300的图示。例如,对抗神经网络300可以是可加载到存储器中并由车辆105和/或服务器145中的处理器执行的软件程序。如图所示,对抗神经网络300包括生成器305、鉴别器310、分割器315和孪生网络320。在本上下文内,生成器305和鉴别器310包括生成式对抗网络(GAN)。GAN是深度神经网络,其采用一类人工智能算法,所述算法在机器学习中使用并且由在对抗零和博弈框架中彼此竞争的两个神经网络的系统来实施。
在示例性实现方式中,生成器305接收输入图像并基于输入图像生成合成图像。例如,生成器305接收模拟红绿蓝(RGB)图像,所述模拟红绿蓝(RGB)图像包括其中所描绘的一个或多个特征或对象。使用所述模拟图像,生成器305生成包括在输入图像内描绘的特征或对象的合成图像。在本上下文内,合成图像可以是模拟图像的图像到图像转换,例如,将输入图像从一个域(模拟)转换到另一个域(真实)。在一个或多个实现方式中,生成器305可包括反卷积神经网络。然而,应理解,根据本公开可使用其他神经网络。
鉴别器310被配置为接收图像,评估接收到的图像,以及生成指示接收到的图像是由生成器305机器生成还是源自真实数据分布的预测。如图3所示,鉴别器310接收由生成器305生成的合成图像和来自真实数据分布的图像作为输入。在一个或多个实现方式中,鉴别器可包括卷积神经网络。然而,应理解,根据本公开可使用其他神经网络。
生成器305的训练可使用强化学习来训练生成模型。强化学习是一种使用奖励和惩罚系统来训练算法的动态编程类型。强化学习算法或强化学习代理通过与其环境交互来学习。代理通过正确执行来接收奖励以及由于执行不正确而受到惩罚。例如,强化学习代理通过最大化奖励和最小化惩罚来在没有来自人类干预的情况下学习。
分割器315接收合成图像并且基于合成图像生成掩模。所述掩模可包括对合成图像内检测到的特征或对象进行分类的二进制掩模。在示例性实现方式中,分割器315可使用将相似特征或对象分类为单个实例的语义分割技术来生成语义分割掩模。例如,在图像内识别的每辆汽车均被分类为单个实例。在另一示例中,在图像内识别的每个行人均被分类为单个实例。在一个或多个实现方式中,分割器315可包括掩模R卷积神经网络(Mask R-CNN)。然而,应理解,分割器315可包括其他合适的神经网络,所述其他合适的神经网络被配置为将图像内描绘的相似特征或对象分类为单个实例。
孪生网络320接收由分割器315生成的分割掩模和输入图像(即,输入到生成器305的图像)的地面实况掩模作为输入。所述地面实况掩模表示将相似特征或对象分类为模拟输入图像内描绘的单个实例的二进制掩模。孪生网络320将地面实况掩模与生成的分割掩模进行比较,并生成表示地面实况掩模与生成的分割掩模之间的差异的对比损失输出。
如图3所示,对比损失输出被提供给生成器305。生成器305可使用对比损失输出来更新生成器305的一个或多个权重以使对比损失输出最小化。例如,生成器305可使用反向传播等来更新生成器305内的一个或多个权重。生成器305还可基于由鉴别器310生成的预测来更新一个或多个权重。在一个或多个实现方式中,基于对生成器305的更新,生成器305被配置为生成包括与地面实况掩模相对应的对象的另一个合成图像。
图4是示例性深度神经网络(DNN)400的图示。DNN 400可表示上述生成器305、鉴别器310、分割器315和/或孪生网络320。DNN400包括多个节点405,并且节点405被布置成使得DNN 400包括输入层、一个或多个隐藏层、和输出层。DNN 400的每一层可包括多个节点405。虽然图4示出了三(3)个隐藏层,但应理解,DNN 400可包括更多的或更少的隐藏层。输入层和输出层还可包括一(1)个以上的节点405。
节点405有时被称为人工神经元405,因为它们被设计成模拟生物(例如,人类)神经元。每个神经元405的一组输入(由箭头表示)各自乘以相应的权重。然后,可将经加权输入在输入函数中求和,以在可能通过偏差进行调整的情况下提供净输入。然后,可将净输入提供给激活函数,所述激活函数进而为连接的神经元405提供输出。所述激活函数可为通常基于经验分析来选择的各种合适的函数。如图4中的箭头所示,接着可提供神经元405的输出以将其包括在到下一层中的一个或多个神经元405的一组输入中。
可训练DNN 400以接受数据作为输入并基于输入生成输出。DNN 400可用地面实况数据即关于真实世界状况或状态的数据进行训练。例如,DNN 400可用地面实况数据进行训练或者由处理器用附加数据进行更新。例如,可通过使用高斯分布初始化权重,并且可将每个节点405的偏差设置为零。训练DNN 400可包括经由合适技术(诸如反向传播)加以优化来更新权重和偏差。地面实况数据可包括但不限于指定图像内的对象的数据或指定物理参数(例如,对象相对于另一对象的角度、速度、距离或角度)的数据。例如,地面实况数据可以是表示对象和对象标签的数据。
图5是用于在对抗神经网络内使用合成图像生成来训练生成器的示例性过程500的流程图。过程500的框可由计算机110或计算机235执行。过程500开始于框505,其中接收模拟输入图像。如上所述,生成器305接收模拟输入图像。所述模拟输入图像可由游戏引擎等生成。在框510处,生成器305基于模拟输入图像生成合成图像,例如机器生成的图像。所述合成图像可包括在模拟输入图像内描绘的一个或多个对象。在框515处,分割器315基于合成图像生成分割掩模。如上面所讨论的,所述分割掩模为将相似特征或对象分类为单个实例的二进制掩模。
在框520处,将对应于合成图像的分割掩模与模拟图像的地面实况掩模进行比较。例如,孪生网络320被配置为生成表示地面实况掩模与生成的分割掩模之间的差异的对比损失输出。在框525处,确定对比损失输出是否大于预定误差阈值。如果对比损失输出小于或等于预定误差阈值,则过程500结束。
否则,在框530处使用对比损失输出更新生成器305,并且过程500返回到框510。例如,经由合适技术(诸如反向传播)加以优化来更新与生成器305的节点(诸如节点405)相关联的一个或多个权重。对比损失可包括分割掩模与地面实况掩模之间的一个或多个感兴趣的梯度,并且可基于感兴趣的梯度来更新生成器305的权重。可由生成器305生成附加的合成图像,直到对比损失小于或等于预定误差阈值。
图6是用于生成指示图像是机器生成的还是源于真实数据分布的预测的示例性过程600的流程图。过程600的框可由计算机110或计算机235执行。过程600开始于框605,其中确定是否接收到图像。在示例性实现方式中,鉴别器310接收图像。所述图像可以是由生成器305生成的合成图像或来自真实数据分布的图像。如果没有接收到图像,则过程600返回到框605。
否则,在框610处,鉴别器310评估接收到的图像并基于接收到的图像生成预测。例如,鉴别器310将一种或多种卷积神经网络技术应用于接收到的图像,以确定所评估的图像是合成的或来自真实数据分布的概率。在框615处,确定接收到的图像是否是合成的,例如机器生成的。例如,如果所述概率大于预定阈值,则鉴别器310确定图像是机器生成的。
如果确定接收到的图像被确定为不是合成的,则过程600结束。如果确定接收到的图像被确定为是合成的,则在框625处,鉴别器310向生成器305提供反馈。在一些实现方式中,确定接收到的图像的梯度并将其提供给生成器305。例如,可使用反向传播技术来识别接收到的图像内的感兴趣的梯度。然后,可将梯度提供给生成器305,使得可相对于梯度更新生成器305的权重。
一般来说,所描述的计算系统和/或装置可采用许多计算机操作系统中的任一者,包括但绝不限于以下版本和/或变型:Ford
Figure BDA0002759695220000111
应用、AppLink/SmartDevice Link中间件、
Figure BDA0002759695220000121
操作系统、Microsoft
Figure BDA0002759695220000122
操作系统、Unix操作系统(例如,由加利福尼亚州红木海岸的甲骨文公司发布的
Figure BDA0002759695220000123
操作系统)、由纽约州阿蒙克市的国际商业机器公司发布的AIX UNIX操作系统、Linux操作系统、由加利福尼亚州库比蒂诺的苹果公司发布的Mac OSX和iOS操作系统、由加拿大滑铁卢的黑莓有限公司发布的BlackBerry OS、以及由谷歌公司和开放手机联盟开发的Android操作系统、或由QNX软件系统公司提供的
Figure BDA0002759695220000124
CAR信息娱乐平台。计算装置的示例包括但不限于车载车辆计算机、计算机工作站、服务器、台式计算机、笔记本计算机、膝上型计算机或手持式计算机或者某一其他计算系统和/或装置。
计算机和计算装置一般包括计算机可执行指令,其中所述指令可能够由一个或多个计算装置(诸如以上所列出的那些)执行。可由使用多种编程语言和/或技术创建的计算机程序编译或解译计算机可执行指令,所述编程语言和/或技术单独地或者组合地包括但不限于JavaTM、C、C++、Matlab、Simulink、Stateflow、Visual Basic、Java Script、Perl、HTML等。这些应用程序中的一些可在诸如Java虚拟机、Dalvik虚拟机等虚拟机上编译和执行。一般来说,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令,并且执行这些指令,由此执行一个或多个过程,包括本文所述的过程中的一者或多者。可使用各种计算机可读介质来存储和传输此类指令和其他数据。计算装置中的文件通常是存储在计算机可读介质(诸如存储介质、随机存取存储器等)上的数据的集合。
存储器可包括计算机可读介质(也称为处理器可读介质),所述计算机可读介质包括参与提供可由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂态(例如,有形)介质。此类介质可采取许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质可包括例如光盘或磁盘以及其他持久性存储器。易失性存储器可包括例如通常构成主存储器的动态随机存取存储器(DRAM)。此类指令可由一种或多种传输介质传输,所述一种或多种传输介质包括同轴电缆、铜线和光纤,包括构成联接到ECU的处理器的系统总线的电线。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、CD-ROM、DVD、任何其他光学介质、穿孔卡片、纸带、任何其他具有孔图案的物理介质、RAM、PROM、EPROM、快闪-EEPROM、任何其他存储器芯片或盒式磁带,或计算机可从中读取的任何其他介质。
数据库、数据存储库或本文所述的其他数据存储装置可包括用于存储、访问和检索各种数据的各种机构,包括分层数据库、文件系统中的文件集、呈专用格式的应用数据库、关系数据库管理系统(RDBMS)等。每个此类数据存储装置大体包括在采用计算机操作系统(诸如以上所提到的那些操作系统中的一个操作系统)的计算装置内,并且经由网络以多种方式中的任一种或多种方式来访问。文件系统可从计算机操作系统访问,并且可包括以各种格式存储的文件。RDBMS除了用于创建、存储、编辑和执行所存储的程序的语言(诸如以上提及的PL/SQL语言)之外通常还采用结构化查询语言(SQL)。
在一些示例中,系统元件可被实施为一个或多个计算装置(例如,服务器、个人计算机等)上、存储在与其相关联的计算机可读介质(例如,磁盘、存储器等)上的计算机可读指令(例如,软件)。计算机程序产品可包括存储在计算机可读介质上用于执行本文所述的功能的此类指令。
关于本文描述的介质、过程、系统、方法、启发等,应理解,虽然此类过程等的步骤已被描述为按照某一有序的顺序发生,但可通过以与本文所述顺序不同的顺序执行所述步骤来实践此类过程。还应理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文所描述的某些步骤。换句话讲,本文对过程的描述是出于说明某些实施例的目的而提供,而决不应将其理解为对权利要求进行限制。
因此,应理解,以上描述意图是说明性的而非限制性的。在阅读以上描述时,除了所提供的示例之外的许多实施例和应用对于本领域的技术人员将是明显的。不应参考以上描述来确定本发明的范围,而应参考所附权利要求连同这些权利要求赋予的等效物的全部范围来确定。预期并期望本文所讨论的领域未来将有所发展,并且所公开的系统和方法将结合到此类未来的实施例中。总之,应理解,本发明能够进行修改和变化,并且仅受所附权利要求限制。
除非本文做出明确的相反指示,否则权利要求中使用的所有术语意图给出如本领域技术人员所理解的普通和一般的含义。具体地,除非权利要求叙述相反的明确限制,否则对诸如“一个”、“该”、“所述”等单数冠词的使用应被解读为叙述所指示要素中的一者或多者。
根据本发明,提供一种系统,所述系统具有计算机,所述计算机包括处理器和存储器,所述存储器包括指令,使得所述处理器被编程为:经由深度神经网络基于模拟图像生成第一合成图像;基于所述合成图像生成分割掩模;将所述分割掩模与所述合成图像的地面实况掩模进行比较;基于所述比较来更新所述深度神经网络;以及经由所述更新的深度神经网络,基于所述模拟图像生成第二合成图像。
根据实施例,所述处理器还被编程为:经由孪生神经网络将所述分割掩模与所述地面实况掩模进行比较。
根据实施例,所述模拟图像描绘了多个对象。
根据实施例,所述分割掩模包括将所述多个对象中的相似对象分类为单个实例的二进制掩模。
根据实施例,所述模拟图像由游戏引擎生成。
根据实施例,所述深度神经网络包括解卷积神经网络。
根据实施例,所述处理器还被编程为:基于所述比较来确定对比损失;以及基于所述对比损失来更新所述深度神经网络。
根据实施例,所述处理器还被编程为:更新与所述深度神经网络的神经元相关联的至少一个权重。
根据实施例,所述处理器还被编程为:评估所述第二合成图像;以及生成指示所述第二合成图像是机器生成的还是源自真实数据分布的预测。
根据实施例,所述处理器还被编程为:基于所述预测生成反馈;以及当所述预测指示所述第二合成图像是机器生成的时,更新与所述深度神经网络的神经元相关联的至少一个权重。
根据实施例,所述处理器还被编程为:经由卷积神经网络评估所述第二合成图像。
根据本发明,一种方法包括:经由深度神经网络基于模拟图像生成第一合成图像;基于所述合成图像生成分割掩模;将所述分割掩模与所述合成图像的地面实况掩模进行比较;基于所述比较来更新所述深度神经网络;以及经由所述更新的深度神经网络,基于所述模拟图像生成第二合成图像。
根据实施例,上述发明的特征在于,经由孪生神经网络将所述分割掩模与所述地面实况掩模进行比较。
根据实施例,所述模拟图像描绘了多个对象。
根据实施例,所述分割掩模包括将所述多个对象中的相似对象分类为单个实例的二进制掩模。
根据实施例,所述模拟图像由游戏引擎生成。
根据实施例,所述深度神经网络包括解卷积神经网络。
根据实施例,上述发明的特征在于:基于所述比较来确定对比损失;以及基于所述对比损失来更新所述深度神经网络。
根据实施例,上述发明的特征在于,更新与所述深度神经网络的神经元相关联的至少一个权重。
根据实施例,上述发明的特征在于:评估所述第二合成图像;以及生成指示所述第二合成图像是机器生成的还是源自真实数据分布的预测。

Claims (11)

1.一种系统,其包括计算机,所述计算机包括处理器和存储器,所述存储器包括指令,使得所述处理器被编程为:
经由深度神经网络基于模拟图像生成第一合成图像;
基于所述合成图像生成分割掩模;
将所述分割掩模与所述合成图像的地面实况掩模进行比较;
基于所述比较来更新所述深度神经网络;以及
经由所述更新的深度神经网络,基于所述模拟图像生成第二合成图像。
2.如权利要求1所述的系统,其中所述处理器还被编程为:
经由孪生神经网络将所述分割掩模与所述地面实况掩模进行比较。
3.如权利要求1所述的系统,其中所述模拟图像描绘多个对象。
4.如权利要求3所述的系统,其中所述分割掩模包括将所述多个对象中的相似对象分类为单个实例的二进制掩模。
5.如权利要求1所述的系统,其中所述模拟图像由游戏引擎生成。
6.如权利要求1所述的系统,其中所述深度神经网络包括解卷积神经网络。
7.如权利要求1所述的系统,其中所述处理器还被编程为:
基于所述比较来确定对比损失;以及
基于所述对比损失来更新所述深度神经网络。
8.如权利要求1所述的系统,其中所述处理器还被编程为:
更新与所述深度神经网络的神经元相关联的至少一个权重。
9.如权利要求1所述的系统,其中所述处理器还被编程为:
评估所述第二合成图像;以及
生成指示所述第二合成图像是机器生成的还是源自真实数据分布的预测。
10.如权利要求9所述的系统,其中所述处理器还被编程为:
基于所述预测生成反馈;以及
当所述预测指示所述第二合成图像是机器生成的时,更新与所述深度神经网络的神经元相关联的至少一个权重。
11.如权利要求9所述的系统,其中所述处理器还被编程为:
经由卷积神经网络评估所述第二合成图像。
CN202011213901.0A 2019-11-08 2020-11-04 利用合成图像训练深度神经网络 Pending CN112784867A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/678,708 US11100372B2 (en) 2019-11-08 2019-11-08 Training deep neural networks with synthetic images
US16/678,708 2019-11-08

Publications (1)

Publication Number Publication Date
CN112784867A true CN112784867A (zh) 2021-05-11

Family

ID=75584011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011213901.0A Pending CN112784867A (zh) 2019-11-08 2020-11-04 利用合成图像训练深度神经网络

Country Status (3)

Country Link
US (1) US11100372B2 (zh)
CN (1) CN112784867A (zh)
DE (1) DE102020128978A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019220456A1 (de) * 2019-12-20 2021-06-24 Siemens Healthcare Gmbh Medizinische Bilddaten für longitudinale Studien
US11960570B2 (en) * 2021-08-25 2024-04-16 Nvidia Corporation Learning contrastive representation for semantic correspondence
US20230081128A1 (en) * 2021-09-16 2023-03-16 Samsung Electronics Co., Ltd. Picture quality-sensitive semantic segmentation for use in training image generation adversarial networks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10699412B2 (en) 2017-03-23 2020-06-30 Petuum Inc. Structure correcting adversarial network for chest X-rays organ segmentation
US10186038B1 (en) 2017-07-18 2019-01-22 Siemens Healthcare Gmbh Segmentation and representation network for pose discrimination
US20190130220A1 (en) * 2017-10-27 2019-05-02 GM Global Technology Operations LLC Domain adaptation via class-balanced self-training with spatial priors
US10643320B2 (en) 2017-11-15 2020-05-05 Toyota Research Institute, Inc. Adversarial learning of photorealistic post-processing of simulation with privileged information
US20190286938A1 (en) * 2018-03-13 2019-09-19 Recogni Inc. Real-to-synthetic image domain transfer
US11341356B2 (en) * 2018-06-15 2022-05-24 Uatc, Llc System and method for determining object intention through visual attributes

Also Published As

Publication number Publication date
DE102020128978A1 (de) 2021-05-12
US20210142116A1 (en) 2021-05-13
US11100372B2 (en) 2021-08-24

Similar Documents

Publication Publication Date Title
US11107228B1 (en) Realistic image perspective transformation using neural networks
CN112784867A (zh) 利用合成图像训练深度神经网络
CN113298250A (zh) 用于定位和对象检测的神经网络
CN114118350A (zh) 观察的车辆姿态的自监督估计
CN116136963A (zh) 自适应地修剪神经网络系统
CN113379654A (zh) 动态路由的块鉴别器
CN114119625A (zh) 点云数据的分割与分类
US11657635B2 (en) Measuring confidence in deep neural networks
US20230192118A1 (en) Automated driving system with desired level of driving aggressiveness
US10977783B1 (en) Quantifying photorealism in simulated data with GANs
US20230162039A1 (en) Selective dropout of features for adversarial robustness of neural network
US11620475B2 (en) Domain translation network for performing image translation
US20230162480A1 (en) Frequency-based feature constraint for a neural network
US20220188621A1 (en) Generative domain adaptation in a neural network
US20210103800A1 (en) Certified adversarial robustness for deep reinforcement learning
US11321587B2 (en) Domain generation via learned partial domain translations
US11068749B1 (en) RCCC to RGB domain translation with deep neural networks
US20230376832A1 (en) Calibrating parameters within a virtual environment using reinforcement learning
US20230316728A1 (en) Robust neural network learning system
US11823465B2 (en) Neural network object identification
US20240046619A1 (en) Holographic display calibration using machine learning
US20230139521A1 (en) Neural network validation system
US20240046627A1 (en) Computationally efficient unsupervised dnn pretraining
US20220172062A1 (en) Measuring confidence in deep neural networks
CN113159271A (zh) 时间cnn后部碰撞警报系统

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