CN117284319A - 基于横向对象控制纵向加速度的系统和方法 - Google Patents
基于横向对象控制纵向加速度的系统和方法 Download PDFInfo
- Publication number
- CN117284319A CN117284319A CN202310751373.1A CN202310751373A CN117284319A CN 117284319 A CN117284319 A CN 117284319A CN 202310751373 A CN202310751373 A CN 202310751373A CN 117284319 A CN117284319 A CN 117284319A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- acceleration
- trajectory
- computing device
- track
- 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
- 230000001133 acceleration Effects 0.000 title claims abstract description 269
- 238000000034 method Methods 0.000 title claims abstract description 122
- 238000010801 machine learning Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 abstract description 5
- 230000015654 memory Effects 0.000 description 22
- 238000004891 communication Methods 0.000 description 18
- 238000001514 detection method Methods 0.000 description 18
- 230000001276 controlling effect Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 239000002131 composite material Substances 0.000 description 12
- 230000033001 locomotion Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 6
- 230000005484 gravity Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000000875 corresponding effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000001953 sensory effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- 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/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
- B60W30/095—Predicting travel path or likelihood of collision
- B60W30/0956—Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
-
- 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
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0027—Planning or execution of driving tasks using trajectory prediction for other traffic participants
-
- 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/14—Adaptive cruise control
- B60W30/143—Speed control
- B60W30/146—Speed limiting
-
- 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
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/04—Conjoint control of vehicle sub-units of different type or different function including control of propulsion units
-
- 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
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/18—Conjoint control of vehicle sub-units of different type or different function including control of braking systems
-
- 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
- B60W10/00—Conjoint control of vehicle sub-units of different type or different function
- B60W10/20—Conjoint control of vehicle sub-units of different type or different function including control of steering systems
-
- 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
- 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
-
- 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/0019—Control system elements or transfer functions
- B60W2050/0026—Lookup tables or parameter maps
-
- 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
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/06—Direction of travel
-
- 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/40—Dynamic objects, e.g. animals, windblown objects
- B60W2554/402—Type
-
- 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/40—Dynamic objects, e.g. animals, windblown objects
- B60W2554/404—Characteristics
- B60W2554/4041—Position
-
- 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/40—Dynamic objects, e.g. animals, windblown objects
- B60W2554/404—Characteristics
- B60W2554/4044—Direction of movement, e.g. backwards
-
- 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
- B60W2554/00—Input parameters relating to objects
- B60W2554/80—Spatial relation or speed relative to objects
- B60W2554/801—Lateral distance
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/40—High definition maps
-
- 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
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
-
- 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
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/10—Longitudinal speed
- B60W2720/106—Longitudinal acceleration
-
- 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
- B60W2754/00—Output or target parameters relating to objects
- B60W2754/10—Spatial relation or speed relative to objects
- B60W2754/20—Lateral distance
Landscapes
- Engineering & Computer Science (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Human Computer Interaction (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
本文公开了用于控制车辆加速度的系统、方法和计算机程序产品。方法包括:通过计算设备检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的第一对象的横向距离,第一对象位于轨迹之外并且位于轨迹的一侧,并且该点表示车辆在经过第一对象时的未来位置;通过计算设备基于横向距离来选择车辆是否要执行加速度限制;当选择车辆要执行加速度限制时,获得车辆的加速度将被限制的量;以及通过计算设备使车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
Description
背景技术
现代车辆至少有一台车载计算机,并具有互联网/卫星连接。在这些车载计算机上运行的软件监视和/或控制车辆的操作。车辆还包括单目或立体摄像机和/或激光雷达探测器,用于检测其附近的对象。摄像机捕捉场景的图像。激光雷达探测器生成激光雷达数据集,这些数据集在多个不同的时间测量从车辆到对象的距离。这些图像和距离测量可用于检测和跟踪对象的运动,对对象的轨迹进行预测,并基于预测的对象轨迹规划车辆的行驶路径。
车辆的行驶计划可以包括空间计划(例如,由x坐标、y坐标和横摆位移定义的轨迹)和速度计划(例如,速度值、纵向加速度参数值和/或减速度参数值)。车辆的加速度可以根据自适应控制特征来限制,该自适应控制特征由提供加速度限制的控制参数控制。加速度可以基于预定义的最大值或基于道路条件确定的值来限制。这些加速度限制方法可能导致车辆在经过附近的移动对象时不舒服地加速。
本文描述了旨在解决上述问题和/或其他问题的方法和系统。
发明内容
本公开涉及用于控制车辆加速度的实施系统和方法。方法包括:通过计算设备检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的对象的横向距离(对象位于轨迹之外并且位于轨迹的一侧,并且该点表示车辆在经过对象时的未来位置);通过计算设备将横向距离与阈值进行比较;通过计算设备基于横向距离是否小于阈值来选择车辆是否要执行加速度限制;以及通过计算设备基于选择使车辆在具有或没有加速度限制的情况下执行自主驾驶操作。
附加地或替代地,方法可以包括:通过计算设备检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的第一对象的横向距离(其中第一对象位于轨迹之外并且位于轨迹的一侧,并且该点表示车辆在经过第一对象时的未来位置);通过计算设备基于横向距离来选择车辆是否要执行加速度限制;当选择车辆要执行加速度限制时,获得车辆的加速度将被限制的量;以及通过计算设备使车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
附加地或替代地,方法可以包括:包括通过计算设备执行以下操作:检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的第一对象的横向距离;基于横向距离选择车辆是否要执行加速度限制;获得由一系列点定义的车辆的边界(margin);当选择车辆要执行加速度限制时,基于轨迹和车辆的边界来获得车辆的加速度将被限制的量;以及使车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
实施系统可以包括:处理器;以及包括编程指令的非暂时性计算机可读存储介质,编程指令被配置为使处理器实现用于操作自动化系统的方法。上述方法还可以由计算机程序产品来实现,该计算机程序产品包括存储器和被配置为使处理器执行操作的编程指令。
附图说明
本文中包含的附图构成说明书的一部分。
图1是说明性系统的图示。
图2是车辆的说明性架构的图示。
图3是说明性计算设备的图示。
图4提供了说明性车辆轨迹规划过程的框图。
图5提供了选择性地控制车辆的纵向加速度的说明性方法的流程图。
图6-7中的每一个都提供了有助于理解何时可以选择性地执行加速度限制的图示。
图8提供了选择性地控制车辆的纵向加速度的另一说明性方法的流程图。
图9-11中的每一个都提供了有助于理解何时可以选择性地执行加速度限制的图示。
图12提供了选择性地控制车辆的纵向加速度的另一说明性方法的流程图。
图13-15中的每一个都提供了有助于理解何时可以选择性地执行加速度限制的图示。
图16提供了确定车辆加速度受到限制的量的说明性方法的流程图。
图17提供了有助于理解根据图16所示的方法如何限制加速度的量的图示。
图18提供了示出如何基于某些标准来限制加速度的示图。
图19提供了确定车辆加速度受到限制的量的另一说明性方法的流程图。
图20提供了有助于理解根据图19所示的方法如何限制加速度的量的图示。
图21提供了示出如何基于某些标准来限制加速度的示图。
图22提供了有助于理解当期望加速度在对象区间上变化时如何限制加速度的图示。
图23提供了有助于理解当两个对象区间彼此重叠时如何限制加速度的示图。
图24提供了控制车辆加速度的另一方法的流程图。
图25提供了控制车辆加速度的另一方法的流程图。
图26提供了有助于理解车辆的边界的图示。
在附图中,相似的附图标记总体上表示相同或相似的元件。此外,总体上,附图标记最左边的数字表示附图标记首次出现的附图。
具体实施方式
如上所述,车辆在运行过程中的加速度可能会受到限制。车辆的期望纵向加速度可能仅受到车辆纵向作用的移动对象的限制。在决定如何限制车辆加速度时,不使用有关横向对象的信息。这可能导致车辆在经过附近的移动对象时不舒服地加速。本发明的方案的目的是提供一种结合横向对象信息来限制车辆纵向加速度的方法。这样做可以在经过对象附近时提高行驶质量(ride quality)。
本发明的方案总体上涉及在经过附近的移动体时限制车辆的加速度从而提高行驶质量的实施系统和方法。方法包括获得传感器数据并处理传感器数据,以检测到车辆在遵循轨迹时正在经过或预期要经过的对象的横向距离。例如,车辆具有一条经过对象的轨迹。该轨迹包括多个相互连接的索引点。每个索引点表示遵循轨迹的车辆的未来位置。计算设备例如通过以下方式针对每个对象检测横向距离:选择或识别车辆轨迹上与对象的中心或中心轴对齐的索引点;确定该索引点与对象的最近边缘之间的距离;并且将该距离视为对象的横向距离。本发明的方案不限于该示例的细节。
接下来,系统将横向距离与阈值进行比较,并基于该比较的结果选择车辆是否要执行加速度限制。如果横向距离大于或等于阈值,则车辆可以在没有任何加速度限制的情况下行驶。如果横向距离小于阈值,则车辆可以在具有加速度限制的情况下行驶。
在某些情况下,执行额外或替代操作以选择车辆是否应执行加速度限制。例如,系统可以分析传感器数据以:检测对象是静止的还是移动的;(如果对象是静止的)检测静止对象是否至少部分地位于车辆的可行驶区域之外(例如,人行道可以是诸如道路的车道之类的可行驶区域之外的不可行驶区域)并且至少部分地位于车辆正在行驶的车道中;检测静止或移动对象是否在车辆的可行驶区域内但位于可行驶区域的边缘处或其附近;和/或(如果对象正在移动)检测移动对象是否至少部分地在车辆正在行驶的车道中偏移。当对象在可行驶区域的边缘的给定距离内时(例如0-M米,其中M是等于或大于1的整数),对象可以位于可行驶区域的边缘附近。
一旦进行了检测,系统可以执行操作以限制车辆可以执行的纵向加速度的量。当满足以下条件时,可以进行加速度限制;横向距离小于阈值距离;(如果对象是静止的)静止对象至少部分地位于车辆的可行驶区域之外并且至少部分地位于车辆正在行驶的车道中;静止或移动对象位于可行驶区域内但位于与车辆所在的车道邻接的可行驶区域的边缘处或其附近;和/或(如果对象正在移动)移动对象至少部分地在车辆正在行驶的车道中偏移。
本文中使用的单数形式“一”、“一个”和“该”包括复数形式,除非上下文另有明确规定。除非另有定义,否则本文中使用的所有技术和科学术语与本领域普通技术人员通常理解的含义相同。在本文中使用的术语“包含”是指“包括但不限于”。与本文相关的附加术语的定义包含在具体实施方式的末尾。
“电子设备”或“计算设备”是指包括处理器和存储器的设备。每个设备可以具有其自己的处理器和/或存储器,或者可以与如虚拟机或容器布置中的其他设备共享处理器和/或者存储器。存储器将包含或接收编程指令,该编程指令在由处理器执行时使电子设备根据编程指令执行一个或多个操作。
术语“存储器”、“存储器设备”、“数据存储”、“数据存储设备”等均指存储计算机可读数据、编程指令或两者的非暂时性设备。除非另有特别说明,否则术语“存储器”、“存储器设备”、“数据存储”、“数据存储设备”等旨在包括单个设备实施例、多个存储器设备一起或共同存储一组数据或指令的实施例、以及这些设备内的单个扇区。
术语“处理器”和“处理设备”是指被配置为执行编程指令的电子设备的硬件组件。除非另有特别说明,否则单数术语“处理器”或“处理设备”旨在包括单个处理设备实施例和多个处理设备一起或共同执行过程的实施例。
术语“车辆”是指能够承载一名或多名乘客和/或货物并由任何形式的能量提供动力的任何移动形式的运输工具。术语“车辆”包括但不限于轿车、卡车、货车、火车、自主车辆、半自主车辆、手动操作车辆、遥控车辆、船只、飞机、无人机等。“自主车辆”(或“AV”)是指具有处理器、编程指令和传动系部件的车辆,传动系部件可由处理器控制,无需人工操作。自主车辆可以是完全自主的,对于大多数或所有的驾驶条件和功能,不需要人工操作,或者,自主车辆可以是半自主的,在某些条件下或对于某些操作,可能需要人工操作,或者人工操作可以超驰车辆的自主系统并且可以承担车辆的控制。
在本文中,当使用“第一”和“第二”等术语来修饰名词时,这种使用只是为了区分一个物品和另一个物品,除非特别说明,否则不旨在要求顺序。此外,“垂直”和“水平”或“前部”和“后部”等相对位置的术语在使用时,旨在相对于彼此而言,而不必是绝对的,并且仅指与这些术语相关的取决于设备方位的设备的一个可能位置。
值得注意的是,本文在自主车辆的背景下描述了本发明的方案。然而,本发明的方案并不局限于自主车辆应用。本发明的方案可以用于其他应用,例如机器人应用(例如控制关节臂的运动)和/或系统性能应用。
图1示出了根据本公开各方面的示例系统100。系统100包括车辆102,车辆102以半自主或自主的方式沿着道路行驶。车辆102在本文中也被称为AV 102。AV 102可以包括但不限于陆地车辆(如图1所示)、飞机、船只、潜艇、航天器、无人机和/或铰接臂(例如,在自由端具有夹具)。如上所述,除非特别指出,否则本公开不一定局限于AV实施例,并且在一些实施例中它可以包括非自主车辆。
AV 102通常被配置为检测其附近的对象103、114、116。对象可以包括但不限于车辆103、骑车人114(例如自行车、电动滑板车、摩托车等的骑车人)和/或行人116。
如图1所示,AV 102可以包括传感器系统118、车载计算设备122、通信接口120和用户界面124。AV 102还可以包括包括在车辆中的某些部件(例如,如图2中所示),这些部件可以由车载计算设备122使用各种通信信号和/或命令来控制,例如,加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等。
如图2所示,传感器系统118可以包括一个或多个传感器,这些传感器被连接到AV102和/或被包括在AV 102内。例如,这样的传感器可以包括但不限于激光雷达系统、无线电探测和测距(RADAR,下文称为雷达)系统、激光探测和测距(LADAR)系统、声音导航和测距(SONAR,下文称为声纳)系统、摄像机(例如,可见光谱摄像机、红外摄像机等)、温度传感器、位置传感器(例如,全球定位系统(GPS)等)、定位传感器、燃料传感器、运动传感器(例如,惯性测量单元(IMU)等)、湿度传感器、占用传感器和/或其他。传感器通常被配置为生成传感器数据。传感器数据可以包括描述对象在AV 102的周围环境内的位置的信息、关于环境本身的信息、关于AV 102的运动的信息、关于车辆的路线的信息和/或其他。当AV 102在表面(例如,道路)上行进时,至少一些传感器可以收集与表面有关的数据。
如将更详细描述的,AV 102可以配置有激光雷达系统(例如,图2的激光雷达系统264)。激光雷达系统可以被配置为发射光脉冲104,以检测位于AV 102的距离或距离范围内的对象。光脉冲104可以入射在一个或多个对象(例如,AV 103)上,并被反射回激光雷达系统。入射到激光雷达系统上的反射光脉冲106可以被处理以确定该对象到AV 102的距离。在一些情况下,可以使用光电探测器或光电探测器阵列来检测反射光脉冲106,该光电探测器或光电探测器阵列被定位和配置为接收反射回激光雷达系统的光。激光雷达信息,例如检测到的对象数据,从激光雷达系统传送到车载计算设备122。AV 102还可以通过网络108将激光雷达数据传送到远程计算设备110(例如,云处理系统)。计算设备110可以配置有一个或多个服务器来处理本文所述技术的一个或多个过程。计算设备110还可以被配置为通过网络108向/从AV 10传送数据/指令、向/从服务器和/或数据库112传送数据/指令。
应该注意的是,用于收集与表面有关的数据的激光雷达系统可以包括在AV 102以外的系统中,例如但不限于其他车辆(自主或被驾驶的)、机器人、卫星等。
网络108可以包括一个或多个有线或无线网络。例如,网络108可以包括蜂窝网络(例如,长期演进(LTE)网络、码分多址(CDMA)网络、3G网络、4G网络、5G网络、另一种类型的下一代网络等)。网络还可以包括公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如,公共交换电话网络(PSTN))、专用网络、自组织网络、内联网、互联网、基于光纤的网络、云计算网络等,和/或这些或其他类型的网络的组合。
AV 102可以检索、接收、显示和编辑从本地应用程序生成的或通过网络108从数据库112传递的信息。数据库112可以被配置为存储和提供原始数据、索引数据、结构化数据、地图数据、程序指令或已知的其他配置。
通信接口120可被配置为允许AV 102和外部系统之间的通信,外部系统例如是外部设备、传感器、其他车辆、服务器、数据存储、数据库等。通信接口120可以使用任何现在或以后已知的协议、保护方案、编码、格式、封装等,例如但不限于Wi-Fi,红外链路、蓝牙等。用户界面124可以是在AV 102内实现的外围设备的一部分,包括例如键盘、触摸屏显示设备、麦克风和扬声器等。车辆还可以经由通信接口120在诸如已知为车辆对车辆、车辆对对象或其他V2X通信链路的通信链路上接收关于其环境中的设备或对象的状态信息、描述信息或其他信息。术语“V2X”是指车辆与车辆在其环境中可能遇到或影响的任何对象之间的通信。
如上所述,AV 102可以检测其附近的对象103、114、116。使用由传感器系统118生成的传感器数据(例如,由车载激光雷达检测器生成的激光雷达数据集)来促进这样的对象检测。传感器数据由AV 102的车载计算设备122和/或由远程计算设备110处理,以在给定传感器的情况下获取对象的一个或多个预测轨迹。对象的预测轨迹然后可以用于生成AV 102的轨迹。然后,车载计算设备可以使AV 103遵循该轨迹。
图2示出了根据本公开各方面用于车辆的系统架构200。图1的车辆102和/或103可以具有与图2所示相同或相似的系统架构。因此,以下对系统架构200的讨论足以理解图1的车辆102、103。然而,其他类型的车辆被认为在本文所描述的技术的范围内,并且可以包含如结合图2所描述的更多或更少的元件。作为非限制性示例,空中车辆可以不包括制动器或挡位控制器,但可以包括海拔高度传感器。在另一个非限制性示例中,基于水的车辆可以包括深度传感器。本领域技术人员将理解,基于已知的车辆类型,可以包括其他推进系统、传感器和控制器。
如图2所示,系统架构200包括发动机或马达202和用于测量车辆各种参数的各种传感器204-218。在具有燃料动力发动机的燃气动力或混合动力车辆中,传感器可以包括例如发动机温度传感器204、电池电压传感器206、发动机每分钟转数(RPM)传感器208和节气门位置传感器210。如果车辆是电动或混合动力车辆,那么车辆可以具有电动马达,并且相应地将具有电池监测系统212(用于测量电池的电流、电压和/或温度)、马达电流传感器214和马达电压传感器216、以及马达位置传感器218(例如解析器和编码器218)之类的传感器。
这两种类型的车辆常见的操作参数传感器包括,例如:位置传感器236,例如加速度计、陀螺仪和/或惯性测量单元;速度传感器238;以及里程计传感器240。车辆还可以具有时钟242,系统使用该时钟来确定操作期间的车辆时间。时钟242可以被编码到车载计算设备220中,它可以是单独的设备,或者可以有多个时钟。
车辆还将包括各种传感器,这些传感器用于收集有关车辆行驶环境的信息。这些传感器可以包括,例如,定位传感器260(例如,GPS设备);对象检测传感器(例如一个或多个摄像机262);激光雷达传感器系统264;和/或雷达和/或声纳系统266。传感器还可以包括环境传感器268,例如降水传感器和/或环境温度传感器。对象检测传感器可以使车辆能够在任何方向上在车辆的给定距离范围内检测对象,而环境传感器收集关于车辆行驶区域内的环境条件的数据。
在操作过程中,信息从传感器传递到车辆车载计算设备220。车辆车载计算设备220可以使用图4的计算机系统来实现。车辆车载计算设备220分析由传感器捕获的数据,并且可选地基于分析结果控制车辆的操作。例如,车辆车载计算设备220可以通过制动控制器222控制制动;经由转向控制器224控制方向;经由节气门控制器226(在燃气动力车辆中)或马达速度控制器228(例如电动车辆中的电流水平控制器)控制速度和加速度;控制差速齿轮控制器230(在具有变速器的车辆中);和/或控制其他控制器。辅助设备控制器254可以被配置为控制一个或多个辅助设备,例如测试系统、辅助传感器、由车辆运输的移动设备等。
地理位置信息可以从定位传感器260传送到车辆车载计算设备220,然后车载计算设备可以访问与位置信息相对应的环境地图,以确定环境的已知固定特征,例如街道、建筑物、停止标志和/或停/走信号。从摄像机262捕获的图像和/或从诸如激光雷达系统264之类的传感器捕获的对象检测信息从这些传感器传送到车辆车载计算设备220。对象检测信息和/或捕获的图像由车辆车载计算设备220处理,以检测车辆附近的对象。用于基于传感器数据和/或捕获的图像进行对象检测的任何已知或以后已知的技术都可以用于本文公开的实施例中。
激光雷达信息从激光雷达系统264传送到车辆车载计算设备220。此外,所捕获的图像从摄像机262传送到车辆车载计算设备220。激光雷达信息和/或捕获的图像由车辆车载计算设备220处理,以检测车辆附近的对象。车辆车载计算设备220进行对象检测的方式包括本公开中详细描述的这种功能。
此外,系统架构200可以包括车载显示设备270,车载显示设备可以生成并输出接口,在该接口上,传感器数据、车辆状态信息或由本文中描述的过程生成的输出被显示给车辆的乘员。显示设备可以包括以音频格式呈现这种信息的音频扬声器,或者单独的设备可以是以音频格式呈现这种信息的音频扬声器。
车辆车载计算设备220可以包括路线控制器232和/或可以与路线控制器232通信,路线控制器232为自主车辆生成从起始位置到目的地位置的导航路线。路线控制器232可以访问地图数据存储以识别车辆可以行驶以从起始位置到达目的地位置的可能路线和路段。路线控制器232可以对可能的路线进行评分,并识别到达目的地的优选路线。例如,路线控制器232可以生成导航路线,该导航路线使路线期间行进的欧几里得距离或其他成本函数最小化,并且还可以访问可能影响在特定路线上行进所花费的时间量的交通信息和/或估计。根据实现方式,路线控制器232可以使用各种路由方法生成一个或多个路线,例如Dijkstra算法、Bellman-Ford算法或其他算法。路线控制器232还可以使用交通信息来生成反映路线的预期条件的导航路线(例如,一周中的当前日期或一天中的当前时间等),使得为高峰时段的行程而生成的路线可以不同于为深夜的行程而生成的路线。路线控制器232还可以生成到目的地的一条以上的导航路线,并且将这些导航路线中的一条以上的路线发送给用户以供用户从各种可能的路线中进行选择。
在一些场景中,车辆车载计算设备220可以确定车辆周围环境的感知信息。基于由一个或多个传感器提供的传感器数据和所获取的位置信息,车辆车载计算设备220可以确定车辆周围环境的感知信息。感知信息可以表示普通驾驶员在车辆周围环境中将感知到的东西。感知数据可以包括与车辆环境中的一个或多个对象有关的信息。例如,车辆车载计算设备220可以处理传感器数据(例如,激光雷达数据、雷达数据、摄像机图像等),以便识别车辆环境中的对象和/或特征。对象可以包括但不限于交通信号、道路边界、其他车辆、行人和/或障碍物。车辆车载计算设备220可以使用任何现在或以后已知的对象识别算法、视频跟踪算法和计算机视觉算法(例如,在多个时间段内逐帧迭代地跟踪对象)来确定感知。
在这些或其他场景中,车辆车载计算设备220还可以为环境中的一个或多个识别的对象确定对象的当前状态。状态信息可以包括但不限于每个对象的:当前位置;当前速度;加速度;当前航向;当前姿势;当前形状、尺寸和/或覆盖区(footprint);对象类型或分类(例如,车辆、行人、自行车、静态对象或障碍物);和/或其他状态信息。
车辆车载计算设备220可以执行一个或多个预测和/或预报操作。例如,车辆车载计算设备220可以预测一个或多个对象的未来位置、轨迹和/或动作。例如,车辆车载计算设备220可以至少部分地基于感知信息(例如,每个对象的状态数据,包括如下所述确定的估计形状和姿态)、定位信息、传感器数据、和/或描述对象、车辆、周围环境的过去和/或当前状态和/或它们的关系的任何其他数据预测对象的未来位置、轨迹和/或动作。例如,如果对象是车辆并且当前驾驶环境包括交叉口,则车辆车载计算设备220可以预测对象是否可能直线向前移动或转弯。如果感知数据指示交叉口没有红绿灯,则车辆车载计算设备220还可以预测车辆是否必须在进入交叉口之前完全停止。
在这些或其他场景中,车辆车载计算设备220可以确定车辆的运动计划。例如,车辆车载计算设备220可以基于感知数据和/或预测数据来确定车辆的运动计划。具体地,给定关于邻近对象的未来位置的预测和其他感知数据,车辆车载计算设备220可以确定车辆的运动计划,该运动计划相对于对象在其未来位置处最佳地导航车辆。
在这些或其他场景中,车辆车载计算设备220可以接收预测并做出关于如何应对车辆环境中的对象和/或行为者的决定。例如,对于特定的行为者(例如,具有给定速度、方向、转弯角度等的车辆),车辆车载计算设备220基于例如交通状况、地图数据、自主车辆的状态等来决定是否超车、让行、停止和/或通过。此外,车辆车载计算设备220还规划车辆在给定路线上行驶的路径,以及驾驶参数(例如,距离、速度和/或转弯角度)。也就是说,对于给定的对象,车辆车载计算设备220决定如何应对该对象并确定具体如何操作。例如,对于给定对象,车辆车载计算机设备220可以决定经过该对象,并可以确定是从对象的左侧还是右侧经过(包括速度等运动参数)。车辆车载计算设备220还可以评估检测到的对象与车辆之间发生碰撞的风险。如果风险超过可接受的阈值,则可以确定在车辆遵循定义的车辆轨迹和/或在一段时间(例如,N毫秒)内执行一个或多个动态生成的紧急机动的情况下是否可以避免碰撞。如果可以避免碰撞,则车辆车载计算设备220可以执行一个或多个控制指令以执行谨慎的机动(例如,稍微减速、加速、变道或转弯)。相反,如果不能避免碰撞,则车辆车载计算设备220可以执行一个或多个控制指令以执行紧急机动(例如,制动和/或改变行进方向)。
如上所述,生成关于车辆运动的规划和控制数据以供执行。车辆车载计算设备220可以例如经由制动控制器控制制动;经由转向控制器控制方向;经由节气门控制器(在燃气动力车辆中)或马达速度控制器(例如电动车辆中的电流水平控制器)控制速度和加速度;经由差速齿轮控制器控制换挡(在配备变速器的车辆中);和/或经由其他控制器控制其他操作。
例如,可以使用一个或多个计算机系统(例如图3所示的计算机系统300)来实施本发明的方案。计算机系统300可以是能够执行本文所描述的功能的任何计算机。图1的车载计算设备122、图1的计算设备110、图1中的机器人设备152、图1的移动通信设备156和/或图2所示的车辆车载计算设备220可以与计算系统300相同或相似。因此,对计算系统300的讨论足以理解图1-2的设备110、122、152、156和220。
计算系统300可以包括比图3中所示的部件更多或更少的部件。然而,所示的部件足以公开实现本发明的方案的说明性方案。图3的硬件架构表示被配置为操作车辆的代表性计算系统的一种实现方式,如本文所述。这样,图3的计算系统300实现本文所描述的方法的至少一部分。
计算系统300的一些或所有部件可以实现为硬件、软件和/或硬件和软件的组合。硬件包括但不限于一个或多个电子电路。电子电路可以包括但不限于无源部件(例如电阻器和电容器)和/或有源部件(例如放大器和/或微处理器)。无源部件和/或有源部件可以被适配、布置和/或编程为执行本文所述的方法、过程或功能中的一个或多个。
计算机系统300包括一个或多个处理器(也称为中央处理单元或CPU),例如处理器304。处理器304连接到通信基础设施或总线302。一个或多个处理器304中的每一个可以是图形处理单元(GPU)。在某些情况下,GPU是一种处理器,是专门用于处理数学密集型应用程序的电子电路。GPU可以具有并行结构,该并行结构对于大数据块的并行处理是有效的,例如计算机图形应用、图像、视频等常见的数学密集型数据。
计算机系统300还包括用户输入/输出设备316,例如监视器、键盘、指示设备等,它们通过用户输入/输出接口308与通信基础设施302通信。计算机系统300还包括主存储器或主要存储器306,例如随机存取存储器(RAM)。主存储器306可以包括一个或多个级别的高速缓存。主存储器306中存储有控制逻辑(即计算机软件)和/或数据。
计算机系统300可以提供一个或多个副存储设备或存储器310。副存储器310可以包括例如硬盘驱动器312和/或可移动存储设备或驱动器314。可移动存储驱动器314可以是外部硬盘驱动器、通用串行总线(USB)驱动器、诸如小型闪存卡或安全数字存储器的存储卡、软盘驱动器、磁带驱动器、光盘驱动器、光存储设备、磁带备份设备和/或任何其他存储设备/驱动器。
可移动存储驱动器314可以与可移动存储单元318相互作用。可移动存储单元318包括计算机可用的或可读的存储设备,其上存储有计算机软件(控制逻辑)和/或数据。可移动存储单元318可以是外部硬盘驱动器、通用串行总线(USB)驱动器、诸如小型闪存卡或安全数字存储器的存储卡、软盘、磁带、光盘、DVD、光存储盘和/或任何其他计算机数据存储设备。可移动存储驱动器314以公知的方式从可移动存储单元314读取和/或向可移动存储设备314写入。
在一些场景中,副存储器310可以包括用于允许计算机系统300访问计算机程序和/或其他指令和/或数据的其他装置、工具或其他方法。这样的装置、工具或其他方法可以包括,例如,可移动存储单元322和接口320。可移动存储单元322和接口320的示例可以包括程序卡盒和卡盒接口(例如在视频游戏设备中发现的)、可移动存储芯片(例如EPROM或PROM)和相关插座、记忆棒和USB端口、存储卡和相关存储卡槽、和/或任何其他可移动存储单元和相关接口。
计算机系统300还可以包括通信或网络接口324。通信接口324使计算机系统300能够与远程设备、远程网络、远程实体等的任何组合(单独地和共同地由参考数字328参考)进行通信和交互。例如,通信接口324可以允许计算机系统300通过通信路径326与远程设备328通信,通信路径326可以是有线和/或无线的,并且可以包括LAN、WAN、互联网等的任何组合。控制逻辑和/或数据可以经由通信路径326传输到计算机系统300和从计算机系统300传输。
在一些场景中,包括存储有控制逻辑(软件)的有形的非暂时性计算机可用或可读介质的有形的非暂时性装置或制造品在本文中也被称为计算机程序产品或程序存储设备。这包括但不限于计算机系统300、主存储器306、副存储器310和可移动存储单元318和322,以及体现上述任意组合的有形制造品。当由一个或多个数据处理设备(例如计算机系统300)执行这样的控制逻辑时,使得这样的数据处理设备如本文所述地操作。
基于本公开中包含的教导,对于相关领域的技术人员来说,如何使用除图3所示之外的数据处理设备、计算机系统和/或计算机架构来制造和使用本发明的方案将是显而易见的。特别地,本发明的方案可以使用不同于本文所述的软件、硬件和/或操作系统实现来操作。
图4提供了有助于理解根据本发明的方案如何实现AV的运动或移动的框图。在框402-412中执行的所有操作都可以由车辆(例如,图1的AV 102)的车载计算设备(例如,图1的车载计算设备122和/或图2的车载计算设备220)执行。
在框402中,检测AV(例如,图1的AV 102)的位置。该检测可以基于从AV的定位传感器(例如图2的定位传感器260)输出的传感器数据来进行。该传感器数据可以包括但不限于GPS数据。检测到的AV的位置然后被传递到框406。
在框404中,在AV附近(例如,<100+米)检测对象(例如,图1的车辆103)。该检测是基于从AV的摄像机(例如,图2的摄像机262)和/或AV的激光雷达系统(例如,图2的激光雷达系统264)输出的传感器数据进行的。例如,执行图像处理以检测图像中特定类别的对象(例如,车辆、骑车人或行人)的实例。图像处理/对象检测可以根据任何已知或以后已知的图像处理/对象检测算法来实现。
此外,在框404中为对象确定预测轨迹。在框404中,基于对象的类别、长方体几何形状、长方体航向和/或地图518的内容(例如,人行道位置、车道位置、车道行进方向、驾驶规则等)来预测对象的轨迹。随着讨论的进行,长方体几何形状和航向的确定方式将变得显而易见。此时,应当注意,使用各种类型的传感器数据(例如,2D图像、3D激光雷达点云)和矢量图418(例如,车道几何形状)来确定长方体几何形状和/或航向。基于长方体几何形状和航向预测对象轨迹的技术可以包括例如预测对象在与长方体的航向相同方向的线性路径上移动。预测的对象轨迹可以包括但不限于以下轨迹:由对象的实际速度(例如,1英里/小时)和实际行进方向(例如,向西)定义的轨迹;由对象的实际速度(例如,1英里/小时)和对象的另一个可能的行进方向(例如,在朝向AV的方向上,从对象的实际行进方向南、西南或X(例如,40°)度)定义的轨迹;由对象的另一可能速度(例如,2-10英里/小时)和对象的实际行进方向(例如,向西)定义的轨迹;和/或由对象的另一可能速度(例如,2-10英里/小时)和对象的另一可能行进方向(例如,在朝向AV的方向上,从对象的实际行进方向向南、西南或X(例如,40°)度)定义的轨迹。可能的行进速度和/或可能的行进方向可以针对与对象处于同一类别和/或子类别中的对象预先定义。再次需要注意的是,长方体定义了对象的完整范围和对象的航向。航向定义了对象前部指向的方向,因此提供了对象实际和/或可能行进方向的指示。
将指定对象的预测轨迹、长方体几何形状/航向的信息420提供给框406。在一些场景中,对象的分类也被传递到框406。在框406中,使用来自框402和404的信息来生成车辆轨迹。例如,使用长方体确定车辆轨迹的技术可以包括确定AV的轨迹,当对象在AV前面时,该轨迹将经过对象,长方体的航向与AV移动的方向一致,并且长方体具有大于阈值的长度。本发明的方案并不局限于这种情况的细节。可以基于来自框402的定位信息、来自框404的对象检测信息和/或地图信息414(其预先存储在车辆的数据存储中)来确定车辆轨迹420。地图信息414可以包括但不限于图1的道路地图160的全部或一部分。车辆轨迹420可以表示平滑路径,该平滑路径没有将会给乘客带来不适的突然变化。例如,车辆轨迹由沿着道路的给定车道的行驶路径定义,在该道路的给定车道中,在给定的时间量内没有预测到对象行驶。车辆轨迹420随后被提供给框408。
在框408中,基于车辆轨迹420生成转向角和速度命令。转向角和速度命令被提供给框410,用于车辆动力学控制,即,转向角和速度命令使AV遵循车辆轨迹408。
图5提供了选择性地控制车辆(例如图1的车辆102)的纵向加速度的说明性方法500的流程图。方法500可以至少部分地由车辆的车载计算设备(例如,图1的车载计算设备122和/或图2的车辆车载计算设备220)和/或另一个计算设备(例如,图1的服务器110和/或图3的计算机系统300)来执行。
方法500从502开始,并继续到504,在504中,计算设备获得传感器数据。传感器数据可以包括由车辆的一个或多个传感器(例如,图1的传感器系统118和/或图2的传感器236-242、260-268)生成的数据。在506中,计算设备对传感器数据进行处理,以检测车辆轨迹上的索引点与车辆正在经过的对象之间的横向距离。例如,如图6所示,车辆608的轨迹606经过对象604、610。轨迹606包括多个相互连接的索引点。计算设备例如通过以下方式针对每个对象604检测横向距离Dobject-trajectory:识别车辆轨迹上与对象的中心614或重心(CoG)对齐的索引点612;确定索引点612与对象的最近边缘616之间的最小距离;并且将该距离视为对象的横向距离。本发明的方案不限于该示例的细节。图7示出了与对象704、710相关的横向距离大于与图6的对象604、610相关的横向距离的场景。
在508中,将横向距离与阈值thr进行比较。阈值thr可以是预定义的和/或基于对象的类型和/或其他标准(例如,车辆速度等)从多个阈值中选择的。阈值可以以查找表(LUT)格式或其他格式存储在计算设备的存储器(例如,图3的存储器306和/或310)中。例如,阈值可以是等于或大于零并且小于或等于五、十、十五、二十或二十五的任何数字(整数或十进制)。本发明的方案在这方面不受限制。
当横向距离小于阈值[508:是]时,方法500继续到510,在510中,使车辆在具有加速度限制的情况下继续自主驾驶操作。自主驾驶操作可以包括但不限于,如以上关于图4所讨论的,经由转向、加速和/或制动遵循先前公布的路径和/或轨迹。随着讨论的进行,实现加速度限制的方式将变得显而易见。加速度限制的量对于各种情况可以相同或不同,如下所述。该场景在图6中示出,其中横向距离Dobject-trajectory小于阈值thr。
相反,当横向距离大于或等于阈值[508:否]时,方法500继续到512,在512中,使车辆在没有任何加速度限制的情况下继续自主驾驶操作。自主驾驶操作可以包括但不限于,如以上关于图4所讨论的,经由转向、加速和/或制动遵循先前公布的路径和/或轨迹。该场景在图7中示出,其中横向距离Dobject-trajectory大于阈值thr。
随后,执行514,在514中,方法500结束或执行其他操作。例如,方法500可以返回504,使得使用新的或更新的传感器数据来执行其另一次迭代。
图8提供了选择性地控制车辆(例如图1的车辆102)的纵向加速度的另一方法800的流程图。方法800可以至少部分地由车辆的车载计算设备(例如,图1的车载计算设备122和/或图2的车辆车载计算设备220)和/或另一个计算设备(例如,图1的服务器110和/或图3的计算机系统300)来执行。
方法800从802开始并继续到804-808、818。这些框的操作与图5的框504-508、512的操作相同或相似。方法500和800之间的区别在于,在方法800中,当横向距离小于阈值时执行附加操作。附加操作包括分析传感器数据以确定对象是否完全位于不可行驶区域内,如判定框812所示。不可行驶区域包括车辆未被授权或无法驾驶的区域。这样的区域可以包括但不限于人行道和/或绿地。不可行驶区域可以位于可行驶区域附近和/或邻接可行驶区域。可行驶区域包括车辆被授权或能够驾驶的区域。这样的区域可以包括但不限于道路、车道、车行道和停车场。
当对象至少部分位于不可行驶区域之外[812:否]时,在814中计算设备还分析传感器数据,以确定对象是否至少部分位于车辆的车道中。如果不是[814:否],则方法800继续到818,在818中,使车辆在没有任何加速度限制的情况下继续自主驾驶操作。如果是[814:是],则方法800继续到820,在820中,使车辆在具有加速度限制的情况下继续进行自主驾驶操作。随着讨论的进行,实现加速度限制的方式将变得显而易见。加速度限制的量对于各种情况可以相同或不同,如下所述。在完成818或820之后,方法800继续到822,在822中,方法800结束或执行其他操作(例如,返回到804)。
当对象至少部分位于不可行驶区域之外[812:是]时,在816中,计算设备还分析传感器数据,以确定对象是否位于车辆的车道的边缘处或其附近。如果不是[816:否],则方法800继续到818,在818中,使车辆在没有任何加速度限制的情况下继续自主驾驶操作。如果是[816:是],则方法800继续到820,在820中,使车辆在具有加速度限制的情况下继续进行自主驾驶操作。随着讨论的进行,实现加速度限制的方式将变得显而易见。加速度限制的量对于各种情况可以相同或不同,如下所述。在完成818或820之后,方法800继续到822,在822中,方法800结束或执行其他操作(例如,返回到804)。
图9提供了有助于理解根据方法800何时不需要加速度限制的图示。如图9所示,车辆908正遵循轨迹906穿过可行驶区域900(例如,道路的车道)。实际上,车辆908将经过完全位于不可行驶区域902内的对象904。在这种情况下,即使与对象相关的横向距离小于阈值(即,Dobject-trajectory<thr),计算设备也确定不需要加速度限制。本发明的方案不限于图9的细节。
图10提供了有助于理解根据方法800何时不需要加速度限制的另一个图示。如图10所示,车辆1008正遵循轨迹1006穿过可行驶区域1000(例如,道路的车道)。实际上,车辆1008将要经过对象1004。对象1004完全位于不可行驶区域1002内,但位于不可行驶区域邻接车辆的车道的边缘1010处。在这种情况下,即使对象完全位于不可行驶区域1002内,计算设备也确定需要加速度限制。本发明的方案不限于图10的细节。
图11提供了有助于理解根据方法800何时不需要加速度限制的图示。如图11所示,车辆1108正遵循轨迹1106穿过可行驶区域1100(例如,道路的车道)。实际上,车辆1108将要经过对象1104。对象1104部分地位于不可行驶区域1102之外,并且部分地位于可行驶区域1100内。在这种情况下,计算设备确定需要加速度限制。此处限制车辆加速度的量不同于(例如,大于)图10的场景中限制车辆加速度的量。实际上,图11中的车辆加速度可以不同于(例如,小于)图10中的车辆加速度。本发明的方案不限于图11的细节。
现在参考图12,提供了选择性地控制车辆(例如,图1的车辆102)的纵向加速度的另一方法1200的流程图。方法1200可以至少部分地由车辆的车载计算设备(例如,图1的车载计算设备122和/或图2的车辆车载计算设备220)和/或另一个计算设备(例如,图1的服务器110和/或图3的计算机系统300)来执行。
方法1200从1202开始并继续到1204-1208、1216。这些框的操作与图5的框504-508、512的操作相同或相似。方法500和1200之间的区别在于,在方法1200中,当横向距离小于阈值时执行附加操作。附加操作包括分析传感器数据以确定对象是移动的还是静止的,如判定框1210所示。当对象是静止的[1210:否]时,可以如框1212所示执行图8的框812-822的操作。
当对象正在移动[1210:是]时,计算设备还分析传感器数据,以确定移动对象是否在车辆的车道上偏移,如1214所示。如果不是[1214:否],则方法1200继续到1216,在1216中,使车辆在没有任何加速度限制的情况下继续自主车辆驾驶操作。如果是[1214:是],则方法1200继续到1211,在1211中,使车辆在具有加速度限制的情况下继续进行自主车辆驾驶操作。随着讨论的进行,实现加速度限制的方式将变得更加显而易见。在完成1216或1218之后,执行1220,在1220中,方法1200结束或执行其他操作(例如,返回到1204)。
现在参考图13,提供了有助于理解根据方法1200何时不需要加速度限制的图示。如图13所示,车辆1312正遵循轨迹1306穿过可行驶区域1300(例如,多车道道路)。车辆1312将经过完全位于可行驶区域1300内的对象1304。与对象1304相关的横向距离小于阈值。对象1304正在与车辆1312正在行驶的车道1308相邻的车道1310中移动。对象1304和车辆1312沿着箭头1314、1316所示的相同方向行进。在这种情况下,即使与对象相关的横向距离小于阈值(即,Dobject-trajectory<thr),计算设备也确定不需要加速度限制。本发明的方案不限于图13的细节。
现在参考图14,提供了有助于理解根据方法1200何时不需要加速度限制的图示。如图14所示,车辆1412正遵循轨迹1406穿过可行驶区域1400(例如,多车道道路)。车辆1412将经过完全位于可行驶区域1400内的对象1404。与对象1404相关的横向距离小于阈值。对象1404正在与车辆1412正在行驶的车道1408相邻的车道1410中移动。对象1404和车辆1412在箭头1414、1416所示的相反方向上行进。在这种情况下,即使与对象相关的横向距离小于阈值(即,Dobject-trajectory<thr),计算设备也确定不需要加速度限制。本发明的方案不限于图14的细节。
现在参考图15,提供了有助于理解根据方法1200何时不需要加速度限制的图示。如图15所示,车辆1512正遵循轨迹1506穿过可行驶区域1500(例如,多车道道路)。车辆1512将经过完全位于可行驶区域1500内的对象1504。与对象1504相关的横向距离小于阈值。对象1504正在与车辆1512正在行驶的车道1508相邻的车道1510中移动。对象1504和车辆1512在箭头1514、1516所示的相反方向上行进。对象1504在车辆的车道1508中偏移。在这种情况下,计算设备确定需要加速度限制。本发明的方案不限于图14的细节。
图16提供了确定车辆的加速度受到限制的量的方法1600的流程图。下面将参照图19来描述另一这样的方法1900。方法1600、1900可以在图5的框510、图8的框820和/或图12的框1218中执行。
如图16所示,方法1600从1602开始,并继续到1604,在1604中,计算设备定义车辆加速度将被限制的区间。该区间在本文中也被称为加速度限制区间。加速度限制区间可以具有预定的长度,每个相对端距对象的中心和/或相应的拐角给定的距离。例如,如图17所示,区间1708具有长度L、位于距车辆的边界1722的位置距离d1处的第一端1704、以及位于距车辆的边界1722距离d2处的第二端1706、距对象的第一拐角1732距离d3、以及距对象的第二相对拐角1734距离d4。距离d1和d2是相同的。在图26中提供了用于理解车辆的边界的位置的图示。车辆的边界是通过以下方式确定的一系列点:沿着轨迹2602纵向滑动车辆的覆盖区2600;(对于轨迹的每个索引点)横向滑动覆盖区2600,直到覆盖区与对象2604相交;以及通过包括点2608的线限定车辆的边界2606,其中每个点表示在横向滑动位置处的车辆中心或重心。然后基于车辆的边界来确定距离d1和d2。本发明的方案不限于图17和/或图26的细节。
在1606之后,计算设备处理传感器数据,以确定对象与区间内车辆轨迹的每个索引点之间的距离。例如,如图17所示,车辆1726在可行驶区域1710中遵循轨迹1724。轨迹1724包括多个相互连接的索引点17021、……、170211。计算设备针对区间1708内的每个索引17022、……、170210确定距离Dobject-trajectory。本发明的方案不限于图17的细节。
接下来,在1608中,基于距离为车辆确定在区间中每个索引点处的期望加速度。例如,参考图17,与索引点17024相关的距离Dobject-trajectory用于从存储的LUT或配置文件中获得期望的加速度值Adesired。本发明的方案在这方面不受限制。在某些场景中,每种对象类型都将具有一组配置文件,这些配置文件可用于确定车辆的期望加速度。例如,如果对象与行人存在相关,则行人存在配置文件用于获得期望加速度值)。行人存在概率可以用于在行人存在参数与对象参数之间进行插值。如果对象与骑车人存在相关,则骑车人存在配置文件用于获得期望加速度值)。骑车人存在概率可以用于在骑车人存在参数与对象参数之间进行插值。本发明的方案不限于该示例的细节。
接下来,计算设备在1614中执行操作,以确定是否单个对象正在讨论。如果是[1614:是],则执行1616,在1616中,在整个区间(例如,图17的区间1708)上,计算设备选择最小的最终期望加速度值(例如,Adesired-2,其中Adesired-2<Adesired-1、Adesired-3、……Adesired-N)来限制车辆的加速度。在1622中,可选地可以基于对象的类别调整所选择的期望加速度值。例如,当对象被分类为行人时,加速度值减少第一预定义量(例如,0-10%),而当对象分类为骑车人时,加速度数值减少第二不同的预定义量(如,10-30%)。本发明的方案不限于该示例的细节。可替换地,可以基于对象的分类来减小加速度值。在1623中,可以基于存储在配置文件中的预先确定的校准权重来选择权重。例如,权重可以是0到100之间的整数或十进制数。然后在1624中在与所讨论的对象(例如,图17的对象1712)相关的区间上使用所选择的期望加速度值来限制车辆的加速度。随后,执行1626,在1626中,方法1600结束或者执行其他操作。
当有两个或更多个对象正在讨论时[1614:否],则计算设备为区间中每个索引点处的所有对象选择最小的最终期望加速度,如1618所示。在1620中,计算设备使用所选择的最终期望加速度通过细化算法生成合成加速度值。细化算法可以包括但不限于机器学习算法,该机器学习算法被训练为基于从传感器数据得倒的情景信息来生成合成加速度值。情景信息可以包括但不限于车辆和对象的相对定位、车辆的位置、对象的位置、车辆轨迹、预测的对象轨迹、对象分类、车辆的行进方向和/或对象的行进方向。在1622中,可选地可以基于对象的类别来调整合成加速度值。例如,当对象被分类为行人时,合成加速度值减少第一预定义量(例如,0-10%),而当对象被分类为骑车人时,合成加速度值减少第二不同的预定义量(比如,1-30%)。本发明的方案不限于该示例的细节。可替换地,可以基于对象的分类来增加加速度值。然后在1624中在与所讨论的对象(例如,图17的对象1712)相关的区间上使用所选择的最终期望加速度值来限制车辆的加速度。随后,执行1626,在1626中,方法1600结束或者执行其他操作。
图18提供了有助于理解根据图16的方法1600如何限制车辆加速度的示图。更具体地,示图1800示出了基于横向距离Dobject-trajectory限制车辆加速度的程度。示图1802示出了基于边缘距离Dobject-edge限制车辆加速度的程度。
图19提供了确定车辆的加速度受到限制的量的另一方法1900的流程图。方法1900可以在图5的框510、图8的框820和/或图12的框1218中执行。
如图19所示,方法1900从1902开始,并继续到1904,在1904中,计算设备定义了车辆加速度将被限制的区间。该区间在本文中也被称为加速度限制区间。加速度限制区间可以具有预定的长度,每个相对端距对象的中心和/或相应的拐角给定的距离。例如,如图17所示,区间1708具有长度L、位于距车辆的边界1722距离d1处的第一端1704、以及位于距车辆的边界1722距离d2处的第二端1706、距对象的第一拐角1732距离d3、以及距对象的第二相对拐角1734距离d4。距离d1和d2是相同的。本发明的方案不限于图17的细节。在图20中示出了另一个区间2010。
在1906中,计算设备处理传感器数据,以确定车辆与对象相邻时的边界与区间内车辆轨迹上的每个索引点之间的第一距离。例如,参考图20,如果车辆与对象2004相邻,则计算设备确定车辆的边界2008的位置。车辆的边界2008是通过以下方式确定的一系列点:沿着轨迹纵向滑动车辆的覆盖区;(对于轨迹的每个索引点)横向滑动覆盖区,直到覆盖区与对象相交;并且通过包括点的线来限定车辆的边界,其中每个点表示在横向滑动位置处的车辆中心或重心。然后确定车辆的边界2008的该位置与车辆的轨迹2006的索引点2012之间的距离Dvehicle-trajectory。本发明的方案不限于图20的细节。
在1908中,计算设备处理传感器数据,以确定车辆与对象相邻时的边界与可行驶区域的边缘之间的第二距离。例如,参考图20,计算设备确定车辆的边界2008的位置与可行驶区域2000的边缘2016之间的距离Dvehicle-edge。本发明的方案不限于图20的细节。
在1910中,计算设备为区间内轨迹的每个索引点确定基于第一距离的第一期望加速度和基于第二距离的第二期望加速度。例如,参考图20,与索引点2012相关的距离Dvehicle-trajectory用于从存储的LUT或校准文件中获得第一期望加速度值,而距离Dvehicle-edge用于从存储的LUT或校准文件中获得第二期望加速度值。本发明的方案在这方面不受限制。计算设备为每个索引点选择具有最大或最高值的第一或第二期望加速度值,如1912所示。所选择的期望加速度值被称为最终期望加速度值。
在1914中,计算设备执行操作以确定是否单个对象正在讨论中。如果是[11914:是],则执行1916,在1916中,在整个区间(例如,图20的区间2010)上,计算设备选择最小的最终期望加速度值来限制车辆的加速度。在1922中可选地可以基于对象的类别调整所选择的最终期望加速度值。例如,当对象被分类为行人时,加速度值减少第一预定义量,而当对象被分类为骑车人时,加速度值减少第二不同的预定义量。本发明的方案不限于该示例的细节。可替换地,可以基于对象的分类来增加加速度值。然后在1924中,在与所讨论的对象(例如,图20的对象2004)相关的区间上,使用所选择的最终期望加速度值来限制车辆的加速度。随后,执行1926,在1926中,方法1900结束或者执行其他操作。
当有两个或更多个对象正在讨论[11914:否]时,则计算设备为区间中每个索引点处的所有对象选择最小的最终期望加速度,如1918所示。在1920中,计算设备使用所选择的最终期望加速度使用细化算法来生成合成加速度值。细化算法可以包括但不限于机器学习算法,该机器学习算法被训练为基于从传感器数据得到的情景信息来生成合成加速度值。情景信息可以包括但不限于车辆和对象的相对定位、车辆的位置、对象的位置、车辆轨迹、预测的对象轨迹、对象分类、车辆的行进方向和/或对象的行进方向。在1922中,可选地可以基于对象的类别来调整合成加速度值。例如,当对象被分类为行人时,合成加速度值减小第一预定义量,而当对象被分类为骑车人时,合成加速度值减小第二不同的预定义量。本发明的方案不限于该示例的细节。可替换地,可以基于对象的分类来增加加速度值。然后在1924中,在与所讨论的对象(例如,图20的对象2004)相关的区间上,使用所选择的最终期望加速度值来限制车辆的加速度。随后,执行1926,在1900中,方法1900结束或者执行其他操作。
图21提供了有助于理解根据图19的方法1900如何限制车辆加速度的示图。更具体地,示图2100示出了基于距离Dvehicle-trajectory限制车辆加速度的程度。示图2102示出了基于边缘距离Dvehicle-edge限制车辆加速度的程度。示图2104示出了示图2100和2102的重叠。示图2100和2102的最大值用于限制车辆的加速度。本发明的方案不限于图21的细节。
图22提供了有助于理解在期望加速度随区间变化的情况下如何限制车辆的加速度的图示。在这种情况下,最小加速度应用于整个区间,以限制车辆的加速度。
图23提供了有助于理解在车辆将经过多个对象的情况下如何限制车辆的加速度的图示。在这种情况下,每个索引点处的最小加速度被用作细化算法的输入,以确定车辆的加速度在与对象相关的区间上被限制的量。
图24提供了控制车辆加速度的另一方法2400的流程图。方法2400可以至少部分地由车辆的车载计算设备(例如,图1的车载计算设备122和/或图2的车辆车载计算设备220)和/或另一个计算设备(例如,图1的服务器110和/或图3的计算机系统300)来执行。
方法2400从2402开始,继续到2404,在2404中,计算设备处理传感器数据,以检测从车辆轨迹到车辆预期经过的对象的横向距离。例如,可以通过以下方式检测横向距离:从轨迹的多个索引点中选择一个与对象中心对齐的索引点;确定所选择的索引点与对象的边缘之间的距离;并且将该距离视为横向距离。在2406中将横向距离与阈值进行比较。
在2408-2412中,计算设备还处理传感器数据,以检测对象是否完全位于车辆的不可行驶区域内并且位于车辆的可行驶区域的边缘处;对象是否部分地位于车辆的可行驶区域内;和/或对象是否是在车辆的可行驶区域中偏移的移动对象。
在2414中,计算设备基于2406的比较操作、2408的检测、2410的检测和/或2412的检测的结果,使车辆在具有或没有加速度限制的情况下执行自主驾驶操作。例如,当满足以下条件时,使车辆在具有加速度限制的情况下执行自主驾驶操作:(i)横向距离小于阈值,(ii)对象完全位于不可行驶区域内且位于可行驶区域的边缘处,(iii)对象部分地位于车辆的可行驶区域内,和/或(iv)对象是在车辆的可行驶区域中偏移的移动对象。或者,当满足以下条件时,使车辆在没有加速度限制的情况下执行自主驾驶操作:(i)横向距离大于阈值,(ii)对象完全位于不可行驶区域内但远离可行驶区域的边缘,(iii)对象未至少部分位于车辆的可行驶区域内,和/或(iv)对象不是在车辆的可行驶区域中偏移的移动对象。
2414可以包含获得车辆加速度将被限制的量。加速度限制量可以通过以下方式获得:定义第一端与对象相距给定距离并且第二相对端与对象相距给定距离的区间;获得对象与区间内轨迹的每个索引点之间的距离;基于距离中的相应一个,获得轨迹的每个所述索引点的期望加速度;以及从期望加速度中选择最小值来限制车辆的加速度。在选择最小期望加速度之前,每个期望加速度可以与权重相结合。可以基于对象的类别来调整最小值。
可替代地,加速度限制量也可以通过以下方式获得:定义第一端与对象相距给定距离并且第二相对端与对象相距给定距离的区间;以及对位于该区间中轨迹的多个索引点中的每个索引点执行操作。这些操作包含:获得当车辆与对象相邻时车辆的边界与区间内轨迹的每个索引点之间的第一距离,以及当车辆与对象相邻时车辆的边界与车辆的可行驶区域的边缘之间的第二距离;获得基于第一距离的第一期望加速度和基于第二距离的第二期望加速度;以及选择第一和第二期望加速度中最大的一个作为最终期望加速度。从最终期望加速度中选择最小值来限制车辆加速度。可以基于对象的类别来调整最小值。
现在参考图25,其为选择性地限制车辆加速度的另一方法2500的流程图。方法2500可以至少部分地由车辆的车载计算设备(例如,图1的车载计算设备122和/或图2的车辆车载计算设备220)和/或另一个计算设备(例如,图1的服务器110和/或图3的计算机系统300)来执行。
方法2500从2502开始,继续到2504,在2504中,计算设备处理传感器数据,以检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的对象的横向距离。该对象位于轨迹之外并且位于轨迹的一侧。该点表示车辆在经过对象时的未来位置。例如,横向距离可以通过以下方式检测:从轨迹的多个索引点中选择与偏移到轨迹一侧的对象的中心对齐的索引点;确定所选择的索引点和对象的边缘之间的距离;并且将该距离视为横向距离。
在2506-2508中,计算设备可以将横向距离与阈值进行比较,并根据比较结果选择车辆是否要执行加速度限制。在2518中,计算设备可以基于其选择使车辆在具有或没有加速度限制的情况下执行自主驾驶操作。例如,当横向距离小于阈值时,选择加速度限制。
附加地或替代地,计算设备可以执行以下操作:检测对象是否完全位于车辆的不可行驶区域内并且位于车辆的可行驶区域的边缘处;检测对象是否部分地位于车辆的可行驶区域内;和/或检测对象是否是在车辆的可行驶区域中偏移的移动对象。在2518中,计算设备可以基于这些检测中的一个或多个使车辆在具有或没有加速度限制的情况下执行自主驾驶操作。例如,当满足以下条件时,使车辆在没有加速度限制的情况下执行自主驾驶操作:(i)横向距离大于阈值,(ii)对象完全位于不可行驶区域内但远离可行驶区域的边缘,(iii)对象未至少部分位于车辆的可行驶区域内,和/或(iv)对象不是在车辆的可行驶区域中偏移的移动对象。当满足以下条件时,在2518中,使车辆在具有加速度限制的情况下执行自主驾驶操作:(i)横向距离小于阈值,(ii)对象完全位于不可行驶区域内且位于可行驶区域的边缘处,(iii)对象部分位于车辆的可行驶区域内;和/或(iv)对象是在车辆的可行驶区域中偏移的移动对象。可以以与上述相同或类似的方式来确定加速度的量。随后,执行2520,在2520中,方法2500结束或者执行其他操作。
如上所述,本发明的方案涉及用于控制车辆加速度的实施系统和方法。方法可以包括通过计算设备执行以下操作:检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的第一对象的横向距离(其中第一对象位于轨迹之外并且位于轨迹的一侧,并且点表示车辆在经过第一对象时的未来位置);基于横向距离选择车辆是否要执行加速度限制;当选择车辆要执行加速度限制时,获得车辆的加速度将被限制的量;以及使车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
在某些情况下,车辆加速度将被限制的量可以通过以下方式获得:定义第一端位于距第一对象预定距离处并且第二相对端位于距第一对象预定距离处的区间;获得第一对象与区间内轨迹的每个索引点之间的距离;基于距离中的相应一个,获得轨迹的每个索引点的期望加速度;从期望加速度中选择最小值来限制车辆的加速度;和/或基于对象的类别来调整最小值。可以使用包括由多个不同距离值索引的多个不同加速度值的查找表来获得期望加速度。当对象与第一类别相关时,最小值可以被调整第一量,而当对象与第二不同类别相关时,则最小值可以被调整第二不同量。
在这些或其他情况下,预期车辆将还经过第二对象。因此,对于第一对象和第二对象中的每一个,可以通过以下方式来获得车辆的加速度将被限制的量:定义第一端位于距第一对象或第二对象预定距离处并且第二相对端位于距第一对象或第二对象预定距离处的区间;获得第一或第二对象与区间内轨迹的每个索引点之间的距离;基于距离中的相应一个,获得轨迹的每个索引点的期望加速度;为轨迹的每个索引点处的第一对象和第二对象,从期望加速度中选择最小值;使用所选择的最小值生成合成加速度值;和/或基于第一对象的分类和第二对象的分类中的至少一个来调整合成加速度值。
合成加速度值可以由机器学习算法生成,该机器学习算法被训练为基于从传感器数据得到的情景信息生成合成加速度值。情景信息可以包括但不限于,车辆和第一对象的相对定位、车辆和第二对象的相对定位、车辆的位置、第一对象的位置、第二对象的位置、轨迹、第一对象的预测轨迹、第二对象的预测轨迹、第一对象的分类,第二对象的分类、车辆的行进方向、第一对象的行进方向和/或第二对象的行进方向。
在这些或其他场景中,车辆是否要执行加速度限制的选择可以还基于第一对象是否完全位于车辆的不可行驶区域内并且位于车辆的可行驶区域的边缘处、第一对象是否部分位于车辆的可行驶区域内,和/或第一对象是否是在车辆的可行驶区域中偏移的移动对象。
如上所述,附加地或替代地,本发明的方案涉及控制车辆加速度的实施系统和方法。方法可以包括通过计算设备执行以下操作:检测从车辆轨迹上的点到车辆在遵循轨迹时预期经过的第一对象的横向距离(其中第一对象位于轨迹之外并且位于轨迹的一侧,并且点表示车辆在经过第一对象时的未来位置);基于横向距离选择车辆是否要执行加速度限制;获得由一系列点定义的车辆的边界;当选择车辆要执行加速度限制时,基于轨迹和车辆的边界来获得车辆的加速度将被限制的量;以及使车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
一系列点可以通过以下方式获得:沿着轨迹纵向滑动车辆的覆盖区;以及对于轨迹的每个索引点,横向滑动覆盖区直到覆盖区与第一对象相交,并且在与第一对象相交的横向滑动位置处获得由覆盖区指定的车辆中心或重心。
在某些情况下,车辆加速度将被限制的量可以通过以下方式获得:定义第一端位于距第一对象预定距离处并且第二相对端位于距第一对象预定距离处的区间。对于位于区间内的轨迹的多个索引点中的每个索引点,执行以下操作:获得车辆的边界与区间内轨迹的每个索引点之间的第一距离以及车辆的边界与车辆的可行驶区域的边缘之间的第二距离;获得基于第一距离的第一期望加速度和基于第二距离的第二期望加速度;以及选择第一和第二期望加速度中最大的一个作为最终期望加速度。可以从最终期望加速度中选择最小值来限制车辆加速度。可以使用查找表来获得第一和第二期望加速度,每个查找表包括由多个不同距离值索引的多个不同加速度值。可以基于对象的类别来调整所选择的最小值。当对象与第一类别相关时,最小值可以被调整第一量,而当对象与第二不同类别相关时,最小值可以被调整第二不同量。
在这些或其他情况下,预期车辆将还经过第二对象。可以通过以下方式来获得车辆的加速度将被限制的量:对于第一对象和第二对象中的每一个,定义第一端位于距第一对象或第二对象预定距离处并且第二相对端距第一对象或第二对象预定距离处的区间;并且对于位于区间中的轨迹的多个索引点中的每个索引点,获得车辆的边界与区间内的轨迹的每个索引点之间的第一距离,以及车辆的边界与车辆的可行驶区域的边缘之间的第二距离,获得基于第一距离的第一期望加速度和基于第二距离的第二期望加速度,并选择第一和第二期望加速中最大的一个作为最终期望加速度。为位于区间中的轨迹的每个索引点处的第一和第二对象,从最终期望加速度中选择最小值。使用所选择的最小值生成合成加速度值。合成加速度值可以由机器学习算法生成,该机器学习算法被训练为基于从传感器数据得到的情景信息生成合成加速度值。情景信息可以包括但不限于,车辆和第一对象的相对定位、车辆和第二对象的相对定位、车辆的位置、第一对象的位置、第二对象的位置、轨迹、第一对象的预测轨迹、第二对象的预测轨迹、第一对象的分类,第二对象的分类、车辆的行进方向、第一对象的行进方向和/或第二对象的行进方向。可以基于第一对象的分类和/或第二对象的分类来调整合成加速度值。
上述方法提高了自主车辆的整体性能。通过实施上述方法,自主车辆能够使用适度的加速度更舒适地经过附近的障碍物,能够在行人周围更放松,并且能够经过可行驶区域内的对象,而不必限制其正加速度。
上述方法的实施系统可以包括:处理器;以及包括编程指令的非暂时性计算机可读存储介质,编程指令被配置为使处理器实施用于操作自动化系统的方法。上述方法还可以通过计算机程序产品来实施,该计算机程序产品包括存储器和被配置为使处理器执行操作的编程指令。
应当理解,具体实施方式部分而不是任何其他部分旨在用于解释权利要求。其他部分可以阐述发明人所设想的一个或多个但不是所有的示例性实施例,因此不旨在以任何方式限制本公开或所附权利要求。
虽然本公开针对示例性领域和应用描述了示例性实施例,但应理解,本公开不限于此。其他实施例及其修改是可能的,并且在本公开的范围和精神内。例如,在不限制本段的一般性的情况下,实施例不限于图中所示和/或本文所述的软件、硬件、固件和/或实体。此外,实施例(无论是否在本文中明确描述)对于本文所描述的示例之外的领域和应用具有显著的实用性。
本文借助于说明特定功能及其关系的实现的功能构建块描述了实施例。为了便于描述,这些功能构建块的边界在本文中被任意定义。只要适当地执行指定的功能和关系(或其等价物),就可以定义替代边界。此外,替代实施例可以使用不同于本文所述的次序来执行功能块、步骤、操作、方法等。
本文中对“一个实施例”、“实施例”和“示例实施例”或类似短语的引用表明,所描述的实施例可以包括特定的特征、结构或特性,但每个实施例不一定包括特定的特性、结构或特征。此外,这样的短语不一定指的是相同的实施例。此外,当结合实施例描述特定的特征、结构或特性时,将这种特征、结构、或特性结合到其他实施例中将在相关领域的技术人员的知识范围内,无论这里是否明确提及或描述。此外,可以使用表达式“耦接的”和“连接的”及其派生词来描述一些实施例。这些术语不一定是彼此的同义词。例如,可以使用术语“耦接的”和/或“连接的”来描述一些实施例,以指示两个或更多个元件彼此直接物理或电接触。然而,术语“耦接接的”也可以指两个或更多个元件彼此不直接接触,但仍然相互合作或互动。
本公开的广度和范围不应受到上述任何示例性实施例的限制,而应仅根据以下权利要求及其等效物进行定义。
Claims (20)
1.一种用于控制车辆加速度的方法,包括:
通过计算设备检测从所述车辆的轨迹上的点到所述车辆在遵循所述轨迹时预期经过的第一对象的横向距离,所述第一对象位于所述轨迹之外并且位于所述轨迹的一侧,并且所述点表示所述车辆在经过所述第一对象时的未来位置;
通过所述计算设备基于所述横向距离来选择所述车辆是否要执行加速度限制;
当选择所述车辆要执行加速度限制时,获得所述车辆的加速度将被限制的量;和
通过所述计算设备使所述车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
2.根据权利要求1所述的方法,其中,所述获得包括:
定义第一端位于距所述第一对象预定距离处并且第二相对端位于距所述第一对象所述预定距离处的区间;
获得所述第一对象与所述区间内所述轨迹的每个索引点之间的距离;
基于所述距离中的相应一个,获得所述轨迹的每个所述索引点的期望加速度;和
从所述期望加速度中选择最小值来限制所述车辆的加速度。
3.根据权利要求2所述的方法,其中,所述期望加速度是使用查找表获得的,所述查找表包括由多个不同距离值索引的多个不同加速度值。
4.根据权利要求2所述的方法,还包括基于所述对象的类别来调整所述最小值。
5.根据权利要求4所述的方法,其中,当所述对象与第一类别相关时,将所述最小值调整第一量,而当所述对象与第二不同类别相关时,将所述最小值调整第二不同量。
6.根据权利要求1所述的方法,其中,预期所述车辆还经过第二对象,并且所述获得还包括:
对于所述第一对象和所述第二对象中的每一个,
定义第一端位于距所述第一对象或所述第二对象预定距离处并且第二相对端位于距所述第一对象或所述第二对象所述预定距离处的区间;
获得所述第一对象或所述第二对象与所述区间内所述轨迹的每个索引点之间的距离;
基于所述距离中的相应一个,获得所述轨迹的每个所述索引点的期望加速度;
对于所述轨迹的每个索引点处的所述第一对象和所述第二对象,从所述期望加速度中选择最小值;和
使用所选择的最小值生成至少一个合成加速度值。
7.根据权利要求6所述的方法,其中,所述至少一个合成加速度值由机器学习算法生成,所述机器学习算法被训练为基于从传感器数据得到的情景信息生成合成加速度值。
8.根据权利要求7所述的方法,其中,所述情景信息包括下列中的至少一个:车辆和所述第一对象的相对定位、所述车辆和所述第二对象的相对定位、车辆的位置、第一对象的位置、所述第二对象的位置、所述轨迹、所述第一对象的预测轨迹、所述第二对象的预测轨迹、所述第一对象的分类、所述第二对象的分类,所述车辆的行进方向、所述第一对象的行进方向和所述第二对象的行进方向。
9.根据权利要求6所述的方法,还包括基于所述第一对象的分类和所述第二对象的分类中的至少一个来调整所述至少一个合成加速度值。
10.根据权利要求1所述的方法,其中,所述选择还基于所述第一对象是否完全位于所述车辆的不可行驶区域内并且位于所述车辆的可行驶区域的边缘处、所述第一对象是否部分位于所述车辆的可行驶区域内、或者所述第一对象是否是在所述车辆的可行驶区域中偏移的移动对象。
11.一种系统,包括:
处理器;
非暂时性计算机可读存储介质,包括编程指令,所述编程指令被配置为使所述处理器实现用于控制车辆加速度的方法,其中所述编程指令包括下列指令:
检测从所述车辆的轨迹上的点到所述车辆在遵循所述轨迹时预期经过的第一对象的横向距离,所述第一对象位于所述轨迹之外并且位于所述轨迹的一侧,并且所述点表示所述车辆在经过所述第一对象时的未来位置;
基于所述横向距离选择所述车辆是否要执行加速度限制;
当选择所述车辆要执行加速度限制时,获得所述车辆的加速度将被限制的量;和
使所述车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
12.根据权利要求11所述的系统,其中,所述车辆的加速度将被限制的量通过以下方式获得:
定义第一端位于距所述第一对象预定距离处并且第二相对端位于距所述第一对象所述预定距离处的区间;
获得所述第一对象与所述区间内所述轨迹的每个索引点之间的距离;
基于所述距离中的相应一个,获得所述轨迹的每个所述索引点的期望加速度;和
从所述期望加速度中选择最小值来限制所述车辆的加速度。
13.根据权利要求12所述的系统,其中,所述期望加速度是使用查找表获得的,所述查找表包括由多个不同距离值索引的多个不同加速度值。
14.根据权利要求12所述的系统,其中,所述编程指令还包括基于所述对象的类别来调整所述最小值的指令。
15.根据权利要求14所述的系统,其中,当所述对象与第一类别相关时,将所述最小值调整第一量,而当所述对象与第二不同类别相关时,将所述最小值调整第二不同量。
16.根据权利要求11所述的系统,其中,预期所述车辆还经过第二对象,并且所述车辆的加速度将被限制的量通过以下方式获得:
对于所述第一对象和所述第二对象中的每一个,
定义第一端位于距所述第一对象或所述第二对象预定距离处并且第二相对端位于距所述第一对象或所述第二对象所述预定距离处的区间;
获得所述第一对象或所述第二对象与所述区间内所述轨迹的每个索引点之间的距离;
基于所述距离中的相应一个,获得所述轨迹的每个所述索引点的期望加速度;
对于所述轨迹的每个索引点处的所述第一对象和所述第二对象,从所述期望加速度中选择最小值;和
使用所选择的最小值生成至少一个合成加速度值。
17.根据权利要求16所述的系统,其中,所述至少一个合成加速度值由机器学习算法生成,所述机器学习算法被训练为基于从传感器数据得到的情景信息生成合成加速度值。
18.根据权利要求17所述的系统,其中,所述情景信息包括下列中的至少一个:车辆和所述第一对象的相对定位、所述车辆和所述第二对象的相对定位、车辆的位置、第一对象的位置、所述第二对象的位置、所述轨迹、所述第一对象的预测轨迹、所述第二对象的预测轨迹、所述第一对象的分类、所述第二对象的分类,所述车辆的行进方向、所述第一对象的行进方向和所述第二对象的行进方向。
19.根据权利要求16所述的系统,其中,所述编程指令还包括基于所述第一对象的分类和所述第二对象的分类中的至少一个来调整所述至少一个合成加速度值的指令。
20.一种存储指令的非暂时性计算机可读介质,所述指令被配置为当由至少一个计算设备执行时,使所述至少一个计算设备执行以下操作:
检测从车辆的轨迹上的点到所述车辆在遵循所述轨迹时预期经过的第一对象的横向距离,所述第一对象位于所述轨迹之外并且位于所述轨迹的一侧,并且所述点表示所述车辆在经过所述第一对象时的未来位置;
基于所述横向距离选择所述车辆是否要执行加速度限制;
当选择所述车辆要执行加速度限制时,获得所述车辆的加速度将被限制的量;和
使所述车辆在将加速度限制所获得的量的情况下执行自主驾驶操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/808,414 | 2022-06-23 | ||
US17/808,414 US20230415739A1 (en) | 2022-06-23 | 2022-06-23 | Systems and methods for controlling longitudinal acceleration based on lateral objects |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117284319A true CN117284319A (zh) | 2023-12-26 |
Family
ID=89075471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310751373.1A Pending CN117284319A (zh) | 2022-06-23 | 2023-06-25 | 基于横向对象控制纵向加速度的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230415739A1 (zh) |
CN (1) | CN117284319A (zh) |
DE (1) | DE102023116514A1 (zh) |
-
2022
- 2022-06-23 US US17/808,414 patent/US20230415739A1/en active Pending
-
2023
- 2023-06-22 DE DE102023116514.3A patent/DE102023116514A1/de active Pending
- 2023-06-25 CN CN202310751373.1A patent/CN117284319A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230415739A1 (en) | 2023-12-28 |
DE102023116514A1 (de) | 2023-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108981730B (zh) | 用于为操作自动驾驶车辆生成参考路径的方法和系统 | |
CN109491375B (zh) | 用于自动驾驶车辆的基于驾驶场景的路径规划 | |
CN116249644B (zh) | 由自主车辆执行出路推断以确定通过交叉路口的可行路径的方法和系统 | |
US11321211B1 (en) | Metric back-propagation for subsystem performance evaluation | |
US11731653B2 (en) | Conditional motion predictions | |
US11880203B2 (en) | Methods and system for predicting trajectories of uncertain road users by semantic segmentation of drivable area boundaries | |
CN116724214A (zh) | 用于生成用于自主车辆的导航的感兴趣区域的车道级地图的方法和系统 | |
CN116867675A (zh) | 车辆运动规划系统与方法 | |
CN116670008A (zh) | 用于构建用于辅助自主车辆在交叉路口导航的数据表示的方法和系统 | |
CN113619597A (zh) | 自动驾驶车辆速度限制变更的规划系统 | |
CN113060118A (zh) | 用于柔和降速的速度规划引导线 | |
WO2023129890A1 (en) | Integrated trajectory forecasting, error estimation, and vehicle handling when detecting an observed scenario | |
CN115220439A (zh) | 用于运载工具的系统和方法以及存储介质 | |
US20230415781A1 (en) | Systems and methods for controlling longitudinal acceleration based on lateral objects | |
US20230415739A1 (en) | Systems and methods for controlling longitudinal acceleration based on lateral objects | |
US20230415736A1 (en) | Systems and methods for controlling longitudinal acceleration based on lateral objects | |
US20230373523A1 (en) | Systems and methods for biasing a trajectory of an autonomous vehicle while moving in a lane | |
US20240092358A1 (en) | Systems and methods for scene understanding | |
US20240101106A1 (en) | Systems and methods for scene understanding | |
US20240166231A1 (en) | Systems and methods for determining steer while stopped behavior for a vehicle using dynamic limits | |
US20240075923A1 (en) | Systems and methods for deweighting veering margins based on crossing time | |
US20230286529A1 (en) | Systems and methods for dynamic data mining during data collection missions | |
US20230150543A1 (en) | Systems and methods for estimating cuboid headings based on heading estimations generated using different cuboid defining techniques | |
US20240010211A1 (en) | Systems and methods for selectively using a vehicle trajectory | |
US20240151817A1 (en) | Systems and methods for static detection based amodalization placement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |