CN113822118A - 增强的车辆操作 - Google Patents
增强的车辆操作 Download PDFInfo
- Publication number
- CN113822118A CN113822118A CN202110633050.3A CN202110633050A CN113822118A CN 113822118 A CN113822118 A CN 113822118A CN 202110633050 A CN202110633050 A CN 202110633050A CN 113822118 A CN113822118 A CN 113822118A
- Authority
- CN
- China
- Prior art keywords
- image
- vehicle
- landmark
- computer
- identifying
- 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
- 239000013598 vector Substances 0.000 claims abstract description 120
- 239000002131 composite material Substances 0.000 claims abstract description 75
- 230000007613 environmental effect Effects 0.000 claims abstract description 27
- 238000009826 distribution Methods 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims description 75
- 239000011159 matrix material Substances 0.000 claims description 56
- 230000008859 change Effects 0.000 claims description 9
- 238000001556 precipitation Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000015654 memory Effects 0.000 abstract description 56
- 230000008569 process Effects 0.000 description 25
- 230000009466 transformation Effects 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 238000011524 similarity measure Methods 0.000 description 12
- 210000002569 neuron Anatomy 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000002485 combustion reaction Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000036561 sun exposure Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000005226 mechanical processes and functions Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3626—Details of the output of route guidance instructions
- G01C21/3644—Landmark guidance, e.g. using POIs or conspicuous other objects
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3679—Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/77—Processing 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/778—Active pattern-learning, e.g. online learning of image or video features
-
- 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
-
- 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
-
- 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/0287—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Electromagnetism (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
- Navigation (AREA)
Abstract
本公开提供“增强的车辆操作”。一种计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以:接收包括物理地标的图像;输出多个合成图像,其中每个合成图像是通过在接收到的图像中模拟至少一个环境特征而生成;为所述多个合成图像中的每一个生成相应特征向量;并且在基于所述合成图像的所述特征向量与第二接收到的图像的特征向量之间的相似性度量识别所述第二接收到的图像中的所述物理地标时致动一个或多个车辆部件,所述相似性度量是概率分布差异或统计距离中的一者。
Description
技术领域
本公开总体上涉及车辆操作和车辆神经网络。
背景技术
车辆可以配备有计算装置、网络、传感器和控制器以获取关于车辆的环境的数据并且基于所述数据来操作车辆。车辆传感器可以提供关于在车辆环境中要行驶的路线和要避开的对象的数据。车辆的操作可以依赖于在车辆正在道路上进行操作时获取关于车辆环境中的对象的准确且及时的数据。车辆可以使用神经网络来从由车辆传感器收集的图像数据识别对象。
发明内容
一种系统包括计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由处理器执行以:接收包括物理地标的图像;输出多个合成图像,其中每个合成图像是通过在接收到的图像中模拟至少一个环境特征而生成;为多个合成图像中的每一个生成相应特征向量;并且在基于合成图像的特征向量与第二接收到的图像的特征向量之间的相似性度量识别第二接收到的图像中的物理地标时致动一个或多个车辆部件,所述相似性度量是概率分布差异或统计距离中的一者。
所述指令还可以包括以下指令:生成用于车辆的路线,识别沿着路线的一个或多个物理地标,以及基于识别的一个或多个物理地标来规划一个或多个车辆部件的致动。
所述指令还可以包括以下指令:当车辆正在沿着路线行驶时,用摄像头收集第二接收到的图像,识别第二接收到的图像中的物理地标,以及基于基于识别的一个或多个物理地标的规划致动来致动一个或多个车辆部件。
所述指令还可以包括以下指令:将操纵分配给路线上的每个识别的物理地标,所述操纵是左转弯、右转弯或笔直路径中的一者。
所述指令还可以包括以下指令:识别与物理地标相关联的多个特征向量,以及识别特征向量的相似性度量。
所述指令还可以包括以下指令:在第一多个特征向量的相似性度量高于阈值时识别物理地标,以及在第二多个特征向量的相似性度量高于阈值时识别第二物理地标。
所述指令还可以包括以下指令:识别合成图像的均值特征向量与多个接收到的图像的特征向量之间的相似性度量,以及当所述相似性度量高于阈值时识别物理地标。
统计距离可以是马哈拉诺比斯距离。
概率分布差异可以是KL散度。
环境特征可以是日照、降水、云量、交通量或视角变化中的一者。
所述指令还可以包括以下指令:生成多个合成图像的特征向量的协方差矩阵,生成作为协方差矩阵的逆矩阵的逆协方差矩阵,以及基于协方差矩阵或逆协方差矩阵中的至少一者来确定相似性度量。
所述指令还可以包括以下指令:利用机器学习程序来生成多个合成图像的特征向量。
一种方法包括:接收包括物理地标的图像;输出多个合成图像,其中每个合成图像是通过在接收到的图像中模拟至少一个环境特征而生成的;生成多个合成图像中的每一个的相应特征向量;以及在基于合成图像的特征向量与第二接收到的图像的特征向量之间的相似性度量识别第二接收到的图像中的物理地标时致动一个或多个车辆部件,所述相似性度量是概率分布差异或统计距离中的一者。
所述方法还可以包括:生成用于车辆的路线;识别沿着路线的一个或多个物理地标;以及基于识别的一个或多个物理地标来规划一个或多个车辆部件的致动。
所述方法还可以包括:当车辆正在沿着路线行驶时,用摄像头收集第二接收到的图像;识别第二接收到的图像中的物理地标;以及基于基于识别的一个或多个物理地标的规划致动来致动一个或多个车辆部件。
所述方法还可以包括:将操纵分配给路线上的每个识别的物理地标,所述操纵是左转弯、右转弯或笔直路径中的一者。
所述方法还可以包括:识别与物理地标相关联的多个特征向量,以及识别特征向量的相似性度量。
所述方法还可以包括:在第一多个特征向量的相似性度量高于阈值时识别物理地标,以及在第二多个特征向量的相似性度量高于阈值时识别第二物理地标。
所述方法还可以包括:识别合成图像的均值特征向量与多个接收到的图像的特征向量之间的相似性度量,以及当所述相似性度量高于阈值时识别物理地标。
所述方法还可以包括:生成多个合成图像的特征向量的协方差矩阵;生成作为协方差矩阵的逆矩阵的逆协方差矩阵;以及基于协方差矩阵或逆协方差矩阵中的至少一者来确定相似性度量。
所述方法还可以包括:利用机器学习程序来生成多个合成图像的特征向量。
还公开了一种计算装置,所述计算装置被编程为执行上述方法步骤中的任一者。还公开了一种包括所述计算装置的车辆。还公开了一种计算机程序产品,所述计算机程序产品包括计算机可读介质,所述计算机可读介质存储指令,所述指令可由计算机处理器执行以执行上述方法步骤中的任一者。
附图说明
图1是用于操作车辆的示例性系统的图示。
图2是存储识别的地标的示例性服务器的图示。
图3是用于识别地标并将其存储在示例性服务器中的示例性过程的图示。
图4是示例性机器学习程序的图示。
图5是沿着路线行驶的车辆的俯视图。
图6是用于识别并存储地标的示例性过程的图示。
图7是用于识别收集到的图像中的地标的示例性过程的图示。
具体实施方式
当车辆沿着路线行驶时,车辆可以致动传感器以收集图像。在开始路线之前,可以识别沿着路线的物理地标。通过识别图像中沿着路线的物理地标,车辆计算机可以确定车辆沿着路线的位置,而无需来自外部服务器的地理坐标数据。也就是说,车辆计算机可以将特定车辆部件的致动分配给地标所处的路线部分,并且在识别地标时,车辆计算机可以执行所分配的致动。因此,车辆计算机可以通过根据沿着路线的识别地标致动部件来沿着路线导航车辆而无需附加的地理坐标数据。
可以训练机器学习程序(例如,神经网络)以识别地标。可以训练机器学习程序以针对外部服务器的存储器分配生成识别地标的数据。机器学习程序可以从识别地标的参考图像生成参考特征向量。在沿着路线收集图像时,车辆计算机可以将图像输入到机器学习程序,并且将输出特征向量与预先收集在存储器中的参考特征向量进行比较。基于输出特征向量与参考特征向量之间的相似性度量(诸如统计距离或概率分布差异),车辆计算机可以识别地标。
图1示出了用于操作车辆101的示例性系统100。车辆101中的计算机105被编程为从一个或多个传感器110接收所收集的数据。例如,车辆101的数据可以包括车辆101的位置、关于车辆周围的环境的数据、关于车辆外部的对象(诸如另一车辆)的数据等。车辆101的位置通常以常规形式提供,所述形式为例如经由使用全球定位系统(GPS)的导航系统获得的地理坐标(诸如纬度和经度坐标)。数据的另外示例可以包括车辆101的系统和部件的测量值,例如车辆101的速度、车辆101的轨迹等。
计算机105通常被编程为在车辆101网络上进行通信,所述网络例如包括常规车辆101的通信总线(诸如CAN总线、LIN总线等)和/或其他有线和/或无线技术(例如以太网、WIFI等)。经由网络、总线和/或其他有线或无线机制(例如车辆101中的有线或无线局域网),计算机105可以向车辆101中的各种装置(例如控制器、致动器、传感器等,包括传感器110)传输消息和/或从所述各种装置接收消息。替代地或另外,在计算机105实际上包括多个装置的情况下,车辆网络可以用于在本公开中表示为计算机105的装置之间的通信。例如,计算机105可以是具有如上所述的处理器和存储器的通用计算机,和/或可以包括专用电子电路,所述专用电子电路包括为特定操作而制造的ASIC,例如用于处理传感器数据和/或传送传感器数据的ASIC。在另一示例中,计算机105可以包括FPGA(现场可编程门阵列),所述FPGA是制造为可由用户配置的集成电路。通常,在电子设计自动化中使用诸如VHDL(超高速集成电路硬件描述语言)之类的硬件描述语言来描述诸如FPGA和ASIC之类的数字和混合信号系统。例如,ASIC是基于制造前提供的VHDL编程而制造的,而FPGA内部的逻辑部件可以基于例如存储在电连接到FPGA电路的存储器中的VHDL编程来配置。在一些示例中,处理器、ASIC和/或FPGA电路的组合可以包括在计算机105中。
存储器可以是任何类型,例如,硬盘驱动器、固态驱动器、服务器或任何易失性或非易失性介质。存储器可以存储从传感器110发送的收集数据。存储器可以是与计算机105分离的装置,并且计算机105可以经由车辆101中的网络(例如,通过CAN总线、无线网络等)检索由存储器存储的信息。替代地或另外,存储器可以是计算机105的一部分,例如作为计算机105的存储器。
传感器110可以包括多种装置。例如,车辆101中的各种控制器可以充当传感器110以经由车辆101网络或总线提供数据,例如与车辆速度、加速度、位置、子系统和/或部件状态等有关的数据。此外,其他传感器110可以包括摄像头、运动检测器等,即,用于提供数据以评估部件的位置、评估道路的坡度等的传感器110。传感器110还可以包括但不限于短程雷达、远程雷达、激光雷达和/或超声波传感器。
所收集的数据可以包括在车辆101中收集的多种数据。上面提供了所收集的数据的示例,并且此外,数据通常使用一个或多个传感器110来收集,并且可以另外包括在计算机105中和/或在服务器125处从其计算出的数据。通常,所收集的数据可以包括可以由传感器110采集的和/或根据此类数据计算出的任何数据。
车辆101可以包括多个车辆部件115。在这种上下文中,每个车辆部件115包括适于执行诸如移动车辆101、使车辆101减慢或停止、使车辆101转向等机械功能或操作的一个或多个硬件部件。部件115的非限制性示例包括推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可以包括方向盘、转向齿条等中的一者或多者)、制动部件、驻车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等。部件115可以包括计算装置,例如,电子控制单元(ECU)等和/或诸如以上关于计算机105描述的计算装置,并且它们同样经由车辆101网络进行通信。
出于本公开的目的,术语“自主车辆”指代在完全自主模式下操作的车辆101。完全自主模式被定义为其中车辆101的推进(通常经由包括电动马达和/或内燃发动机的动力传动系统进行)、制动和转向中的每一者都由计算机105控制的模式。半自主模式是其中车辆101的推进(通常经由包括电动马达和/或内燃发动机的动力传动系统进行)、制动和转向中的至少一者至少部分地由计算机105而不是人类操作员控制的模式。在非自主模式(即,手动模式)下,车辆101的推进、制动和转向由人类操作员控制。
系统100还可以包括连接到服务器125的网络120。计算机105还可以被编程为经由网络120与诸如服务器125的一个或多个远程站点通信,这种远程站点可能包括处理器和存储器。网络120表示车辆计算机105可以借助来与远程服务器125通信的一种或多种机制。因此,网络120可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何所需组合以及任何所需的网络拓扑(或当利用多种通信机制时的多种拓扑)。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用低功耗(BLE)、IEEE 802.11、车辆对车辆(V2V)诸如专用短程通信(DSRC)等)、局域网(LAN)和/或包括互联网的广域网(WAN)。
图2是输入到机器学习程序205以生成多个道路的存储地标210的图像200的图示。图2示出了五个图像200a、200b、200c、200d和200e,统称为“图像200”。图像200包括一个或多个地标210。在此上下文中,“地标”是道路上或附近的物理对象。地标可以是例如基础设施元素,诸如桥梁或电线杆、建筑物、公共艺术品等。图2示出了图像200c、200d中的一个地标210。通过识别地标210,计算机105可以致动车辆101的一个或多个部件115以遵循路线,如下所述。
服务器125可以将图像输入到机器学习程序205。机器学习程序205可以是深度神经网络(DNN),如下所述和图4中最佳所示。替代地,机器学习程序205可以是例如卷积神经网络(CNN)、梯度提升树算法等。使用机器学习程序205允许车辆101的计算机105识别地标210,而无需常规图像处理技术(诸如Canny边缘检测)和/或无需在车辆101沿着路线移动时收集地理位置数据。也就是说,计算机105可以使用机器学习程序205来以比常规图像处理技术更少的计算资源来识别地标210,并且可以在地理位置数据不可用时识别地标210。
服务器125可以存储将由车辆101的计算机105识别的地标210。将指定位置(例如,十字路口)的图像200输入到机器学习程序205可用以识别所述位置处的地标210。服务器125可以将每个位置分配给特定的存储器分配215。在当前上下文中,“存储器分配”是服务器125的被分配为存储描述特定地标210的数据以及服务器125可以从中定位描述特定地标210的数据的位置(例如,存储器地址)的硬盘驱动器空间量。图2示出了三个存储器分配215a、215b、215c,统称为存储器分配215。服务器125可以包括每个识别的地标210的指定的存储器分配215。服务器125可以通过网络120将来自存储器分配215的数据传输到车辆101的计算机105。替代地或另外,计算机105可以识别地标210并且将数据存储在计算机105的存储器的存储器分配215中。
图3是用于生成存储地标210的识别的存储器分配215的示例性过程300的图示。过程300开始于框305,在框305中,参考图像200输入到多个变换程序中,每个变换程序生成合成图像220,所述合成图像220是并入有环境特征的参考图像200。“环境特征”是对图像200的修改,以包括特定的环境属性(例如,增加的光照、减少的光照、增加的对比度、减少的对比度、降水、云量、日照、植物颜色、季节等)和/或改变图像200中的对象的视图(例如,减小对象的大小、改变对象的视角、增大对象的大小等)和/或图像200中的其他对象的视图(例如,交通量)。也就是说,环境特征可以向参考图像200提供可能尚未通过摄像头收集参考图像200收集到的环境和场景变化。将环境特征并入到参考图像200中允许合成图像220示出可能由于降水造成的遮挡或由于在参考图像200的收集期间未出现所需的环境特征而难以收集的场景和环境影响。例如,参考图像200可能已经在春季白天收集,那时收集图像200比冬季夜间收集图像更容易,因为冬季夜间可能会遮挡对象而不被收集参考图像200的摄像头收集。“变换程序”是例如在服务器125和/或计算机105中实施的算法,其通过将环境特征插入参考图像200的副本中来生成合成图像200。变换程序可以是例如无监督的图像到图像转换算法、调整参考图像200中的像素的颜色值的图像处理算法、变化自动编码器算法、生成式对抗网络等。
变换程序包括生成式对抗网络(GAN)。从真实感渲染软件程序输出的图像数据可以输入到GAN中,以在训练图像的数据集合中生成对应于未被充分表示的噪声特性的图像。GAN是一种神经网络,其包括修改输入图像的生成网络和被训练来确定经修改的图像是否与真实图像相似的鉴别器网络。可以通过使用图像减法比较图像来确定图像相似性,其中从第二图像中减去第一图像,然后将两个图像之间的绝对差或平方差求和。小的绝对差或平方差(<总的像素值之和的1%)指示相似的图像。还可以基于将第一图像的区域与第二图像的区域关联的关联技术来确定图像相似性。两个图像之间的高关联性(>90%)指示相似的图像。训练GAN以对输入合成图像进行足够真实的修改,以使鉴别器网络将其确定为“真实”。可以训练生成式对抗网络来修改输入图像,以模拟不同噪声特性的影响。例如,可以训练GAN以将在充满阳光的情况下渲染的挂车的合成图像修改成在生成真实感图像时看起来好像在下雨。可以训练GAN以产生具有指定水平的噪声的输出图像。例如,GAN可以产生具有诸如低、中或高降雨量的环境特征的输出图像。
变换程序可以包括可变自动编码器(VAE)。VAE包括:策略优化网络,其用于通过基于先验经验专家策略来组合潜在奖励函数来从车辆状态生成重构策略;以及对抗鉴别器网络,其用于区分重构策略和专家策略。VAE通过生成分布在重构策略的解空间上的多个重构策略并确定多个重构策略中的哪些重构策略与专家策略匹配来解决不定方程的问题。本文描述的技术使用包括鉴别器网络的对抗过程来确定由编码器神经网络生成的策略是否是专家策略。使用对抗过程,可以训练变换程序以生成通常与专家策略无法区分的重构策略。
VAE/GAN变换程序可以通过使用VAE对参考图像200进行编码以并入有环境特征并且使用来自GAN的鉴别器来输出并入有环境特征的合成图像220,来从参考图像200生成合成图像220。与单独从VAE或GAN生成的合成图像220相比,使用VAE/GAN混合程序来生成合成图像220可以减少合成图像220中的模糊性。也就是说,VAE可能易于训练,但是与参考图像相比,来自VAE的输出可能是模糊的。GAN可以输出比VAE更接近参考图像200的合成图像220,但是GAN可能很难训练。使用VAE来生成中间图像并且使用GAN来减少中间图像的模糊性可以输出比单独来自VAE或GAN的输出的模糊性更低的合成图像220。
接下来,在框310中,服务器125和/或计算机105将合成图像220输入到机器学习程序205以训练机器学习程序205。如下面进一步描述的,合成图像220可以包括地标210的注释,并且机器学习程序205可以从注释中学习地标210的识别。机器学习程序205可以输出合成图像220的多个特征向量225。“特征向量”是对来自2维合成图像220的信息进行编码的值的1维阵列。特征向量225的每个值识别合成图像220的一个像素或一组相邻像素的特性,例如强度、RGB值、梯度量值、像素处于或不处于对象边缘的指示符等。每个值可以量化合成图像220的特性,例如,具有圆形形状的对象、具有锐利边缘的对象等的存在和强度。
接下来,在框315中,服务器125和/或计算机105识别均值特征向量225和特征向量225的逆协方差矩阵。服务器125和/或计算机105可以将识别的地标210的设置均值和逆协方差矩阵存储在存储器分配215中。
在生成用于地标210的存储器分配215之后,计算机105可以通过确定输入图像200与地标210之间的相似性度量来识别输入图像200中的地标210。在此上下文中,“相似性度量”是多个特征向量225的集合中的两个特征向量225之间的差异的度量。相似性度量的一个示例是统计距离,例如马哈拉诺比斯距离。“统计距离”是相对于多个数据点的整体均值的两点之间的距离。在此上下文中,统计距离是表示给定特征向量225与均值特征向量225(即多个特征向量225的算术均值)之间的值差异程度的值。服务器125和/或计算机105可以识别合成图像220和/或图像200的特征向量225之间的统计距离。
例如,统计距离可以是马哈拉诺比斯距离d:
其中第一向量每个xi,i∈[1,n]是第一集合的图像200、220(例如,用于生成上述存储器分配215的图像200、220)中的第一集合的n特征向量225中的一个。第二向量每个yi,i∈[1,n]是第二集合的图像200、220(例如,由车辆101的传感器110收集的)中的第二集合的n特征向量225中的一个。S-1是逆协方差矩阵,如下所述,并且T是矩阵转置函数。S是协方差矩阵,即,其中每个元素S(i,j)(i,j∈[1,n])是值xi和yj的协方差的矩阵。也就是说,具有均值的两个变量a,b的协方差为 其中E是输出期望值的常规期望值函数,即,以状态b为条件的变量a的概率加权和,并且σab是a,b的标准偏差。逆协方差矩阵S-1是协方差矩阵S的数学逆。因此,服务器125可以确定第一集合的图像200、220中的每个特征向量225与第二组集合的图像200、220中的每个特征向量225之间的马哈拉诺比斯距离d。
使用马哈拉诺比斯距离d,计算机105可以确定输入图像200的特征向量225是否包括地标210。当车辆101在道路上行驶时,计算机105可以利用摄像头110收集多个图像200。计算机105可以通过将上述变换程序应用于所收集的图像220来生成多个合成图像220,并且可以确定图像200、220的均值特征向量225。计算机105可以确定图像200、220的均值特征向量225之间的马哈拉诺比斯距离d和存储在存储器分配215中的地标210的逆协方差矩阵S-1。也就是说,在以上方程1中,图像200、220的特征向量225可以是第一向量来自存储器分配215的均值特征向量225可以是第二向量并且计算机105可以确定马哈拉诺比斯距离与存储器分配215中的逆协方差矩阵S-1。利用存储器分配中的逆协方差矩阵S-1确定图像200、220的均值特征向量225的马哈拉诺比斯距离是“前向”马哈拉诺比斯距离df。计算机105可以确定存储在存储器分配215中的地标210的均值特征向量225之间的“后向”马哈拉诺比斯距离dr和逆协方差矩阵协方差矩阵S0是其中每个元素是从所收集的图像200生成的图像200、220的协方差的矩阵。利用前向和后向马哈拉诺比斯距离df、dr,计算机105可以识别所收集的图像200中的地标210,如下所述。
使用马哈拉诺比斯距离来识别地标210可以比欧几里德距离(即,直线距离)提供对地标210的更准确的识别,因为马哈拉诺比斯距离考虑到了输入图像200的特征向量225与用于生成均值特征向量225和逆协方差矩阵S-1的特征向量225之间的协方差和/或关联性。也就是说,两个特征向量225之间的欧几里德距离可能会提供地标210的误报识别,因为特征向量225在欧几里德距离上可能是接近的,但不是同一地标210的一部分。对于不同地标210的两个特征向量225,马哈拉诺比斯距离大于欧几里德距离,这是因为那些特征向量225距其相应的均值特征向量225会比距彼此更远,通过特征的预期方差进行进一步归一化。因此,输入图像200的特征向量225与用于生成存储器分配的均值特征向量225和逆协方差矩阵S-1的特征向量225之间的马哈拉诺比斯距离可以比那些特征向量225之间的欧几里德距离更好地识别地标210。
相似性度量的另一个示例是概率分布差异。“概率分布差异”是第一概率分布与第二概率分布的差异程度的度量。概率分布差异可以是第一集合P的n个特征向量225与第二集合Q的n个特征向量225的Kullback-Leibler(KL)散度DKL,假设高斯分布:
其中tr()是迹函数,将方形矩阵的对角元素求和,det()是矩阵的行列式,S0是由车辆101的传感器110收集的一个或多个图像200的协方差矩阵,S1是地标210的存储器215的协方差矩阵,并且n是用于确定协方差矩阵S1的特征向量225的长度。
在计算KL散度时,假设集合P、Q的概率分布为高斯和零均值。也就是说,假设集合P、Q中的特征向量的值以常规的高斯分布来分布并且被移位为具有零均值。两个高斯零均值分布仅基于它们的协方差矩阵S有所不同,因此KL散度简化为上面列出的方程。与常规KL散度算法相比,该简化的方程可以由计算机105更快地应用,常规KL散度算法可能需要针对指定概率空间中的特定概率密度函数进行附加计算。根源于均值移位的距离是经由马哈拉诺比斯距离获得。
第一集合P可以是没有地标210的注释的一个集合的合成图像和真实图像200、220的特征向量225,而集合Q可以是具有地标210的注释的一个集合的合成图像和真实图像220的特征向量225。因此,P与Q之间的KL散度表征了可以包括地标210的图像220的特征向量225的概率分布与注释有与存储器分配215相关联的地标210的图像200、220的特征向量225的概率分布之间的差异。当KL散度低于差异阈值时,计算机105可以在没有注释的合成图像220的特征向量225中识别地标210。差异阈值可以是预定值,所述预定值是基于输入具有地标210的多个测试图像200并且识别机器学习程序205正确地识别地标210时的最大KL散度。
计算机105可以将KL散度DKL和马哈拉诺比斯距离df、dr输入到全连接神经网络中,以识别输入图像200中的地标210。在“全连接”神经网络中,给定层的每个神经元连接到后续层中的每个神经元中。也就是说,机器学习程序205可以包括一个或多个全连接层,以确定收集的图像200包括地标210的概率。也就是说,全连接层的输出是介于0与1之间的数字,其中0指示图像200不包括地标210,并且1指示图像200包括地标210,并且0与1之间的值指示图像200包括地标210的数学概率。当全连接层的输出高于概率阈值时,计算机105识别图像200、220中的地标210。概率阈值是基于车辆101收集预定地标210的图像200和将输出概率值与图像200的视觉检查进行比较的经验测试确定的值。概率阈值可以是机器学习程序的最小输出,高于该最小输出,计算机105正确地识别图像200中的地标210,并且正确地识别没有地标210的图像200中没有地标210。概率阈值可以是例如0.8。如下所述,全连接层可以利用存储器分配215中的带注释的图像200、220和地标210进行训练。
当车辆101在道路上行驶时,计算机105可以利用摄像头110收集多个图像200。计算机105可以通过将一个或多个变换程序应用于所收集的图像200来生成多个合成图像220。计算机105可以识别图像200、220的协方差矩阵S0和均值特征向量225。计算机105可以使用每个地标210的特征向量的逆协方差矩阵来识别图像200、220的均值特征向量225与存储在存储器分配215中的每个地标210的特征向量之间的前向马哈拉诺比斯距离df。计算机105可以使用图像200、220的逆协方差矩阵来识别存储在存储器分配215中的每个地标210的特征向量的均值特征向量225与所收集的图像200、220的特征向量之间的后向马哈拉诺比斯距离dr。计算机105可以确定针对每个存储器分配215的相应逆协方差矩阵的图像200的特征向量225之间的KL散度DKL。计算机105可以将每个地标210的马哈拉诺比斯距离df、dr和KL散度输入到机器学习程序的全连接层,所述机器学习程序输出的值介于0与1之间,所述值指示图像200、220包括相应地标210的概率。如果来自全连接层的输出高于预定阈值,则计算机105识别图像200、220中的相应地标210。
图4是示例性机器学习程序400的图示。机器学习程序400可以是深度神经网络(DNN)400,其可以被训练来从输入图像200中识别物理地标210。例如,DNN 400可以是可以加载在存储器中并由包括在基础设施服务器135中的处理器执行的软件程序。DNN 400可以包括n个输入节点405,每个输入节点接受输入i的集合(即,输入i的每个集合可以包括一个或多个输入X)。DNN 400可以包括提供输出o1…om的集合的m个输出节点(其中m和n可以是但通常不是相同的自然数)。DNN 400包括多个层(包括数目k个隐藏层),每个层包括一个或多个节点405。节点405有时被称为人工神经元405,因为它们被设计成仿真生物(例如,人类)神经元。神经元框410示出了到示例性人工神经元405i的输入以及在其中进行的处理。将到每个神经元405的一个集合的输入X1…Xr各自乘以相应权重wi1…wir,然后在输入函数Σ中对加权输入进行求和以提供可能按偏差bi进行了调整的净输入ai,然后将所述净输入提供给激活函数f,所述激活函数继而提供神经元405i输出Yi。激活函数f可以是通常基于经验分析来选择的各种合适的函数。如图4中的箭头所示,接着可以提供神经元405的输出以将其包括在到下一层中的一个或多个神经元405的一个集合的输入中。
可以训练DNN 400来从将环境特征输入到参考图像200的多个变换程序接受例如合成图像220作为输入数据,并输出用于识别地标210的一个或多个参数。例如,可以训练DNN 400以输出对建筑物、基础设施元素等的识别。
也就是说,DNN 400可以用地面实况数据(即,关于现实世界状况或状态的数据)进行训练。例如,可以通过使用高斯分布初始化权重w,并且可以将每个节点405的偏差b设置为零。训练DNN 400可以包括经由常规技术(诸如反向传播)加以优化来更新权重和偏差。
节点405的一个集合的权重w一起作为节点405的权重向量。DNN 400的同一层中的相应节点405的权重向量可以组合以形成层的权重矩阵。DNN 400的同一层中的相应节点405的偏差值b可以组合以形成层的偏差向量。然后可以在经训练的DNN 400中使用每个层的权重矩阵和每个层的偏差向量。
在当前上下文中,用于训练DNN 400的地面实况数据可以包括识别合成图像220中的地标210的注释。例如,传感器可以收集多个图像200,所述多个图像可以被注释,然后被标记以训练DNN 400,即,可以指定标签,从而识别图像200中的地标210(诸如刚刚描述的地标)。如上所述,图像200可以输入到多个变换程序以生成合成图像220,同时保存地标210的注释。然后,可以训练DNN 400以输出与地标210相关的数据值,并且可以将输出的数据值与注释进行比较以识别输出的数据值和输入的带注释的图像的差异,即成本函数。可以调整权重w和偏差b以减小成本函数的输出,即,将输出的数据值与输入的带注释的图像之间的差异最小化。当成本函数被最小化时,服务器125可以确定训练了DNN 400。
图5是沿着路线500移动的示例性车辆101的视图。“路线”500是从起点到目的地的车辆101为到达目的地所遵循的路径。路线500可以是由路径规划算法(例如,路径多项式)生成的路径。路径规划算法是对计算机105的编程,所述编程在车辆101从起点移动到目的地时生成车辆101的路径。路径规划算法可以存储在计算机105的存储器中。路径规划算法可以是例如随时间为车辆101生成位置坐标的导航算法。作为示例,路径规划算法可以利用路径多项式来确定路径。路径多项式p(x)是将路径预测为由多项式方程描绘的线的模型。路径多项式p(x)通过确定横向坐标p来预测针对预定的即将到来的距离x(例如,以米为单位进行测量)的路径:
p(x)=a0+a1x+a2x2+a3x3 (3)
其中a0是偏移量,即,在即将到来的距离x处路径与车辆101的中心线之间的横向距离,a1是路径的航向角,a2是路径的曲率,并且a3是路径的曲率变化率。在当前上下文中,“即将到来的距离”x是在车辆101前方距车辆101的前保险杠的预定纵向距离,传感器110在前保险杠处收集数据并且计算机105预测路径。即将到来的距离x可以基于例如车辆101的当前速度、基于经验模拟数据确定的预定时间阈值、传感器110的检测范围等来确定。时间阈值可以是例如1秒。路径多项式可以包括一根或多根贝赛尔曲线(Bezier curve),即,各自表示表示路径的点的不相交子集并且合起来表示表示路径的整个点集的多项式函数。贝赛尔曲线可以被约束为连续可微的,并且在无不连续性的情况下对允许的导数具有约束或限制(例如,对变化率具有限制)。贝塞尔曲线也可以被约束来使导数与其他贝塞尔曲线在边界处匹配,从而提供子集之间的平滑过渡。贝塞尔曲线上的约束可以通过限制沿着车辆路径多项式驾驶车辆所需的纵向加速度和横向加速度的速率来使车辆路径多项式成为可转向路径多项式,其中制动扭矩和动力传动系统扭矩被施加为正纵向加速度和负纵向加速度并且顺时针转向扭矩和逆时针转向扭矩被施加为左横向加速度和右横向加速度。通过确定横向加速度和纵向加速度以在预定数量的时间段内在预定约束内实现预定目标值,车辆路径多项式可以被约束为提供计算机105可以在不超过对横向加速度和纵向加速度的限制的情况下在其上操作的车辆路径多项式。
计算机105可以基于路线500来规划一个或多个部件115的致动。也就是说,计算机105可以致动推进、转向和/或制动中的至少一者以使车辆101沿着路线500移动。计算机105可以致动部件115以例如使车辆101左转弯、使车辆101右转弯、保持向前运动等。路线500包括多个部分505a-505p(统称为部分505)。部分505由相应边界510a-510p(统称为边界510)之间的箭头指示,所述箭头指示车辆101所遵循的路线500的方向。可以为每个部分505分配单个“操纵”,即由车辆101所遵循的路径定义的轨迹和所述路径上各点处的相应速度和/或加速度。所述操纵可以在边界510中的一者处开始并且在连续的边界510处结束。所述操纵可以是例如左转弯、右转弯、笔直路径等。计算机105可以致动部件115以执行操纵以遵循路线500。例如,分配给部分505a的操纵可以是到边界510a的笔直路径。
路线500可以经过一个或多个地标210a-210f(统称为地标210),如图5所示。如上所述,地标210可以是物理结构,例如基础设施元素、建筑物、路标等。在图5中,地标210可以是例如建筑物的各部分、路标、公共艺术品、基础设施元素的各部分等。例如,地标210a可以是基础设施元素(例如,电线杆),地标210b可以是建筑物的前面部分,地标210c可以是另一个基础设施元素,地标210d可以是另一个基础设施元素,地标210e可以是另一个建筑物的前面部分,并且地标210f可以是另一个建筑物的侧面部分。与地理区域中的其他地标210相比,计算机105可以识别是与路线500最接近的地标210(即,距路线500具有最小的欧几里德(即,直线)距离)的地标210。在开始路线500之前,计算机105可以例如根据来自服务器125的地理数据来识别沿着路线500的地标210。当车辆101沿着路线500行驶时,计算机105可以致动摄像头110以收集车辆101周围的环境的图像200。在收集了图像200之后,计算机105可以将图像200输入到上述机器学习程序205,以识别图像200中的地标210。在识别图像200中的一个中的地标210中的一个之后,计算机105可以如下所述致动一个或多个部件115,以执行分配给地标210的操纵以遵循路线500。
计算机105可以基于路线500的最接近识别的地标210的部分505来分配特定的操纵,即,部件115的一个或多个特定的致动。例如,如图5所示,在第一地标210a处,路线500的部分505a相对于车辆101的向前运动左转弯。如上所述,在开始路线500之前,计算机105可以在收集到包括第一地标210a的图像200之后规划使车辆101左转弯。计算机105可以识别第二地标210b,在所述第二地标处,路线500的部分505c是笔直路径,而即将到来的部分505d是右转弯。也就是说,在识别地标210b之后,计算机105可以致动部件115以离开部分505c的笔直路径,通过边界510c,并且开始部分505d的右转弯。
计算机105可以为每个识别的地标210生成操纵表,其示例在表1中示出:
地标 | 操纵 |
210a | 左转弯 |
210b | 右转弯 |
210c | 右转弯 |
210d | 笔直路径 |
210e | 左转弯 |
210f | 右转弯 |
表1:操纵列表
计算机105可以确定车辆101是否已经到达目的地。例如,计算机105可以将车辆101的当前位置与定义路线500的路径多项式进行比较。当路径多项式的预测的即将到来的距离x低于阈值(诸如车辆101的平均长度,例如2米)时,计算机105可以确定车辆101已经到达目的地。另外或替代地,计算机105可以将车辆101的位置的地理坐标数据与目的地的地理坐标数据进行比较。如果车辆101的位置与目的地的地理坐标之间的距离低于阈值(例如,如上所述为2米),则计算机105可以确定车辆已经到达目的地。再另外或替代地,计算机105可以识别目的地处的地标210,并且在识别地标210之后,确定车辆101已经到达目的地。
图6是用于生成地标210的多个存储器215的示例性过程600的图示。过程600开始于框605,在框605中,服务器125接收包括地标210的参考图像200。如上所述,参考图像200可以是例如由车辆101的传感器110收集的图像200。参考图像200可以包括地标210的注释。
接下来,在框610中,服务器125应用一个或多个变换程序以生成合成图像220,每个合成图像220包括至少一个环境特征。如上所述,变换程序是服务器125的编程,其将环境特征(诸如照明变化或视角变换、一天中的时间、季节变化、天气状况(诸如雨或云)等)并入到参考图像200的副本中,以生成合成图像220。多个变换程序可以各自将相应的环境特征插入参考图像200的副本,以生成具有不同环境特征的一个集合的合成图像220。因此,与单独的参考图像200可以的相比,合成图像220可以为机器学习程序205提供不同的场景。合成图像220可以保存参考图像200的地标210的注释。
接下来,在框615中,服务器125为每个合成图像220生成特征向量225。如上所述,服务器125可以将合成图像220输入到机器学习程序205以生成特征向量225。如上所述,特征向量225是对来自2维合成图像220的信息进行编码的值的1维阵列。
接下来,在框620中,服务器125如上所述识别合成图像220的特征向量225的总体的均值特征向量225和逆协方差矩阵。如下所述,服务器125可以识别特征向量225的均值和/或逆协方差,以确定统计距离和/或概率分布差异。
接下来,在框625中,服务器125将均值特征向量225和逆协方差矩阵S存储在存储器分配215中。存储器分配215可以是服务器125中分配给地标210的存储器的分配。存储器分配215可以包括包括地标210的合成图像220的特征向量225的均值和/或逆协方差矩阵。在框625之后,过程600结束。
图7是用于操作车辆101的示例性过程700的框图。过程700开始于框705,在框705中,车辆101中的计算机105规划从起点到目的地的路线500。如上所述,路线500是从起点到目的地的车辆101为到达目的地所遵循的路径。如上所述,计算机105可以利用路径多项式来识别路径。
接下来,在框710中,计算机105识别沿着路线500的一个或多个地标210。计算机105可以从服务器125请求高分辨率地图,所述高分辨率地图包括在包括路线500的地理区域中的地标210的识别。计算机105可以从地图中识别路线500上或附近的地标210。
接下来,在框715中,计算机105基于地标210来规划车辆101的一个或多个部件115的致动。如上所述,地标210可以位于路线500的部分505处,在所述部分处,可以执行车辆101的轨迹变化(例如,左转弯、右转弯等)以保持在路线500上。当沿着路线500行驶时,计算机105可以在收集到包括地标210的图像200之后规划部件115的致动。
接下来,在框720中,当车辆101沿着路线500移动时,计算机105致动一个或多个传感器110以收集车辆101周围的环境的图像200。例如,计算机105可以致动摄像头110以收集图像200。
接下来,在框725中,计算机105确定图像200中的一个是否包括识别的地标210。如上所述,计算机105可以将图像200输入到机器学习程序205中,所述机器学习程序识别地标210。也就是说,机器学习程序205可以识别输入图像200的特征向量235与通过服务器125从服务器125的存储器分配215经由网络120传输的地标210的参考特征向量225之间的相似性度量。替代地,计算机105的存储器可以存储地标210的存储器分配215。相似性度量可以是概率分布差异或统计距离,诸如马哈拉诺比斯距离或KL散度。机器学习程序205可以输出图像200包括地标210的概率。当概率高于预定阈值时,机器学习程序205可以输出地标210的识别。如果计算机105识别地标210,则过程700在框730中继续。否则,过程700返回到框720以收集更多图像200。
在框730中,计算机105根据分配给识别的地标210的规划致动来致动部件115。如上所述,计算机105可以在识别地标210之后致动部件115以遵循路线500。例如,在识别地标210中的一个之后,计算机105可以确定规划致动是左转弯,并且计算机105可以致动推进、制动和转向以执行左转弯。
接下来,在框735中,计算机105确定车辆101是否已经到达路线500结束处的目的地。计算机105可以收集车辆101的位置的地理坐标数据,并且将车辆101的位置与目的地的地理坐标进行比较。另外或替代地,计算机105可以识别目的地处的地标210以确定车辆101已经到达目的地。如果计算机105确定车辆101尚未到达路线500结束处的目的地,则过程700返回到框720以收集更多图像200。否则,过程700结束。
本文所讨论的计算装置(包括计算机105)包括处理器和存储器,所述存储器通常各自包括可由诸如上面识别的计算装置的一个或多个计算装置执行并用于执行上述过程的框或步骤的指令。计算机可执行指令可以由使用多种编程语言和/或技术创建的计算机程序来编译或解释,所述编程语言和/或技术包括但不限于单独或组合形式的JavaTM、C、C++、Visual Basic、Java Script、Python、Perl、HTML等。一般来说,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令并且执行这些指令,由此执行一个或多个过程,包括本文所描述的过程中的一者或多者。此类指令和其他数据可以使用各种计算机可读介质来存储和传输。计算机105中的文件通常是存储在计算机可读介质(诸如存储介质、随机存取存储器等)上的数据的集合。
计算机可读介质包括参与提供可以由计算机读取的数据(例如,指令)的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘和其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(DRAM)。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、CD ROM、DVD、任何其他光学介质、穿孔卡、纸带、具有孔图案的任何其他物理介质、RAM、PROM、EPROM、快闪EEPROM、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任何其他介质。
关于本文所描述的介质、过程、系统、方法等,应当理解,尽管已经将此类过程等的步骤描述为按照某个有序序列发生,但是此类过程可以通过以不同于本文描述的顺序的顺序执行所描述的步骤来实践。还应当理解,可以同时执行某些步骤,可以添加其他步骤,或者可以省略本文描述的某些步骤。例如,在过程600中,可以省略步骤中的一者或多者,或者可以按与图6中示出的顺序不同的顺序执行所述步骤。换句话说,本文对系统和/或过程的描述是出于说明某些实施例的目的而提供的,而决不应将其理解为是对所公开的主题进行限制。
因此,应理解,包括以上描述和附图以及所附权利要求的本公开意图为说明性的而非限制性的。在阅读了以上描述之后,除了所提供的示例之外的许多实施例和应用对于本领域技术人员而言将是明显的。本发明的范围不应参考以上描述来确定,而应参考所附的和/或基于此包括在非临时专利申请中的权利要求连同此类权利要求所赋予权利的等效物的全部范围来确定。设想并预期未来的发展将在本文讨论的技术中发生,并且所公开的系统和方法将并入到此类未来实施例中。总而言之,应当理解,所公开的主题能够进行修改和变化。
除非另有说明或上下文另有要求,否则修饰名词的冠词“一个”应被理解为是指一个或多个。短语“基于”涵盖部分地或完全地基于。
形容词“第一”和“第二”贯穿本文档用作标识符,而并非意图表示重要性或顺序。
根据本发明,提供了一种系统,其具有计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由处理器执行以:接收包括物理地标的图像;输出多个合成图像,其中每个合成图像是通过在接收到的图像中模拟至少一个环境特征而生成;为多个合成图像中每一个生成相应特征向量;并且在基于合成图像的特征向量与第二接收到的图像的特征向量之间的相似性度量识别第二接收到的图像中的物理地标时致动一个或多个车辆部件,所述相似性度量是概率分布差异或统计距离中的一者。
根据实施例,所述指令还包括以下指令:生成用于车辆的路线,识别沿着路线的一个或多个物理地标,以及基于识别的一个或多个物理地标来规划一个或多个车辆部件的致动。
根据实施例,所述指令还包括以下指令:当车辆正在沿着路线行驶时,用摄像头收集第二接收到的图像,识别第二接收到的图像中的物理地标,以及基于基于识别的一个或多个物理地标的规划致动来致动一个或多个车辆部件。
根据实施例,所述指令还包括以下指令:将操纵分配给路线上的每个识别的物理地标,所述操纵是左转弯、右转弯或笔直路径中的一者。
根据实施例,所述指令还包括以下指令:识别与物理地标相关联的多个特征向量,以及识别特征向量的相似性度量。
根据实施例,所述指令还包括以下指令:在第一多个特征向量的相似性度量高于阈值时识别物理地标,以及在第二多个特征向量的相似性度量高于阈值时识别第二物理地标。
根据实施例,所述指令还包括以下指令:识别合成图像的均值特征向量与多个接收到的图像的特征向量之间的相似性度量,以及当所述相似性度量高于阈值时识别物理地标。
根据实施例,统计距离是马哈拉诺比斯距离。
根据实施例,概率分布差异是KL散度。
根据实施例,环境特征是日照、降水、云量、交通量或视角变化中的一者。
根据实施例,所述指令还包括以下指令:生成多个合成图像的特征向量的协方差矩阵,生成作为协方差矩阵的逆矩阵的逆协方差矩阵,以及基于协方差矩阵或逆协方差矩阵中的至少一者来确定相似性度量。
根据实施例,指令还包括以下指令:利用机器学习程序来生成多个合成图像的特征向量。
根据本发明,一种方法包括:接收包括物理地标的图像;输出多个合成图像,其中每个合成图像是通过在接收到的图像中模拟至少一个环境特征而生成;为多个合成图像中的每一个生成相应特征向量;以及在基于合成图像的特征向量与第二接收到的图像的特征向量之间的相似性度量识别第二接收到的图像中的物理地标时致动一个或多个车辆部件,所述相似性度量是概率分布差异或统计距离中的一者。
在本发明的一个方面,所述方法包括:生成用于车辆的路线;识别沿着路线的一个或多个物理地标;以及基于识别的物理地标来规划一个或多个车辆部件的致动。
在本发明的一个方面,所述方法包括:当车辆正在沿着路线行驶时,用摄像头收集第二接收到的图像;识别第二接收到的图像中的物理地标;以及基于与物理地标相关联的规划致动来致动一个或多个车辆部件。
在本发明的一个方面,所述方法包括:将操纵分配给路线上的每个识别的物理地标,所述操纵是左转弯、右转弯或笔直路径中的一者。
在本发明的一个方面,所述方法包括:识别合成图像的均值特征向量与多个接收到的图像的特征向量之间的相似性度量,以及当所述相似性度量高于阈值时识别物理地标。
在本发明的一个方面,环境特征是日照、降水、云量、交通量或视角变化中的一者。
在本发明的一个方面,所述方法包括:生成多个合成图像的特征向量的协方差矩阵;生成作为协方差矩阵的逆矩阵的逆协方差矩阵;以及基于协方差矩阵或逆协方差矩阵中的至少一者来确定相似性度量。
在本发明的一个方面,所述方法包括:利用机器学习程序来生成多个合成图像的特征向量。
Claims (15)
1.一种方法,其包括:
接收包括物理地标的图像;
输出多个合成图像,其中每个合成图像是通过在接收到的图像中模拟至少一个环境特征而生成;
为所述多个合成图像中的每一个生成相应的特征向量;以及
当基于所述合成图像的所述特征向量与第二接收到的图像的特征向量之间的相似性度量识别所述第二接收到的图像中的所述物理地标时,致动一个或多个车辆部件,所述相似性度量是概率分布差异或统计距离中的一者。
2.如权利要求1所述的方法,其还包括:生成用于车辆的路线;识别沿着所述路线的一个或多个物理地标;以及基于识别的一个或多个物理地标来规划所述一个或多个车辆部件的致动。
3.如权利要求2所述的方法,其还包括:当所述车辆正在沿着所述路线行驶时,用摄像头收集所述第二接收到的图像;识别所述第二接收到的图像中的所述物理地标;以及基于基于所述识别的一个或多个物理地标的规划致动来致动所述一个或多个车辆部件。
4.如权利要求2所述的方法,其还包括:将操纵分配给所述路线上的每个识别的物理地标,所述操纵是左转弯、右转弯或笔直路径中的一者。
5.如权利要求1所述的方法,其还包括:识别与所述物理地标相关联的多个特征向量,以及识别所述特征向量的所述相似性度量。
6.如权利要求5所述的方法,其还包括:在第一多个所述特征向量的所述相似性度量高于阈值时识别所述物理地标,以及在第二多个所述特征向量的所述相似性度量高于所述阈值时识别第二物理地标。
7.如权利要求1所述的方法,其还包括:识别所述合成图像的均值特征向量与多个接收到的图像的特征向量之间的相似性度量,以及当所述相似性度量高于阈值时识别所述物理地标。
8.如权利要求1所述的方法,其中所述统计距离是马哈拉诺比斯距离。
9.如权利要求1所述的方法,其中所述概率分布差异是KL散度。
10.如权利要求1-9中任一项所述的方法,其中所述环境特征是日照、降水、云量、交通量或视角变化中的一者。
11.如权利要求1-9中任一项所述的方法,其还包括:生成所述多个合成图像的所述特征向量的协方差矩阵;生成作为所述协方差矩阵的逆矩阵的逆协方差矩阵;以及基于所述协方差矩阵或所述逆协方差矩阵中的至少一者来确定所述相似性度量。
12.如权利要求1-9中任一项所述的方法,其还包括:利用机器学习程序来生成所述多个合成图像的所述特征向量。
13.一种计算机,其被编程为执行权利要求1-9中任一项所述的方法。
14.一种车辆,其包括权利要求13所述的计算机。
15.一种计算机程序产品,其包括存储指令的计算机可读介质,所述指令能由计算机处理器执行以执行权利要求1-9中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/904,653 | 2020-06-18 | ||
US16/904,653 US20210397198A1 (en) | 2020-06-18 | 2020-06-18 | Enhanced vehicle operation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113822118A true CN113822118A (zh) | 2021-12-21 |
Family
ID=78823323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110633050.3A Pending CN113822118A (zh) | 2020-06-18 | 2021-06-07 | 增强的车辆操作 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210397198A1 (zh) |
CN (1) | CN113822118A (zh) |
DE (1) | DE102021114724A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401138B (zh) * | 2020-02-24 | 2023-11-07 | 上海理工大学 | 生成对抗神经网络训练过程的对抗优化方法 |
KR102159052B1 (ko) * | 2020-05-12 | 2020-09-23 | 주식회사 폴라리스쓰리디 | 영상 분류 방법 및 장치 |
US12026957B2 (en) * | 2021-12-20 | 2024-07-02 | Gm Cruise Holdings Llc | Generating synthetic three-dimensional objects |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7620204B2 (en) * | 2006-02-09 | 2009-11-17 | Mitsubishi Electric Research Laboratories, Inc. | Method for tracking objects in videos using covariance matrices |
US10241514B2 (en) * | 2016-05-11 | 2019-03-26 | Brain Corporation | Systems and methods for initializing a robot to autonomously travel a trained route |
CN107609502A (zh) * | 2017-09-05 | 2018-01-19 | 百度在线网络技术(北京)有限公司 | 用于控制无人驾驶车辆的方法和装置 |
CN111542841A (zh) * | 2018-06-08 | 2020-08-14 | 北京嘀嘀无限科技发展有限公司 | 一种内容识别的系统和方法 |
US10902616B2 (en) * | 2018-08-13 | 2021-01-26 | Nvidia Corporation | Scene embedding for visual navigation |
US20200193552A1 (en) * | 2018-12-18 | 2020-06-18 | Slyce Acquisition Inc. | Sparse learning for computer vision |
CN110717458B (zh) * | 2019-10-11 | 2022-07-22 | 北京地平线机器人技术研发有限公司 | 人脸识别方法及识别装置 |
US11328170B2 (en) * | 2020-02-19 | 2022-05-10 | Toyota Research Institute, Inc. | Unknown object identification for robotic device |
-
2020
- 2020-06-18 US US16/904,653 patent/US20210397198A1/en not_active Abandoned
-
2021
- 2021-06-07 CN CN202110633050.3A patent/CN113822118A/zh active Pending
- 2021-06-08 DE DE102021114724.7A patent/DE102021114724A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102021114724A1 (de) | 2021-12-23 |
US20210397198A1 (en) | 2021-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10937178B1 (en) | Image-based depth data and bounding boxes | |
US11748909B2 (en) | Image-based depth data and localization | |
US20230127115A1 (en) | Three-Dimensional Object Detection | |
CN110588653B (zh) | 自主车辆的控制系统、控制方法以及控制器 | |
CN108528458B (zh) | 用于车辆尺寸预测的系统和方法 | |
Lee et al. | Convolution neural network-based lane change intention prediction of surrounding vehicles for ACC | |
CN111442776B (zh) | 顺序地面场景图像投影合成与复杂场景重构的方法及设备 | |
EP4152204A1 (en) | Lane line detection method, and related apparatus | |
US10984543B1 (en) | Image-based depth data and relative depth data | |
CN113822118A (zh) | 增强的车辆操作 | |
US10884428B2 (en) | Mesh decimation techniques and validation | |
Zaghari et al. | The improvement in obstacle detection in autonomous vehicles using YOLO non-maximum suppression fuzzy algorithm | |
CN116324661A (zh) | 基于激光雷达数据的地面高度估计 | |
US11227401B1 (en) | Multiresolution voxel space | |
CN111986128A (zh) | 偏心图像融合 | |
CN112184844A (zh) | 车辆图像生成 | |
US11176823B2 (en) | Enhanced vehicle operation | |
US12054152B2 (en) | Enhanced object detection | |
US20230311932A1 (en) | Merging object and background radar data for autonomous driving simulations | |
US11801836B2 (en) | Enhanced vehicle operation | |
US20230311930A1 (en) | Capturing and simulating radar data for autonomous driving systems | |
US11981326B2 (en) | Object identification with thermal imaging | |
US20230202497A1 (en) | Hypothesis inference for vehicles | |
US12033346B2 (en) | Distance representation and encoding | |
Salzmann et al. | Online Path Generation from Sensor Data for Highly Automated Driving Functions |
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 |