CN111918053A - 车辆图像验证 - Google Patents
车辆图像验证 Download PDFInfo
- Publication number
- CN111918053A CN111918053A CN202010377950.1A CN202010377950A CN111918053A CN 111918053 A CN111918053 A CN 111918053A CN 202010377950 A CN202010377950 A CN 202010377950A CN 111918053 A CN111918053 A CN 111918053A
- Authority
- CN
- China
- Prior art keywords
- pseudo
- image
- vehicle
- images
- depth map
- 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
Links
- 238000012795 verification Methods 0.000 title abstract description 3
- 239000002131 composite material Substances 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 17
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 10
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 51
- 238000013528 artificial neural network Methods 0.000 claims description 41
- 238000012549 training Methods 0.000 claims description 39
- 230000000694 effects Effects 0.000 claims description 30
- 238000012360 testing method Methods 0.000 claims description 12
- 230000006978 adaptation Effects 0.000 claims description 7
- 239000000203 mixture Substances 0.000 claims 1
- 230000015654 memory Effects 0.000 abstract description 14
- 230000008569 process Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 14
- 238000009877 rendering Methods 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 9
- 238000003384 imaging method Methods 0.000 description 7
- 230000004888 barrier function Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 239000000428 dust Substances 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000003278 mimic effect Effects 0.000 description 2
- 238000001556 precipitation Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000012368 scale-down model Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/271—Image signal generators wherein the generated image signals comprise depth maps or disparity maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/10—Path keeping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
- B60W40/04—Traffic conditions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0251—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/21—Indexing scheme for image data processing or generation, in general involving computational photography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
- G06T2207/30261—Obstacle
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mechanical Engineering (AREA)
- Mathematical Physics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Transportation (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Electromagnetism (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了“车辆图像验证”。一种计算机包括处理器和存储器,所述存储器包括将由所述处理器执行以执行以下操作的指令:利用图像合成引擎生成一对合成立体图像和相应的合成深度图,其中所述合成立体图像对应于由立体相机获取的真实立体图像,并且所述合成深度图是对应于由所述立体相机查看到的3D场景的三维(3D)映射图;以及使用生成对抗网络(GAN)独立地处理所述一对合成立体图像中的每个图像以生成伪图像,其中所述伪图像对应于所述合成立体图像中的一者。
Description
技术领域
本公开总体上涉及车辆计算机和传感器。
背景技术
车辆可以被配备为以自主模式和乘员驾驶模式两者进行操作。车辆可以配备有计算装置、网络、传感器和控制器以获取关于车辆环境的信息并且基于所述信息来操作车辆。车辆的安全且舒适的操作可以取决于获取关于车辆环境的准确且及时的信息。车辆传感器可以提供关于在车辆环境中要行驶的路线和要避开的对象的数据。车辆的安全且有效的操作可以取决于当车辆在道路上操作时获取关于在车辆环境中的路线和对象的准确且及时的信息。
发明内容
车辆可以被配备为以自主模式和乘员驾驶模式两者进行操作。就半自主或完全自主模式而言,意指其中车辆可以由计算装置部分或完全进行驾驶的操作模式,所述计算装置作为具有传感器和控制器的信息系统的一部分。车辆可以被乘坐或者未被乘坐,但在任一情况下,可以在没有乘员辅助的情况下部分或完全地驾驶车辆。出于本公开的目的,自主模式被定义为其中车辆推进(例如,经由包括内燃发动机和/或电动马达的动力传动系统)、制动和转向中的每一者由一个或多个车辆计算机控制的模式;在半自主模式中,一个或多个车辆计算机控制车辆推进、制动和转向中的一者或两者。在非自主车辆中,这些都不由计算机控制。
车辆中的计算装置可以被编程为获取关于车辆外部环境的数据并使用所述数据来确定车辆路径以在所述车辆路径上以自主或半自主模式操作车辆。基于车辆路径通过确定命令以引导车辆的动力传动系统、制动和转向部件操作车辆以沿着所述路径行驶,车辆可以在道路上操作。关于外部环境的数据可以包括车辆周围环境中的一个或多个移动对象(例如,车辆和行人等)的位置,并且可以由车辆中的计算装置用来操作车辆。
基于移动对象数据来操作车辆可以包括确定避开移动对象的车辆路径。预测包括移动对象的未来位置的移动对象的路径可以允许计算装置确定避开移动对象的车辆路径。计算装置可以通过训练车辆中包括的深度神经网络(DNN)来预测移动对象的未来位置,从而操作车辆。计算装置可以基于所预测的未来位置来确定避开移动对象的车辆路径以在所述车辆路径上操作车辆。本文讨论的技术可以通过创建较大数量(>1000)的通过将大气效果添加到合成图像而生成的训练图像来改进训练DNN。使用包括每种类型的移动对象的许多不同示例和大气效果的许多不同示例的较大的训练图像数据集可以使DNN更稳健,其中稳健意指DNN可能够正确识别并定位先前在真实世界输入图像中看不见的移动对象实例。
一种方法,包括:利用图像合成引擎生成一对合成立体图像和相应的合成深度图,其中合成立体图像对应于由立体相机获取的真实立体图像,并且合成深度图是对应于由立体相机查看到的三维(3D)场景的3D映射图;以及使用生成对抗网络(GAN)处理一对合成立体图像中的每个图像以生成伪图像,其中伪图像对应于合成立体图像中的一者的逼真估计。立体的伪图像对可以被处理以形成伪深度图,并且伪深度图可以被使用孪生单样本神经网络与合成深度图进行比较。深度神经网络可以被训练以使用由GAN生成的伪图像中的一者或多者来确定对象,并且车辆可以基于所述对象被操作。图像合成引擎可以基于三维场景的数学描述来生成逼真的合成立体图像对和相应的合成深度图。逼真的合成立体图像对中的逼真图像中的每一者均保留深度和3D形状约束。伪深度图可以通过计算伪立体图像对的相应特征之间的立体视差来形成。
合成立体图像对的相应特征可以通过确定边缘和纹理来确定。合成立体图像对中的每个图像可以被使用GAN进行处理以生成伪立体图像对,从而通过修改伪立体图像中的数据以通过对包括阴天和黑暗的环境照明及包括雨、雪和雾的天气条件的效果进行仿真来实现域自适应。通过使用由立体相机获取的真实立体图像来训练GAN,GAN可以被训练以在由GAN生成的伪立体图像和真实立体图像之间进行区分。通过使用合成深度图来训练孪生单样本神经网络,孪生单样本神经网络可以被训练以测试伪深度图。伪深度图测试可以包括确定伪深度图和合成深度图之间的差异。伪深度图和合成深度图之间的差异可以在训练期间输入到GAN。可以基于确定对象相对于车辆的位置来操作车辆,其中所述对象可以包括车辆和行人中的一者或多者。可以确定对象的方向和速度。可以基于根据对象的位置确定车辆路径来操作车辆。可以基于获取视频图像并输入到深度神经网络来确定对象。
还公开了计算机可读介质,其存储用于执行上述方法步骤中的一些或全部的程序指令。还公开了一种计算机,其被编程为执行上述方法步骤中的一些或全部并且包括计算机设备,所述计算机设备被编程为:利用图像合成引擎生成一对合成立体图像和相应的合成深度图,其中合成立体图像对应于由立体相机获取的真实立体图像,并且合成深度图是对应于由立体相机查看到的三维(3D)场景的3D映射图;以及使用生成对抗网络(GAN)处理一对合成立体图像中的每个图像以生成伪图像,其中伪图像对应于合成立体图像中的一者的逼真估计。立体的伪图像对可以被处理以形成伪深度图,并且伪深度图可以被使用孪生单样本神经网络与合成深度图进行比较。深度神经网络可以被训练以使用由GAN生成的伪图像中的一者或多者来确定对象,并且车辆可以基于所述对象被操作。图像合成引擎可以基于三维场景的数学描述来生成逼真的合成立体图像对和相应的合成深度图。逼真的合成立体图像对中的逼真图像中的每一者均保留深度和3D形状约束。伪深度图可以通过计算伪立体图像对的相应特征之间的立体视差来形成。
计算机还可以被编程为通过确定边缘和纹理来确定合成立体图像对的相应特征。合成立体图像对中的每个图像可以被使用GAN进行处理以生成伪立体图像对,从而通过修改伪立体图像中的数据以通过对包括阴天和黑暗的环境照明及包括雨、雪和雾的天气条件的效果进行仿真来实现域自适应。通过使用由立体相机获取的真实立体图像来训练GAN,GAN可以被训练以在由GAN生成的伪立体图像和真实立体图像之间进行区分。通过使用合成深度图来训练孪生单样本神经网络,孪生单样本神经网络可以被训练以测试伪深度图。伪深度图测试可以包括确定伪深度图和合成深度图之间的差异。伪深度图和合成深度图之间的差异可以在训练期间输入到GAN。可以基于确定对象相对于车辆的位置来操作车辆,其中所述对象可以包括车辆和行人中的一者或多者。可以确定对象的方向和速度。可以基于根据对象的位置确定车辆路径来操作车辆。可以基于获取视频图像并输入到深度神经网络来确定对象。
附图说明
图1是示例性交通基础设施系统的框图。
图2是交通场景的示例性图像的图示。
图3是交通场景的示例性图像的图示。
图4是示例性立体视差计算的图示。
图5是示例性生成对抗网络系统的图示。
图6是生成用于训练深度神经网络以操作车辆的图像的过程的流程图。
具体实施方式
图1是交通基础设施系统100的图示,所述交通基础设施系统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通过车辆对基础设施(V2I)接口111与远程服务器计算机120(例如,云服务器)进行通信,如下所述,该接口包括允许计算装置115经由诸如无线互联网(Wi-Fi)或蜂窝网络的网络130与远程服务器计算机120通信的硬件、固件和软件。因此,V2I接口111可以包括被配置为利用各种有线和/或无线联网技术(例如,蜂窝网络、和有线和/或无线分组网络)的处理器、存储器、收发器等。计算装置115可以被配置为用于使用在附近车辆110间在自组网的基础上形成或通过基于基础设施的网络形成的车辆对车辆(V2V)网络(例如,根据专用短程通信(DSRC)和/或类似的通信)通过V2I接口111与其他车辆110进行通信。计算装置115还包括诸如已知的非易失性存储器。计算装置115可以通过将信息存储在非易失性存储器中来记录信息,以用于稍后经由车辆通信网络和通向服务器计算机120或用户移动装置160的车辆对基础设施(V2I)接口111来进行检索和传输。
如已经提及的,用于在没有人类操作员干预的情况下操作一个或多个车辆110部件(例如,制动、转向、推进等)的编程通常包括在存储器中所存储的并可由计算装置115的处理器执行的指令中。使用在计算装置115中接收的数据(例如,来自传感器116、服务器计算机120等的传感器数据),计算装置115可以在没有驾驶员的情况下作出各种确定和/或控制各种车辆110部件和/或操作以操作车辆110。例如,计算装置115可以包括编程以调节车辆110操作行为(即,车辆110操作的物理表现),诸如速度、加速度、减速度、转向等,以及策略性行为(即,典型地以预期实现路线的安全且有效的行驶的方式进行的操作行为控制),诸如车辆之间的距离和/或车辆之间的时间量、车道改变、车辆之间的最小间隙、左转跨过路径最小值、在特定位置处的到达时间和为了通过十字路口的十字路口(无信号灯)最小到达时间。
控制器(如该术语在本文中所使用的)包括典型地被编程为控制特定车辆子系统的计算装置。示例包括动力传动系统控制器112、制动控制器113和转向控制器114。控制器可以是诸如已知的电子控制单元(ECU),可能包括如本文所描述的另外的编程。控制器可以通信地连接到计算装置115并从所述计算装置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、V2I接口111、计算装置115和一个或多个控制器112、113、114。传感器116可以收集与车辆110和车辆110的操作环境相关的数据。以举例的方式但非限制,传感器116可以包括例如测高仪、相机、激光雷达、雷达、超声传感器、红外传感器、压力传感器、加速度计、陀螺仪、温度传感器、压力传感器、霍尔传感器、光学传感器、电压传感器、电流传感器、机械传感器(诸如开关)等。传感器116可用于感测车辆110的操作环境,例如,传感器116可以检测诸如天气条件(降水、外部环境温度等)的现象、道路坡度、道路位置(例如,使用道路边缘、车道标记等)或目标对象(诸如相邻车辆110)的位置。传感器116还可以用于收集数据,包括与车辆110的操作相关的动态车辆110数据(诸如速度、横摆率、转向角度、发动机转速、制动压力、油压力、施加到车辆110中的控制器112、113、114的功率水平、部件之间的连接性以及车辆110的部件的准确且及时的性能)。
图2是以黑白色呈现(以符合专利局规定)的红-绿-蓝(RGB)图像200的示例性图示。RGB图像200包括道路202、车道标记204、车道屏障206和车辆208。RGB图像200可以从车辆110中所包括的视频传感器来获取,并传送到计算装置115。计算装置115可以包括深度神经网络(DNN),其输入RGB图像200并且输出关于在视频传感器的视野内的道路202、车道标记204、车道屏障206和车辆208的标识和位置的数据。DNN是计算机软件程序,其使用计算单元的可编程层来检测输入数据中的模式。通过使用多个RGB图像200和相应的地面实况数据来训练DNN,DNN可以被训练为识别并定位图像数据中的对象和区域。地面实况数据是描述从独立于正被训练的DNN的源获得的RGB图像200中的对象和区域的标识和位置的数据。例如,可以通过用户输入来确定RGB图像200中的对象和区域的标识和位置,其中用户可以识别并测量RGB图像200中的对象和区域的位置,并将该数据记录为与RGB图像200相对应的地面实况。
使用车辆110的视频传感器获取大量RGB图像200并通过用户输入确定与每个RGB图像200中的对象和区域相对应的地面实况可能是耗时且困难的任务。可以使用渲染过程更高效地获得RGB图像200和相应的地面实况,该渲染过程将场景描述作为输入,所述场景描述包括对应于描述场景和虚拟传感器中对象和区域的位置和表面反射率的三维(3D)映射图的数学数据,所述虚拟传感器包括对所述虚拟传感器视野的数学描述。渲染过程输入场景描述并输出逼真的RGB图像。“逼真的”是指RGB图像200在观察者看来就像它是用查看真实场景的真实世界相机获取的一样,而不是根据场景描述和虚拟传感器数据进行渲染的。可以通过将用物理相机获取的真实世界场景的照片与同一场景的合成渲染进行比较来量化逼真度。可以将与真实世界照片相对应的数字图像和合成渲染逐像素相减,并且例如对差的平方求和以确定逼真度的总度量。当合成渲染和照片之间的差的平方的总和小于用户输入阈值时,可以将合成渲染确定为逼真。合成渲染和相应照片之间的差的平方的总和较小与典型的观察者认为合成渲染看起来真实是高度相关的。可以通过光线跟踪来执行逼真的渲染,在光线跟踪中,随着来自一个或多个光源(灯、阳光等)的光线样本从3D映射图中的表面反射到虚拟相机的虚拟传感器平面上的位置以创建RGB图像,从所述光源开始跟踪所述光线样本。以这种方式跟踪大量光线可以创建合成的RGB图像200,该RGB图像200在观察者看来是真实场景的真实照片。
图3是包括道路302、车道标记304、车道屏障306和车辆308的交通场景的合成的RGB图像300。如上面关于图2所讨论的,合成的RGB图像300数据可以用于训练DNN以识别并定位图像数据中的对象和区域,以黑白色呈现以符合专利局的规定。使用合成的RGB图像300的优点包括生成与种类繁多的交通场景相对应的大量合成RGB图像300的能力。与种类繁多的交通场景相对应的大量合成RGB图像300对于训练DNN可能是有利的。在训练数据集中提供给DNN的每类区域和对象(例如,道路302和车辆308)的示例越多,DNN将越稳健。稳健的经训练的DNN可以由车辆110中的计算装置115用于基于预测已识别和定位的对象的未来位置来确定车辆110的车辆路径。例如,可以通过在一个或多个时间步长跟踪对象的位置并从而确定该对象的运动速度和方向,来确定已识别和定位的对象的未来位置。计算装置115可以基于对象的所确定的未来位置来确定车辆110要行进同时避开移动对象的车辆路径。
交通场景的特征可能导致在真实和合成RGB图像中的区域和对象的外观在大气效果310中有所不同。大气效果310可以包括降水(诸如雨、雪、雨夹雪、冰雹、雾)、灰尘、阴霾等。由于不同的大气效果310,不同RGB图像中的类似区域和对象可能会看起来不同,并且可能会阻止经训练的DNN例如正确识别和定位对象。合成的RGB图像300已通过添加与虚线所示的大气效果310(在此示例中为雨)相对应的像素数据进行了修改。将大气效果310添加到合成RGB图像300上可以使DNN受到训练,以正确识别和定位合成RGB图像300中的车道标记304、车道屏障306和车辆308,而不受由添加大气效果310引起的对象外观变化的影响。本文所述的技术通过以下方式改进了DNN的训练:提供用种类繁多的大气效果310修改以模仿在真实世界中操作车辆110时由车辆传感器获取的真实世界RGB图像的大量(例如,大于1000)的合成RGB图像300。
训练DNN以成功识别和定位RGB图像300中的区域和对象可以取决于RGB图像300中的区域和对象与确定用真实世界相机进行场景成像的真实世界几何结构和成像物理学一致。几何结构是指用于创建合成的立体RGB图像对的基础3D反射率图,并且成像物理学是指通过捕获入射照明中的光子在成像传感器上形成图像的过程。如果通过添加大气效果310修改RGB图像300使所得到的RGB图像300的真实世界几何结构和成像物理学失真,则经修改的RGB 300对于训练DNN没有益处,因为该训练不再是域自适应的。域自适应是指训练(调整)DNN以在预期的一组真实世界输入RGB图像300(域)上成功完成任务。本文所述的技术可以通过用所添加的大气效果310测试所输入的合成RGB图像300来避免域自适应的问题,这通过以下操作来实现:创建一对合成立体RGB图像和相应的合成深度图;用生成对抗网络(GAN)添加大气效果310;根据经处理的合成立体RGB图像创建第二深度图;并且将第二深度图与合成深度图进行比较,以确定经处理的合成立体RGB图像没有使合成立体RGB图像的几何结构和成像物理学失真。下面参考图6讨论被配置为处理和测试合成立体RGB图像对的GAN。
图4是示例性立体视差400的图示。立体视差描述了由第一相机(相机1)406和第二相机(相机2)408获取的两个立体图像之间的差异。例如,立体视差400确定对象(例如,点X414)在两个立体图像402、404上的投影点410、412之间的水平距离。图4包括由一对立体相机(第一相机406和第二相机408)成像的场景416中的点X 414。点X 414投影到第一相机406的图像检测器402上以形成左点410,并投影到第二相机408的图像检测器404上以形成右点412。第一相机406具有在距图像检测器402焦距f处的光学中心C 418,而第二相机408具有在距图像检测器404焦距f处的光学中心C'420。光学中心418、420形成基线B 422。光学中心418在图像检测器402上的投影形成左中心点424,并且光学中心420在图像检测器404上的投影形成右中心点426。距离u可以根据左点410从左中心点424的位移来确定,并且距离u'可以根据右点412从右中心点426的位移来确定。立体视差SD被定义为SD=u–u',可能与通过等式(1)给出的点X 414距光学中心418、420的距离Z有关:
可以通过检测和识别由第一相机406和第二相机408获取的立体图像中的特征来确定点X 414。例如,可以被匹配以计算立体视差并从而计算距离或深度的特征可以包括立体图像对中的可视边缘。可以使用包括边缘检测和模板匹配的图像处理技术来确定特征,其中可以将用户输入的形状与立体图像对中的像素值进行比较。可以检测多个特征,并为每个特征对计算立体视差并进行插值以确定深度。用于从立体图像估计深度的其他技术(例如,块匹配算法)包括将每个立体图像对划分成块或窗口对,并匹配每个窗口对以确定立体视差。立体视差可以用于确定由一对立体相机406、408查看的场景416的深度图。
图5是示例性GAN系统500,其被配置为输入场景描述502并输出合成图像518,该合成图像518可以用于训练DNN以识别和定位由车辆110中包括的传感器116获取的场景图像中的对象和区域。如上面关于图3所讨论的,场景描述502是计算机文件,其包括与场景中包括的区域和对象相对应的数学数据。例如,场景描述502可以包括描述道路302的位置和表面外观的元素,该元素包括车道标记304和车道屏障306的位置和外观。例如,场景描述中所包括的其他元素可以包括车辆308或其他对象诸如行人和骑自行车的人。场景描述502中所包括的元素包括允许诸如虚幻引擎504之类的渲染软件渲染该元素的数据。渲染是一种图形技术,其在来自用户输入照明源的光线被场景描述中的元素所确定的表面反射到创建与场景相对应的图像的虚拟相机的镜头中时跟踪所述光线。渲染可以创建由所确定的光源照亮的场景的逼真图像。例如,虚幻引擎504可以渲染在用户输入的当日时间在距相机的用户输入角度和距离处的被阳光照亮的车辆图像。
虚幻引擎504是输入数学数据并生成逼真输出图像的逼真渲染过程。虚幻引擎504包含在一套集成开发工具中,用于设计和构建游戏、模拟和可视化效果,可从Epic Games,Inc.(www.unrealengine.com,2019年4月30日)获得。在此示例中,虚幻引擎504输入场景描述502,并输出一对合成立体图像(SSP)506和相应的合成深度图(SDM)508。因为基于输入场景描述502确定合成深度图508,因此合成深度图508是与合成立体图像506相对应的地面实况,例如,可以将基于合成立体图像506中的立体视差的重构深度图与基于输入场景描述所确定的合成深度图508进行比较,以确定立体视差计算的精确度。
可以将合成立体图像对输入到GAN 510,以将大气效果添加到立体图像对506。GAN510是深度神经网络,其可以被训练以生成与来自由输入指定的数据分布的数据相对应的数据。在此示例中,GAN 510可以接收一对合成立体图像506作为输入,并输出一对伪立体图像512,所述伪立体图像512包括如上面关于图3所讨论的大气效果。GAN 510包括生成伪立体图像512的生成器神经网络和将伪立体图像512与真实立体图像520区分开的判别器神经网络。GAN 510的输出被标记为“伪”,这是因为训练GAN 510以确定输出结果的方式,即从图像传感器所捕获的物理世界中输出伪或合成数据,而不是“真实”数据。可以使用包括真实数据的地面实况来训练GAN 510,例如,使用真实世界的立体相机获取的例如真实立体图像520。GAN 510中所包括的判别器神经网络被训练以将真实立体图像520与不是真实立体图像520的所有其他图像(例如,“伪”立体图像512)区分开。在训练期间,GAN 510可以被训练以生成伪立体图像512,这些伪立体图像512足够接近地模仿真实立体图像520,以使判别器神经网络将伪立体图像512标记为真实立体图像520。以这种方式,GAN 510可以被训练以输出具有与真实立体图像520类似的像素数据并且因此具有类似外观的伪立体图像512。因此,在此示例中,伪立体图像512被定义为在外观上与真实立体图像520足够类似以被判别器神经网络确定为真实立体图像的立体图像。可以针对真实立体图像520测试判别器神经网络输出的结果,其结果是,由判别器神经网络确定为“真实”的伪立体图像512相对于真实立体图像520的差的平方的总和小于用户输入阈值(即,用户输入确定用户无法分辨真实图像与伪图像之间的差异的阈值),并且对于典型的观察者来说将看起来逼真,如上面关于图2所讨论的。真实立体图像520包括由真实世界的立体相机获取并与用于训练GAN 510的地面实况情况相对应的真实世界的大气效果。伪立体图像512被输出为逼真图像518,并且随后可以用于训练DNN以识别和定位包括大气效果的图像数据中的对象和区域。
伪立体图像512还被使用如上面关于图4所讨论的立体视差进行处理,以形成伪深度图514。孪生单样本神经网络(SOS)516将伪深度图514与合成深度图508进行比较。孪生单样本神经网络516测量通过添加大气效果而引入的引入到伪立体图像512中特征的几何关系中的失真。孪生单样本神经网络516的输出被输出到GAN 510,以便在训练时用于训练GAN510以添加大气效果,所述大气效果不会对伪立体图像512中特征的几何关系产生与输入的合成立体图像506相比的不利影响。以这种方式训练GAN 510可以提高GAN 510生成包括真实几何形状并对应于真实成像物理学的逼真输出图像的能力。孪生单样本神经网络516是卷积神经网络,其可以使用例如一类图像的一个示例进行训练,并且在训练之后无需进一步训练即可识别该图像类的其他成员。在此示例中,孪生单样本神经网络516可以使用合成深度图508进行训练,然后处理伪深度图514以确定合成深度图508和伪深度图514是否属于同一类,例如,它们是否对应于同一立体图像对。孪生单样本神经网络516通过仅从一个图像减去另一个图像并对差的平方求和来改进图像之间的相似性的确定,因为尽管几何失真,它仍提供了图像相似性的更准确的度量。
本文所述的技术通过使用虚幻引擎504渲染具有相应的合成深度图的大量(>1000)的合成立体图像506对来改进DNN的训练,以识别和定位车辆传感器图像数据中的区域和对象。GAN 510用于生成伪立体图像512,其可以被输出为添加有大气效果的逼真图像518。伪立体图像512可以被处理以确定伪深度图514,该伪深度图514可以与合成深度图508进行比较,以验证所添加的大气效果不会改变伪立体图像512中的特征的几何关系。所输出的逼真图像518可以用于训练DNN以识别和定位所输出的逼真图像518中的区域和对象,其中识别和定位包括大气效果的所输出的逼真图像中的区域和对象可以取决于所输出的逼真图像518中的特征之间的几何关系。
图6是关于图1至图5所描述的用于基于经训练的DNN来操作车辆的过程600的流程图的图示。过程600可以由计算装置的处理器实施,例如将来自传感器的信息作为输入,以及执行命令,以及输出对象跟踪信息。过程600包括以所公开的顺序进行的多个框。过程600可以替代地或另外包括更少的框,或者可以包括以不同顺序进行的框。
过程600开始于框602,在框602处,计算装置115基于场景描述生成一对合成立体图像和合成深度图,该场景描述根据几何形状和表面纹理描述区域和对象。虚幻引擎504输入场景描述502,并使用光线跟踪来呈现逼真的合成立体图像506对和相应的合成深度图508。
在框604处,计算装置115输入合成立体图像506,并且如上面关于图4和图5所讨论的,使用经训练的GAN 510来生成具有所添加的大气效果310的一对伪立体图像512。大气效果310对真实世界天气(诸如雨、雪、雨夹雪、冰雹、雾、灰尘、阴霾等)的表观进行仿真。GAN510每次独立地处理一个合成立体图像506,并且可以独立地将伪图像输出为逼真图像518,并且这些伪图像被组合成与所输入的合成立体图像506相对应的伪立体图像512对。
在框606处,伪立体图像512使用如上面关于图4所讨论的立体视差进行处理,以形成伪深度图514。可以使用孪生单样本神经网络516将伪深度图514与来自框602的合成深度图508进行比较,以验证伪立体图像512中所包括的特征之间的几何关系。
在框608处,伪立体图像512被输出为包括大气效果的逼真图像518,其将用于训练DNN以识别和定位图像数据中的区域和对象,如上面关于图2所讨论的。经训练的DNN可以处理例如由车辆110中所包括的传感器116获取或由固定摄像机获取的图像数据。经训练的DNN可以输出位于输入图像中的区域和对象,以用于与车辆操作有关的各种任务。例如,可以通过获取和处理在连续时间步长获取的多个图像来定位和跟踪移动对象。关于道路202和车道标记204的位置的数据以及因此车辆110相对于道路的位置的数据可以通过用经训练的DNN处理图像来确定。经训练的DNN可以确定移动对象(例如,包括车辆、行人和骑自行车的人)的位置、方向和速度。
在框610处,经训练的DNN可以用于操作车辆110。车辆110中所包括的计算装置115可以将来自传感器116的图像数据输入到经训练的DNN。DNN可以输出图像中的区域和对象(例如,道路302、车道标记304、车道屏障306和车辆308)的标识和位置信息。通过在连续的时间段内跟踪对象,可以预测移动对象的未来位置。可以基于移动对象的所预测的未来位置来确定避开移动对象的车辆路径。计算装置可以经由控制器112、113、114命令车辆动力传动系统、转向装置和制动器以沿着车辆路径操作车辆110。在框610之后,过程600结束。
诸如本文讨论的那些的计算装置一般各自包括命令,该命令可由诸如上文所述的那些的一个或多个计算装置执行并用于执行上文所述的过程的框或步骤。例如,上文讨论的过程框可以被体现为计算机可执行命令。
计算机可执行命令可以由使用各种编程语言和/或技术创建的计算机程序来编译或解译,所述编程语言和/或技术单独地或组合地包括但不限于:JavaTM、C、C++、Python、Julia、SCALA、Visual Basic、Java Script、Perl、HTML等。一般来说,处理器(例如,微处理器)接收例如来自存储器、计算机可读介质等的命令,并且执行这些命令,从而执行一个或多个过程,包括本文所述的过程中的一个或多个。这类命令和其他数据可以存储在文件中并使用各种计算机可读介质进行传输。计算装置中的文件通常是存储在诸如存储介质、随机存取存储器等计算机可读介质上的数据的集合。
计算机可读介质包括参与提供可以由计算机读取的数据(例如,命令)的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘和其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(DRAM)。常见形式的计算机可读介质包括(例如)软磁盘、软盘、硬盘、磁带、任何其他磁性介质、CD-ROM、DVD、任何其他光学介质、穿孔卡、纸带、带有孔图案的任何其他物理介质、RAM、PROM、EPROM、FLASH-EEPROM、任何其他存储器芯片或盒式磁带或者计算机可以从其中读取的任何其他介质。
除非本文作出相反的明确指示,否则权利要求中使用的所有术语旨在给出如本领域技术人员所理解的普通和通常的含义。具体地,除非权利要求叙述相反的明确限制,否则使用诸如“一/一个”、“该”、“所述”等单数冠词应被解读为叙述所指示的要素中的一者或多者。
术语“示例性”在本文中以表示示例的意义使用,例如,对“示例性小部件”的引用应被解读为仅指代小部件的示例。
修饰值或结果的副词“约”是指形状、结构、测量、值、确定、计算结果等可以因材料、加工、制造、传感器测量、计算、处理时间、通信时间等的缺陷而与确切描述的几何结构、距离、测量、值、确定、计算结果等有偏差。
在附图中,相同的附图标记指示相同的元件。此外,可以改变这些元件中的一些或全部。有关本文所描述的介质、过程、系统、方法等,应当理解,虽然此类过程等的步骤或框已被描述为按照特定顺序的序列发生,但是此类过程可以通过以本文所描述的顺序以外的顺序执行的所描述步骤来实践。还应当理解,可以同时执行某些步骤、可以添加其他步骤,或者可以省略本文所述的某些步骤。换句话说,本文对过程的描述是出于说明某些实施例的目的而提供的,并且绝不应当被解释为限制所要求保护的发明。
根据本发明,提供了一种计算机,其具有处理器和存储器,所述存储器包括将由所述处理器执行以执行以下操作的指令:利用图像合成引擎生成一对合成立体图像和相应的合成深度图,其中所述合成立体图像对应于由立体相机获取的真实立体图像,并且所述合成深度图是对应于由所述立体相机查看到的三维(3D)场景的3D映射图;使用生成对抗网络(GAN)独立地处理所述一对合成立体图像中的每个图像以生成伪图像,其中所述伪图像对应于所述一对合成立体图像中的一者的逼真估计;处理立体的伪图像对以形成伪深度图;使用孪生单样本神经网络将所述伪深度图与所述合成深度图进行比较;使用由所述GAN生成的所述伪图像中的一者或多者训练深度神经网络以确定对象;并且基于所述对象操作车辆。
根据一个实施例,所述图像合成引擎基于三维场景的数学描述来生成逼真的合成立体图像对和相应的合成深度图。
根据一个实施例,本发明的特征还在于包括用于通过计算所述一对伪立体图像的相应特征之间的立体视差来形成所述伪深度图的指令。
根据一个实施例,本发明的特征还在于包括用于通过确定边缘和纹理来确定所述一对合成立体图像的相应特征的指令。
根据一个实施例,本发明的特征还在于包括用于以下操作的指令:使用所述GAN来独立地处理所述一对合成立体图像中的每个图像以生成所述一对伪立体图像,从而通过修改到所述伪立体图像的数据以通过对包括阴天和黑暗的环境照明及包括雨、雪和雾的天气条件的效果进行仿真来实现域自适应。
根据一个实施例,本发明的特征还在于包括用于以下操作的指令:通过使用由所述立体相机获取的真实立体图像来训练所述GAN,训练所述GAN以在由所述GAN生成的伪立体图像和真实立体图像之间进行区分。
根据一个实施例,本发明的特征还在于包括用于以下操作的指令:通过使用所述合成深度图来训练所述孪生单样本神经网络,训练所述孪生单样本神经网络以测试所述伪深度图。
根据一个实施例,测试所述伪深度图包括确定所述伪深度图和所述合成深度图之间的差异。
根据一个实施例,本发明的特征还在于包括用于基于确定所述对象相对于所述车辆的位置来操作所述车辆的指令,其中所述对象可以包括车辆和行人中的一者或多者。
根据一个实施例,本发明的特征还在于包括用于基于根据所述对象的所述位置确定车辆路径来操作所述车辆的指令。
根据本发明,一种方法,包括:利用图像合成引擎生成一对合成立体图像和相应的合成深度图,其中所述合成立体图像对应于由立体相机获取的真实立体图像,并且所述合成深度图是对应于由所述立体相机查看到的三维(3D)场景的3D映射图;使用生成对抗网络(GAN)处理所述一对合成立体图像中的每个图像以生成伪图像,其中所述伪图像对应于所述合成立体图像中的一者的逼真估计;处理立体的伪图像对以形成伪深度图;使用孪生单样本神经网络将所述伪深度图与所述合成深度图进行比较;使用由所述GAN生成的所述伪图像中的一者或多者训练深度神经网络以确定对象;以及基于所述对象操作车辆。
根据一个实施例,所述图像合成引擎基于三维场景的数学描述来生成逼真的合成立体图像对和相应的合成深度图。
根据一个实施例,本发明的特征还在于通过计算所述一对伪立体图像的相应特征之间的立体视差来形成所述伪深度图。
根据一个实施例,本发明的特征还在于通过确定边缘和纹理来确定所述一对合成立体图像的相应特征。
根据一个实施例,本发明的特征还在于,使用所述GAN来处理所述一对合成立体图像中的每个图像以生成所述一对伪立体图像,从而通过修改所述伪立体图像中的数据以通过对包括阴天和黑暗的环境照明及包括雨、雪和雾的天气条件的效果进行仿真来实现域自适应。
根据一个实施例,本发明的特征还在于,通过使用由所述立体相机获取的真实立体图像来训练所述GAN,训练所述GAN以在由所述GAN生成的伪立体图像和真实立体图像之间进行区分。
根据一个实施例,本发明的特征还在于,通过使用所述合成深度图来训练所述孪生单样本神经网络,训练所述孪生单样本神经网络以测试所述伪深度图。
根据一个实施例,测试所述伪深度图包括确定所述伪深度图和所述合成深度图之间的差异。
根据一个实施例,本发明的特征还在于基于确定所述对象相对于所述车辆的位置来操作所述车辆,其中所述对象可以包括车辆和行人中的一者或多者。
根据一个实施例,本发明的特征还在于基于根据所述对象的所述位置确定车辆路径来操作所述车辆。
Claims (15)
1.一种方法,其包括:
利用图像合成引擎生成一对合成立体图像和相应的合成深度图,其中所述合成立体图像对应于由立体相机获取的真实立体图像,并且所述合成深度图是对应于由所述立体相机查看到的三维场景的三维映射图;
使用生成对抗网络处理所述一对合成立体图像中的每个图像以生成伪图像,其中所述伪图像对应于所述合成立体图像中的一者的逼真估计;
处理立体的伪图像对以形成伪深度图;
使用孪生单样本神经网络将所述伪深度图与所述合成深度图进行比较;
使用由所述生成对抗网络生成的所述伪图像中的一者或多者训练深度神经网络以确定对象;以及
基于所述对象操作车辆。
2.如权利要求1所述的方法,其中所述图像合成引擎基于三维场景的数学描述来生成逼真的合成立体图像对和相应的合成深度图。
3.如权利要求2所述的方法,其中所述逼真的合成立体图像对中的逼真图像中的每一者均保留深度和三维形状约束。
4.如权利要求1所述的方法,其还包括通过计算所述一对伪立体图像的相应特征之间的立体视差来形成所述伪深度图。
5.如权利要求4所述的方法,其还包括通过确定边缘和纹理来确定一对合成立体图像的相应特征。
6.如权利要求1所述的方法,其还包括使用所述生成对抗网络来处理所述一对合成立体图像中的每个图像以生成所述一对伪立体图像,从而通过修改所述伪立体图像中的数据以通过对包括阴天和黑暗的环境照明及包括雨、雪和雾的天气条件的效果进行仿真来实现域自适应。
7.如权利要求1所述的方法,其还包括通过使用由所述立体相机获取的真实立体图像来训练所述生成对抗网络,训练所述生成对抗网络以在由所述生成对抗网络生成的伪立体图像和真实立体图像之间进行区分。
8.如权利要求1所述的方法,其还包括通过使用所述合成深度图来训练所述孪生单样本神经网络,训练所述孪生单样本神经网络以测试所述伪深度图。
9.如权利要求8所述的方法,其中测试所述伪深度图包括确定所述伪深度图和所述合成深度图之间的差异。
10.如权利要求9所述的方法,其中所述伪深度图和所述合成深度图之间的所述差异在训练期间输入到所述生成对抗网络。
11.如权利要求1所述的方法,其还包括基于确定所述对象相对于所述车辆的位置来操作所述车辆,其中所述对象可以包括车辆和行人中的一者或多者。
12.如权利要求11所述的方法,其还包括确定所述对象的方向和速度。
13.如权利要求12所述的方法,其还包括基于根据所述对象的所述位置确定车辆路径来操作所述车辆。
14.如权利要求13所述的方法,其中基于获取视频图像并输入到所述深度神经网络来确定所述对象。
15.一种系统,其包括被编程为执行如权利要求1至14中任一项所述的方法的计算机。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/406,466 | 2019-05-08 | ||
US16/406,466 US10949684B2 (en) | 2019-05-08 | 2019-05-08 | Vehicle image verification |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111918053A true CN111918053A (zh) | 2020-11-10 |
Family
ID=72943411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010377950.1A Pending CN111918053A (zh) | 2019-05-08 | 2020-05-07 | 车辆图像验证 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10949684B2 (zh) |
CN (1) | CN111918053A (zh) |
DE (1) | DE102020112314A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018176000A1 (en) | 2017-03-23 | 2018-09-27 | DeepScale, Inc. | Data synthesis for autonomous control systems |
US10671349B2 (en) | 2017-07-24 | 2020-06-02 | Tesla, Inc. | Accelerated mathematical engine |
US11409692B2 (en) | 2017-07-24 | 2022-08-09 | Tesla, Inc. | Vector computational unit |
US11893393B2 (en) | 2017-07-24 | 2024-02-06 | Tesla, Inc. | Computational array microprocessor system with hardware arbiter managing memory requests |
US11157441B2 (en) | 2017-07-24 | 2021-10-26 | Tesla, Inc. | Computational array microprocessor system using non-consecutive data formatting |
US10235601B1 (en) * | 2017-09-07 | 2019-03-19 | 7D Labs, Inc. | Method for image analysis |
US11334762B1 (en) * | 2017-09-07 | 2022-05-17 | Aurora Operations, Inc. | Method for image analysis |
US11561791B2 (en) | 2018-02-01 | 2023-01-24 | Tesla, Inc. | Vector computational unit receiving data elements in parallel from a last row of a computational array |
US11215999B2 (en) | 2018-06-20 | 2022-01-04 | Tesla, Inc. | Data pipeline and deep learning system for autonomous driving |
US11361457B2 (en) | 2018-07-20 | 2022-06-14 | Tesla, Inc. | Annotation cross-labeling for autonomous control systems |
US11636333B2 (en) | 2018-07-26 | 2023-04-25 | Tesla, Inc. | Optimizing neural network structures for embedded systems |
US11562231B2 (en) | 2018-09-03 | 2023-01-24 | Tesla, Inc. | Neural networks for embedded devices |
CN115512173A (zh) | 2018-10-11 | 2022-12-23 | 特斯拉公司 | 用于使用增广数据训练机器模型的系统和方法 |
US11196678B2 (en) | 2018-10-25 | 2021-12-07 | Tesla, Inc. | QOS manager for system on a chip communications |
US11816585B2 (en) | 2018-12-03 | 2023-11-14 | Tesla, Inc. | Machine learning models operating at different frequencies for autonomous vehicles |
US11537811B2 (en) | 2018-12-04 | 2022-12-27 | Tesla, Inc. | Enhanced object detection for autonomous vehicles based on field view |
US11610117B2 (en) | 2018-12-27 | 2023-03-21 | Tesla, Inc. | System and method for adapting a neural network model on a hardware platform |
US10997461B2 (en) | 2019-02-01 | 2021-05-04 | Tesla, Inc. | Generating ground truth for machine learning from time series elements |
US11567514B2 (en) | 2019-02-11 | 2023-01-31 | Tesla, Inc. | Autonomous and user controlled vehicle summon to a target |
US10956755B2 (en) | 2019-02-19 | 2021-03-23 | Tesla, Inc. | Estimating object properties using visual image data |
US11340624B2 (en) * | 2019-08-29 | 2022-05-24 | Ford Global Technologies, Llc | Vehicle neural network |
US11373358B2 (en) * | 2020-06-15 | 2022-06-28 | Nvidia Corporation | Ray tracing hardware acceleration for supporting motion blur and moving/deforming geometry |
US11532098B2 (en) * | 2020-09-01 | 2022-12-20 | Ford Global Technologies, Llc | Determining multi-degree-of-freedom pose to navigate a vehicle |
US20220084204A1 (en) * | 2020-09-11 | 2022-03-17 | Nvidia Corporation | Labeling images using a neural network |
US11840238B2 (en) * | 2021-02-05 | 2023-12-12 | Nvidia Corporation | Multi-view geometry-based hazard detection for autonomous systems and applications |
US11809524B2 (en) * | 2021-03-16 | 2023-11-07 | Woven Planet North America, Inc. | System and method for training an adapter network to improve transferability to real-world datasets |
US11975738B2 (en) * | 2021-06-03 | 2024-05-07 | Ford Global Technologies, Llc | Image annotation for deep neural networks |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013054240A1 (en) | 2011-10-10 | 2013-04-18 | Koninklijke Philips Electronics N.V. | Depth map processing |
TWI608447B (zh) | 2015-09-25 | 2017-12-11 | 台達電子工業股份有限公司 | 立體影像深度圖產生裝置及方法 |
US10466714B2 (en) | 2016-09-01 | 2019-11-05 | Ford Global Technologies, Llc | Depth map estimation with stereo images |
CN108205803B (zh) | 2017-07-19 | 2020-12-25 | 北京市商汤科技开发有限公司 | 图像处理方法、神经网络模型的训练方法及装置 |
US10643320B2 (en) * | 2017-11-15 | 2020-05-05 | Toyota Research Institute, Inc. | Adversarial learning of photorealistic post-processing of simulation with privileged information |
CN108564611A (zh) | 2018-03-09 | 2018-09-21 | 天津大学 | 一种基于条件生成对抗网络的单目图像深度估计方法 |
CN109166144B (zh) | 2018-07-20 | 2021-08-24 | 中国海洋大学 | 一种基于生成对抗网络的图像深度估计方法 |
US11107230B2 (en) * | 2018-09-14 | 2021-08-31 | Toyota Research Institute, Inc. | Systems and methods for depth estimation using monocular images |
US20200311136A1 (en) * | 2019-03-25 | 2020-10-01 | HealthBlock, Inc. | Measuring and increasing the quality of user-provided information |
US11620800B2 (en) * | 2019-03-27 | 2023-04-04 | Electronic Arts Inc. | Three dimensional reconstruction of objects based on geolocation and image data |
-
2019
- 2019-05-08 US US16/406,466 patent/US10949684B2/en active Active
-
2020
- 2020-05-06 DE DE102020112314.0A patent/DE102020112314A1/de active Pending
- 2020-05-07 CN CN202010377950.1A patent/CN111918053A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102020112314A1 (de) | 2020-11-12 |
US10949684B2 (en) | 2021-03-16 |
US20200356790A1 (en) | 2020-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10949684B2 (en) | Vehicle image verification | |
CN107798699B (zh) | 用立体图像进行深度图估计 | |
US11312372B2 (en) | Vehicle path prediction | |
US10853670B2 (en) | Road surface characterization using pose observations of adjacent vehicles | |
CN109215433B (zh) | 用于自动驾驶仿真的基于视觉的驾驶场景生成器 | |
US10528055B2 (en) | Road sign recognition | |
US11042758B2 (en) | Vehicle image generation | |
US11460851B2 (en) | Eccentricity image fusion | |
US10955857B2 (en) | Stationary camera localization | |
US20200020117A1 (en) | Pose estimation | |
US11138452B2 (en) | Vehicle neural network training | |
US11299169B2 (en) | Vehicle neural network training | |
US11527012B2 (en) | Vehicle pose determination | |
US20210323555A1 (en) | Vehicle data augmentation | |
US11662741B2 (en) | Vehicle visual odometry | |
US11270164B1 (en) | Vehicle neural network | |
US11562571B2 (en) | Vehicle neural network | |
WO2023021755A1 (ja) | 情報処理装置、情報処理システム、モデル及びモデルの生成方法 | |
US20230267640A1 (en) | Pose estimation | |
CN116311216A (zh) | 三维对象检测 |
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 |