CN112752950B - 修改与地图数据相关联的地图元素 - Google Patents
修改与地图数据相关联的地图元素 Download PDFInfo
- Publication number
- CN112752950B CN112752950B CN201980063410.1A CN201980063410A CN112752950B CN 112752950 B CN112752950 B CN 112752950B CN 201980063410 A CN201980063410 A CN 201980063410A CN 112752950 B CN112752950 B CN 112752950B
- Authority
- CN
- China
- Prior art keywords
- map
- track
- determining
- updated
- elements
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 103
- 230000009466 transformation Effects 0.000 claims abstract description 76
- 238000005457 optimization Methods 0.000 claims description 11
- 238000000926 separation method Methods 0.000 claims description 7
- 238000006798 ring closing metathesis reaction Methods 0.000 abstract description 7
- 230000004044 response Effects 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 41
- 238000004422 calculation algorithm Methods 0.000 description 30
- 230000015654 memory Effects 0.000 description 26
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 241000237519 Bivalvia Species 0.000 description 9
- 235000020639 clam Nutrition 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 230000003936 working memory Effects 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000010238 partial least squares regression Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000012628 principal component regression Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- KVCQTKNUUQOELD-UHFFFAOYSA-N 4-amino-n-[1-(3-chloro-2-fluoroanilino)-6-methylisoquinolin-5-yl]thieno[3,2-d]pyrimidine-7-carboxamide Chemical compound N=1C=CC2=C(NC(=O)C=3C4=NC=NC(N)=C4SC=3)C(C)=CC=C2C=1NC1=CC=CC(Cl)=C1F KVCQTKNUUQOELD-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3859—Differential updating map data
-
- 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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/3811—Point data, e.g. Point of Interest [POI]
-
- 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
-
- 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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3837—Data obtained from a single source
-
- 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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3841—Data obtained from two or more sources, e.g. probe vehicles
-
- 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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3848—Data obtained from both position sensors and additional sensors
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Electromagnetism (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
- Instructional Devices (AREA)
Abstract
本发明讨论了用于修改与地图数据关联的地图元素的技术。地图数据可以包括表示环境的三维数据(例如,LIDAR数据),而地图元素可以与地图数据相关联以识别与环境相关联的位置和语义信息,例如与行驶车道或人行横道相对应的区域。可以更新与地图数据关联的轨迹,例如当响应环闭合、经更新校准等而对准一个或多个轨迹时。轨迹和经更新轨迹之间的变换可以应用于地图元素以变形地图元素,使得其对应于经更新地图数据,从而提供用于更新与地图数据相关联的地图元素的自动且准确的技术。
Description
相关申请的交叉引用
本专利申请要求于2018年9月28日提交的序列号为16/145,740的美国实用新型专利申请的优先权。该申请序列号为16/145,740的全部内容通过引用并入本申请。
背景技术
数据可以在环境中捕获并被表示为环境地图。尽管可以将地图用于多种目的,但通常这些地图可以供在环境中导航的车辆使用。在某些情况下,地图可能与各种数据层相关联。然而,更新地图的一层可能需要将变换传播到其他层,这可能会占用大量资源。
附图说明
参照附图描述详细描述。在附图中,附图标记的最左边的数字标识该附图标记首次出现的附图。在不同附图中使用相同的附图标记表示相似或相同的组件或特征。
图1是根据本公开的实施例的用于接收地图数据以及一个或多个地图元素、确定第一和第二轨迹之间的对准以确定经更新第一轨迹、以及基于第一轨迹和经更新第一轨迹之间的变换来生成一个或多个经更新地图元素的示例过程的图形流程图。
图2是根据本公开的实施例的基于地图数据的一个或多个地图元素的图示以及示出随后相对于经更新地图数据被错误和正确地注册的一个或多个地图元素的示例的图示。
图3是根据本公开的实施例的包括各种地图元素和地图元素控制点的地图数据的图示。
图4是根据本公开的实施例的用于确定第一轨迹和第二轨迹之间的对准以及确定变换以生成经更新第一轨迹的示例过程的图形流程图。
图5是根据本公开的实施例的用于选择地图点(例如地图元素控制点)并至少部分地基于轨迹和经更新轨迹之间的变换和/或至少部分地基于其他约束生成经变形地图点的示例过程的图示流程图。
图6描绘了用于实现本文描述的技术的示例***的框图。
图7描绘了根据本公开的实施例的用于基于轨迹和经更新轨迹间的变换生成经变形地图元素的示例过程。
具体实施方式
本公开涉及用于修改与地图数据相关联的地图元素的技术。例如,地图数据可以包括当自动驾驶车辆穿越环境时由自动驾驶车辆捕获的三维数据(例如,LIDAR数据),并且可以与在捕获这种地图数据时由自动驾驶车辆行进的轨迹相关联。在某些情况下,地图元素可以与地图数据相关联,以提供有关环境的额外信息。例如,地图元素可以包括:车道元素,其用于指示车道或驾驶廊道的范围;停车线元素,其用于指示交叉路口的停车线;交通信号灯元素,其用于指示交通信号灯的位置;与限速相关的区域;和/或与环境相关联的任何信息。
在一些情况下,例如当响应于环闭合、经更新校准、对地图绘制和/或定位算法的修改等而对准一个或多个轨迹时,可以更新与地图数据相关联的轨迹。如果地图元素相对于经更新地图数据的位置未更新,则地图元素可能相对于经更新地图数据被错误地注册。因此,本文讨论的技术包括确定第一轨迹和第二轨迹之间的对准(例如,使用诸如CLAMS(同时进行校准、定位和地图绘制)或SLAM(同时进行定位和地图绘制)之类的算法),并且基于这样的对准,可以将第一轨迹更新为经更新第一轨迹。
对准可以生成可用于生成经更新第一轨迹的变换,通常用于更新、变形或以其他方式修改地图元素以生成经变形地图元素。在某些情况下,使地图元素变形可以基于与第一轨迹上的最近点相关联的变换。在某些情况下,地图元素与轨迹点之间的距离可以低于阈值距离,以便在地理上约束变形操作。基于第一轨迹的一个或多个轨迹点和经更新第一轨迹的对应一个或多个更新轨迹点之间的变换(例如,基于自动驾驶车辆的距离变化和/或姿态变化),可以修改地图元素以生成经修改地图元素或经变形地图元素。在某些情况下,例如,可以使用最小二乘优化算法将多个地图元素变形为多个经变形地图元素。
在对地图元素进行变形以生成经变形地图元素时,可以使用额外因素或约束。如上所述,在某些情况下,经变形地图元素可以至少部分地基于第一轨迹和经更新第一轨迹之间的变换,其可以包括评估第一轨迹与经更新第一轨迹上的对应点之间的距离(例如,欧几里得距离),以及评估姿态或姿态变化(例如,自动驾驶车辆的包括x坐标、y坐标、z坐标、侧倾、俯仰和/或偏航中的一个或多个的多维定向))。在某些情况下,经变形地图元素可以至少部分基于与特定点相关联的一个或多个额外轨迹点。例如,对于选定轨迹点,相邻轨迹点(例如,时间上更早/更晚或沿轨迹的距离)可用于在确定经变形地图元素的位置时提供额外约束或估计。在某些情况下,地图元素之间的各种关系,例如地图元素之间的相对距离(除了使用或代替使用与多个轨迹点相关的额外信息),可以用于约束或估计经变形地图元素的相对位置。
如上所述,地图元素可以包括:车道元素,其用于指示车道或驾驶廊道的范围;停车线元素,其用于指示交叉路口的停车线;交通信号灯元素,其用于指示交通信号灯的位置;与限速相关的区域;和/或与环境相关的任何信息。地图元素的其他非限制性示例可以包括自行车道元素、停车元素、交叉路口元素、车道分隔元素、停车标志元素、退让标志元素、退让线元素等。可以理解,环境可以包括多个物理和/或虚拟特征,并且地图元素不应限于本文明确讨论的那些。
在某些情况下,地图元素可以表示为由一个或多个控制点定义和/或与各种功能或参数相关联的二维几何图元。例如,人行横道地图元素可包括一个或多个地图元素控制点,这些控制点定义了人行横道的位置(例如,在二维全局坐标系中)和/或人行横道的范围(例如,元素的长度和宽度)。在某些情况下,地图元素和/或地图元素控制点可以手动关联到地图数据和/或可以使用机器学习技术添加并自动拟合和/或可以手动调整。
地图元素的另一个示例包括车道元素,车道元素可以定义自动驾驶车辆在交叉路口导航时要穿越的驾驶廊道。在一些示例中,车道元素可包括非均匀有理基础样条(NURBS)和相关联的控制点,这些控制点定义了曲线在环境内的形状和位置。在某些情况下,由于可以相对于全局坐标系来定义地图元素,因此当底层地图数据被更新时,本文讨论的技术可以用于更新与地图元素相关联的一个或多个位置和/或形状,如本文所述。
在某些情况下,地图元素(例如交通信号灯元素)可以表示为三维地图元素。然而,对于与二维信息相关联的地图元素,可以基于表示环境的三维地图数据(例如,环境的三维网格或三维LIDAR数据)将额外高度信息与地图元素相关联,或可以将额外高度信息与同该轨迹相关联的地平面相关联。
在某些情况下,地图元素可以进一步包括语义信息,以识别物体的类型、物体的类别等。在某些情况下,地图元素可以用作符号(例如,用作线性时间逻辑符号或信号时间逻辑符号)以用于生成和/或评估自动驾驶车辆的轨迹。
本文讨论的技术可以多种额外方式改善计算装置的功能。在某些情况下,将地图元素与地图数据相关联的初始任务可以由制图师或技术人员手动执行。然而,由于这种地图元素可以与全局位置信息相关联,因此当响应于环闭合事件、经更新校准等而更新轨迹时,地图元素可以不被更新。先前技术包括制图师或熟练的技术人员响应于这种经更新地图数据而手动更新地图元素,取决于环境的大小,这可能需要花费数小时至数周的时间,并且可能无法适当地合并经更新轨迹之间的变换。本文讨论的技术可以使这种更新操作自动化,从而显着减少更新地图元素所需的处理和时间。可以理解的是,这种地图元素可以与地图数据结合使用以生成用于自动驾驶车辆穿越环境的轨迹。此外,未正确反映环境状态或相对于经更新地图数据被错误地注册的地图元素会在轨迹中引入错误,这会导致自动驾驶车辆穿越环境时导航效率低下或不安全。例如,表示车道元素的未正确对准地图数据的地图元素,如果用于生成自动驾驶车辆的轨迹,则可能会导致在道路的错误一侧上行驶或导致发生碰撞。本文讨论了计算机功能的这些和其他改进。
本文描述的技术可以以多种方式来实现。下面参考以下附图提供示例实施方式。尽管在自动驾驶车辆的背景下进行了讨论,但是本文描述的方法、设备和***可以应用于各种***(例如,传感器***或机器人平台),并且不限于自动驾驶车辆。在另一个示例中,可以在航空或航海环境中,或在使用地图的任何***中利用这些技术。此外,尽管在LIDAR数据的背景下进行了讨论,但是地图数据可以包括任何二维、三维或多维数据,例如图像数据(例如,立体摄像机、渡越时间数据等))、RADAR数据、SONAR数据等。另外,本文描述的技术可以与真实数据(例如,使用一个或多个传感器捕获的)、模拟数据(例如,由模拟器生成的)或两者的任何组合一起使用。
图1是根据本公开的实施例的示例过程100的图形流程图,该过程用于接收地图数据以及一个或多个地图元素、确定第一和第二轨迹之间的对准以确定经更新第一轨迹、并基于第一轨迹和经更新第一轨迹之间的变换生成一个或多个经更新地图元素。
在操作102处,该过程可以包括接收与第一轨迹相关联的地图数据以及一个或多个地图元素。例如,自动驾驶车辆或机器人平台可以经由第一轨迹穿越环境以捕获传感器数据,例如LIDAR数据,该传感器数据被接收和/或以其他方式被编译为地图数据。在某些情况下,地图数据可以与一个或多个轨迹相关联。在某些情况下,一个或多个地图元素可以包括添加到地图数据的注释以指定地图数据中与语义信息相关联的区域(例如,人行横道区域),如本文所讨论的。示例104示出了地图数据106(例如,LIDAR数据)、地图元素108(例如,人行横道元素)、地图元素110(例如,车道元素)以及地图元素112(例如,停车元素)。
出于讨论的目的,捕获(或利用)地图数据106的车辆可以是配置为根据美国国家公路交通安全管理局发布的5级分类进行操作的自动驾驶车辆,该分类描述了一种能够在整个行程中执行所有安全关键功能的车辆,而驾驶员(或乘员)在任何时候都不被希望控制该车辆。在这样的示例中,由于车辆可以被配置为从开始到停止控制所有功能(包括所有停车功能),因此该车辆可以不被占用。这仅是示例,并且本文描述的***和方法可以被结合到任何地面、空中或水上载具中,包括从需要始终由驾驶员手动控制的车辆到部分或完全自主控制的载具。在整个本公开中描述了与车辆相关联的额外细节。
通常,地图元素108、110和112可以表示环境中与语义信息相关联的区域。在某些情况下,地图元素108、110和112可以包括几何图元,例如正方形、矩形、弧形、曲线、螺旋形或表示环境特征的任何形状。在某些情况下,几何图元可以表示形状的紧凑形式。例如,矩形可以由位置(例如,全局坐标系中的x和y坐标)和范围(例如,长度和宽度)定义。在一些示例中,地图元素108、110和112可以由与几何图元的参数相关联的控制点定义或以其他方式由与几何图元的参数相关联的控制点操纵。地图元素108、110和112的额外细节在下面结合图3以及在整个本公开中进行讨论。
在操作114处,该过程可以包括接收第二轨迹。示例116示出了第一轨迹118和第二轨迹120。如本文中所讨论的,地图数据106可以与第一轨迹118相关联,而第二轨迹120可以表示自动驾驶车辆在由地图数据106表示的环境中的相同或相似区域中行驶的轨迹。即,在某些情况下,第一轨迹118和第二轨迹120可以相关,使得第一轨迹118的至少一部分与第二轨迹120的至少一部分重叠。在某些情况下,第一轨迹118和第二轨迹120可以在环闭合事件的背景下关联,该环闭合事件可以包括识别先前访问的位置并相应地更新校准的过程。在某些情况下,第二轨迹可以表示与第一轨迹相关联的经更新校准。在2017年8月11日提交的美国专利申请15/674,853中讨论了环闭合事件(以及对准轨迹和/或更新校准,如下所述)的示例,其全部内容通过引用合并于此。
在操作122处,该过程可以包括确定第一轨迹和第二轨迹之间的对准,以确定第一轨迹和经更新第一轨迹之间的变换。示例124示出了第一轨迹118和第二轨迹120。第一轨迹118和第二轨迹120可以对准(如对准126所示)以生成经更新第一轨迹128。在一些示例中,操作122可以利用一个或多个算法(例如SLAM或CLAMS)生成经更新第一轨迹128。如上所述,在2017年8月11日提交的美国专利申请15/674,853中讨论了生成经更新轨迹的SLAM和CLAMS算法的示例,其全部内容通过引用并入本文,如上所述。在某些情况下,对准操作可以输出与第一轨迹118相关联的各个轨迹点与和与经更新第一轨迹128相关联的对应点之间的变换(例如,变换138)。
通常,操作122可以包括将与第一轨迹118相关联的第一LIDAR数据与和第二轨迹120相关联的第二LIDAR数据对准,以减少LIDAR数据共同占据的体素数量(和/或残差得分)。即,可以以组合方式操纵第一LIDAR数据和第二LIDAR数据的位置,以减少LIDAR数据占据的体素数量。当LIDAR数据占据最少体素数量时,可以减小体素大小和/或组合搜索步长,以进一步完善LIDAR数据集的对准。当达到两个数据集之间的最佳对准时,与LIDAR对准相关联的变换可以应用于相应轨迹以确定经更新第一轨迹128。在某些情况下,可以将第一LIDAR数据接收作为从第一自动驾驶车辆接收的第一日志数据,并且在某些情况下,可以将第二LIDAR数据接收作为从第一自动驾驶车辆(表示与第一日志数据不同的时间)或从第二自动驾驶车辆接收的第二日志数据。结合图4以及在整个本公开中,提供了生成经更新第一轨迹128的额外细节。
在操作130处,该过程可以包括至少部分地基于地图元素以及第一轨迹和经更新第一轨迹之间的变换(例如,SE(2)、SE(3)、SO(2)、SO(3)等)生成一个或多个经更新地图元素。示例132示出了与一个或多个第一地图元素134相关联的第一轨迹118和与一个或多个经更新地图元素136相关联的经更新第一轨迹128。在一些示例中,一个或多个地图元素134可以对应于与地图元素108、110和/或112相关联的控制点。在某些情况下,一个或多个地图元素134可以对应于直接定义地图元素108、110和/或112的点。在某些情况下,操作130可以包括确定变换138,该变换138包括(例如,自动驾驶车辆)在第一轨迹118上的轨迹点和经更新第一轨迹128上的对应轨迹点之间的距离和/或姿态变化。结合图5以及在整个本公开中,提供了生成一个或多个经更新地图元素136的额外细节。
图2是根据本公开的实施例的基于地图数据的一个或多个地图元素的图示200以及示出随后相对于经更新地图数据不正确和正确地注册的一个或多个地图元素的示例。
示例202示出了环境中与第一轨迹相关联的第一地图数据。在一些示例中,第一地图数据包括由环境中的自动驾驶车辆捕获的LIDAR数据。在某些情况下,第一地图数据可以包括图像数据、RADAR数据、SONAR数据、遥测数据、GPS数据、车轮编码器数据等。
示例204示出了示例202的第一地图数据,其包括基于第一地图数据的一个或多个地图元素。例如,示例204包括地图元素206、208、210、212和214。在一些示例中,在一些示例中,地图元素206表示人行横道元素,该人行横道元素第一地图数据中指示在语义上标记为与环境中表示人行横道的区域相对应的区域。在一些示例中,地图元素208和210表示停车元素,该停车元素指示第一地图数据中在语义上被标记为与环境中表示道路两侧的停车区域的区域相对应的区域。在一些示例中,地图元素212表示停车线元素,该停车线元素指示环境中在语义上被标记为与交叉路口处的停车线相对应的区域。在一些示例中,地图元素214表示车道元素,该车道元素指示第一地图数据中在语义上被标记为与当车辆导航交叉路口(例如,通过交叉路口向左转)时车辆所要穿越的驾驶廊道相对应的区域。在某些情况下,地图元素可以进一步包括但不限于车道元素、自行车道元素、人行横道元素、交叉路口元素、车道分隔元素、交通信号灯元素、停车标志元素、停车线元素、退让标志元素、退让线元素、停车车道元素、车行道元素、减速带元素、违章穿越马路区域(例如虚拟人行横道)、轨迹航路点(例如已知轨迹)、乘客接送点、标志位置元素、地理围栏元素等中的一个或多个。
如本文所述,在一些示例中,地图元素206、208、210、212和214可以由制图师或技术人员手动添加(例如,注释)到地图数据以表示环境的各种区域。
示例216示出了环境中与第二轨迹相关联的第二地图数据。在一些示例中,第二轨迹可以是与示例202的第一轨迹相对应的经更新第一轨迹,该第一轨迹可以响应于环闭合和经更新校准等而被更新。在一些示例中,第二轨迹可以是独立的轨迹(例如,第二轨迹可以不表示相对于第一轨迹的经更新轨迹而可以替代地表示所捕获的与第一轨迹至少部分重叠或接近的数据)。如在示例216和202中可以看到的,示例216和202表示环境的相同区域,尽管这些区域相对于彼此偏移。
示例218示出了示例204中未如示例216中所示地正确地注册到第二地图数据的地图元素。如示例218中所示,地图元素206、208、210、212和214没有适当地表示第二地图数据的对应区域。也即,由于示例216的第二地图数据偏移或与示例202的第一地图数据不对准,因此地图元素206、208、210、212和214与底层第二地图数据不对准。即,地图元素206、208、210、212和214的全局坐标不对应于示例216的第二地图数据的全局坐标。
示例220示出了根据本文讨论的技术正确地注册到示例216的第二地图数据的经更新地图元素206*,208*,210*,212*和214*。因此,示例220中示出的第二地图数据和经更新地图元素可以被输出到自动驾驶车辆以在穿越环境时控制自动驾驶车辆,从而可以基于正确对准的数据来生成轨迹,如本文所讨论的。如在该示例中使用的,地图元素206*(例如)对应于已被更新以反映底层地图数据的经更新位置的地图元素206(例如,如示例216中所示)。
图3是根据本公开的实施例的包括各种地图元素和地图元素控制点的地图数据的图示300。
在某些情况下,地图数据302可以包括当自动驾驶车辆穿越环境时由自动驾驶车辆捕获的LIDAR数据。在一些示例中,地图数据302可以包括图像数据(例如,RGB图像数据、灰度图像数据、立体图像数据、渡越时间图像数据等)、RADAR数据、SONAR数据等。在某些情况下,地图数据302可以与单个轨迹相关联,而在某些情况下,地图数据302可以与由单个车辆或多个车辆随时间捕获的多个轨迹相关联。
如上面结合图2所讨论的,地图数据302可以与各种地图元素206、208、210、212和214相关联。在一些示例中,各个地图元素206、208、210、212和214可以表示几何图元,由此每个地图元素都可以与一个或多个地图控制点相关联。
地图元素206(例如,人行横道元素)可以与地图元素控制点304(例如304(1)、304(2)和304(3))相关联,从而共同定义地图元素206的位置(例如,在全局坐标系中)以及地图元素206的范围(例如,长度和宽度)。尽管地图元素控制点304可以用任何形状来示出或表示,但是地图元素控制点304被示为覆盖地图元素206的正方形。在某些情况下,可以在图形用户界面中呈现地图数据302、地图元素206和地图元素控制点304,以供制图师或本领域技术人员建立地图元素206和/或允许制图师或本领域技术人员调整控制点,从而调整、变形或以其他方式修改地图元素206。此外,在某些情况下,本文讨论的修改技术涉及自动改变地图元素控制点304的位置,这继而可以调整地图元素206的位置和/或范围,以便在底层地图数据更新时更新或修改地图元素。在其他示例中,可以直接应用操作以直接改变地图元素206的位置和/或形状而无需使用地图元素控制点。
地图元素208(例如,停车元素)可以表示地图数据302中与车辆的停车区域相对应的区域。在某些情况下,地图元素208可以由二维边界框定义,并且在某些情况下,地图元素208可以由地图元素控制点定义。对应地图元素210(例如,停车元素)可以示出在来自地图元素210的整个道路上并且可以独立于地图元素208进行添加、变形或修改。
地图元素212(例如,停车线元素)可以与地图元素控制点306相关联。在某些情况下,调整地图元素控制点306可以修改或变形地图元素312的位置和/或范围。
地图元素214(例如,车道元素)可以与地图元素控制点308(例如,308(1)、308(2)和308(3))相关联,从而共同定义通过由地图数据302表示的交叉路口的驾驶廊道。在一些示例中,地图元素控制点308(1)和308(3)定义与地图元素214相关联的锚点,而地图元素控制点308(2)定义车道元素的曲率。在一些示例中,地图元素控制点308共同定义了NURBS,使得改变地图元素控制点308中的一个会使地图元素214变形并因此可以更改用于导航通过环境的自动驾驶车辆的驾驶廊道。在某些情况下,地图元素控制点308和地图元素214可以经由图形用户界面手动添加,并且可以根据本文所讨论的技术而在底层地图数据302和/或与地图数据302相关联的底层轨迹被更新或以其他方式调整时相应地自动更新。
图4是根据本公开的实施例的用于确定第一轨迹和第二轨迹之间的对准并且确定变换以生成经更新第一轨迹的示例过程的图形流程图400。
在操作402处,该过程可以包括将第一轨迹118和第二轨迹120对准。在某些情况下,操作402可以包括将与第一轨迹118相关联的第一LIDAR数据与和第二轨迹120相关联的第二LIDAR数据对准。在一些示例中,操作402可以使用SLAM算法或CLAMS算法(例如,如美国专利申请15/674,853中所讨论的)。简而言之,操作402可以包括改变LIDAR数据集中的一个或两个的位置/定向,以测量与LIDAR数据的“脆性”相关联的残差得分。在示例404中,可以使用诸如SLAM或CLAMS的对准算法确定第一轨迹118和第二轨迹120之间的对准406。
在操作408处,该过程可以包括确定变换以生成经更新第一轨迹。在某些情况下,经更新第一轨迹128可以至少部分地基于第一轨迹118和对准406。示例410示出了通过将变换412应用于第一轨迹118而生成的经更新第一轨迹128。如图所示,经更新第一轨迹128可以表示相对于第一轨迹118略微不同的轮廓(例如,不同轨迹)。也就是说,在某些情况下,基于第一轨迹118和第二轨迹120之间的对准406,经更新第一轨迹128可以表示任何平移、变形、偏移、偏斜等。
图5是根据本公开的实施例的用于选择地图点(例如地图元素控制点)以至少部分地基于轨迹和经更新轨迹之间的变换和/或至少部分地基于其他约束生成经变形地图点的示例过程的图示流程图500。
在操作502处,该过程包括选择与待变形为经更新轨迹的轨迹的轨迹点相关联的地图点(例如,地图元素控制点)。示例504示出了轨迹506和经更新轨迹508以及地图点510。在某些情况下,可以根据本文讨论的技术来生成经更新轨迹508(例如,使用用于对准轨迹和/或与轨迹相关联的数据的SLAM或CLAMS算法)。即,轨迹506(或与轨迹506相关联的LIDAR数据)可以与另一轨迹(例如,轨迹120或与轨迹120相关联的LIDAR数据)对准,并且相应地,可以部分地基于对准来生成经更新轨迹508。
尽管示例504示出了单个地图点510,但是可以理解的是,本文讨论的操作可以在多个地图点上执行。
在某些情况下,操作502可以包括确定轨迹506上最接近地图点510的轨迹点512。也就是说,在某些情况下,轨迹506可以表示当自动驾驶车辆穿越轨迹506时与自动驾驶车辆相关联的姿态离散集(例如,x、y、z、侧倾、俯仰、偏航)。在这种情况下,操作502可以搜索轨迹506以确定最接近地图点510的轨迹点512。
在某些情况下,操作502可以包括确定地图点510和轨迹点512之间的距离是否低于阈值距离。例如,如果该距离达到或超过阈值距离,则操作502可以包括避免更新地图点510。
例如,操作513可以包括可以被单独使用或组合使用以产生经变形地图点的各个变形操作,如本文所讨论的。在某些情况下,操作514或524可用于生成经变形地图点。此外,在某些情况下,操作514可以与操作536组合使用以基于额外地图元素建立约束。在某些情况下,操作524可以与操作536组合使用以基于额外地图元素建立约束。本文讨论了操作514、524和536的额外细节。
在操作514处,该过程可以包括至少部分地基于轨迹点以及轨迹点和对应经更新轨迹点之间的变换确定经变形地图点。示例516示出了更新轨迹508上与轨迹506上的轨迹点512相对应的更新轨迹点518。也就是说,在某些情况下,轨迹506上的每个轨迹点(例如512)准确地对应于更新轨迹508上的一个经更新轨迹点(例如518)。
此外,在某些情况下,轨迹点512和经更新轨迹点518之间的变换520可以至少包括两个点512和518之间的位置变化(例如,全局坐标系中的x坐标和y坐标)和/或姿态变化(例如x、y、z、侧倾、俯仰、偏航)。在某些情况下,变换520对于两个轨迹506和508之间的每个点可以是相同的,并且在某些情况下,变换520对于每个点对(例如512和518)可以是唯一的。
因此,操作514可以包括确定点512和518之间的变换520,并将变换520应用于地图点510以生成经变形地图点522(例如,经更新地图点)。
在某些情况下,可以在操作514完成之后完成生成经变形地图点522的操作(例如,无需额外改进或无需合并额外信息)。但是,在某些情况下,该过程可以包括额外操作以将额外要素、信息和/或约束包括在生成经变形地图点522中。符号522、522*和522**用于区分根据本文讨论的技术确定的各种结果经变形地图点。可以理解,可以根据各种实施方式以任何方式组合技术。
在操作524处,该过程可以包括基于相关联的姿态建立约束。如上所述,在某些情况下,轨迹506可以包括自动驾驶车辆的多个离散姿态。示例526示出了至少部分地基于与轨迹点512、轨迹点528、轨迹点530和地图点510相关联的变换、距离和/或姿态来确定经变形地图点522*。也就是说,轨迹点与地图点之间的距离(例如,轨迹点512与地图点510之间的第一距离、轨迹点528与地图点510之间的第二距离和/或轨迹点530和地图点510之间的第三距离)可以用于告知经变形地图点522*的变形。在某些情况下,与轨迹点512、528和/或530相关联的姿态可用于告知经变形地图点522*的变形。在某些情况下,轨迹点512、528和530分别与对应经更新轨迹点518、532和534之间的各个变换可以用于告知经变形地图点522*的变形。在某些情况下,经变形地图点522*的变形可以部分地基于前述特征中的一些或全部以保留地图点510和经变形地图点522*之间的特征相对定向。在某些情况下,如本文所讨论的,最小二乘优化可用于基于距离、姿态和/或变换估计经变形地图点522*的位置。作为非限制性示例,轨迹中最接近姿地图点510的三个态中的每个都可以用于建立三个独立变换(例如,将这种点处的第一轨迹映射到经更新轨迹的变换)。这种变换可以应用于地图点510。在这样的示例中,变换可以产生三个唯一经更新地图点(未示出)。因此,可以将所得经变形地图点522*定义为使到所有三个建议点的距离最小的点(和/或定向)。当然,可以使用最接近地图点510的任何数量的点来告知这种经变形点522*。
在操作536处,该过程可以包括在地图点之间建立约束以保存经变形地图点的相对位置。示例538示出了至少部分地基于地图点510与地图点540之间的距离以及地图点510与地图点542之间的距离来生成经变形地图点522**。因此,可以基于优化来确定变形地图点522**的位置和/或定向以尽可能紧密地保留经变形空间中原始地图点之间的相对变换。相对于变形地图点522**的位置,保留这种相对经变形的示例被示出为经变形地图点544和546。在某些情况下,如本文所讨论的,最小二乘估计可以用于基于地图点之间的距离来估计经变形地图点522**的位置。在至少一些示例中,通过在相对地图点之间引入约束,由于在一个区域中进行的修改将通过这种约束传播到其他区域,因此可以更新(即,变形)不具有经更新数据/轨迹的区域中的地图点。在至少其他示例中,为了最小化一个区域中的变形对其他区域的影响,可以相对于距经修改数据/轨迹的距离来减权此类约束。
在操作548处,该过程可以包括优化经变形地图点的位置以满足一个或多个约束。示例550示出了与轨迹506相关联的多个地图点552以及与经更新轨迹508相关联的多个经变形地图点554。在某些情况下,操作548可基于约束中的一些或所有(例如,在操作514、524和536的上下文中讨论的),使用最小二乘法优化来基本上优化经变形点554的位置。在某些情况下,操作548可以使用梯度下降方法来优化经变形地图点554。在某些情况下,可以使用其他优化算法,并且操作不限于本文讨论的明确优化算法。
图6描绘了用于实现本文描述的技术的示例***600的框图。在至少一个示例中,***600可以包括车辆602。
车辆602可包括车辆计算装置604、一个或多个传感器***606、一个或多个发射器608、一个或多个通信连接610、至少一个直接连接612以及一个或多个驱动***614。
车辆计算装置604可以包括一个或多个处理器616以及与一个或多个处理器616通信联接的存储器618。在所示的示例中,车辆602是自动驾驶车辆;然而,车辆602可以是任何其他类型载具。在所示的示例中,车辆计算装置604的存储器618存储定位部件620、感知部件622、计划部件624、一个或多个***控制器626以及一个或多个地图628。尽管出于说明性目的在图6中被描绘为驻留在存储器618中,但是可以预期的是,定位部件620、感知部件622、计划部件624、一个或多个***控制器626以及一个或多个地图628可以额外地或可替代地可被车辆602访问(例如,远程存储)。
在至少一个示例中,定位部件620可以包括从一个或多个传感器***606接收数据以确定车辆602的位置和/或定向(例如,x-、y-、z-位置、侧倾、俯仰或偏航)。例如,定位部件620可以包括和/或请求/接收环境的地图,并且可以连续地确定自主车辆在该地图内的位置和/或定向。在某些情况下,定位部件620可以利用SLAM(同步定位和地图绘制)、CLAMS(同时进行校准、定位和地图绘制)、相对SLAM、捆绑调整、非线性最小二乘优化等来接收图像数据、LIDAR数据、雷达数据、IMU数据、GPS数据、车轮编码器数据等以准确确定自动驾驶车辆的位置。在某些情况下,定位部件620可以向车辆602的各个部件提供数据以确定自动驾驶车辆的初始位置以用于生成轨迹和/或用于生成地图数据,如本文所讨论的。
在某些情况下,感知部件622可以包括执行物体检测、分段和/或分类的功能。感知部件622可以提供经处理传感器数据,该传感器数据指示邻近车辆602的实体的存在和/或该实体作为实体类型的分类(例如,汽车、行人、骑自行车的人、动物、建筑物、树木、路面、路缘石、人行道、未知等)。在另外的或可替代的示例中,感知部件622可以提供经处理传感器数据,该传感器数据指示与检测到的实体(例如,被追踪的物体)和/或该实体所处的环境相关联的一个或多个特征。在一些示例中,与实体相关联的特征可以包括但不限于x位置(全局和/或局部位置)、y位置(全局和/或局部位置)、z位置(全局和/或局部位置)、定向(例如,侧倾、俯仰、偏航)、实体类型(例如,分类)、实体的速度、实体的加速度、实体的范围(大小)等等。与环境相关联的特征可以包括但不限于环境中另一个实体的存在、环境中另一个实体的状态、一天中的时间、一周中的一天、季节、天气情况、黑暗/明亮指示等。
通常,计划部件624可以确定车辆602要遵循以穿越环境的路径。例如,计划部件624可以确定各种路线和轨迹以及各种细节水平。例如,计划部件624可以确定从第一位置(例如,当前位置)到第二位置(例如,目标位置)行进的路线。为了便于讨论,路线可以是用于在两个位置之间行进的一系列航路点。作为非限制性示例,航路点包括街道、交叉路口、全球定位***(GPS)坐标等。此外,计划部件624可以生成指令用于沿着路线的至少一部分引导自动驾驶车辆从第一位置到第二位置。在至少一个示例中,计划部件624可以确定如何将自动驾驶车辆从航路点序列中的第一航路点引导到航路点序列中的第二航路点。在一些示例中,指令可以是轨迹或轨迹的一部分。在一些示例中,可以根据滚动时域技术基本上同时(例如,在技术公差内)生成多个轨迹,其中选择多个轨迹中的一个供车辆602导航。
在某些情况下,计划部件624可以包括预测部件,以生成物体在环境中预测轨迹。例如,预测部件可以针对车辆、行人、动物等在距车辆602的阈值距离内生成一个或多个预测轨迹。在某些情况下,预测部件可以测量物体的踪迹并根据观察到的行为和预测行为为物体生成轨迹。
在至少一个示例中,车辆计算装置604可以包括一个或多个***控制器626,其可以被配置为控制车辆602的转向、推进、制动、安全、发射器、通信和其他***。该一个或多个***控制器626可以与一个或多个驱动***614和/或车辆602的其他部件的对应***通信和/或控制该一个或多个驱动***614和/或车辆602的其他部件的对应***。
存储器618可以进一步包括一个或多个地图628,其可以被车辆602用来在环境内进行导航。出于讨论的目的,地图可以是以二维、三维或N维建模的任意数量数据结构,这些数据结构能够提供有关环境的信息,例如但不限于拓扑(例如交叉路口)、街道、山脉、道路、地形和一般环境。在某些情况下,地图可以包括但不限于:纹理信息(例如,颜色信息(例如,RGB颜色信息、Lab颜色信息、HSV/HSL颜色信息)等);强度信息(例如,LIDAR信息,RADAR信息等);空间信息(例如,投影到网格上的图像数据,各个“面元”(例如,与单个颜色和/或强度相关联的多边形));反射信息(例如,镜面反射信息,逆向反射信息,BRDF信息,BSSRDF信息,等等)。在一个示例中,地图可以包括环境的三维网格。在某些情况下,地图可以以图块格式存储,使得地图的各个图块表示环境的离散部分,且可以根据需要加载到工作存储器中,如本文所述。在至少一个示例中,一个或多个地图628可以包括至少一个地图(例如,图像和/或网格)。在一些示例中,可以至少部分地基于地图628来控制车辆602。也就是说,地图628可以与定位部件620、感知部件622和/或计划部件624结合使用,以用于确定车辆602的位置、识别环境中的物体和/或生成在环境中导航的路线和/或轨迹。
在某些情况下,地图628可以包括已根据本文讨论的技术更新和/或修改的地图数据和地图元素。即,车辆602可以至少部分地基于根据本公开生成的地图数据和地图元素生成用于穿越环境的轨迹。
在一些示例中,可以将一个或多个地图628存储在可经由一个或多个网络630访问的一个或多个远程计算装置(例如一个或多个计算装置632)上。在一些示例中,可以基于以下内容存储多个地图628:例如,特征(例如,实体类型、一天中的时间、一周中的一天、一年中的季节等)。存储多个地图628可以具有类似的存储器要求,但是增加了访问地图中的数据的速度。
在某些情况下,本文讨论的一些或所有部件的各个方面可以包括任何模型、算法和/或机器学习算法。例如,在某些情况下,存储器618(以及下面讨论的存储器636)中的部件可以被实现为神经网络。
如本文所述,示例性神经网络是生物学启发的算法,其使输入数据通过一系列连接层以产生输出。神经网络中的每一层还可以包含另一神经网络,或者可以包含任意数量的层(无论是否卷积)。如在本公开的上下文中可以理解的,神经网络可以利用机器学习,机器学习可以指的基于学习参数生成输出的这种广泛算法。
尽管在神经网络的背景下进行了讨论,但是可以根据本公开使用任何类型的机器学***滑化(LOESS),基于实例的算法(例如,岭回归,最小绝对收缩和选择算子(LASSO),弹性网,最小角度回归(LARS)),决策树算法(例如,分类和回归树(CART),迭代二分法器3(ID3),卡方自动交互检测(CHAID),决策桩,条件决策树),贝叶斯算法(例如朴素贝叶斯,高斯朴素贝叶斯,多项式朴素贝叶斯,平均一依赖估计量(AODE),贝叶斯信念网络(BNN),贝叶斯网络),聚类算法(例如k均值,k中位数,期望最大化(EM),分层聚类),关联规则学习算法(例如感知器,反向传播,霍普菲尔德网络,径向基函数网络(RBFN)),深度学习算法(例如深玻尔兹曼机(DBM),深度信念网络(DBN),卷积神经网络(CNN),堆叠式自动编码器),降维算法(例如,主成分分析(PCA),主成分回归(PCR),偏最小二乘回归(PLSR),萨蒙映射,多维标度(MDS),投影追踪,线性判别分析(LDA),混合判别分析(MDA),二次判别分析(QDA),弹性判别分析(FDA)),集成算法(例如,提升,自举(袋装),AdaBoost,堆叠泛化(混合),梯度增强机(GBM),梯度增强回归树(GBRT),随机森林),SVM(支持向量机),监督学习,无监督学习,半监督学习等。
架构的其他示例包括神经网络,例如ResNet70,ResNet101,VGG,DenseNet,PointNet等。
在至少一个示例中,一个或多个传感器***606可以包括LIDAR传感器,雷达传感器,超声换能器,声纳传感器,位置传感器(例如,GPS,指南针等),惯性传感器(例如,惯性测量单元(IMU),加速度计,磁力计,陀螺仪等),相机(例如RGB,IR,强度,深度等),渡越时间传感器,麦克风,车轮编码器,环境传感器(例如温度传感器,湿度传感器,光线传感器,压力传感器等)等。一个或多个传感器***606可以包括这些或其他类型的传感器中的每一个的多个实例。例如,LIDAR传感器可以包括位于车辆602的拐角,前,后,侧面和/或顶部的各个LIDAR传感器。作为另一个示例,相机传感器可以包括设置车辆602的外部和/或内部的周围的各种位置的多个相机。一个或多个传感器***606可向车辆计算装置604提供输入。另外或可替代地,一个或多个传感器***606可以经由一个或多个网络630以特定的频率(在经过预定的时间段之后,接近实时等)将传感器数据发送到一个或多个计算装置。
如前所述,车辆602还可包括用于发射光和/或声音的一个或多个发射器608。在该示例中,发射器608包括内部音频和视觉发射器以与车辆602的乘客通信。作为示例而非限制,内部发射器可以包括扬声器、灯、标志、显示屏、触摸屏、触觉发射器(例如,振动和/或力反馈)、机械致动器(例如,安全带张紧器、座椅***、头枕***等)等。在该示例中,发射器608还包括外部发射器。作为示例而非限制,在该示例中,外部发射器包括用于发出行进方向信号的灯或其他车辆动作指示器(例如,指示灯,标志,灯阵列等),以及一个或多个音频发射器(例如扬声器,扬声器阵列,喇叭等)以与行人或其他附近车辆进行听觉通信,该一个或多个音频发射器中的一个或多个包括声束转向技术。
车辆602还可包括一个或多个通信连接210,其使得能够在车辆602与一个或多个其他本地或远程计算装置之间进行通信。例如,一个或多个通信连接610可以促进与车辆602和/或一个或多个驱动***614上的其他一个或多个本地计算装置的通信。而且,一个或多个通信连接610可以允许车辆与一个或多个其他附近计算装置(例如,其他附近车辆、交通信号等)进行通信。一个或多个通信连接610还使车辆602能够与远程遥操作计算装置或其他远程服务通信。
一个或多个通信连接610可以包括用于将车辆计算装置604连接到另一计算装置或网络(诸如一个或多个网络630)的物理和/或逻辑接口。例如,一个或多个通信连接610可以启用基于Wi-Fi的通信,诸如经由IEEE802.11标准定义的频率,诸如蓝牙的短程无线频率,蜂窝通信(例如2G,3G,4G,4G LTE,5G等)或使相应计算装置能够与其他一个或多个计算装置对接的任何合适有线或无线通信协议。
在至少一个示例中,车辆602可以包括一个或多个驱动模块614。在一些示例中,车辆602可以具有单个驱动模块614。在至少一个示例中,如果车辆602具有多个驱动***614,则各个驱动模块614可以定位在车辆602的相反端部(例如,前部和后部等)上。在至少一个示例中,一个或多个驱动***614可以包括一个或多个传感器***,以检测一个或多个驱动***614和/或车辆602的周围环境的状况。作为示例而非限制,一个或多个传感器***可以包括一个或多个车轮编码器(例如,旋转编码器)以感测驱动***的车轮的旋转、惯性传感器(例如,惯性测量单元,加速度计,陀螺仪,磁力计等)以测量驱动***的定向和加速度、相机或其他图像传感器、超声传感器以声学方式检测驱动***周围的物体、LIDAR传感器、雷达传感器等。一些传感器,例如车轮编码器,对于一个或多个驱动***614而言可以是唯一的。在一些情况下,一个或多个驱动***614上的一个或多个传感器***可以重叠或补充车辆602的对应***(例如,一个或多个传感器***606)。
一个或多个驱动***614可以包括车辆***中的许多***,包括高压电池、用于驱动车辆的马达、将来自电池的直流电转换成交流电以供其他车辆***使用的逆变器、包括转向马达和转向齿条(其可以是电动的)的转向***、包括液压或电动致动器的制动***、包括液压和/或气动部件的悬挂***、用于分配制动力以减轻牵引力损失并保持控制的稳定性控制***、HVAC***、照明设备(例如,用于照亮车辆外部环境的照明设备,例如前/尾灯)、以及一个或多个其他***(例如,冷却***,安全***,车载充电***,其他电气部件(例如DC/DC转换器,高压结,高压电缆,充电***,充电端口等))。另外,一个或多个驱动***614可以包括驱动模块控制器,该驱动模块控制器可以从一个或多个传感器***接收和预处理来数据并控制各种车辆***的操作。在一些示例中,驱动***控制器可以包括一个或多个处理器以及与该一个或多个处理器通信联接的存储器。存储器可以存储一个或多个模块以执行一个或多个驱动***614的各种功能。此外,一个或多个驱动***614还包括一个或多个通信连接,该一个或多个通信连接使得相应驱动***能够与一个人或多个其他本地或远程计算装置通信。
在至少一个示例中,直接连接612可以提供物理接口以将一个或多个驱动***614与车辆602的本体联接。例如,直接连接612可以允许能量、流体、空气、数据等在一个或多个驱动***614和车辆之间进行传递。在一些情况下,直接连接612可以进一步将一个或多个驱动***614可释放地固定到车辆602的本体。
在一些示例中,车辆602可以经由一个或多个网络630将传感器数据发送到一个或多个计算装置632。在一些示例中,车辆602可以将原始传感器数据发送至一个或多个计算装置632。在其他示例中,车辆602可以将经处理传感器数据和/或传感器数据的表示发送至一个或多个计算装置632。在一些示例中,车辆602可以以特定频率(经过一段预定的时间后,接近实时等)将传感器数据发送至一个或多个计算装置632。在一些情况下,车辆602可以将传感器数据(原始或经处理)发送到一个人或多个计算装置632作为一个或多个日志文件。
一个人或多个计算装置632可以包括一个或多个处理器634和存储器636,该存储器636存储地图数据部件638、地图元素部件640、轨迹对准/变换部件642以及地图元素变形部件644。
在某些情况下,地图数据部件638可以包括接收一个或多个轨迹以及与该一个或多个轨迹相关联的地图数据的功能。例如,地图数据部件638可以接收由车辆602的一个或多个LIDAR传感器捕获的LIDAR数据,以生成环境的三维地图数据。在某些情况下,地图数据可以与单个轨迹或一组轨迹相关联。在一些情况下,轨迹可以包括在捕获地图数据时与车辆602相关联的离散姿势系列,如本文所讨论的。
在某些情况下,地图元素部件640可以包括接收地图元素和/或将这种地图元素与地图数据相关联的功能。在某些情况下,地图元素可以包括:车道元素,以指示车道或驾驶廊道的范围;停车线元素,其用于指示交叉路口的停车线;交通信号灯元素,其用于指示交通信号灯的位置;与限速相关的区域;和/或与环境相关的任何信息。地图元素的额外非限制性示例可以包括自行车道元素,停车元素,交叉路口元素,车道分隔元素,停车标志元素,退让标志元素,退让线元素等。可以理解,环境可以包括多个物理和/或虚拟特征,并且地图元素不应限于本文明确讨论的那些。在某些情况下,地图元素可以定义与地图元素相关联的位置、范围和语义信息。
在某些情况下,可以关于全局坐标系和/或关于局部坐标系来定义与地图数据部件638相关联的地图数据和/或与地图元素部件640相关联的一个或多个地图元素。
在某些情况下,轨迹对准/变换部件642可以包括使第一轨迹与第二轨迹对准和/或基于第一轨迹和第二轨迹之间的对准生成经更新第一轨迹的功能。在某些情况下,轨迹对准/变换部件642可以将与第一轨迹相关联的第一LIDAR数据和与第二轨迹相关联的第二LIDAR数据对准,并且在该过程中,可以生成与第一轨迹相关联的经更新轨迹。在某些情况下,轨迹对准/变换部件642可以利用SLAM、CLAMS或其他校准和/或对准算法生成经更新轨迹以用于生成经变形地图元素。
在某些情况下,地图元素变形部件644可以包括生成经变形地图元素的功能,如本文所讨论的。在某些情况下,地图元素变形部件644可以执行操作以生成,修改,变形或以其他方式更新地图元素控制点和/或直接与地图元素相关联的点,如以上关于图1-5所解释的。在某些情况下,地图元素变形部件644可以至少部分基于以下内容来变形地图元素:1)在与轨迹关联的轨迹点和与经更新轨迹关联的对应轨迹点之间的变换;2)与地图元素关联的多个轨迹点;以及3)相邻或邻近地图点之间的相对或绝对距离。贯穿本公开内容讨论了地图元素变形部件644的额外细节。
车辆602的一个或多个处理器616和一个或多个计算装置632的一个或多个处理器634可以是能够执行指令以处理数据并执行本文所述的操作的任何合适的处理器。作为示例而非限制,一个或多个处理器616和634可包括一个或多个中央处理单元(CPU),图形处理单元(GPU)或处理电子数据以将该电子数据转换为可以存储在寄存器和/或存储器中的其他电子数据的任何其他装置或装置的一部分。在一些示例中,只要集成电路(例如,ASIC等),门阵列(例如,FPGA等)和其他硬件装置被配置为实现编码指令,则其也可以被认为是处理器。
存储器618和636是非暂时性计算机可读介质的示例。存储器618和636可以存储操作***以及一个或多个软件应用程序,指令,程序和/或数据,以实现本文描述的方法以及归因于各种***的功能。在各种实施方式中,可以使用任何合适的存储器技术来实现该存储器,例如静态随机存取存储器(SRAM),同步动态RAM(SDRAM),非易失性/闪存类型的存储器或能够存储信息的任何其他类型的存储器。本文描述的架构,***和各个元件可以包括许多其他逻辑,程序和物理部件,附图中示出的那些仅仅是与本文的讨论有关的示例。
在一些情况下,存储器618和636可以至少包括工作存储器和存储存储器。例如,工作存储器可以是有限容量的高速存储器(例如,高速缓冲存储器),其用于存储要由一个或多个处理器616和634操作的数据。在某些情况下,存储器618和636可以包括存储存储器,该存储存储器可以是用于数据的长期存储的相对较大容量的低速存储器。在某些情况下,如本文所讨论的,处理器616和634不能直接对存储在存储存储器中的数据进行操作,并且可能需要将数据加载到工作存储器中以基于该数据执行操作。
应当注意,尽管图6被示为分布式***,但是在替代示例中,车辆602的部件可以与一个或多个计算装置632相关联和/或一个或多个计算装置632的部件可以与车辆602相关联。即,车辆602可执行与一个或多个计算装置632相关联的一个或多个功能,且反之亦然。
图1、4、5和7示出了根据本公开的实施例的示例过程。这些过程被示为逻辑流程图,其每个操作表示可以以硬件、软件或其组合实现的一系列操作。在软件的背景中,所述操作表示存储在一个或多个计算机可读存储介质上的计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时执行所叙述的操作。通常,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程,程序,物体,组件,数据结构等。描述操作的顺序不旨在被理解为限制,并且可以以任何顺序和/或并行地组合任意数量的所描述的操作以实现处理。
图7描绘了根据本公开的实施例的用于基于轨迹与经更新轨迹之间的变换来生成一个或多个经变形地图元素的示例过程700。例如,如本文中所描述,过程700中的一些或全部可由图6中的一个或多个部件执行。例如,过程700中的一些或全部可以由一个或多个车辆计算装置604和/或一个或多个计算装置632执行。
在操作702,该过程可以包括接收与第一轨迹相关联的地图数据。在某些情况下,操作702可以包括接收由自动驾驶车辆的传感器捕获的传感器数据。在某些情况下,操作702可以包括从一个或多个车辆(自主或其他类型的车辆)接收包括先前捕获的数据的日志数据。在一些示例中,传感器数据可以包括任何传感器形式,包括但不限于由LIDAR传感器捕获的LIDAR数据。在某些情况下,过程700可以由非自动驾驶车辆、传感器***或机器人平台执行,并且不限于自动驾驶车辆。
在操作704,该过程可以包括接收与地图数据相关联的地图元素。在某些情况下,地图元素可以表示地图数据的任何区域以及与该区域关联的语义信息。在整个公开内容中讨论了各种地图元素的示例。在一些情况下,可以使用包括地图数据的特征识别算法(例如,基于LIDAR数据,图像数据等)来生成地图元素,并且在一些情况下,可以接收地图元素作为由制图师或技术人员提供的对地图数据的注释。但是,在某些情况下,不是在经更新地图数据上运行这种特征识别算法,而是本文讨论的操作可以保留与地图元素和/或轨迹、轨迹点和/或额外地图元素之间的关系相关联的信息,如本文讨论的。在一些示例中,尽管可以构想多种表示,但是地图元素可以包括用于在存储器中紧凑表示的几何图元。
在操作706,该过程可以包括对准第一轨迹和第二轨迹。在某些情况下,第二轨迹的至少一部分可以接近第一轨迹和/或处于第一轨迹的阈值距离内。在某些情况下,第二轨迹可以表示环闭合事件、经更新校准、向第一轨迹添加新数据等。在某些情况下,操作706可以包括将与第一轨迹相关联的第一地图数据(例如,第一LIDAR数据)与和第二轨迹相关联的第二地图数据(例如,第二LIDAR数据)对准,以确定两组地图数据之间的对准。在某些情况下,操作706可以包括利用SLAM或CLAMS算法对准地图数据和/或轨迹。
在操作708,该过程可以包括至少部分地基于对准来确定经更新第一轨迹。在一些情况下,如本文所讨论的,可以生成经更新轨迹以最大化与第二轨迹的对准。
在操作710,该过程可以包括确定与第一轨迹和经更新第一轨迹相关联的变换。在某些情况下,第一轨迹的每个轨迹点可以被变换为与经更新轨迹相关联的唯一经更新轨迹点。在某些情况下,可以相对于轨迹点的位置和姿态来变换经更新轨迹点的绝对位置和/或姿态。
在操作712,该过程可以包括至少部分地基于地图元素和变换确定经变形地图元素。结合图1-5,并在整个本公开中,讨论了使地图元素变形以生成经变形地图元素(或经变形地图点、经更新地图点或经变形地图元素控制点)的细节。
在操作714,该过程可以包括确定是否所有地图元素都被更新。在某些情况下,操作可以包括基于最小二乘优化算法更新地图元素。在某些情况下,每个地图点都可以单独优化。在某些情况下,如果不是所有的地图元素都已经被更新,则过程可以返回到操作712,从而可以变形额外地图元素,直到所有的地图元素(和/或直到所有地图元素控制点)都被更新。
在操作716,该过程可以包括输出经变形地图元素以用于控制自动驾驶车辆。在某些情况下,经变形地图元素可以表示将在时间逻辑背景中使用的符号(例如,线性时间逻辑,信号时间逻辑等)以生成和/或验证轨迹。在某些情况下,经变形地图元素可以被自动驾驶车辆的其他部件用于定位自动驾驶车辆和/或导航自动驾驶车辆通过环境。
示例条款
A:一种***,包括:一个或多个处理器;以及一个或多个计算机可读介质,其存储可由一个或多个处理器执行的指令,其中,指令在被执行时使***执行包括以下内容的操作:接收表示环境的地图数据,地图数据与由自动驾驶车辆穿越的第一轨迹相关联并且至少部分地基于与环境的第一LIDAR数据;接收与地图数据相关联的地图元素,该地图元素包括车道元素、人行横道元素或停车线元素中的至少一个;对准与第一轨迹关联的第一LIDAR数据以及与第二轨迹关联的第二LIDAR数据;基于该对准确定经更新第一轨迹;确定与地图元素关联的第一轨迹的轨迹点;确定与轨迹点和经更新第一轨迹的对应轨迹点相关联的变换;以及至少部分地基于将变换应用于地图元素来确定经变形地图元素。
B:根据段落A的***,其中,确定与轨迹点相关的变换包括:确定轨迹点相对于经更新第一轨迹的对应轨迹点的相对位置或定向中的一个或多个而作为变换。
C:根据段落A或B的***,其中,确定轨迹点包括:确定地图元素和与第一轨迹相关联的轨迹点之间的距离;以及确定该距离低于阈值距离。
D:根据段落A至C中任一项的***,其中,确定经变形地图元素还进一步至少部分地基于:与第一轨迹相关联的一个或多个额外轨迹点;或者一个或多个额外地图元素。
E:根据段落A至D中任一项的***,其中,该操作还包括:输出经变形地图元素以用于控制自动驾驶车辆。
F:一种方法,包括:接收与第一轨迹相关联的地图数据;接收与地图数据相关联的地图元素;对准第一轨迹和第二轨迹;基于对准确定经更新第一轨迹;确定与第一轨迹和经更新第一轨迹相关联的变换;以及至少部分地基于地图元素和变换确定经变形地图元素。
G:根据段落F的方法,其中,对准第一轨迹和第二轨迹包括:确定与第一轨迹相关联的第一LIDAR数据和与第二轨迹相关联的第二LIDAR数据之间的对准。
H:根据段落F或G的方法,其中,地图元素包括与地图数据相关联的区域,并且其中,确定经变形地图元素包括:改变与该区域相关的点的位置以更新地图元素的大小或位置中的至少一个而作为经变形地图元素。
I:根据段落F至H中任一项的方法,其中,地图元素包括以下至少一项:车道元素;自行车道元素;人行横道元素;交叉路口元素;车道分隔元素;交通信号灯元素;停车标志元素;停车线元素;退让标志元素;或者退让线元素。
J:根据段落F至I中任一项的方法,其中,确定与第一轨迹和经更新第一轨迹相关联的变换包括:确定与地图元素关联的轨迹点;以及将轨迹点相对于经更新第一轨迹的对应轨迹点的相对位置或定向中的一个或多个确定为变换。
K:根据段落J的方法,其中,确定轨迹点包括:确定地图元素和与第一轨迹相关联的轨迹点之间的距离;以及确定该距离小于阈值距离。
L:根据段落J或K的方法,其中,确定经变形地图元素进一步至少部分地基于:与第一轨迹相关联的一个或多个额外轨迹点;或一个或多个额外地图元素。
M:根据段落F至L中任一项的方法,其中,第二轨迹表示与第一轨迹相关联的经更新校准。
N:根据段落F至M中任一项的方法,其中,地图元素是多个地图元素中的一个,并且其中,经变形地图元素是多个经变形地图元素中的一个,该方法还包括:执行最小二乘优化以至少部分地基于多个地图元素和变换确定多个经变形地图元素。
O:根据段落F至N中任一项的方法,还包括:输出经变形地图元素以用于控制机器人平台。
P:一种存储指令的非暂时性计算机可读介质,该指令在被执行时使一个或多个处理器执行包括以下内容的操作:接收与第一轨道相关联的地图数据;接收与地图数据相关联的地图元素;对准第一轨迹和第二轨迹;基于该对准确定经更新第一轨迹;确定与第一轨迹和经更新第一轨迹相关联的变换;以及至少部分地基于地图元素和变换确定经变形地图元素。
Q:根据段落P的非暂时性计算机可读介质,其中,地图元素包括与地图数据相关联的几何图元,并且其中,确定经变形图元素包括:改变几何图元的控制点的位置以更新地图元素中的至少一个或地图元素的大小或位置而作为经变形地图元素。
R:根据段落P或Q的非暂时性计算机可读介质,其中,确定与第一轨迹和经更新第一轨迹相关联的变换包括:确定与地图元素相关联的轨迹点;以及确定第一轨迹的轨迹点与经更新第一轨迹上的对应点之间的相对位置或定向中的一个或多个。
S:根据段落R的非暂时性计算机可读介质,其中,确定轨迹点包括确定轨迹是最接近地图元素的轨迹点。
T:根据段落P至S中任一项的非暂时性计算机可读介质,其中,确定经变形地图元素进一步至少部分地基于:与第一轨迹相关联的一个或多个额外轨迹点;或一个或多个额外地图元素。
尽管针对一个特定实现描述了上述示例性条款,但是应该理解,在本文档的上下文中,示例条款的内容也可以通过方法,设备,***,计算机可读介质和/或另一种实现方式来实现。
结论
尽管已经描述了本文描述的技术的一个或多个示例,但是其各种改变,添加,置换和等同物也包括在本文描述的技术的范围内。
在示例的描述中,参考形成其一部分的附图,其通过说明的方式示出了所要求保护的主题的特定示例。应该理解,可以使用其他示例,并且可以进行诸如结构改变的改变或替换。这样的示例,改变或变化不一定相对于预期的所要求保护的主题背离本发明的范围。尽管此处的步骤可以按一定顺序显示,但在某些情况下,可以更改顺序,以便在不更改所描述***和方法功能的情况下,可以在不同时间或以不同顺序提供某些输入。所公开的过程也可以以不同的顺序执行。另外,这里不需要以所公开的顺序执行各种计算,并且可以容易地实现使用计算的替代顺序的其他示例。除了重新排序外,这些计算还可以分解为具有相同结果的子计算。
Claims (37)
1.一种用于修改与地图数据相关联的地图元素的***,所述***包括:
一个或多个处理器;以及
一个或多个计算机可读介质,其存储能够由所述一个或多个处理器执行的指令,其中,所述指令在被执行时使所述***执行包括以下的操作:
接收表示环境的地图数据,其中,所述地图数据与由自动驾驶车辆所穿越的第一轨迹相关联,并且其中,所述地图数据至少部分地基于所述环境的第一传感器数据;
接收与所述地图数据相关联的地图元素,所述地图元素包括车道元素、人行横道元素或停车线元素中的至少一个;
对准与所述第一轨迹相关联的所述第一传感器数据和与第二轨迹相关联的第二传感器数据;
基于对准确定经更新第一轨迹;
确定与所述地图元素关联的所述第一轨迹的轨迹点;
确定与所述轨迹点和所述经更新第一轨迹的对应轨迹点相关联的变换;
至少部分地基于将所述变换应用于所述地图元素来确定经变形地图元素;以及
输出用于控制所述自动驾驶车辆的所述变形地图元素。
2.根据权利要求1所述的***,其中,确定与所述轨迹点相关联的变换包括:
确定所述轨迹点相对于所述经更新第一轨迹的所述对应轨迹点的相对位置或定向中的一个或多个作为所述变换。
3.根据权利要求1或2所述的***,其中,确定所述轨迹点包括确定所述轨迹点为最接近所述地图元素的轨迹点。
4.根据权利要求1或2所述的***,其中,确定所述轨迹点包括:
确定所述地图元素和与所述第一轨迹相关联的所述轨迹点之间的距离;以及
确定所述距离低于阈值距离。
5.根据权利要求1或2所述的***,其中,确定所述经变形地图元素还进一步至少部分地基于:
与所述第一轨迹相关联的一个或多个额外轨迹点;或者
一个或多个额外地图元素。
6.一种用于修改与地图数据相关联的地图元素的方法,所述方法包括:
接收与第一轨迹相关联的地图数据;
接收与所述地图数据相关联的地图元素;
对准所述第一轨迹和第二轨迹;
基于对准确定经更新第一轨迹;
确定与所述第一轨迹和所述经更新第一轨迹相关联的变换;
至少部分地基于所述地图元素和所述变换确定经变形地图元素;以及
输出用于控制机器人平台的经变形地图元素。
7.根据权利要求6所述的方法,其中,对准所述第一轨迹和所述第二轨迹包括:
确定与所述第一轨迹相关联的第一LIDAR数据和与所述第二轨迹相关联的第二LIDAR数据之间的对准。
8.根据权利要求6或7所述的方法,其中,所述地图元素包括与所述地图数据相关联的区域,并且其中,确定所述经变形地图元素包括:
改变与所述区域相关联的点的位置以更新所述地图元素的大小或位置中的至少一个而作为所述经变形地图元素。
9.根据权利要求6或7所述的方法,其中,所述地图元素包括以下至少一项:
车道元素;
自行车道元素;
人行横道元素;
交叉路口元素;
车道分隔元素;
交通信号灯元素;
停车标志元素;
停车线元素;
退让标志元素;或者
退让线元素。
10.根据权利要求6或7所述的方法,其中,确定与所述第一轨迹和所述经更新第一轨迹相关联的所述变换包括:
确定与所述地图元素相关联的轨迹点;以及
确定所述轨迹点相对于所述经更新第一轨迹的相应轨迹点的相对位置或定向中的一个或多个作为所述变换。
11.根据权利要求10所述的方法,其中,确定所述轨迹点包括:
确定所述地图元素和与所述第一轨迹相关联的所述轨迹点之间的距离;以及
确定所述距离低于阈值距离。
12.根据权利要求10所述的方法,其中,确定所述经变形地图元素还进一步至少部分地基于:
与所述第一轨迹相关联的一个或多个额外轨迹点;或者
一个或多个额外地图元素。
13.根据权利要求10所述的方法,其中,确定所述轨迹点包括确定所述轨迹点为最接近所述地图元素的轨迹点。
14.根据权利要求6或7所述的方法,其中,所述第二轨迹表示与所述第一轨迹相关联的经更新校准。
15.根据权利要求6或7所述的方法,其中,所述地图元素是多个地图元素中的一个,并且其中,所述经变形地图元素是多个经变形地图元素中的一个,所述方法还包括:
执行最小二乘优化以至少部分地基于所述多个地图元素和所述变换确定所述多个经变形地图元素。
16.根据权利要求6或7所述的方法,其中,所述地图元素包括与所述地图数据相关联的几何图元,并且
其中确定所述经变形地图元素包括改变所述几何图元的控制点以更新所述地图元素的尺寸或位置中的至少一个作为经变形地图元素。
17.一种计算机可读介质,其包括编码指令,所述编码指令在计算机上运行时实现根据权利要求6至15中任一项所述的方法。
18.一种用于修改与地图数据相关联的地图元素的***,所述***包括:
一个或多个处理器;以及
一个或多个计算机可读介质,其存储能够由所述一个或多个处理器执行的指令,其中,所述指令在被执行时使所述***执行包括以下内容的操作:
确定与第一轨迹关联的第一传感器数据和与第二轨迹关联的第二传感器数据之间的对准;
基于所述对准确定与所述第一轨迹和所述第二轨迹不同的经更新第一轨迹;
确定与所述第一轨迹和所述经更新第一轨迹相关联的变换;
至少部分地基于与所述第一轨迹相关联的地图元素以及与所述第一轨迹和所述经更新第一轨迹相关联的所述变换确定经修改地图元素;
更新地图以包括所述经修改地图元素而作为经更新地图;以及
将所述经更新地图传输至自动驾驶车辆,所述自动驾驶车辆被构造为至少部分地基于所述经更新地图进行操纵。
19.根据权利要求18所述的***,其中,所述第一传感器数据包括第一LIDAR数据并且所述第二传感器数据包括第二LIDAR数据。
20.根据权利要求18所述的***,其中,所述地图元素包括位于与地图数据相关联的环境中的区域,并且其中,更新所述地图包括更新所述地图元素的尺寸和位置中的至少一个而作为所述经修改地图元素。
21.根据权利要求18所述的***,其中,所述地图元素包括以下至少一项:
车道元素;
自行车道元素;
人行横道元素;
交叉路口元素;
车道分隔元素;
交通信号灯元素;
停车标志元素;
停车线元素;
退让标志元素;或者
退让线元素。
22.根据权利要求18所述的***,其中,确定所述变换包括:
确定与所述地图元素相关联的轨迹点;以及
确定所述轨迹点相对于所述经更新第一轨迹的相应轨迹点的相对位置或定向中的一个或多个作为所述变换。
23.根据权利要求22所述的***,其中,确定所述轨迹点包括:
确定所述地图元素和与所述第一轨迹相关联的所述轨迹点之间的距离;以及
确定所述距离低于阈值距离。
24.一种用于修改与地图数据相关联的地图元素的方法,所述方法包括:
确定与第一轨迹关联的第一传感器数据和与第二轨迹关联的第二传感器数据之间的对准;
基于所述对准确定与所述第一轨迹和所述第二轨迹不同的经更新第一轨迹;
确定与所述第一轨迹和所述经更新第一轨迹相关联的变换;
至少部分地基于与所述第一轨迹相关联的地图元素以及与所述第一轨迹和所述经更新第一轨迹相关联的所述变换确定经修改地图元素;
更新地图以包括所述经修改地图元素而作为经更新地图;以及
将所述经更新地图传输至自动驾驶车辆,所述自动驾驶车辆被构造为至少部分地基于所述经更新地图进行操纵。
25.根据权利要求24所述的方法,其中,所述第一传感器数据包括第一LIDAR数据并且所述第二传感器数据包括第二LIDAR数据。
26.根据权利要求24所述的方法,其中,所述地图元素包括位于与地图数据相关联的环境中的区域,并且其中,更新所述地图包括更新所述地图元素的尺寸和位置中的至少一个而作为所述经修改地图元素。
27.根据权利要求24所述的方法,其中,所述地图元素包括以下至少一项:
车道元素;
自行车道元素;
人行横道元素;
交叉路口元素;
车道分隔元素;
交通信号灯元素;
停车标志元素;
停车线元素;
退让标志元素;或者
退让线元素。
28.根据权利要求24所述的方法,其中,确定所述变换包括:
确定与所述地图元素相关联的轨迹点;以及
确定所述轨迹点相对于所述经更新第一轨迹的相应轨迹点的相对位置或定向中的一个或多个作为所述变换。
29.根据权利要求28所述的方法,其中,确定所述轨迹点包括:
确定所述地图元素和与所述第一轨迹相关联的所述轨迹点之间的距离;以及
确定所述距离低于阈值距离。
30.根据权利要求28所述的方法,其中,确定所述经修改地图元素还至少部分地基于:
与所述第一轨迹相关联的一个或多个额外轨迹点;或者
一个或多个额外地图元素。
31.根据权利要求24所述的方法,还包括:
输出所述经修改地图元素至一队车辆。
32.根据权利要求24所述的方法,其中,所述地图元素为多个地图元素中的一个,并且其中,所述经修改地图元素为多个经修改地图元素中的一个,所述方法还包括:
执行最小二乘优化以至少部分地基于所述多个地图元素和所述变换来确定所述多个经修改地图元素。
33.一种或多种非暂时性计算机可读介质,其存储指令,所述指令在被执行时使一个或多个处理器执行包括以下内容的操作:
确定与第一轨迹关联的第一传感器数据和与第二轨迹关联的第二传感器数据之间的对准;
基于所述对准确定与所述第一轨迹和所述第二轨迹不同的经更新第一轨迹;
确定与所述第一轨迹和所述经更新第一轨迹相关联的变换;
至少部分地基于与所述第一轨迹相关联的地图元素以及与所述第一轨迹和所述经更新第一轨迹相关联的所述变换确定经修改地图元素;
更新地图以包括所述经修改地图元素而作为经更新地图;以及
将所述经更新地图传输至自动驾驶车辆,所述自动驾驶车辆被构造为至少部分地基于所述经更新地图进行操纵。
34.根据权利要求33所述的一种或多种非暂时性计算机可读介质,其中,所述地图元素包括位于与地图数据相关联的环境中的几何图元,并且其中,更新所述地图包括更新所述地图元素的尺寸和位置中的至少一个而作为所述经修改地图元素。
35.根据权利要求33所述的一种或多种非暂时性计算机可读介质,其中,确定所述变换包括:
确定所述第一轨迹中与所述地图元素相关联的轨迹点;以及
确定所述第一轨迹的所述轨迹点和所述经更新第一轨迹的相应点之间的相对位置或定向中的一个或多个。
36.根据权利要求35所述的一种或多种非暂时性计算机可读介质,其中,确定所述轨迹点包括确定所述轨迹为最接近所述地图元素的最接近轨迹点。
37.根据权利要求33所述的一种或多种非暂时性计算机可读介质,其中,确定所述经修改地图元素还至少部分地基于:
与所述第一轨迹相关联的一个或多个额外轨迹点;或者
一个或多个额外地图元素。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/145,740 | 2018-09-28 | ||
US16/145,740 US10782136B2 (en) | 2018-09-28 | 2018-09-28 | Modifying map elements associated with map data |
PCT/US2019/053149 WO2020069126A1 (en) | 2018-09-28 | 2019-09-26 | Modifying map elements associated with map data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112752950A CN112752950A (zh) | 2021-05-04 |
CN112752950B true CN112752950B (zh) | 2024-03-12 |
Family
ID=69945752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980063410.1A Active CN112752950B (zh) | 2018-09-28 | 2019-09-26 | 修改与地图数据相关联的地图元素 |
Country Status (5)
Country | Link |
---|---|
US (3) | US10782136B2 (zh) |
EP (1) | EP3857168A4 (zh) |
JP (1) | JP2022500669A (zh) |
CN (1) | CN112752950B (zh) |
WO (1) | WO2020069126A1 (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3673384A4 (en) * | 2017-11-16 | 2020-11-11 | Samsung Electronics Co., Ltd. | PROCESS AND SYSTEM FOR MANAGEMENT AND OPERATION ON AN IMAGE IN A COMPUTER SYSTEM |
US11340632B2 (en) * | 2018-03-27 | 2022-05-24 | Uatc, Llc | Georeferenced trajectory estimation system |
US11237004B2 (en) | 2018-03-27 | 2022-02-01 | Uatc, Llc | Log trajectory estimation for globally consistent maps |
US10782136B2 (en) | 2018-09-28 | 2020-09-22 | Zoox, Inc. | Modifying map elements associated with map data |
US10832413B2 (en) * | 2018-12-18 | 2020-11-10 | Palo Alto Research Center Incorporated | Curvilinear object segmentation with geometric priors |
US11036986B2 (en) * | 2019-02-08 | 2021-06-15 | Lyft, Inc. | Systems and methods for aligning map data |
DE102019206336A1 (de) * | 2019-05-03 | 2020-11-05 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Erstellen einer ersten Karte |
US11549815B2 (en) * | 2019-06-28 | 2023-01-10 | GM Cruise Holdings LLC. | Map change detection |
EP3828587A1 (en) | 2019-11-29 | 2021-06-02 | Aptiv Technologies Limited | Method for determining the position of a vehicle |
DE102020102752A1 (de) * | 2020-02-04 | 2021-08-05 | Bayerische Motoren Werke Aktiengesellschaft | Bewertung einer Routenbestimmung |
US11841708B2 (en) * | 2020-02-28 | 2023-12-12 | Zoox, Inc. | System and method for adjusting a planned trajectory of an autonomous vehicle |
US11619708B2 (en) | 2020-07-28 | 2023-04-04 | Trackman A/S | System and method for inter-sensor calibration |
US11163921B1 (en) * | 2020-09-01 | 2021-11-02 | TeleqoTech | Managing a smart city |
CN112284402B (zh) * | 2020-10-15 | 2021-12-07 | 广州小鹏自动驾驶科技有限公司 | 一种车辆定位的方法和装置 |
US11648962B1 (en) | 2021-01-19 | 2023-05-16 | Zoox, Inc. | Safety metric prediction |
JP2022127729A (ja) * | 2021-02-22 | 2022-09-01 | 本田技研工業株式会社 | 車両位置認識装置 |
JP7167217B2 (ja) * | 2021-03-09 | 2022-11-08 | 本田技研工業株式会社 | 車両位置認識装置 |
US11698270B2 (en) * | 2021-03-30 | 2023-07-11 | Argo AI, LLC | Method, system, and computer program product for iterative warping of maps for autonomous vehicles and simulators |
US20220340138A1 (en) * | 2021-04-27 | 2022-10-27 | Argo AI, LLC | Methods and systems for generating trajectory of an autonomous vehicle for traversing an intersection |
CN113468198B (zh) * | 2021-07-28 | 2023-09-19 | 北京百度网讯科技有限公司 | 地图更新方法、装置、电子设备和介质 |
US20230035780A1 (en) * | 2021-07-29 | 2023-02-02 | Zoox, Inc. | Systematic fault detection in vehicle control systems |
US20230063809A1 (en) * | 2021-08-25 | 2023-03-02 | GM Global Technology Operations LLC | Method for improving road topology through sequence estimation and anchor point detetection |
CN114526722B (zh) * | 2021-12-31 | 2024-05-24 | 易图通科技(北京)有限公司 | 地图对齐处理方法、装置及可读存储介质 |
CN114526721B (zh) * | 2021-12-31 | 2024-05-24 | 易图通科技(北京)有限公司 | 地图对齐处理方法、装置及可读存储介质 |
US20230213633A1 (en) * | 2022-01-06 | 2023-07-06 | GM Global Technology Operations LLC | Aggregation-based lidar data alignment |
CN117235089B (zh) * | 2023-11-09 | 2024-02-23 | 高德软件有限公司 | 地图检查方法、装置、电子设备及可读存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011047730A1 (en) * | 2009-10-22 | 2011-04-28 | Tele Atlas B.V. | System and method for vehicle navigation using lateral offsets |
CN102128627A (zh) * | 2010-01-19 | 2011-07-20 | 北京四维图新科技股份有限公司 | 电子地图的差异分析方法及差异分析装置 |
CN105426372A (zh) * | 2014-09-17 | 2016-03-23 | 高德软件有限公司 | 一种电子地图数据制作及更新方法和装置 |
DE102015206519A1 (de) * | 2015-04-13 | 2016-10-13 | Bayerische Motoren Werke Aktiengesellschaft | Aktualisierung von Kartendaten einer Navigationsvorrichtung für Fahrzeuge |
CN106104656A (zh) * | 2014-03-24 | 2016-11-09 | 爱信艾达株式会社 | 地图信息生成***、方法及程序 |
WO2017079349A1 (en) * | 2015-11-04 | 2017-05-11 | Zoox, Inc. | System for implementing an active safety system in an autonomous vehicle |
CN107144285A (zh) * | 2017-05-08 | 2017-09-08 | 深圳地平线机器人科技有限公司 | 位姿信息确定方法、装置和可移动设备 |
WO2018006082A2 (en) * | 2016-07-01 | 2018-01-04 | Uber Technologies, Inc. | Autonomous vehicle control using submaps |
CN108235725A (zh) * | 2018-02-26 | 2018-06-29 | 深圳前海达闼云端智能科技有限公司 | 基于云端的轨迹地图生成方法、装置、设备及应用程序 |
CN108318043A (zh) * | 2017-12-29 | 2018-07-24 | 百度在线网络技术(北京)有限公司 | 用于更新电子地图的方法、装置和计算机可读存储介质 |
CN108369775A (zh) * | 2015-11-04 | 2018-08-03 | 祖克斯有限公司 | 响应于物理环境的改变自适应制图以对自主车辆进行导航 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5064870B2 (ja) * | 2007-04-17 | 2012-10-31 | 株式会社日立製作所 | デジタル道路地図の生成方法及び地図生成システム |
US9008890B1 (en) | 2013-03-15 | 2015-04-14 | Google Inc. | Augmented trajectories for autonomous vehicles |
US9547989B2 (en) * | 2014-03-04 | 2017-01-17 | Google Inc. | Reporting road event data and sharing with other vehicles |
RU2610260C2 (ru) * | 2015-03-20 | 2017-02-08 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и сервер для определения геолокации электронного устройства |
US9880011B2 (en) * | 2015-07-31 | 2018-01-30 | International Business Machines Corporation | Simplification of trajectory representation |
US11235777B2 (en) * | 2015-10-15 | 2022-02-01 | Harman International Industries, Incorporated | Vehicle path prediction and target classification for autonomous vehicle operation |
US9612123B1 (en) | 2015-11-04 | 2017-04-04 | Zoox, Inc. | Adaptive mapping to navigate autonomous vehicles responsive to physical environment changes |
US9892318B2 (en) * | 2015-12-22 | 2018-02-13 | Here Global B.V. | Method and apparatus for updating road map geometry based on received probe data |
US9965689B2 (en) * | 2016-06-09 | 2018-05-08 | Qualcomm Incorporated | Geometric matching in visual navigation systems |
WO2018031678A1 (en) * | 2016-08-09 | 2018-02-15 | Nauto Global Limited | System and method for precision localization and mapping |
CN108121764B (zh) * | 2016-11-26 | 2022-03-11 | 星克跃尔株式会社 | 图像处理装置、图像处理方法、电脑程序及电脑可读取记录介质 |
US10296812B2 (en) * | 2017-01-04 | 2019-05-21 | Qualcomm Incorporated | Systems and methods for mapping based on multi-journey data |
US11009884B2 (en) * | 2017-09-29 | 2021-05-18 | Direct Current Capital LLC | Method for calculating nominal vehicle paths for lanes within a geographic region |
US10782136B2 (en) | 2018-09-28 | 2020-09-22 | Zoox, Inc. | Modifying map elements associated with map data |
-
2018
- 2018-09-28 US US16/145,740 patent/US10782136B2/en active Active
-
2019
- 2019-09-26 JP JP2021516928A patent/JP2022500669A/ja active Pending
- 2019-09-26 EP EP19867425.1A patent/EP3857168A4/en active Pending
- 2019-09-26 CN CN201980063410.1A patent/CN112752950B/zh active Active
- 2019-09-26 WO PCT/US2019/053149 patent/WO2020069126A1/en unknown
-
2020
- 2020-09-21 US US17/027,297 patent/US11761791B2/en active Active
-
2023
- 2023-09-15 US US18/368,970 patent/US20240110811A1/en active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011047730A1 (en) * | 2009-10-22 | 2011-04-28 | Tele Atlas B.V. | System and method for vehicle navigation using lateral offsets |
CN102128627A (zh) * | 2010-01-19 | 2011-07-20 | 北京四维图新科技股份有限公司 | 电子地图的差异分析方法及差异分析装置 |
CN106104656A (zh) * | 2014-03-24 | 2016-11-09 | 爱信艾达株式会社 | 地图信息生成***、方法及程序 |
CN105426372A (zh) * | 2014-09-17 | 2016-03-23 | 高德软件有限公司 | 一种电子地图数据制作及更新方法和装置 |
DE102015206519A1 (de) * | 2015-04-13 | 2016-10-13 | Bayerische Motoren Werke Aktiengesellschaft | Aktualisierung von Kartendaten einer Navigationsvorrichtung für Fahrzeuge |
WO2017079349A1 (en) * | 2015-11-04 | 2017-05-11 | Zoox, Inc. | System for implementing an active safety system in an autonomous vehicle |
CN108369775A (zh) * | 2015-11-04 | 2018-08-03 | 祖克斯有限公司 | 响应于物理环境的改变自适应制图以对自主车辆进行导航 |
WO2018006082A2 (en) * | 2016-07-01 | 2018-01-04 | Uber Technologies, Inc. | Autonomous vehicle control using submaps |
CN107144285A (zh) * | 2017-05-08 | 2017-09-08 | 深圳地平线机器人科技有限公司 | 位姿信息确定方法、装置和可移动设备 |
CN108318043A (zh) * | 2017-12-29 | 2018-07-24 | 百度在线网络技术(北京)有限公司 | 用于更新电子地图的方法、装置和计算机可读存储介质 |
CN108235725A (zh) * | 2018-02-26 | 2018-06-29 | 深圳前海达闼云端智能科技有限公司 | 基于云端的轨迹地图生成方法、装置、设备及应用程序 |
Also Published As
Publication number | Publication date |
---|---|
WO2020069126A1 (en) | 2020-04-02 |
JP2022500669A (ja) | 2022-01-04 |
EP3857168A1 (en) | 2021-08-04 |
US11761791B2 (en) | 2023-09-19 |
CN112752950A (zh) | 2021-05-04 |
US20200103236A1 (en) | 2020-04-02 |
US20240110811A1 (en) | 2024-04-04 |
US10782136B2 (en) | 2020-09-22 |
US20210041250A1 (en) | 2021-02-11 |
EP3857168A4 (en) | 2022-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112752950B (zh) | 修改与地图数据相关联的地图元素 | |
US11631200B2 (en) | Prediction on top-down scenes based on action data | |
US11351991B2 (en) | Prediction based on attributes | |
US11021148B2 (en) | Pedestrian prediction based on attributes | |
US11734832B1 (en) | Prediction on top-down scenes based on object motion | |
JP7350013B2 (ja) | マスクを使用したデータセグメンテーション | |
WO2020198189A1 (en) | Pedestrian prediction based on attributes | |
EP4049106A1 (en) | Trajectory modifications based on a collision zone | |
US20220274625A1 (en) | Graph neural networks with vectorized object representations in autonomous vehicle systems | |
US11584389B2 (en) | Teleoperations for collaborative vehicle guidance | |
US20210325880A1 (en) | Collaborative vehicle guidance | |
CN114761298A (zh) | 使用传感器数据进行高度估计 | |
CN116670000A (zh) | 横向安全区域 | |
CN117545674A (zh) | 用于识别路缘的技术 | |
WO2021211322A1 (en) | Teleoperations for collaborative vehicle guidance | |
US11906967B1 (en) | Determining yaw with learned motion model | |
JP2024506433A (ja) | 機械学習モデルのための中間入力 | |
JP2022502306A (ja) | レーダ空間推定 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |