CN112184844A - 车辆图像生成 - Google Patents

车辆图像生成 Download PDF

Info

Publication number
CN112184844A
CN112184844A CN202010621324.2A CN202010621324A CN112184844A CN 112184844 A CN112184844 A CN 112184844A CN 202010621324 A CN202010621324 A CN 202010621324A CN 112184844 A CN112184844 A CN 112184844A
Authority
CN
China
Prior art keywords
image
vehicle
domain
neural network
vae
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
CN202010621324.2A
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 CN112184844A publication Critical patent/CN112184844A/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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30236Traffic on road, railway or crossing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

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

Abstract

本公开提供“车辆图像生成”。一种计算机,所述计算机包括处理器和存储器,所述存储器包括指令,所述指令将由所述处理器执行以:生成合成图像和对应的地面实况,并通过利用变分自动编码器‑生成式对抗网络(VAE‑GAN)处理所述合成图像来生成多个域适应合成图像,其中训练所述VAE‑GAN以使所述合成图像从第一域适应到第二域。所述指令还可以包括用于基于所述域适应合成图像和所述对应的地面实况训练深度神经网络(DNN)并利用经训练的深度神经网络处理图像以确定对象的指令。

Description

车辆图像生成
技术领域
本公开涉及车辆传感器领域,并且更具体地涉及车辆传感器图像生成。
背景技术
车辆可以配备有计算装置、网络、传感器和控制器以获取关于车辆的环境的信息并基于该信息来操作车辆。车辆传感器可以提供关于在车辆的环境中要行驶的路线和要避开的对象的数据。车辆的操作可以依赖于在车辆正在道路上进行操作时获取关于在车辆的环境中的对象的准确且及时的信息。
发明内容
车辆可以被配备为以自主模式和乘员驾驶模式两者操作。半自主或完全自主模式意指其中车辆可以由作为具有传感器和控制器的信息***的一部分的计算装置部分地或完全地驾驶的操作模式。车辆可以被占用或未被占用,但是在任一情况下,都可以在没有乘员辅助的情况下部分地或完全地驾驶车辆。出于本公开的目的,自主模式被定义为其中车辆推进(例如,经由包括内燃发动机和/或电动马达的动力传动***)、制动和转向中的每一者由一个或多个车辆计算机控制的模式;在半自主模式中,车辆计算机控制车辆推进、制动和转向中的一者或两者。在非自主车辆中,这些都不由计算机控制。
车辆中的计算装置可以被编程为获取关于车辆外部环境的数据并使用所述数据来确定车辆路径,在所述车辆路径上以自主或半自主模式操作车辆。基于车辆路径通过确定命令以引导车辆的动力传动***、制动和转向部件操作车辆以沿着所述路径行驶,车辆可以在道路上操作。关于外部环境的数据可以包括车辆周围环境中的一个或多个移动对象(诸如,车辆和行人等)的位置,并且可以由车辆中的计算装置用来操作车辆。
基于移动对象数据来操作车辆可以包括确定避开移动对象的车辆路径。预测包括移动对象的未来位置的移动对象的路径可以允许计算装置确定避开移动对象的车辆路径。计算装置可以通过训练车辆中包括的深度神经网络(DNN)来预测移动对象的未来位置,从而操作车辆。计算装置可以基于所预测的未来位置来确定避开移动对象的车辆路径,在所述车辆路径上操作车辆。本文讨论的技术可以通过创建通过将域数据加到合成图像而生成的大量(>1,000个)的训练图像来改进对DNN的训练。将域数据加到合成图像可以包括将合成图像修改为模拟不同环境条件或噪声因素(诸如包括雨或雪在内的降水、包括雾或夜晚在内的大气/照明条件以及包括冬天和春天在内的季节条件)的效应。使用以逼真的方式包括每个域的许多不同示例的大训练图像数据集可以使DNN更稳健,其中稳健意指DNN有可能正确地识别和定位先前看不见的真实世界输入图像中的对象。
本文公开了一种方法,该方法包括:生成合成图像和对应的地面实况;通过利用变分自动编码器-生成式对抗网络(VAE-GAN)处理所述合成图像来生成多个域适应合成图像,其中训练所述VAE-GAN以使所述合成图像从第一域适应到第二域;基于所述域适应合成图像和所述对应的地面实况训练深度神经网络(DNN);以及利用经训练的深度神经网络处理图像以确定对象。通过修改所述合成图像以改变所述合成图像中的天气和照明条件,可以使所述合成图像从第一域适应到第二域。可以基于无监督学习来训练所述VAE-GAN。所述VAE-GAN可以包括编码器神经网络、生成器神经网络和鉴别器神经网络,其中所述编码器神经网络生成隐变量,所述生成器神经网络基于隐变量生成修改后的合成图像,并且所述鉴别器确定所述修改后的合成图像是否类似于真实图像。
可以通过基于真实图像确定损失函数来确定所述修改后的合成图像是否类似于真实图像。所述合成图像和对应的地面实况可以利用真实感渲染过程生成。所述真实感渲染过程可以基于对场景描述进行光线跟踪而生成所述合成图像和对应的地面实况。光线跟踪可以包括随着来自虚拟照明源的光线从场景描述中所包括的表面反射到虚拟相机的镜头中而跟踪所述光线。在交通场景中确定的对象和位置可以传达给车辆。可以基于根据所述对象和位置确定车辆路径来操作所述车辆。移动对象可包括行人和车辆中的一者或多者。可以通过将隐变量约束为与期望的输出域一致来训练所述VAE-GAN。可以假设所述隐变量具有高斯分布。可以使用应用于所述高斯分布的均值和标准偏差的贝叶斯推理来处理所述隐变量。
还公开了一种计算机可读介质,所述计算机可读介质存储用于执行上述方法步骤中的一些或全部的程序指令。还公开了一种被编程为用于执行上述方法步骤中的一些或全部的计算机,该计算机包括计算机设备,该计算机设备被编程为:生成合成图像和对应的地面实况;通过利用变分自动编码器-生成式对抗网络(VAE-GAN)处理所述合成图像来生成多个域适应合成图像,其中训练所述VAE-GAN以使所述合成图像从第一域适应到第二域;基于所述域适应合成图像和所述对应的地面实况训练深度神经网络(DNN);以及利用经训练的深度神经网络处理图像以确定对象。通过修改所述合成图像以改变所述合成图像中的天气和照明条件,可以使所述合成图像从第一域适应到第二域。可以基于无监督学习来训练所述VAE-GAN。所述VAE-GAN可以包括编码器神经网络、生成器神经网络和鉴别器神经网络,其中所述编码器神经网络生成隐变量,所述生成器神经网络基于隐变量生成修改后的合成图像,并且所述鉴别器确定所述修改后的合成图像是否类似于真实图像。
所述计算机还可以被编程为可以通过基于真实图像确定损失函数来确定所述修改后的合成图像是否类似于真实图像。所述合成图像和对应的地面实况可以利用真实感渲染过程生成。所述真实感渲染过程可以基于对场景描述进行光线跟踪而生成所述合成图像和对应的地面实况。光线跟踪可以包括随着来自虚拟照明源的光线从场景描述中所包括的表面反射到虚拟相机的镜头中而跟踪所述光线。在交通场景中确定的对象和位置可以传达给车辆。可以基于根据所述对象和位置确定车辆路径来操作所述车辆。移动对象可包括行人和车辆中的一者或多者。可以通过将隐变量约束为与期望的输出域一致来训练所述VAE-GAN。可以假设所述隐变量具有高斯分布。可以使用应用于所述高斯分布的均值和标准偏差的贝叶斯推理来处理所述隐变量。
附图说明
图1是示例交通基础设施***的框图。
图2是示例交通场景的图。
图3是另一个示例交通场景的图。
图4是示例变分自动编码器-生成式对抗网络(VAE-GAN)在训练期间的图。
图5是示例变分自动编码器-生成式对抗网络(VAE-GAN)在操作期间的图。
图6是使用VAE-GAN来生成用于深度神经网络(DNN)的训练图像的过程的流程图。
具体实施方式
图1是交通基础设施***100的图,该交通基础设施***包括可以自主(“自主”本身在本公开中意指“完全自主”)模式、半自主模式和乘员驾驶(也称为非自主)模式操作的车辆110。一个或多个车辆110计算装置115可以从传感器116接收关于车辆110的操作的信息。计算装置115可以自主模式、半自主模式或非自主模式操作车辆110。
计算装置115包括诸如已知的处理器和存储器。此外,存储器包括一种或多种形式的计算机可读介质,并且存储可由处理器执行的用于进行包括如本文所公开的各种操作的指令。例如,计算装置115可以包括编程以操作车辆制动、推进(例如,通过控制内燃发动机、电动马达、混合动力发动机等中的一者或多者来控制车辆110的加速度)、转向、气候控制、内部灯和/或外部灯等中的一者或多者,以及确定计算装置115(而不是操作人员)是否和何时控制此类操作。
计算装置115可以包括或例如经由如下文进一步描述的车辆通信总线通信地耦合到多于一个计算装置,例如包括在车辆110中以用于监测和/或控制各种车辆部件的控制器等,例如动力传动***控制器112、制动控制器113、转向控制器114等。计算装置115一般被布置为用于通过车辆通信网络(例如,包括车辆110中的总线,诸如控制器局域网(CAN)等)进行通信;车辆110网络可以另外地或可选地包括诸如已知的有线或无线通信机制,例如以太网或其他通信协议。
计算装置115可以经由车辆网络向车辆中的各种装置(例如,控制器、致动器、传感器(包括传感器116)等)传输消息和/或从各种装置接收消息。可选地或另外地,在计算装置115实际上包括多个装置的情况下,车辆通信网络可以用于在本公开中表示为计算装置115的装置之间的通信。此外,如下文所提及,各种控制器或感测元件(诸如传感器116)可以经由车辆通信网络向计算装置115提供数据。
另外,计算装置115可被配置为经由网络130通过车辆对基础设施(V对I)接口111与远程服务器计算机120(例如,云服务器)进行通信,如下所述,该接口包括允许计算装置115经由诸如无线互联网(Wi-Fi)或蜂窝网络的网络130与远程服务器计算机120进行通信的硬件、固件和软件。因此,V对I接口111可包括被配置为利用各种有线和/或无线联网技术(例如,蜂窝、
Figure BDA0002565269140000061
和有线和/或无线分组网络)的处理器、存储器、收发器等。计算装置115可被配置为使用例如在附近车辆110间在自组网的基础上形成或通过基于基础设施的网络形成的车辆对车辆(V对V)网络(例如,根据专用短程通信(DSRC)和/或类似的通信)通过V对I接口111与其他车辆110进行通信。计算装置115还包括诸如已知的非易失性存储器。计算装置115可以通过将信息存储在非易失性存储器中来记录信息,以用于稍后经由车辆通信网络和通向服务器计算机120或用户移动装置160的车辆对基础设施(V对I)接口111来进行检索和传输。
如已经提及的,用于在没有操作人员干预的情况下操作一个或多个车辆110部件(例如,制动、转向、推进等)的编程通常包括在存储器中所存储的并可由计算装置115的处理器执行的指令中。使用在计算装置115中接收的数据(例如,来自传感器116、服务器计算机120等的传感器数据),计算装置115可以在没有驾驶员的情况下作出各种确定和/或控制各种车辆110部件和/或操作以操作车辆110。例如,计算装置115可以包括编程以调节车辆110的操作行为(即,车辆110的操作的物理表现),诸如速度、加速度、减速度、转向等,以及策略性行为(即,典型地以预期实现路线的安全且有效的行驶的方式进行的操作行为控制),诸如车辆之间的距离和/或车辆之间的时间量、车道改变、车辆之间的最小间隙、左转跨过路径最小值、特定位置处的到达时间和为了通过十字路口的十字路口(无信号灯)最小到达时间。
控制器(如该术语在本文中所使用)包括典型地被编程为监测和/或控制特定车辆子***的计算装置。示例包括动力传动***控制器112、制动控制器113和转向控制器114。控制器可以为诸如已知的电子控制单元(ECU),可能包括如本文所描述的附加编程。控制器可以通信地连接到计算装置115并从该计算装置接收指令以根据指令来致动子***。例如,制动控制器113可以从计算装置115接收指令以操作车辆110的制动器。
用于车辆110的一个或多个控制器112、113、114可以包括已知的电子控制单元(ECU)等,作为非限制性示例,包括一个或多个动力传动***控制器112、一个或多个制动控制器113和一个或多个转向控制器114。控制器112、113、114中的每一个可以包括相应的处理器和存储器以及一个或多个致动器。控制器112、113、114可以被编程并连接到车辆110通信总线(诸如控制器局域网(CAN)总线或局域互连网(LIN)总线),以从计算机115接收指令并基于指令来控制致动器。
传感器116可以包括已知的各种装置以经由车辆通信总线提供数据。例如,固定到车辆110的前保险杠(未示出)的雷达可以提供从车辆110到车辆110前方的下一车辆的距离,或者设置在车辆110中的全球定位***(GPS)传感器可以提供车辆110的地理坐标。由雷达和/或其他传感器116提供的距离和/或由GPS传感器提供的地理坐标可以由计算装置115用来例如自主地或半自主地操作车辆110。
车辆110一般是能够进行自主和/或半自主操作并具有三个或更多个车轮的陆基车辆110(例如,乘用车、轻型卡车等)。车辆110包括一个或多个传感器116、V对I接口111、计算装置115和一个或多个控制器112、113、114。传感器116可以收集与车辆110和车辆110的操作环境相关的数据。以举例的方式但非限制,传感器116可以包括例如测高仪、相机、激光雷达、雷达、超声传感器、红外传感器、压力传感器、加速度计、陀螺仪、温度传感器、压力传感器、霍尔传感器、光学传感器、电压传感器、电流传感器、机械传感器(诸如开关)等。传感器116可以用于感测车辆110的操作环境,例如,传感器116可以检测诸如天气状况(降水、外部环境温度等)的现象、道路坡度、道路位置(例如,使用道路边缘、车道标记等)或目标对象(诸如相邻车辆110)的位置。传感器116还可以用来收集数据,包括与车辆110的操作相关的动态车辆110数据,诸如速度、横摆率、转向角度、发动机转速、制动压力、油压、施加到车辆110中的控制器112、113、114的功率电平、在部件之间的连接性、以及车辆110的部件的准确且及时的性能。
图2是示例交通场景200的示例图。交通场景200包括具有车道标记204的道路202、交通栅栏206和车辆208。车辆110中的计算装置115可以使用车辆110中包括的传感器116来获取与车辆110周围的环境相对应的交通场景200的红色、绿色和蓝色(RGB)彩***图像。该计算装置还可以获取其他类型的视频图像,例如,包括灰度视频图像、近红外视频图像、远红外视频图像。视频图像可以由计算装置115处理,以使用深度神经网络(DNN)确定车辆周围环境中的对象的身份和位置。DNN是一种软件程序,其包括多个卷积层和多个全连接层,这些层处理输入图像数据以确定输入视频图像中的对象的身份和位置。DNN还可以确定关于视频图像中的对象的其他数据,诸如大小和取向。在交通场景200的视频图像中,可以训练DNN以识别和定位例如道路202、车道标记204、车道栅栏206和车辆208。
训练DNN以可靠地处理交通场景的视频图像可能需要大量(>1,000个)视频图像和对应的地面实况。获取大量的真实世界视频图像和地面实况可能既昂贵又耗时。例如,车辆或其他移动平台可以配备视频传感器和计算装置,以在真实世界道路上行驶以获取和记录视频图像。可以使用渲染过程更高效地获得视频图像和对应的地面实况,该渲染过程将场景描述和虚拟传感器数据作为输入,所述场景描述包括与描述场景中的对象和区域的位置和表面反射率的三维(3D)映射图相对应的数学数据,所述虚拟传感器数据包括对所述虚拟传感器的视野的数学描述。真实感渲染过程输入场景描述并输出真实感视频图像。本上下文中的真实感意指视频图像在观察者看来就像它是用观察真实世界场景的真实世界相机获取的一样,而不是根据场景描述和虚拟传感器数据进行渲染的。可以通过光线跟踪来执行真实感渲染,其中随着来自一个或多个虚拟照明源(灯、阳光等)的光线样本从3D映射图中的表面反射穿过虚拟镜头到达用于创建视频图像的虚拟相机的虚拟传感器平面上的位置,从光源开始跟踪所述光线样本。以这种方式对大量光线进行光线跟踪可以创建合成视频图像,该合成视频图像在观察者看来是用真实摄像机获取的真实场景的逼真照片。
真实感渲染过程的示例是虚幻引擎。虚幻引擎是输入场景描述并生成与用户指定的光源和虚拟摄像机相对应的真实感输出图像的真实感渲染过程。虚幻引擎包括可从EpicGames,Inc.(见www.unrealengine.com)购得的用于设计和构建游戏、模拟和可视化的一套集成开发工具。在此示例中,虚幻引擎输入场景描述并输出与交通场景200相对应的视频图像。诸如由虚幻引擎等提供的渲染过程可以产生与数百个不同交通场景200相对应的数百个视频图像,这远比为车辆配备视频传感器和计算装置有效得多。
图3是示例交通场景300的图。交通场景300包括具有车道标记304的道路302、交通栅栏306和车辆308。交通场景200、300包括与定义域的环境条件相对应的图像数据。域是由影响视频图像的整体外观的环境条件定义的。域数据被定义为视频图像中与环境条件相对应的像素值。环境条件包括大气效应(诸如天气)、照明条件(诸如当日时间)或背景效应(诸如积雪)。这些环境效应以一致的方式修改视频图像的像素值,并且也可以称为图像噪声数据。例如,交通场景200对应于晴朗的夏季白日域,而交通场景300包括由虚线所示的雨310,且因此对应于降雨域。除了晴天和雨天之外,示例域还可以包括雪天、雨夹雪天、冰雹天、雾天、白天、夜晚、冬天、春天、夏天、秋天等,所有这些都对应于所获取的视频图像的不同的整体外观。在操作中,可以预期车辆会遇到与各种域相对应的各种天气和照明条件。为了能够可靠地识别和定位从先前看不见的交通场景获取的视频图像中的对象,可以使用在多个不同域中获取的交通场景的视频图像来训练DNN。
真实感渲染程序(如虚幻引擎)可能难以准确地渲染某些域。真实感渲染程序可以接收用户输入,这些输入可以指定要在其中渲染场景描述以形成合成视频图像的域(雨天、雪天、雾天、夜晚等)。真实感渲染程序的一个问题是,图像域通常为每个图像域包括各种各样的不同外观,而真实感渲染程序所依赖的域数据示例则少得多。例如,包括雨的交通场景的真实世界视频图像的外观将取决于例如雨的各种各样的强度和方向而有很大变化。真实感渲染程序通常依赖的数学描述或雨的变化要少得多,这导致合成视频图像中的域的外观的变化要少得多。因此,基于以合成方式生成的雨下的合成图像而训练的DNN在识别对象方面将不如使用利用真实视频传感器从真实世界交通场景中获取的视频图像而训练的DNN成功。
本文中所描述的技术通过以下方式来改进与多个图像域相对应的合成视频图像的生成:通过利用经训练的变分自动编码器-生成式对抗网络(VAE-GAN)处理输入合成视频图像,将一个图像域(例如晴天)中渲染的输入合成视频图像修改为另一个图像域(例如雨天)。VAE-GAN是一种神经网络,其被配置为输入在第一图像域中渲染的合成视频图像并输出被修改以显现为在第二域中渲染的准确的真实感视频图像的视频图像,其中准确的真实感视频图像被定义为包括对第二域数据的准确且逼真的渲染的合成图像,所述合成图像在观察者看来好像是使用真实世界视频传感器获取的一样。包括第二域数据的准确的真实感视频图像可用于训练DNN以识别真实世界视频图像中的对象。
图4是被配置用于进行训练的示例VAE-GAN 400神经网络的图。在训练时,VAE-GAN400输入与第一域和第二域两者相对应的交通场景的真实世界视频图像402。例如,训练数据集可以包括与白天域和夜晚域相对应的真实世界视频图像。真实世界视频图像402可以是不成对的,例如,白天域视频图像和夜晚域视频图像可以对应于不同的交通场景。这种类型的培训称为无监督学习。VAE-GAN 400的变分自动编码器部分包括编码器404(ENC)和生成器408(GEN)。变分自动编码器是一种神经网络,其可以通过约束编码器404以生成与期望的输出域一致的隐变量406(也称为“潜在空间”)来进行训练以生成与单个域相对应的图像。编码器404包括多个卷积层,所述卷积层将输入视频图像402编码为被假设为具有高斯分布的隐变量406。然后可以使用应用于高斯分布的均值和标准偏差的贝叶斯推理来处理隐变量406,以确定编码器404和生成器408的权重和偏差,其基于来自第一域的输入视频图像402生成与第二域相对应的输出视频图像。隐变量406被输入到使用多个卷积层的生成器408,所述卷积层被编程为将隐变量406变换为与输入视频图像402相对应的被变换到用户选定域的输出视频图像410。例如,可以训练VAE-GAN 400神经网络,以基于与晴天域相对应的输入真实感合成视频图像而输出与雨天域相对应的真实感合成视频图像。
VAE-GAN 400的生成器408和鉴别器412(DIS)部分对应于生成式对抗网络。生成式对抗网络是一种神经网络,其生成输出并测试输出以使用损失函数确定输出是否对应于真实数据。损失函数414是依据输出视频图像410与从真实世界图像数据得出的概率分布的比较而得出,以确定输出视频图像410是否类似于真实世界图像数据(尽管没有精确对应于输出视频图像410的真实世界图像)。如果观察者无法区分修改后的合成图像和真实图像,则合成图像类似于真实图像。通过在修改后的合成图像与从真实图像得出的概率分布之间计算出的损失函数来测量相似度。可以用概率分布pφ(x|z)来描述输出视频图像410,其中φ是编码器404和生成器408中包括的权重和偏差,x是输出视频图像410,并且z是隐变量406。与编码器404/生成器408功能相对应的信息丢失可以使用对数似然函数log pφ(x|z)来确定,以确定在给定隐变量406表示的情况下生成器如何有效地学习以重建输入视频图像402。基于损失函数在所有输入视频图像402的集合上的概率分布将对数似然函数与损失函数的期望值进行比较可以确定单个输入视频图像402的损失函数414。该损失函数414在训练时可以反向传播到VAE-GAN 400的编码器404/生成器408部分以训练VAE-GAN 400以输出与输入视频图像402相匹配的属于一个选定域的视频图像410。例如,以这种方式,尽管输入视频图像402对应于另一域(夏天、晴天、白天等),但VAE-GAN 400可以被训练为输出与一个选定域(冬天、雨天、夜晚等)相对应的视频图像410。
图5是经训练的VAE-GAN 500在操作中的图,其中已如上面关于图4所述对VAE-GAN500进行了训练,以输出与选定第二域相对应的合成视频图像510,尽管输入的是与第一域相对应的合成视频图像502。在神经网络的其他示例中,可以训练包括条件生成式对抗网络(GAN)、只包括GAN而不具有VAE部分或只包括VAE而不具有GAN的神经网络,以产生与一个或多个域相对应的真实感视频图像410,如本文所述。如上所述,编码器504(ENC)产生在训练时过滤的隐变量406,以输出到生成器508(GEN),以产生所有输入合成视频图像502的与第二输出域相对应的输出合成视频图像510。例如,VAE-GAN 500可以经训练以输入与晴朗的夏日域相对应的合成视频图像502并输出与冬天的夜晚域相对应的合成视频图像510。以这种方式,多个VAE-GAN 500可以经训练以使用来自单个输入域的输入来输出对应于多个输出域的合成视频图像510,从而产生对应于各种图像域的数百个视频图像以训练DNN来识别真实世界视频图像中的对象,诸如车辆和行人。
图6是关于图1-图5所描述的用于生成训练DNN的图像数据集以操作车辆的过程600的流程图的图。过程600可以由计算装置的处理器实施,例如,将来自传感器的信息作为输入,以及执行命令,以及输出对象信息。过程600包括可以以所示顺序执行的多个框。过程600可以可选地或另外地包括更少的框,或者可以包括以不同顺序执行的框。
过程600开始于框602,其中过程600基于场景描述来生成合成视频图像,所述场景描述包括如以上关于图2所讨论的对包括车辆和行人在内的对象的数学描述。过程600可以生成大量合成图像,例如大于数百个,所述合成图像包括与单个域(例如晴朗的夏日)相对应的大气条件。
在框604处,过程600使用如上文关于图4和图5所讨论的经训练的VAE-GAN 500将来自框602的合成图像数据从第一域变换为第二域,同时保持多样性和真实感。例如,合成图像数据可以从晴朗的夏日域变换为冬天的夜晚域。可以针对每个域对变换(即晴天到雨天、白天到夜晚、夏天到冬天等等)而训练VAE-GAN 500。
在框606处,可以使用未变换和已变换的合成视频图像来训练DNN以识别和定位真实世界视频图像中的对象。通过输入已变换或未变换的合成图像数据并基于生成合成图像的场景描述将输出结果与地面实况进行比较来训练DNN,因为场景描述包括合成图像中的对象的身份和位置。通过用包括与各种域相对应的大量合成视频图像的数据集训练DNN,将提高DNN正确识别和定位从先前看不见的交通场景获取的视频图像中的对象的概率。
在框608处,过程600通过利用在框606处训练的DNN处理所获取的真实世界视频图像来确定对象身份和位置。例如,DNN可以在相对于输入视频图像帧的坐标中输出对象位置。车辆110中的计算装置115可以基于关于获取视频图像的视频传感器的位置和视野的数据将图像坐标变换为全局坐标。全局坐标是例如相对于纬度、经度和海拔测得的对象的位置。以这种方式训练的DNN可用于与车辆操作相关的依赖于识别与车辆周围环境相对应的视频图像中的对象和位置的各种任务。例如,可以由以这种方式训练的DNN执行车道保持(其中计算装置确定在道路上的行车道)、避开对象(其中计算装置确定对象的位置)或定位(其中计算装置确定相对于地图数据的位置)。
在框610处,计算装置115可基于以上在框608处确定的对象身份和位置来操作车辆110。计算装置可以通过以下方式来操作车辆110:确定要在其上操作的车辆路径,然后通过经由控制器112、113、114控制车辆动力装置、转向和制动器以使车辆110沿着所述车辆路径移动来操作车辆110。可以确定车辆路径以避开所识别和定位的对象,其中对象可以包括车辆和行人。在框610之后,过程600结束。
诸如本文讨论的那些计算装置的计算装置一般各自包括命令,所述命令可由诸如上文所识别的那些计算装置的一个或多个计算装置执行并用于执行上文所述的过程的框或步骤。例如,上文所讨论的过程框可以体现为计算机可执行命令。
计算机可执行命令可以由使用各种编程语言和/或技术创建的计算机程序来编译或解译,所述编程语言和/或技术单独地或组合地包括但不限于:JavaTM、C、C++、Python、Julia、SCALA、Visual Basic、Java Script、Perl、HTML等。一般,处理器(例如,微处理器)接收例如来自存储器、计算机可读介质等的命令,并且执行这些命令,从而执行一个或多个过程,包括本文所描述的过程中的一者或多者。此类命令和其他数据可以存储在文件中并使用各种计算机可读介质来传输。计算装置中的文件一般是存储在诸如存储介质、随机存取存储器等计算机可读介质上的数据的集合。
计算机可读介质包括参与提供可由计算机读取的数据(例如,命令)的任何介质。这种介质可采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘和其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(DRAM)。常见形式的计算机可读介质包括(例如)软磁盘、软盘、硬盘、磁带、任何其他磁性介质、CD-ROM、DVD、任何其他光学介质、穿孔卡、纸带、带有孔图案的任何其他物理介质、RAM、PROM、EPROM、FLASH-EEPROM、任何其他存储器芯片或盒式磁带、或计算机可从其中读取的任何其他介质。
除非本文作出相反的明确指示,否则权利要求中使用的所有术语旨在给出如本领域技术人员所理解的普通和通常的含义。具体地,除非权利要求叙述相反的明确限制,否则使用诸如“一个”、“该”、“所述”等单数冠词应被解读为叙述所指示的要素中的一者或多者。
术语“示例性”在本文中以表示示例的意义使用,例如,对“示例性小部件”的引用应被解读为仅指代小部件的示例。
修饰值或结果的副词“约”是指形状、结构、测量、值、确定、计算等可能因材料、加工、制造、传感器测量、计算、处理时间、通信时间等的缺陷而与确切描述的几何结构、距离、测量、值、确定、计算等有偏差。
在附图中,相同的附图标记指示相同的要素。此外,可改变这些要素中的一些或全部。有关本文所描述的介质、过程、***、方法等,应理解,虽然此类过程等的步骤或框已被描述为按照特定顺序的序列发生,但是此类过程可通过以本文所描述的顺序以外的顺序执行的所描述步骤来实践。还应理解,可以同时执行某些步骤、可以添加其他步骤,或者可以省略本文所描述的某些步骤。换句话说,本文对过程的描述是出于说明某些实施例目的提供的,并且决不应解释为限制所要求保护的发明。
根据本发明,提供一种计算机,所述计算机具有处理器和存储器,所述存储器包括指令,所述指令将由所述处理器执行以:生成合成图像和对应的地面实况;通过利用变分自动编码器-生成式对抗网络(VAE-GAN)处理所述合成图像来生成多个域适应合成图像,其中训练所述VAE-GAN以使所述合成图像从第一域适应到第二域;基于所述域适应合成图像和所述对应的地面实况训练深度神经网络(DNN);以及利用经训练的深度神经网络处理图像以确定对象。
根据实施例,本发明的特征还在于用于通过修改所述合成图像以改变所述合成图像中的天气和照明条件而使所述合成图像从第一域适应到第二域的指令。
根据实施例,本发明的特征还在于用于基于无监督学习来训练所述VAE-GAN的指令。
根据实施例,所述VAE-GAN包括编码器神经网络、生成器神经网络和鉴别器神经网络,其中所述编码器神经网络生成隐变量,所述生成器神经网络基于隐变量生成修改后的合成图像,并且所述鉴别器确定所述修改后的合成图像是否类似于真实图像。
根据实施例,本发明的特征还在于用于通过基于真实图像确定损失函数来确定所述修改后的合成图像是否类似于真实图像的指令。
根据实施例,本发明的特征还在于用于利用真实感渲染过程生成所述合成图像和对应的地面实况的指令。
根据实施例,所述真实感渲染过程基于对场景描述进行光线跟踪而生成所述合成图像和对应的地面实况。
根据实施例,光线跟踪包括随着来自虚拟照明源的光线从场景描述中所包括的表面反射到虚拟相机的镜头中而跟踪所述光线。
根据实施例,本发明的特征还在于用于将在交通场景中确定的对象和位置传达给车辆的指令。
根据实施例,本发明的特征还在于用于基于根据所述对象和位置确定车辆路径来操作所述车辆的指令。
根据本发明,一种方法包括:生成合成图像和对应的地面实况;通过利用变分自动编码器-生成式对抗网络(VAE-GAN)处理所述合成图像来生成多个域适应合成图像,其中训练所述VAE-GAN以使所述合成图像从第一域适应到第二域;基于所述域适应合成图像和所述对应的地面实况训练深度神经网络(DNN);以及利用经训练的深度神经网络处理图像以确定对象。
根据实施例,本发明的特征还在于通过修改所述合成图像以改变所述合成图像中的天气和照明条件而使所述合成图像从第一域适应到第二域。
根据实施例,本发明的特征还在于基于无监督学习来训练所述VAE-GAN。
根据实施例,所述VAE-GAN包括编码器神经网络、生成器神经网络和鉴别器神经网络,其中所述编码器神经网络生成隐变量,所述生成器神经网络基于隐变量生成修改后的合成图像,并且所述鉴别器确定所述修改后的合成图像是否类似于真实图像。
根据实施例,本发明的特征还在于通过基于真实图像确定损失函数来确定所述修改后的合成图像是否类似于真实图像。
根据实施例,本发明的特征还在于利用真实感渲染过程生成所述合成图像和对应的地面实况。
根据实施例,所述真实感渲染过程基于对场景描述进行光线跟踪而生成所述合成图像和对应的地面实况。
根据实施例,光线跟踪包括随着来自虚拟照明源的光线从场景描述中所包括的表面反射到虚拟相机的镜头中而跟踪所述光线。
根据实施例,本发明的特征还在于将在交通场景中确定的对象和位置传达给车辆。
根据实施例,本发明的特征还在于基于根据所述对象和位置确定车辆路径来操作所述车辆。

Claims (15)

1.一种方法,其包括:
生成合成图像和对应的地面实况;
通过利用变分自动编码器-生成式对抗网络(VAE-GAN)处理所述合成图像来生成多个域适应合成图像,其中训练所述VAE-GAN以使所述合成图像从第一域适应到第二域;
基于所述域适应合成图像和所述对应的地面实况训练深度神经网络(DNN);以及
利用经训练的深度神经网络处理图像以确定对象。
2.如权利要求1所述的方法,其还包括通过修改所述合成图像以改变所述合成图像中的天气和照明条件而使所述合成图像从第一域适应到第二域。
3.如权利要求1所述的方法,其还包括基于无监督学习来训练所述VAE-GAN。
4.如权利要求1所述的方法,其中所述VAE-GAN包括编码器神经网络、生成器神经网络和鉴别器神经网络,其中所述编码器神经网络生成隐变量,所述生成器神经网络基于隐变量生成修改后的合成图像,并且所述鉴别器确定所述修改后的合成图像是否类似于真实图像。
5.如权利要求4所述的方法,其还包括通过基于真实图像确定损失函数来确定所述修改后的合成图像是否类似于真实图像。
6.如权利要求1所述的方法,其还包括利用真实感渲染过程生成所述合成图像和对应的地面实况。
7.如权利要求6所述的方法,其中所述真实感渲染过程基于对场景描述进行光线跟踪而生成所述合成图像和对应的地面实况。
8.如权利要求1所述的方法,其中光线跟踪包括随着来自虚拟照明源的光线从场景描述中所包括的表面反射到虚拟相机的镜头中而跟踪所述光线。
9.如权利要求1所述的方法,其还包括将在交通场景中确定的对象和位置传达给车辆。
10.如权利要求9所述的方法,其还包括基于根据所述对象和位置确定车辆路径来操作所述车辆。
11.如权利要求10所述的方法,其中移动对象包括行人和车辆中的一者或多者。
12.如权利要求1所述的方法,其还包括通过将隐变量约束为与期望的输出域一致来训练所述VAE-GAN。
13.如权利要求12所述的方法,其中假设所述隐变量具有高斯分布。
14.如权利要求13所述的方法,其中使用应用于所述高斯分布的均值和标准偏差的贝叶斯推理来处理所述隐变量。
15.一种***,其包括被编程为执行权利要求1-14中任一项所述的方法的计算机。
CN202010621324.2A 2019-07-02 2020-07-01 车辆图像生成 Pending CN112184844A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/460,066 2019-07-02
US16/460,066 US11042758B2 (en) 2019-07-02 2019-07-02 Vehicle image generation

Publications (1)

Publication Number Publication Date
CN112184844A true CN112184844A (zh) 2021-01-05

Family

ID=73918907

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010621324.2A Pending CN112184844A (zh) 2019-07-02 2020-07-01 车辆图像生成

Country Status (3)

Country Link
US (1) US11042758B2 (zh)
CN (1) CN112184844A (zh)
DE (1) DE102020117376A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11657255B2 (en) * 2020-02-21 2023-05-23 Adobe Inc. Controlling a neural network through intermediate latent spaces
CN111982137B (zh) * 2020-06-30 2022-08-12 阿波罗智能技术(北京)有限公司 生成路线规划模型的方法、装置、设备和存储介质
DE102021108934A1 (de) 2021-04-09 2022-10-13 Bayerische Motoren Werke Aktiengesellschaft Verfahren und System zur Bereitstellung einer Funktion anhand einer Maschinen-erlernten Verarbeitungseinheit
JPWO2022244800A1 (zh) * 2021-05-18 2022-11-24
DE102021126965A1 (de) 2021-10-18 2023-05-04 Mira Vision Holding Gmbh Computer-implementiertes Verfahren zur Erzeugung synthetischer Bilder zum Trainieren künstlicher Intelligenz (AI)
EP4224408A1 (en) 2022-02-07 2023-08-09 Ford Global Technologies, LLC Method for a driver assistant image personalization of vehicle-related images, data processing circuit, computer program, computer-readable medium, and a vehicle
JP2024011401A (ja) * 2022-07-14 2024-01-25 三菱重工機械システム株式会社 データ処理アルゴリズム評価装置
WO2024054576A1 (en) 2022-09-08 2024-03-14 Booz Allen Hamilton Inc. System and method synthetic data generation
DE102022213904A1 (de) 2022-12-19 2024-06-20 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Bereitstellen von Trainingsdaten für ein Training eines Maschinenlern-Modells

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8259106B2 (en) * 2002-05-15 2012-09-04 Mental Images Gmbh Low-dimensional rank-1 lattices in computer image synthesis
US8403757B2 (en) * 2006-04-13 2013-03-26 Yosef Mizrachi Method and apparatus for providing gaming services and for handling video content
US9514354B2 (en) * 2013-12-18 2016-12-06 International Business Machines Corporation Facial analysis by synthesis and biometric matching
KR101714273B1 (ko) * 2015-12-11 2017-03-08 현대자동차주식회사 자율 주행 시스템의 경로 제어 방법 및 그 장치
US9996771B2 (en) 2016-02-15 2018-06-12 Nvidia Corporation System and method for procedurally synthesizing datasets of objects of interest for training machine-learning models
US10109100B2 (en) * 2016-03-25 2018-10-23 Outward, Inc. Adaptive sampling of pixels
EP3343432B1 (en) 2016-12-29 2024-03-20 Elektrobit Automotive GmbH Generating training images for machine learning-based object recognition systems
US20180247201A1 (en) 2017-02-28 2018-08-30 Nvidia Corporation Systems and methods for image-to-image translation using variational autoencoders
US10474929B2 (en) 2017-04-25 2019-11-12 Nec Corporation Cyclic generative adversarial network for unsupervised cross-domain image generation
US10839291B2 (en) 2017-07-01 2020-11-17 Intel Corporation Hardened deep neural networks through training from adversarial misclassified data
US10984286B2 (en) * 2018-02-02 2021-04-20 Nvidia Corporation Domain stylization using a neural network model
US20190287217A1 (en) * 2018-03-13 2019-09-19 Microsoft Technology Licensing, Llc Machine learning system for reduced network bandwidth transmission of content

Also Published As

Publication number Publication date
US11042758B2 (en) 2021-06-22
US20210004608A1 (en) 2021-01-07
DE102020117376A1 (de) 2021-01-07

Similar Documents

Publication Publication Date Title
US11042758B2 (en) Vehicle image generation
US10949684B2 (en) Vehicle image verification
US11312372B2 (en) Vehicle path prediction
CN112912920B (zh) 用于2d卷积神经网络的点云数据转换方法和***
CN108073170B (zh) 用于自主车辆的自动化协同驾驶控制
US10733510B2 (en) Vehicle adaptive learning
US20190235521A1 (en) System and method for end-to-end autonomous vehicle validation
CN110857085A (zh) 车辆路径规划
CN112214027A (zh) 自主导航的导航信息的融合构架和分批对齐
CN111986128A (zh) 偏心图像融合
CN110726399A (zh) 姿态估计
US20210323555A1 (en) Vehicle data augmentation
US11645360B2 (en) Neural network image processing
US11138452B2 (en) Vehicle neural network training
CN116348739B (zh) 基于光线投射和语义类图像的地图生成***和方法
US11562571B2 (en) Vehicle neural network
CN113496510A (zh) 使用神经网络进行逼真的图像透视变换
US11270164B1 (en) Vehicle neural network
CN113177429A (zh) 车辆神经网络训练
CN114511059A (zh) 车辆神经网络增强
CN116703966A (zh) 多对象跟踪
CN115457074A (zh) 用于对象检测和跟踪的神经网络
CN116070341A (zh) 传感器优化
CN112440970A (zh) 车辆神经网络
US11610412B2 (en) Vehicle neural network training

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