CN115610409A - 用于自主车辆的轨迹规划的基于预测的***和方法 - Google Patents
用于自主车辆的轨迹规划的基于预测的***和方法 Download PDFInfo
- Publication number
- CN115610409A CN115610409A CN202211237407.7A CN202211237407A CN115610409A CN 115610409 A CN115610409 A CN 115610409A CN 202211237407 A CN202211237407 A CN 202211237407A CN 115610409 A CN115610409 A CN 115610409A
- Authority
- CN
- China
- Prior art keywords
- trajectory
- data
- vehicle
- host vehicle
- neighboring
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012549 training Methods 0.000 claims abstract description 127
- 230000008447 perception Effects 0.000 claims abstract description 36
- 230000008569 process Effects 0.000 claims description 20
- 230000001133 acceleration Effects 0.000 claims description 12
- 230000001953 sensory effect Effects 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000009499 grossing Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 2
- 239000003550 marker Substances 0.000 claims description 2
- 238000002372 labelling Methods 0.000 claims 2
- 238000013480 data collection Methods 0.000 abstract description 28
- 238000012545 processing Methods 0.000 description 57
- 230000006399 behavior Effects 0.000 description 47
- 238000004891 communication Methods 0.000 description 34
- 230000009471 action Effects 0.000 description 20
- 230000001413 cellular effect Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 14
- 238000010801 machine learning Methods 0.000 description 13
- 238000013500 data storage Methods 0.000 description 9
- 230000015654 memory Effects 0.000 description 9
- 230000033001 locomotion Effects 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 239000000446 fuel Substances 0.000 description 5
- ATUOYWHBWRKTHZ-UHFFFAOYSA-N Propane Chemical compound CCC ATUOYWHBWRKTHZ-UHFFFAOYSA-N 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000004886 process control Methods 0.000 description 2
- 239000001294 propane Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000005057 finger movement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000010705 motor oil Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
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/09—Taking automatic action to avoid collision, e.g. braking and steering
-
- 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/18—Propelling 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
- 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/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18145—Cornering
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/10—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/10—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
- B60W40/105—Speed
-
- 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
-
- 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/24—Direction of travel
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Traffic Control Systems (AREA)
Abstract
公开了用于自主车辆的轨迹规划的基于预测的***和方法。具体实施例被配置为:从训练数据收集***接收训练数据和地面真值数据,所述训练数据包括与人类驾驶行为相对应的感知数据和上下文数据;执行训练阶段以使用训练数据来训练轨迹预测模块;接收与主车辆相关联的感知数据;以及执行操作阶段,所述操作阶段被配置为从感知数据中提取主车辆特征数据和邻近车辆上下文数据,生成针对主车辆的建议轨迹,使用训练的轨迹预测模块基于建议的主车辆轨迹来生成针对主车辆附近的一个或多个邻近车辆中的每一个的预测轨迹,确定针对主车辆的建议轨迹是否将与邻近车辆的预测轨迹中的任何一个冲突,以及修改针对主车辆的建议轨迹直到冲突消除。
Description
本申请是中国申请CN201880058298.8的分案申请,该申请日期为2018年11月7日,发明名称为“用于自主车辆的轨迹规划的基于预测的***和方法”。
相关申请的交叉引用
本申请要求于2017年9月7日提交的美国专利申请No.15/698,607和于2017年11月7日提交的美国专利申请No.15/806,013的优先权。上述申请通过引用并入作为本专利文件的一部分。
技术领域
本专利文件总体上涉及自主驾驶***。
背景技术
自主车辆通常被配置和控制为遵循基于计算的行驶路径的轨迹。然而,当诸如障碍物的变量存在于行驶路径上时,自主车辆必须执行控制操作,使得可以通过实时改变行驶路径以避开障碍物来安全地驾驶车辆。
在相关技术中,通过将行驶路径的空间信息(例如坐标、方向角、曲率等)表示为移动距离的多项式或数学函数来确定自主车辆控制操作,以避免静态障碍物。然而,当在行驶路径上存在动态障碍物时,根据相关技术的自主车辆可能无法准确地预测车辆是否将与动态障碍物碰撞。具体地,相关技术没有考虑自主车辆和其他动态车辆之间的相互作用。因此,传统的自主车辆控制***不能准确地预测其他邻近动态车辆的未来位置。因此,不能实现传统自主车辆的最佳性能。例如,邻近的动态障碍物的非预期行为可能导致与传统自主车辆的碰撞。
发明内容
本文公开了用于自主车辆的轨迹规划的基于预测的***和方法。具体地,本公开涉及使用基于预测的方法进行自主车辆的轨迹规划。一方面,本文的***可以包括被配置为收集感知数据的各种传感器、计算设备以及用于预测在主自主车辆附近(邻近)的其他车辆和/或动态对象的轨迹的轨迹预测模块。最初,计算设备生成轨迹选项,而轨迹预测模块使用分别与每个车辆和/或动态对象的可能轨迹有关的数据来预测所检查的车辆和/或动态对象的反应。可以将与预测的反应相对应的数据发送到计算设备,以完善最初建议的轨迹选项。计算设备随后可以指示轨迹预测模块进一步收集数据并进行预测以完成轨迹规划过程。
在公开的技术的一种实现中,一种***包括:数据处理器;以及基于预测的轨迹规划模块,能够由数据处理器执行,所述基于预测的轨迹规划模块被配置为执行针对自主车辆的基于预测的轨迹规划操作。所述基于预测的轨迹规划操作被配置为:从训练数据收集***接收训练数据和地面真值数据,所述训练数据包括与人类驾驶行为相对应的感知数据和上下文数据;执行训练阶段以使用训练数据来训练轨迹预测模块;接收与主车辆相关联的感知数据;以及执行操作阶段,所述操作阶段被配置为从感知数据中提取主车辆特征数据和邻近车辆上下文数据,生成针对主车辆的建议轨迹,使用训练的轨迹预测模块基于建议的主车辆轨迹来生成针对主车辆附近的一个或多个邻近车辆中的每一个的预测轨迹,确定针对主车辆的建议轨迹是否将与邻近车辆的预测轨迹中的任何一个冲突,以及修改针对主车辆的建议轨迹直到冲突消除。
在公开的技术的另一种实现中,一种方法包括:从训练数据收集***接收训练数据和地面真值数据,所述训练数据包括与人类驾驶行为相对应的感知数据和上下文数据;执行训练阶段以使用训练数据来训练轨迹预测模块;接收与主车辆相关联的感知数据;以及执行操作阶段,所述操作阶段被配置为从感知数据中提取主车辆特征数据和邻近车辆上下文数据,生成针对主车辆的建议轨迹,使用训练的轨迹预测模块基于建议的主车辆轨迹来生成针对主车辆附近的一个或多个邻近车辆中的每一个的预测轨迹,确定针对主车辆的建议轨迹是否将与邻近车辆的预测轨迹中的任何一个冲突,以及修改针对主车辆的建议轨迹直到冲突消除。
在公开的技术的又一种实现中,一种非暂时性机器可用存储介质包含指令,所述指令在由机器执行时使所述机器:从训练数据收集***接收训练数据和地面真值数据,所述训练数据包括与人类驾驶行为相对应的感知数据和上下文数据;执行训练阶段以使用训练数据来训练轨迹预测模块;接收与主车辆相关联的感知数据;以及执行操作阶段,所述操作阶段被配置为从感知数据中提取主车辆特征数据和邻近车辆上下文数据,生成针对主车辆的建议轨迹,使用训练的轨迹预测模块基于建议的主车辆轨迹来生成针对主车辆附近的一个或多个邻近车辆中的每一个的预测轨迹,确定针对主车辆的建议轨迹是否将与邻近车辆的预测轨迹中的任何一个冲突,以及修改针对主车辆的建议轨迹直到冲突消除。
在公开的技术的又一种实现中,一种***包括:训练数据收集***,收集训练数据,所述训练数据包括与来自现实世界交通环境中的车辆和驾驶员的人类驾驶行为相对应的感知数据;以及基于预测的轨迹规划***,所述基于预测的轨迹规划***基于从训练数据中提取的上下文数据而被训练,以基于主车辆获取的感知数据并基于针对主车辆的建议轨迹来生成针对邻近主车辆的车辆或对象的轨迹预测。通过将使用训练的基于预测的轨迹规划***获得的针对主车辆的建议轨迹与针对邻近主车辆的车辆或对象的轨迹预测进行比较,来确定主车辆的轨迹。
在公开的技术的又一种实现中,一种***包括:建议轨迹生成器,生成针对主车辆的建议轨迹;轨迹预测生成器,基于针对主车辆的建议轨迹来生成主车辆附近的邻近车辆的预测轨迹;比较器,将针对主车辆的建议轨迹与邻近车辆的预测轨迹进行比较;以及车辆控制器,基于针对主车辆的建议轨迹与邻近车辆的预测轨迹的比较来决定是否要调整主车辆的速度或行进方向。
在公开的技术的又一种实现中,一种***包括:存储器,存储可执行指令;以及处理器,与存储器通信,被配置为从存储器读取可执行指令以:生成针对主车辆的建议轨迹;基于针对主车辆的建议轨迹生成主车辆附近的邻近车辆的预测轨迹;将针对主车辆的建议轨迹与邻近车辆的预测轨迹进行比较,以确定针对主车辆的建议轨迹与邻近车辆的预测轨迹之间的差是否超过最小可接受阈值;以及基于所述差是否超过最小可接受阈值,决定是否要调整主车辆的速度或行进方向。
在公开的技术的又一种实现中,一种计算机程序产品包括非暂时性计算机可读介质,所述非暂时性计算机可读介质上存储有可执行指令,所述可执行指令在被执行时使处理器:生成针对主车辆的建议轨迹;基于针对主车辆的建议轨迹生成主车辆附近的邻近车辆的预测轨迹;将针对主车辆的建议轨迹与邻近车辆的预测轨迹进行比较,以确定针对主车辆的建议轨迹与邻近车辆的预测轨迹之间的差是否超过最小可接受阈值;以及基于所述差是否超过最小可接受阈值,决定是否要调整主车辆的速度或行进方向。
附图说明
在附图的各图中以示例而非限制的方式示出了各种实施例,在附图中:
图1示出了其中可以实现示例实施例的基于预测的轨迹规划模块的示例生态***的框图;
图2示出了示例实施例中的用于训练和构建基于预测的轨迹规划***的离线训练阶段;
图3和图4示出了用于在离线训练阶段中训练轨迹预测模块的上下文数据的示例;
图5示出了示例实施例中的用于轨迹预测模块的离线训练的操作或处理工作流程;
图6示出了基于预测的轨迹规划***和其中的基于预测的轨迹规划模块的组件的示例实施例;
图7和图8示出了示例实施例中用于基于预测的轨迹规划***的操作阶段使用的操作或处理工作流程;
图9是示出了用于自主车辆的轨迹规划的基于预测的***和方法的示例实施例的过程流程图;
图10是示出了用于自主车辆的轨迹规划的基于预测的***和方法的备选示例实施例的过程流程图;
图11以计算机***的示例形式示出了机器的示意图,在该计算机***内一组指令在被执行时可以使得机器执行本文所讨论的方法中的任何一个或多个;以及
图12示出了基于所公开的技术的实施例实现的基于预测的轨迹规划***的示例。
具体实施方式
在下面的描述中,出于解释的目的,阐述了许多具体细节以便提供对各种实施例的透彻理解。然而,对于本领域的普通技术人员而言显而易见的是,可以在没有这些具体细节的情况下实践各种实施例。
如各种示例实施例中所述,本文描述了用于自主车辆的轨迹规划的基于预测的***和方法。可以在图1所示的车辆生态***101中的车载控制***150的情况下使用本文公开的示例实施例。在一个示例实施例中,驻留在车辆105中的具有基于预测的轨迹规划模块200的车载控制***150可以像图1中所示的架构和生态***101一样进行配置。然而,对于本领域的普通技术人员而言显而易见的是,可以在各种其他应用以及***中实现、配置和使用本文描述和要求保护的基于预测的轨迹规划模块200。
现在参考图1,框图示出了示例生态***101,其中可以实现示例实施例的车载控制***150和基于预测的轨迹规划模块200。将在下面更详细地描述这些组件。生态***101包括各种***和组件,它们可以生成信息/数据和相关服务的一个或多个源和/或将其传递给车载控制***150和基于预测的轨迹规划模块200,其可以安装在车辆105中。例如,作为车辆子***140的设备之一,安装在车辆105中的相机可以生成可由车载控制***150接收的图像和定时数据。车载控制***150和在其中执行的图像处理模块可以接收该图像和定时数据输入。图像处理模块可以从图像和定时数据中提取对象数据,以识别车辆附近的对象。如以下更详细描述的,基于预测的轨迹规划模块200可以处理对象数据,并基于检测的对象生成车辆的轨迹。轨迹可以由自主车辆控制子***(作为车辆子***140的另一子***)使用。自主车辆控制子***例如可以使用实时生成的轨迹来安全高效地控制车辆105导航通过现实世界驾驶环境,同时避开障碍物并安全地控制车辆。
在本文所述的示例实施例中,车载控制***150可以与多个车辆子***140进行数据通信,所有这些车辆子***140可以驻留在用户的车辆105中。提供车辆子***接口141以促进车载控制***150和多个车辆子***140之间的数据通信。车载控制***150可以被配置为包括数据处理器171,以执行基于预测的轨迹规划模块200,用于处理从车辆子***140中的一个或多个接收的对象数据。数据处理器171可与数据存储设备172组合,该数据存储设备172作为车载控制***150中的计算***170的一部分。数据存储设备172可用于存储数据、处理参数和数据处理指令。可以提供处理模块接口165以促进数据处理器171与基于预测的轨迹规划模块200之间的数据通信。在各个示例实施例中,类似于基于预测的轨迹规划模块200配置的多个处理模块可以被提供以供数据处理器171执行。如图1中的虚线所示,基于预测的轨迹规划模块200可以集成到车载控制***150中,可选地下载到车载控制***150中,或与车载控制***150分开部署。
车载控制***150可以被配置为从与其连接的广域网120和网络资源122接收数据或向其发送数据。车载网络支持设备130和/或用户移动设备132可用于经由网络120进行通信。网络支持设备接口131可由车载控制***150使用以促进经由车载网络支持设备130在车载控制***150和网络120之间的数据通信。类似地,车载控制***150可以使用用户移动设备接口133来促进通过用户移动设备132在车载控制***150和网络120之间的数据通信。以这种方式,车载控制***150可以获得通过网络120对网络资源122的实时访问。网络资源122可以用于获得用于由数据处理器171执行的处理模块、训练内部神经网络的数据内容、***参数或其他数据。
生态***101可以包括广域数据网络120。网络120代表一个或多个常规广域数据网络,例如因特网、蜂窝电话网络、卫星网络、寻呼机网络、无线广播网络、游戏网络、WiFi网络、对等网络、IP语音(VoIP)网络等。这些网络120中的一个或多个可用于将用户或客户端***与网络资源122(例如,网站、服务器、中央控制站点等)连接起来。网络资源122可以生成和/或分发数据,该数据可以在车辆105中经由车载网络支持设备130或用户移动设备132被接收。网络资源122还可以托管网络云服务,其可以支持用于计算或协助处理对象输入或对象输入分析的功能。天线可用于经由蜂窝、卫星、无线电或其他常规信号接收机制将车载控制***150以及基于预测的轨迹规划模块200与数据网络120连接。这样的蜂窝数据网络当前可用(例如,VerizonTM、AT&TTM、T-MobileTM等)。此类基于卫星的数据或内容网络目前也可用(例如,SiriusXMTM、HughesNetTM等)。诸如AM/FM无线电网络、寻呼机网络、UHF网络、游戏网络、WiFi网络、对等网络、IP语音(VoIP)网络等的常规广播网络也是众所周知的。因此,如下面更详细地描述的,车载控制***150和基于预测的轨迹规划模块200可以经由车载网络支持设备接口131接收基于网络的数据或内容,该车载网络支持设备接口131可以用于与车载网络支持设备接收器130和网络120连接。通过这种方式,车载控制***150和基于预测的轨迹规划模块200可以支持车辆105内的各种可联网车载设备和***。
如图1所示,车载控制***150和基于预测的轨迹规划模块200还可以从用户移动设备132接收数据、对象处理控制参数和训练内容,该用户移动设备132可以位于车辆105内部或附近。用户移动设备132可以代表标准移动设备,例如蜂窝电话、智能电话、个人数字助理(PDA)、MP3播放器、平板计算设备(例如,iPadTM)、膝上型计算机、CD播放器和其他移动设备,该移动设备可以产生、接收和/或传递用于车载控制***150和基于预测的轨迹规划模块200的数据、对象处理控制参数和内容。如图1所示,移动设备132也可以与网络云120进行数据通信。移动设备132可以从移动设备132本身的内部存储器组件或通过网络120从网络资源122获取数据和内容。另外,移动设备132本身可以包括GPS数据接收器、加速度计、WiFi三角测量或移动设备中的其他地理位置传感器或组件,其可用于在任何时间(通过移动设备)确定用户的实时地理位置。在任何情况下,如图1所示,车载控制***150和基于预测的轨迹规划模块200都可以从移动设备132接收数据。
仍然参考图1,生态***101的示例实施例可以包括车辆操作子***140。对于在车辆105中实现的实施例,许多标准车辆包括操作子***,例如支持监测/控制用于发动机、制动器、变速器、电气***、排放***、内部环境等的子***的电子控制单元(ECU)。例如,经由车辆子***接口141从车辆操作子***140(例如,车辆105的ECU)传送给车载控制***150的数据信号可以包括关于车辆105的一个或多个组件或子***的状态的信息。具体地,可以从车辆操作子***140传送给车辆105的控制器局域网(CAN)总线的数据信号可以经由车辆子***接口141由车载控制***150来接收和处理。本文描述的***和方法的实施例可以与使用本文定义的CAN,总线或类似的数据通信总线的基本上任何机械化***一起使用,包括但不限于工业设备、船、卡车、机械、或汽车;因此,本文使用的术语“车辆”可以包括任何此类机械化***。本文描述的***和方法的实施例还可以与采用某种形式的网络数据通信的任何***一起使用;然而,不需要这种网络通信。
仍然参考图1,生态***101以及其中的车辆操作子***140的示例实施例可以包括支持车辆105的操作的各种车辆子***。通常,车辆105可以采用以下形式:例如,小汽车、卡车、摩托车、公共汽车、船、飞机、直升机、割草机、推土机、雪地摩托、飞行器、休旅车、游乐园车、农用设备、建筑设备、电车、高尔夫球车、火车和手推车。其他车辆也是可能的。车辆105可被配置为完全或部分地以自主模式操作。例如,车辆105可以在自主模式下控制自己,并且可操作以确定车辆的当前状态及其环境中的其上下文、确定该环境的上下文中至少一个其他车辆的预测行为、确定可以与该至少一个其他车辆执行预测行为的概率相对应的置信度、以及基于所确定的信息来控制车辆105。当处于自主模式时,车辆105可以被配置为在没有人类交互的情况下进行操作。
车辆105可以包括各种车辆子***,例如车辆驱动子***142、车辆传感器子***144、车辆控制子***146和乘员接口子***148。如上所述,车辆105还可以包括车载控制***150、计算***170以及基于预测的轨迹规划模块200。车辆105可以包括更多或更少的子***,并且每个子***可以包括多个元件。此外,车辆105的每个子***和元件可以互连。因此,车辆105的所描述的功能中的一个或多个可以被划分为附加的功能或物理组件,或者被组合为较少的功能或物理组件。在一些其他示例中,可以将其他功能和物理组件添加到图1所示的示例中。
车辆驱动子***142可以包括可操作以为车辆105提供动力运动的组件。在示例实施例中,车辆驱动子***142可以包括发动机或电动机、车轮/轮胎、变速器、电气子***和电源。发动机或电动机可以是内燃发动机、电动机、蒸汽发动机、燃料电池发动机、丙烷发动机或其他类型的发动机或电动机的任何组合。在一些示例实施例中,发动机可以配置为将动力源转换成机械能。在一些示例实施例中,车辆驱动子***142可以包括多种类型的发动机或电动机。例如,气电混合汽车可以包括汽油发动机和电动机。其他示例也是可能的。
车辆105的车轮可以是标准轮胎。车辆105的车轮可以被配置为各种形式,例如包括单轮车、自行车、三轮车或四轮车(例如,在汽车或卡车上)形式。其他车轮几何形状也是可能的,例如包括六个或更多个车轮的那些。车辆105的车轮的任何组合可以可操作以相对于其他车轮不同地旋转。车轮可以表示固定地附接到变速器的至少一个车轮、以及耦接到车轮的轮辋的至少一个轮胎,其可以与驱动表面接触。车轮可以包括金属和橡胶的组合或材料的另一组合。变速器可包括可操作以将机械动力从发动机传递给车轮的元件。为此,变速器可以包括齿轮箱、离合器、差速器和驱动轴。变速器也可以包括其他元件。驱动轴可包括可耦接至一个或多个车轮的一个或多个轮轴。电气***可包括可操作以传送和控制车辆105中的电信号的元件。这些电信号可用于激活车辆105的灯、伺服、电动机和其他电驱动或控制设备。动力源可以表示可以全部或部分地为发动机或电动机供电的能量。即,发动机或电动机可以被配置为将动力源转换成机械能。动力源的示例包括汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、燃料电池、太阳能板、电池和其他电源的来源。动力源可以附加地或替代地包括能量箱、电池、电容器或飞轮的任何组合。动力源也可以为车辆105的其他子***提供能量。
车辆传感器子***144可以包括多个传感器,其被配置为感测关于车辆105的环境或状况的信息。例如,车辆传感器子***144可以包括惯性测量单元(TMU)、全球定位***(GPS)收发器、RADAR单元、激光测距仪/LIDAR单元以及一个或多个相机或图像捕捉设备。车辆传感器子***144还可以包括被配置为监测车辆105的内部***的传感器(例如,O2监测器、燃料表、发动机油温)。其他传感器也是可能的。车辆传感器子***144中包括的一个或多个传感器可以被配置为单独地或共同地被致动,以便修改一个或多个传感器的位置、取向或两者。
IMU可以包括被配置为基于惯性加速度感测车辆105的位置和取向变化的传感器(例如,加速度计和陀螺仪)的任何组合。GPS收发器可以是被配置为估计车辆105的地理位置的任何传感器。为此,GPS收发器可以包括可操作以提供关于车辆105相对于地表的位置的信息的接收器/发送器。RADAR单元可以表示利用无线电信号来感测车辆105的局部环境内的对象的***。在一些实施例中,除了感测对象之外,RADAR单元还可以被配置为感测车辆105附近的对象的速度和行进方向。激光测距仪或LIDAR单元可以是被配置为使用激光器来感测车辆105所在环境中的对象的任何传感器。在示例实施例中,激光测距仪/LIDAR单元可包括一个或多个激光源、激光扫描仪以及一个或多个检测器以及其他***组件。激光测距仪/LIDAR单元可以被配置为以相干(例如,使用外差检测)或非相干检测模式操作。相机可以包括一个或多个设备,该设备被配置为捕捉车辆105的环境的多个图像。相机可以是静止图像相机或运动摄像机。
车辆控制***146可以被配置为控制车辆105及其组件的操作。因此,车辆控制***146可包括各种元件,例如转向单元、油门、制动单元、导航单元和自主控制单元。
转向单元可以表示可操作以调节车辆105的行进方向的机构的任何组合。油门可以被配置为控制例如发动机的操作速度,并进而控制车辆105的速度。制动单元可以包括被配置为使车辆105减速的机构的任何组合。制动单元可以以标准方式使用摩擦使车轮减速。在其他实施例中,制动单元可以将车轮的动能转换为电流。制动单元也可以采用其他形式。导航单元可以是被配置为确定车辆105的行驶路径或路线的任何***。导航单元可以被附加地配置为在车辆105操作时动态地更新驾驶路径。在一些实施例中,导航单元可以被配置为合并来自基于预测的轨迹规划模块200、GPS收发器以及一个或多个预定地图的数据,以便确定车辆105的驾驶路径。自主控制单元可以表示被配置为识别、评估、避开或以其他方式协商车辆105的环境中的潜在障碍物的控制***。通常,自主控制单元可以被配置为在没有驾驶员的情况下控制车辆105进行操作或提供驾驶员辅助以控制车辆105。在一些实施例中,自主控制单元可以被配置为合并来自基于预测的轨迹规划模块200、GPS收发器、RADAR、LIDAR、相机和其他车辆子***的数据,以确定车辆105的行驶路径或轨迹。车辆控制***146可以附加地或替代地包括除了示出和描述的那些组件之外的组件。
乘员接口子***148可以被配置为允许车辆105与外部传感器、其他车辆、其他计算机***和/或车辆105的乘员或用户之间的交互。例如,乘员接口子***148可以包括标准视觉显示设备(例如,等离子体显示器、液晶显示器(LCD)、触摸屏显示器、平视显示器等)、扬声器或其他音频输出设备、麦克风或其他音频输入设备、导航界面以及用于控制车辆105的内部环境(例如,温度、风扇等)的界面。
在示例实施例中,乘员接口子***148可以提供例如用于车辆105的用户/乘员与其他车辆子***进行交互的装置。视觉显示设备可以向车辆105的用户提供信息。用户接口设备还可以可操作以经由触摸屏接受来自用户的输入。触摸屏可以被配置为经由电容感测、电阻感测或表面声波过程等来感测用户手指的位置和移动中的至少一个。触摸屏能够感测在与触摸屏表面平行或成平面的方向上、在垂直于触摸屏表面的方向上或者在这两者上的手指移动,并且还能够感测被施加到触摸屏表面的压力水平。触摸屏可以由一个或多个半透明或透明的绝缘层和一个或多个半透明或透明的导电层形成。触摸屏也可以采用其他形式。
在其他实例中,乘员接口子***148可以提供用于车辆105与其环境内的设备进行通信的装置。麦克风可以被配置为从车辆105的用户接收音频(例如,语音命令或其他音频输入)。类似地,扬声器可以被配置为向车辆105的用户输出音频。在一个示例实施例中,乘员接口子***148可被配置为直接地或经由通信网络与一个或多个设备无线通信。例如,无线通信***可以使用3G蜂窝通信,例如CDMA、EVDO、GSM/GPRS,或4G蜂窝通信,例如WiMAX或LTE。备选地,无线通信***可以例如使用与无线局域网(WLAN)通信。在一些实施例中,无线通信***146可以例如使用红外链路、或自接与设备进行通信。在本公开的上下文中,诸如各种车辆通信***之类的其他无线协议也是可能的。例如,无线通信***可以包括一个或多个专用短程通信(DSRC)设备,其可以包括车辆和/或路侧站点之间的公共或私有数据通信。
车辆105的许多或全部功能可以由计算***170控制。计算***170可以包括至少一个数据处理器171(其可以包括至少一个微处理器),其执行存储在非暂时性计算机可读介质(例如,数据存储设备172)中的处理指令。计算***170还可以表示多个计算设备,其可以用来控制车辆105的处于分布式方式的各个组件或子***。在一些实施例中,数据存储设备172可以包含可由数据处理器171执行以执行车辆105的各种功能的处理指令(例如,程序逻辑),包括本文结合附图所描述的那些功能。数据存储设备172还可以包含其他指令,包括将数据发送给车辆驱动子***142、车辆传感器子***144、车辆控制子***146以及乘员接口子***148中的一个或多个、从其接收数据、与其进行交互或对其进行控制的指令。
除了处理指令之外,数据存储设备172还可以存储诸如对象处理参数、训练数据、道路地图和路径信息等信息之类的数据。车辆105和计算***170可以在车辆105以自主、半自主和/或手动模式进行操作期间使用此类信息。
车辆105可以包括用于向车辆105的用户或乘员提供信息或者从车辆105的用户或乘员接收信息的用户界面。用户界面可以控制可以在显示设备上显示的交互式图像的内容和布局或实现对可以在显示设备上显示的交互式图像的内容和布局的控制。此外,用户界面可包括在一组乘员接口子***148内的一个或多个输入/输出设备,例如显示设备、扬声器、麦克风或无线通信***。
计算***170可以基于从各个车辆子***(例如,车辆驱动子***140、车辆传感器子***144和车辆控制子***146)接收的以及从乘员接口子***148接收的输入来控制车辆105的功能。例如,计算***170可以使用来自车辆控制***146的输入,以便控制转向单元以避开由车辆传感器子***144检测到的障碍物,并遵循由基于预测的轨迹规划模块200生成的轨迹。在示例实施例中,计算***170可操作以提供对车辆105及其子***的许多方面的控制。
尽管图1示出了车辆105的各种组件,例如车辆子***140、计算***170、数据存储设备172以及基于预测的轨迹规划模块200,它们被集成到车辆105中,这些组件中的一个或多个可以独立于车辆105而安装或相关联。例如,数据存储设备172可以部分地或全部地与车辆105分开地存在。因此,可以以可以分开定位或定位在一起的设备元件的形式来提供车辆105。构成车辆105的设备元件可以以有线或无线方式通信地耦合在一起。
另外,如上所述,可以通过车载控制***150从本地和/或远程源获得其他数据和/或内容(在本文中表示为辅助数据)。辅助数据可以用于基于各种因素来增加、修改或训练基于预测的轨迹规划模块200的操作,这些因素包括用户正在操作车辆的情况(例如,车辆的位置、指定的目的地、行进方向、速度、一天中的时间、车辆的状态等)以及可以从如本文所述的各种源(本地和远程)获得的各种其他数据。
在特定实施例中,车载控制***150和基于预测的轨迹规划模块200可以被实现为车辆105的车载组件。在各个示例实施例中,车载控制***150以及与之进行数据通信的基于预测的轨迹规划模块200可以被实现为集成组件或单独组件。在示例实施例中,可以通过使用经由网络120与移动设备132和/或网络资源122的数据连接来动态地升级、修改和/或扩充车载控制***150和/或基于预测的轨迹规划模块200的软件组件。车载控制***150可以周期性地向移动设备132或网络资源122查询更新,或者可以将更新推送到车载控制***150。
用于自主车辆的轨迹规划的基于预测的***和方法
传统的自主车辆控制***不能准确地预测其他邻近动态车辆的未来位置,因为它们没有考虑主自主车辆与其他邻近动态车辆之间的相互作用。为了提高对其他邻近动态车辆的未来位置的预测的准确性,基于所公开技术的一些实施例实现的用于自主车辆的轨迹规划的基于预测的***和方法将针对主自主车辆的建议轨迹与邻近车辆的预测轨迹进行比较,以决定是否要改变针对主自主车辆的建议轨迹。如在本专利文件的后续部分中进一步解释的,基于所公开技术的一些实施例实现的用于自主车辆的轨迹规划的基于预测的***和方法将主自主车辆的建议轨迹与已经基于针对主自主车辆的建议轨迹来预测的邻近车辆的预测轨迹进行比较,以确定是否要改变针对主自主车辆的建议轨迹。如各种示例实施例中所述,本文描述了用于自主车辆的轨迹规划的基于预测的***和方法。具体地,本公开涉及使用基于预测的方法进行自主车辆的轨迹规划。一方面,本文的***可以包括被配置为收集感知数据的各种传感器、计算设备以及用于预测在主自主车辆附近(邻近)的其他车辆和/或动态对象的轨迹的轨迹预测模块。最初,计算设备生成轨迹选项,而轨迹预测模块使用分别与每个车辆和/或动态对象的可能轨迹有关的数据来预测所检查的车辆和/或动态对象的反应。可以将与预测的反应相对应的数据发送到计算设备,以完善最初建议的轨迹选项。计算设备随后可以指示轨迹预测模块进一步收集数据并进行预测以完成轨迹规划过程。
所公开的实施例利用感知信息,该感知信息包括来自主自主车辆的状态和上下文信息,以预测可能对主车辆产生影响的邻近车辆的行为。示例实施例使用机器学习技术来分析从现实世界交通环境中的车辆和驾驶员的行为记录的大量感知和上下文数据。对感知和上下文数据的这种分析使得实施例能够针对主车辆正在其中操作的上下文准确地预测邻近车辆和对象的行为。一旦确定了邻近车辆和对象的预测行为,示例实施例可以使用运动规划过程来生成针对每个邻近车辆的预测轨迹。可以将针对每个邻近车辆的预测轨迹与主车辆的期望或建议轨迹进行比较,并且可以确定潜在的冲突。可以修改主车辆的轨迹,以避免与邻近车辆的潜在冲突。用于轨迹规划的基于预测的***和方法的一个目的是避免主车辆与道路上的其他邻近车辆和对象发生碰撞。用于避免碰撞的其他传统方法仅使用来自主车辆本身的历史信息。如本文中详细描述的,各种实施例使用主车辆和邻近车辆的上下文信息,基于训练数据来预测车辆的行为和轨迹。因此,示例实施例的基于预测的轨迹规划***可以有效地控制交通中的自主车辆。
现在参考图2,本文公开的示例实施例可以在用于自主车辆的基于预测的轨迹规划***202的上下文中使用。在示例实施例中,基于预测的轨迹规划***202可以包括轨迹预测模块175(下面更详细地描述),其可以被实现为机器学习***、神经网络等。这样,示例实施例可以在两个阶段中实现:离线训练阶段和操作阶段。训练阶段用于训练和配置轨迹预测模块175的机器学习***或神经网络或以机器学习***或神经网络实现的基于预测的轨迹规划***202的任何其他组件的参数。如下文中更详细描述的,在机器学习组件已经被训练并准备好支持预测的车辆或对象轨迹的生成之后,将使用操作阶段。
再次参考图2,示出了示例实施例中的用于训练和构建基于预测的轨迹规划***的离线训练阶段。在训练阶段,训练数据收集***201可以用于生成、训练和/或配置轨迹预测模块175或基于预测的轨迹规划***202的任何其他机器学习组件。如下文更详细描述的,对于示例实施例,基于预测的轨迹规划***202可以在操作阶段期间使用训练和配置的轨迹预测模块175,基于提供给基于预测的轨迹规划***202的感知数据并基于轨迹预测模块175在训练阶段期间从训练数据收集***201接收的训练来生成预测的车辆或对象的轨迹。
训练数据收集***201可以包括多个训练数据收集机制,包括从库或人类驾驶数据库获得训练数据或训练图像,以及从一组感知信息收集设备或传感器获得训练数据或训练图像,所述感知信息收集设备或传感器可以包括:图像生成设备(例如相机)、通过受激辐射发射的光放大(激光)设备、光检测和测距(LIDAR)设备、全球定位***(GPS)设备、声音导航和测距(声纳)设备、无线电检测和测距(雷达)设备等。由信息收集设备在各个交通地点收集的感知信息可以包括:交通或车辆图像数据、道路数据、环境数据、来自LIDAR或雷达设备的距离数据以及从位于邻近特定道路(例如,监视的位置)的训练数据收集***201的信息收集设备接收的其他传感器信息。另外,训练数据收集***201可以包括安装在移动的测试车辆中的信息收集设备,该移动的测试车辆导航通过感兴趣的环境或位置中的预定路线。感知信息可以包括从中可以获得或计算在自主车辆或主车辆附近或邻近的相邻车辆的位置和速度的信息。训练数据收集***201也可以收集相应的地面真值数据。因此,可以获得、处理和使用感知信息、地面真值数据和其他可用信息来构建用于训练和配置基于预测的轨迹规划***202的机器学习组件的训练数据集。
训练数据收集***201从而可以在上下文中的不同场景和不同驾驶员动作和意图下收集车辆的实际轨迹和相应的地面真值数据。不同场景可以对应于不同的位置、不同的交通模式、不同的环境条件等。场景可以例如由占据栅格、地图上的车辆状态的集合、或图形表示(例如一个或多个感兴趣区域的自上而下的图像)来表示。驾驶员的动作、行为和意图可以与驾驶员的短期驾驶目标相对应,例如左转或右转、加速或减速、并流、在路口右转、掉头等。驾驶员动作、行为和意图还可以对应于一组驾驶员或车辆控制动作,以实现特定的短期驾驶目标。
由训练数据收集***201收集的图像数据和其他感知数据、地面真值数据、上下文数据和其他训练数据反映了与位置或路线、场景和正在被监视的驾驶员动作、行为和意图有关的真实、现实、现实世界的交通信息。使用众所周知的数据收集设备的标准能力,可以将收集到的交通和车辆图像数据以及其他感知或传感器数据无线传输(或以其他方式传输)到标准计算***的数据处理器,训练数据收集***201可以在该处理器上被执行。备选地,所收集的交通和车辆图像数据以及其他感知或传感器数据可以被存储在被监视位置处或测试车辆中的存储设备中,并且随后被传送到标准计算***的数据处理器。由训练数据收集***201收集或计算的交通和车辆图像数据以及其他感知或传感器数据、地面真值数据、驾驶员动作和意图数据以及其他相关数据可用于生成训练数据,训练数据可以在训练阶段中用于构建、训练和/或配置轨迹预测模块175。例如,众所周知,可以在训练阶段中基于提供给神经网络或其他机器学习***的训练数据来训练神经网络或其他机器学习***,以产生配置的输出。给定当前上下文和在训练阶段接收的训练,训练数据收集***201提供的训练数据可以用于构建、训练和/或配置轨迹预测模块175或基于预测的轨迹规划***202的任何其他机器学习组件,以生成预测的车辆或对象轨迹。因此,基于预测的轨迹规划***202可以在操作阶段中使用训练的轨迹预测模块175和现实世界感知数据210(图6所示)来生成邻近车辆或对象轨迹。因此,示例实施例使用训练数据收集***201来收集与人类驾驶行为相对应的上下文数据,然后使用基于预测的轨迹规划***202和其中的训练的轨迹预测模块175,基于人类驾驶行为来生成预测的车辆轨迹。另外,在训练阶段期间,示例实施例可以使用损失函数来检查和校正由训练数据收集***201提供给轨迹预测模块175的训练的结果。因为轨迹预测模块175在训练阶段中使用现实世界的人类行为数据来训练,由轨迹预测模块175产生的车辆或对象的预测行为和轨迹与具有人类驾驶员的现实环境中的车辆的实际行为和轨迹紧密相关,并且基于由训练数据收集***201实现的人类驾驶员行为模型。
图3示意了用于在离线训练阶段中训练轨迹预测模块175的上下文数据的示例401。在示例401中,在三车道道路的中心车道中示出了标记为A的主车辆。如示例401所示,主车辆A可以在以下上下文中操作:六个邻近车辆位置(P1,P2,…P6)中的任何一个中的车辆或对象可以在主车辆A附近或邻近操作。在示例401中,前方邻近车辆P2在与主车辆A相同的车道中行驶并且在主车辆A的前方。后方车辆P5在与主车辆A在同一车道中行驶并且在主车辆A的后方。邻近车辆P1在主车辆A所占据的车道左侧的车道中行驶并在主车辆A前方。邻近车辆P3在主车辆A所占据的车道右侧的车道中行驶并在主车辆A前方。邻近车辆P4在主车辆A所占据的车道左侧的车道中行驶并在主车辆A后方。邻近车辆P6在主车辆A所占据的车道右侧的车道中行驶并在主车辆A后方。这样,可以将主车辆A置于相对于图3所示的六个邻近车辆位置(P1,P2,…P6)的上下文中。鉴于本文中的公开,对于本领域的普通技术人员来说显而易见的是,可以等效地使用不同数量的邻近车辆位置来定义主车辆A的上下文。此外,鉴于本文中的公开,本领域普通技术人员将理解:在现实世界场景中,并非所有的邻近车辆位置都可能被实际的车辆或对象占据。在示例实施例中,坐标系(1,d)可用于定义主车辆A相对于六个邻近车辆位置(P1,P2,…P6)的位置。在一个实施例中,l轴可以平行于道路的车道标记对齐。d轴可以垂直于1轴和道路的车道标记来定向。因此,可以容易地确定主车辆A相对于六个邻近车辆位置(P1,P2,…P6)的位置。在备选实施例中,可以用世界坐标、GPS坐标等来表示主车辆A的位置和六个附近的车辆位置(P1,P2,…P6)。鉴于本文的公开内容,对于本领域普通技术人员而言显而易见的是,可以等效地使用不同的坐标系来定义主车辆A相对于六个邻近车辆位置(P1,P2,…P6)的位置。坐标系提供了一种方便且准确的方式来生成坐标转换,以虚拟地将主车辆A的位置移至六个邻近车辆位置(P1,P2,…P6)中的任何一个或从其移开。如以下更详细描述的,该坐标变换对于将由主车辆A捕捉的感知数据移至与六个邻近车辆位置(P1,P2,…P6)中的任何一个相对应的上下文是有用的。
现在参考图4,在示例实施例中进一步示出了用于在离线训练阶段中训练轨迹预测模块175的上下文数据。在示例402中,在三车道道路的中心车道中示出了邻近车辆P5。类似的示例可以应用于六个邻近车辆位置(P1,P2,…P6)中的每一个。在每个邻近车辆位置(P1,P2,…P6)中操作的车辆或对象通常在行进方向或行驶方向上表现为三种基本方式,而在速度或加速度方面表现为一种基本方式。如图4所示,相对于行进方向或行驶方向,邻近车辆的三种基本方向性行为是:1)左转,2)直行(不转弯)和3)右转。邻近车辆的一种基本速率行为是加速或减速。当生成训练数据时,可以使用邻近车辆的方向性和速率行为,以使得轨迹预测模块175能够基于训练数据中包含的人类驾驶数据来学习并因此预测邻近车辆的可能行为。例如,可以使用人类标记者或自动化过程来标记训练数据中包括的图像,以将具有行为和方向信息的标记与训练数据中的车辆的每个实例相关联。在示例实施例中,可以将回归技术用于使用人类驾驶数据的加速度预测,以产生用于加速度预测的回归模型。如图4所示,标记或标记数据可以包括上下文信息,该上下文信息定义了训练数据中表示的车辆的方向性和速率行为。当在训练阶段中使用该训练数据来训练轨迹预测模块175时,轨迹预测模块175将保留与现实世界环境中的车辆的上下文和行为有关的信息。给定相似的上下文,轨迹预测模块175可以使用该车辆上下文和行为信息来推断邻近车辆的可能行为。因此,可以对轨迹预测模块175进行训练和配置,以相对于邻近车辆执行意图、行为和轨迹预测。
图5示出了示例实施例中的用于轨迹预测模块175的离线训练的操作或处理工作流程500。在操作框501中,如上所述,基于预测的轨迹规划***202可以从训练数据收集***201接收包括人类驾驶数据的训练数据。然后,基于预测的轨迹规划***202可以对训练数据执行滤波和平滑(操作框503)。平滑可以包括去除虚假数据或异常数据。然后在操作框505中,从训练数据执行上下文提取,包括提取车辆或对象统计数据和标记(例如,具有方向的车辆或对象行为)。示例实施例可以使用回归来预测加速度(操作框505)。最后,训练数据收集***201可以使用训练数据和上下文数据来训练轨迹预测模块175以相对于邻近车辆执行意图、行为和轨迹预测(操作框507)。
现在参考图6,如上所述,在离线训练阶段中对基于预测的轨迹规划***202的轨迹预测模块175进行训练之后,可以在基于预测的轨迹规划***202的操作阶段中部署轨迹预测模块175。如上所述,在操作阶段,基于预测的轨迹规划***202可以使用训练的轨迹预测模块175,基于人类驾驶员行为模型来生成预测的车辆或对象轨迹。基于预测的轨迹规划***202的操作阶段在下面更详细地描述。
再次参考图6,该图示出了基于预测的轨迹规划***202和其中的基于预测的轨迹规划模块200的组件的示例实施例。在示例实施例中,基于预测的轨迹规划模块200可以被配置为包括轨迹处理模块173和训练的轨迹预测模块175。如下面更详细地描述的,轨迹处理模块173用于使得能够生成主车辆(例如,自主车辆)的轨迹。训练的轨迹预测模块175用于使得能够生成在主车辆附近的邻近车辆的预测轨迹。车辆轨迹可以基于从包括一个或多个相机的一个或多个车辆传感器子***144接收的输入感知数据210来生成,并由图像处理模块进行处理以识别邻近的主体(例如,移动的车辆、动态对象、或主车辆附近的其他对象)。如上所述,所生成的邻近车辆轨迹还基于训练数据收集***201对轨迹预测模块175的训练。轨迹处理模块173和轨迹预测模块175可以被配置为由车载控制***150的数据处理器171执行的软件模块。基于预测的轨迹规划模块200的模块173和175可以接收输入感知数据210并产生轨迹220,车辆控制子***146的自主控制子***可以使用该轨迹220来更有效、更安全地控制主车辆105。作为其轨迹规划处理的一部分,轨迹处理模块173和轨迹预测模块175可以被配置为与轨迹规划和预测配置参数174一起工作,轨迹规划和预测配置参数174可以用于定制和微调基于预测的轨迹规划模块200的操作。轨迹规划和预测配置参数174可以被存储在车辆控制***150的存储器172中。
在示例实施例中,基于预测的轨迹规划模块200可以被配置为包括与车载控制***150的接口,如图1所示,基于预测的轨迹规划模块200可以通过该接口发送和接收如本文描述的数据。另外,基于预测的轨迹规划模块200可以被配置为包括与车载控制***150和/或其他生态***101子***的接口,基于预测的轨迹规划模块200可以通过该接口从上述各种数据源接收辅助数据。如上所述,基于预测的轨迹规划模块200还可以在未部署在车辆中并且不一定在车辆中或与车辆一起使用的***和平台中实施。
在图6所示的示例实施例中,基于预测的轨迹规划模块200可以被配置为包括轨迹处理模块173和训练的轨迹预测模块175,以及为清楚起见未示出的其他处理模块。这些模块中的每一个都可以被实现为在基于预测的轨迹规划模块200的可执行环境中执行或激活的软件、固件或其他逻辑组件,基于预测的轨迹规划模块200在车辆控制***150内操作或与车辆控制***150进行数据通信。以下结合本文提供的附图更详细地描述示例实施例的这些模块中的每一个。
作为由基于预测的轨迹规划***202执行的处理的结果,可以产生与预测或模拟的车辆行为以及预测或模拟的车辆或对象轨迹相对应的数据,并将其反馈到基于预测的轨迹规划***中202以改进预测轨迹的准确性。最终,改进的基于预测的轨迹规划***202可以用于将高度准确的预测交通轨迹信息提供给用户或用于自主车辆的控制***的配置。在特定示例中,可以将预测或模拟的交通轨迹信息提供给用于创建虚拟世界的***组件,在该虚拟世界中可以训练和改进自主车辆的控制***。该虚拟世界被配置为(尽可能)与人类驾驶员操作车辆的现实世界相同。换句话说,由基于预测的轨迹规划***202生成的预测或模拟的交通轨迹信息直接或间接有用于配置自主车辆的控制***。对于本领域普通技术人员将显而易见的是,本文描述和要求保护的基于预测的轨迹规划***202和预测或模拟的交通轨迹信息可以在多种其他应用和***中实现、配置、处理和使用。
再次参考图6,基于预测的轨迹规划模块200和其中的轨迹处理模块173可以从一个或多个车辆传感器子***144(包括一个或多个相机)接收输入感知数据210。来自车辆传感器子***144的图像数据可以由图像处理模块处理,以识别邻近主体或其他对象(例如,移动的车辆、动态对象或车辆105附近的其他对象)。语义分割的过程可以用于此目的。可以由基于预测的轨迹规划模块200及其中的轨迹处理模块173接收与所识别的邻近主体或其他对象有关的信息作为输入感知数据210。轨迹处理模块173可以使用输入感知数据210作为轨迹规划过程的一部分。具体地,轨迹处理模块173可以最初生成针对主自主车辆105的第一建议轨迹。第一建议轨迹可以对应于用于将车辆105导航到期望的路点或目的地的特定路径。第一建议轨迹还可以对应于用于控制车辆105以避开在主车辆105附近检测到的障碍物的特定路径。第一建议轨迹也可以对应于用于引导主车辆105执行特定动作的特定路径,特定动作例如超过另一车辆、调整速度或行进方向以保持与其他车辆的分离、轮流操纵车辆、执行受控停车等。在这些情况的每一个中,第一建议轨迹可以使主车辆105对其速度和/或行进方向进行顺序改变。由于主车辆105的速度或行进方向的改变,邻近主车辆105的道路上的其他主体或车辆可能会对主车辆105在速度、行进方向、其他动作和/或上下文方面的改变做出反应。在示例实施例中,提供了训练的轨迹预测模块175,以预计或预测邻近主体对主车辆105在上下文(例如,速度、行进方向等)方面的改变的可能动作或反应。因此,轨迹处理模块173可以结合由轨迹预测模块175产生的邻近主体的预测轨迹来提供主车辆105的第一建议轨迹。轨迹预测模块175可以生成被预测由于主车辆105的上下文(例如,遵循第一建议轨迹)而导致的邻近主体的可能轨迹或可能轨迹的分布。可以基于根据训练场景配置的机器学***来确定邻近主体的可能的或预测的轨迹。与特定预测轨迹相关的置信度水平或概率值可以被保持或与在与第一建议轨迹的期望执行相对应的时间点被检测为在主车辆105附近的每个邻近主体的预测轨迹相关联。轨迹预测模块175可以相对于主车辆105的上下文针对每个邻近主体生成这些预测轨迹和置信度水平。轨迹预测模块175可以针对每个邻近主体生成预测轨迹和相对应的置信度水平作为相对于主车辆105的上下文的输出。轨迹处理模块173可以使用轨迹预测模块175所生成的针对每个邻近主体的预测轨迹和相对应的置信度水平,以确定针对邻近主体的预测轨迹中的任一个是否可能导致主车辆105基于相关分数低于最小可接受阈值而违反预定义目标。轨迹处理模块173可以关于任何邻近主体的预测轨迹来对第一建议轨迹进行评分。第一建议轨迹的分数与第一建议轨迹符合主车辆105的预定义目标的水平有关,预定义目标包括安全性、效率、合法性、乘客舒适度等。每个目标的最小分数阈值可以预定义。例如,与转弯速率、加速或停止速率、速度、间距等有关的得分阈值可以预定义,并且可以用于确定针对主车辆105的建议轨迹是否可能违反预定义的目标。如果由轨迹处理模块173基于任何邻近主体的预测轨迹所生成的针对第一建议轨迹的分数可能违反预定义目标,则轨迹处理模块173可以拒绝第一建议轨迹,并且轨迹处理模块173可以生成第二建议轨迹。可以将第二建议轨迹和主车辆105的当前上下文提供给轨迹预测模块175,以关于第二建议轨迹和主车辆105的上下文生成针对每个邻近主体的一组新的预测轨迹和置信度水平。轨迹预测模块175生成的针对每个邻近主体的一组新的预测轨迹和置信度水平可以从轨迹预测模块175输出,并提供给轨迹处理模块173。再次,轨迹处理模块173可以使用与第二建议轨迹相对应的每个邻近主体的预测轨迹和置信度水平,确定邻近主体的预测轨迹中的任一个是否可能导致车辆105基于相关分数低于最小可接受阈值而违反预定义目标。如果由轨迹处理模块173基于针对任何邻近主体的一组新的预测轨迹生成的针对第二建议轨迹的分数可能违反预定义目标,则轨迹处理模块173可以拒绝第二建议轨迹,并且轨迹处理模块173可以生成第三建议轨迹。可以重复该过程,直到由轨迹处理模块173生成并由轨迹预测模块175处理的建议轨迹使得每个邻近主体的预测轨迹和置信度水平导致主车辆105的建议轨迹基于相关分数达到或高于最小可接受阈值而满足预定义目标。备选地,可以重复该过程直到一段时间或超过迭代计数。如果如上所述的示例实施例的过程导致满足预定义目标的预测轨迹、置信度水平和相关分数,则提供相对应的建议轨迹220作为基于预测的轨迹规划模块200的输出,如图6中所示。
图7和图8示出了示例实施例中用于基于预测的轨迹规划***202的操作阶段使用的操作或处理工作流程600。在图7所示的操作框601中,基于预测的轨迹规划***202从主车辆接收感知数据210。感知数据可以包括来自安装在主车辆105上或与其结合使用的传感器(例如,相机、LIDAR、雷达等)的传感器数据。在操作框603中,基于预测的轨迹规划***202可以使用接收到的感知数据以生成相对于邻近主车辆的车辆的所述感知数据的坐标变换。在特定实施例中,可以确定每个邻近车辆相对于主车辆的位置。如上所述,可以将坐标变换为世界坐标或(1,d)坐标系。因此,来自主车辆的感知数据可以用于确定主车辆附近的每个邻近车辆的上下文。在操作框605中,可以对邻近车辆的变换的感知数据进行滤波和平滑。数据平滑可以包括去除噪声、虚假数据和异常数据。在特定实施例中,可以使用高斯滤波器。一旦对变换的感知数据进行滤波和平滑,就可以在操作框607中执行从数据中提取特征和上下文。在预定时间段内从变换和滤波的感知数据进行特征和上下文提取,以获得主车辆特征数据(例如,位置和速度等)和邻近车辆上下文数据(例如,邻近车辆的位置和速度等)。在获得了主车辆特征数据和邻近车辆上下文数据之后,基于预测的轨迹规划***202可以如上所述采用训练的轨迹预测模块175或任何其他机器学习组件来生成相对于邻近车辆的意图或行为和轨迹预测(操作框609)。基于相对于邻近车辆的意图或行为和轨迹预测,轨迹预测模块175可以基于每个邻近车辆的预测意图或行为,使用特定的运动规划过程来生成针对每个邻近车辆的预测轨迹(操作框611)。例如,训练轨迹预测模块175可以基于训练数据和车辆上下文来确定特定邻近车辆可能执行加速左转。在该特定示例中,训练的轨迹预测模块175可以相应地生成用于该特定邻近车辆的轨迹,包括用于加速左转的路径和速度/加速度。然后,在图8所示的标为“A”的连接符处继续进行图7所示的操作或处理工作流程600的处理。
现在参考图8,操作或处理工作流程600在标记为“A”的连接符处继续。在图7所示的操作框611中,轨迹预测模块175基于每个邻近车辆的预测意图或行为来生成每个邻近车辆的预测轨迹。在这一点上,示例实施例可以在操作框613中生成针对主车辆的建议轨迹。如果在操作框613中生成的针对主车辆的建议轨迹将与在操作框611中生成的邻近车辆的预测轨迹中的任一个冲突(即,判定框615的“是”分支),则处理控制返回到操作框613,在操作框613中,修正、修改和/或重新生成针对主车辆的建议轨迹。当邻近车辆的预测轨迹中的任一个会与主车辆的建议轨迹相交或过于接近时,发生冲突。基于预测的轨迹规划***202将执行安全区和阈值,以确保观察到安全,消除冲突并避免碰撞。操作框613和判定框615之间的循环将继续,直到在操作框613中生成的针对主车辆的建议轨迹与在操作框611中生成的邻近车辆的预测轨迹中的任一个不冲突(即,判定框615的“否”分支)。在这种情况下,处理控制转到操作框617,在操作框617中,执行针对主车辆的建议轨迹,并且沿着该建议轨迹引导主车辆的控制,该建议轨迹不会与任何邻近车辆发生冲突。
现在参考图9,流程图示出了用于提供自主车辆的基于预测的轨迹规划的***和方法1000的示例实施例。该示例实施例可以被配置为:从训练数据收集***接收训练数据和地面真值数据,所述训练数据包括与人类驾驶行为相对应的感知数据和上下文数据(处理框1010);执行训练阶段以使用训练数据来训练轨迹预测模块(处理框1020);接收与主车辆相关联的感知数据(处理框1030);以及执行操作阶段,用于从感知数据中提取主车辆特征数据和邻近车辆上下文数据,使用训练的轨迹预测模块来生成针对主车辆附近的一个或多个邻近车辆中的每一个的预测轨迹,生成针对主车辆的建议轨迹,确定针对主车辆的建议轨迹是否将与邻近车辆的预测轨迹中的任何一个冲突,以及修改针对主车辆的建议轨迹直到冲突消除(处理框1040)。
用于自主车辆的轨迹规划的基于预测的***和方法的备选实施例
如各个示例实施例中所述,本文描述了用于自主车辆的轨迹规划的基于预测的***和方法。在特定示例实施例中,本文的***可以包括被配置为收集感知数据的各种传感器、计算设备以及用于预测在主自主车辆附近(邻近)的其他车辆和/或动态对象的轨迹的训练的轨迹预测模块。在上述示例实施例中,计算设备使用训练的轨迹预测模块,以基于包括人类驾驶员行为数据的训练数据来预测邻近主自主车辆的车辆和/或动态对象的轨迹。然后,上述示例实施例生成针对主车辆的建议轨迹,并检查建议的主车辆轨迹与邻近车辆的预测轨迹中的任一个之间的冲突。如果检测到冲突,则相应地修改建议的主车辆轨迹。
在本文描述的***和方法的备选实施例中,备选实施例可以首先生成针对主车辆的建议轨迹,然后使用训练的轨迹预测模块来预测在主车辆通过建议轨迹的情况下邻近主自主车辆的车辆和/或动态对象的轨迹。以这种方式,训练的轨迹预测模块可以生成邻近车辆的预测轨迹,如邻近车辆可能会对建议的主车辆轨迹做出反应的那样。如在上述示例实施例中一样,备选实施例还可以检查所建议的主车辆轨迹与邻近车辆的预测轨迹中的任一个之间的冲突。如果检测到冲突,则相应地修改建议的主车辆轨迹。
为了支持备选示例实施例,可以稍微修改离线训练阶段期间的轨迹预测模块175的训练。具体地,训练数据收集***201可以基于车辆执行的特定动作来收集人类驾驶数据,人类驾驶数据将人类驾驶行为数据分类为多个不同场景中的至少一个。例如,训练数据可以包括表示车辆动作的数据,例如,向左或向右转弯、保持直行方向、加速或减速、执行加速或减速转弯、超过另一车辆等。上述标记数据可以用于表示这些不同的驾驶场景和动作。另外,训练数据可以包括表示由邻近车辆响应于不同驾驶场景和由测试车辆执行的动作而采取的动作的数据。因此,训练数据可以包括与驾驶员通常对邻近车辆所执行的动作如何反应有关的人类驾驶员行为数据。该数据可以在备选实施例中用于确定或预测当主车辆执行特定动作或遵循特定轨迹时,邻近车辆的可能动作或反应。在备选实施例中,该训练数据可以由训练轨迹预测模块175在操作阶段期间使用,以预计在主车辆执行特定的建议轨迹的情况下邻近车辆的可能动作。通过预计或预测邻近车辆的可能动作或反应,备选实施例可以确定所建议的主车辆轨迹是否安全并且与邻近车辆的预测轨迹中的任一个不冲突。基于该确定,如有必要,可以修改建议的主车辆轨迹,以消除与邻近车辆的任何冲突。
现在参考图10,流程图示出了用于提供自主车辆的基于预测的轨迹规划的***和方法1001的备选示例实施例。该示例实施例可以被配置为:从训练数据收集***接收训练数据和地面真值数据,所述训练数据包括与人类驾驶行为相对应的感知数据和上下文数据(处理框1011);执行训练阶段以使用训练数据来训练轨迹预测模块(处理框1021);接收与主车辆相关联的感知数据(处理框1031);执行操作阶段,用于从感知数据中提取主车辆特征数据和邻近车辆上下文数据,生成针对主车辆的建议轨迹,使用训练的轨迹预测模块基于建议的主车辆轨迹来生成针对主车辆附近的一个或多个邻近车辆中的每一个的预测轨迹,确定针对主车辆的建议轨迹是否将与邻近车辆的预测轨迹中的任何一个冲突,以及修改针对主车辆的建议轨迹直到冲突消除(处理框1041)。
如本文所使用的,除非另有说明,否则术语“移动设备”包括可以与本文所述的车载控制***150和/或基于预测的轨迹规划模块200通信以获得通过任何数据通信模式传送的数据信号、消息或内容的读取或写入访问权限的任何计算或通信设备。在许多情况下,移动设备130是手持式便携式设备,例如智能电话、移动电话、蜂窝电话、平板计算机、膝上型计算机、显示寻呼机、射频(RF)设备、红外(IR)设备、全球定位设备(GPS)、个人数字助理(PDA)、手持计算机、可穿戴计算机、便携式游戏机、其他移动通信和/或计算设备或组合一个或多个前述设备的集成设备等。另外,移动设备130可以是计算设备、个人计算机(PC)、多处理器***、基于微处理器的或可编程的消费电子设备、网络PC、诊断设备、由车辆119的制造商或服务技术人员操作的***等,但不仅限于便携式设备。移动设备130可以接收和处理多种数据格式中的任何一种格式的数据。数据格式可以包括任何编程格式、协议或语言或被配置为以任何编程格式、协议或语言进行操作,包括但不限于JavaScript、C++、iOS、Android等。
如本文所使用的,除非另有说明,否则术语“网络资源”包括可以与本文所述的车载控制***150和/或基于预测的轨迹规划模块200通信以获得对通过任何模式的进程间或联网数据通信传送的数据信号、消息或内容的读取或写入访问权限的任何设备、***或服务。在许多情况下,网络资源122是数据网络可访问的计算平台,包括客户端或服务器计算机、网站、移动设备、对等(P2P)网络节点等。此外,网络资源122可以是Web设备、网络路由器、交换机、网桥、网关、诊断设备、由车辆119的制造商或服务技术人员操作的***或者是能够执行一组指令(顺序或其他方式)的任何机器,该指令指定要由该机器执行的动作。此外,虽然仅示出了单个机器,但是术语“机器”也可以被理解为包括机器的任何集合,其单独地或共同地执行一组(或多组)指令以执行本文讨论的任何一个或多个方法。网络资源122可以包括网络可传输数字内容的各个提供者或处理器中的任何一个。通常,所采用的文件格式是可扩展标记语言(XML),但是各种实施例不限于此,并且可以使用其他文件格式。例如,各种实施例可以支持除超文本标记语言(HTML)/XML之外的数据格式或除开放/标准数据格式之外的格式。本文所述的各种实施例可以支持任何电子文件格式,例如可移植文档格式(PDF)、音频(例如,运动图像专家组音频第3层-MP3等)、视频(例如,MP4等)以及由特定内容站点定义的任何专有交换格式。
与网络资源122一起使用的广域数据网络120(也称为网络云)可以被配置为将一个计算或通信设备与另一计算或通信设备耦合。可以使网络能够采用任何形式的计算机可读数据或介质来将信息从一个电子设备传送到另一电子设备。网络120可以包括互联网,以及其他广域网(WAN)、蜂窝电话网络、城域网、局域网(LAN)、其他分组交换网络、电路交换网络、例如通过通用串行总线(USB)或以太网端口的直接数据连接、其他形式的计算机可读介质或其任何组合。网络120可以包括互联网,以及其他广域网(WAN)、蜂窝电话网络、卫星网络、空中广播网络、AM/FM无线电网络、寻呼机网络、UHF网络、其他广播网络、游戏网络、WiFi网络、对等网络、IP语音(VoIP)网络、城域网、局域网(LAN)、其他分组交换网络、电路交换网络、直接数据连接(例如,通过通用串行总线(USB)或以太网端口)、其他形式的计算机可读介质或其任意组合。在一组互连的网络(包括基于不同架构和协议的网络)上,路由器或网关可以充当网络之间的链接,使得消息能够在不同网络上的计算设备之间发送。而且,网络内的通信链路通常可以包括双绞线电缆、USB、火线、以太网或同轴电缆,而网络之间的通信链路可以利用模拟或数字电话线、包括T1、T2、T3和T4的全部或部分专用数字线路、综合业务数字网(ISDN)、数字用户线(DSL)、包括卫星链路、蜂窝电话链路或本领域普通技术人员公知的其他通信链路的无线链路。此外,远程计算机和其他相关电子设备可以通过调制解调器和临时电话链路远程连接到网络。
网络120还可以包括可以进一步覆盖独立自组织网络等的各种无线子网络中的任何一个,以提供面向基础设施的连接。这样的子网络可以包括网状网络、无线LAN(WLAN)网络、蜂窝网络等。该网络还可以包括通过无线无线电链路或无线收发器连接的终端、网关、路由器等的自主***。这些连接器可以被配置为自由随机移动并任意组织,以使网络拓扑可以快速变化。网络120还可以采用多个标准无线和/或蜂窝协议或接入技术中的一个或多个,包括结合本文附图中描述的网络接口712和网络714在本文阐述的那些。
在特定实施例中,移动设备132和/或网络资源122可以充当使得用户能够访问和使用车载控制***150和/或基于预测的轨迹规划模块200与车辆子***的一个或多个组件交互的客户端设备。这些客户端设备132或122实际上可以包括被配置为通过诸如本文所述的网络120之类的网络发送和接收信息的任何计算设备。这样的客户端设备可以包括移动设备,例如蜂窝电话、智能电话、平板计算机、显示寻呼机、射频(RF)设备、红外(IR)设备、全球定位设备(GPS)、个人数字助理(PDA)、手持式计算机、可穿戴计算机、游戏控制台、组合一个或多个前述设备的集成设备等。客户端设备还可以包括其他计算设备,例如个人计算机(PC)、多处理器***、基于微处理器的或可编程的消费电子产品、网络PC等。这样,客户端设备在功能和特征方面可以广泛地变化。例如,被配置为电话的客户端设备可以具有数字小键盘和几行单色LCD显示器,在其上只能显示文本。在另一示例中,支持网络的客户端设备可以具有触敏屏幕、手写笔和彩色LCD显示屏,其中可以显示文本和图形两者。此外,支持网络的客户端设备可以包括浏览器应用,该浏览器应用能够接收和发送无线应用协议消息(WAP)和/或有线应用消息等。在一个实施例中,浏览器应用被启用以采用超文本标记语言(HTML)、动态HTML、手持设备标记语言(HDML)、无线标记语言(WML)、WMLScript、JavaScriptTM、可扩展HTML(xHTML)、紧凑HTML(CHTML等)来显示和发送带有相关信息的消息。
客户端设备还可以包括至少一个客户端应用,该至少一个客户端应用被配置为经由网络传输从另一计算设备接收内容或消息。客户端应用可以包括提供和接收文本内容、图形内容、视频内容、音频内容、警报、消息、通知等的功能。此外,客户端设备还可以被配置为例如通过短消息服务(SMS)、直接消息传递(例如,Twitter)、电子邮件、多媒体消息服务(MMS)、即时消息传递(IM)、互联网中继聊天(IRC)、mIRC、Jabber、增强消息传递服务(EMS)、文本消息传递、智能消息传递、空中(OTA)消息传递等在另外的计算设备之间传送和/或接收消息等。客户端设备还可以包括无线应用设备,客户端应用被配置在该无线应用设备上,以使得该设备的用户能够经由网络无线地向/从网络资源发送和接收信息。
可以使用增强执行环境的安全性的***来实现车载控制***150和/或基于预测的轨迹规划模块200,从而提高安全性并降低车载控制***150和/或基于预测的轨迹规划模块200以及相关服务可能被病毒或恶意软件破坏的可能性。例如,可以使用可信执行环境来实现车载控制***150和/或基于预测的轨迹规划模块200,其可以确保敏感数据以安全的方式被存储、处理和传送。
图11以计算***700的示例形式示出了机器的示意图,在其中当一组指令被执行时和/或当处理逻辑被激活时可以使该机器执行所描述的和/或本文所要求保护的方法中的任何一个或多个。在替代实施例中,该机器作为独立设备进行操作,或者可以连接(例如,联网)到其他机器。在联网部署中,机器可以在服务器-客户端网络环境中以服务器或客户端机器的身份进行操作,或者在对等(或分布式)网络环境中作为对等机器进行操作。该机器可以是个人计算机(PC)、膝上型计算机、平板计算***、个人数字助理(PDA)、蜂窝电话、智能电话、网络设备、机顶盒(STB)、网络路由器、交换机或网桥、或能够执行一组指令(顺序指令或其他指令)或激活指定该机器要执行的动作的处理逻辑的任何机器。此外,虽然仅示出了单个机器,但是术语“机器”也可以被理解为包括机器的任何集合,其单独地或共同地执行一组(或多组)指令或处理逻辑以执行本文描述和/或要求保护的方法中的任意一个或多个。
示例计算***700可以包括可以通过总线或其他数据传输***706彼此通信的数据处理器702(例如,片上***(SoC)、通用处理核心、图形核心和可选地其他处理逻辑)和存储器704。移动计算和/或通信***700还可包括各种输入/输出(I/O)设备和/或接口710,例如触摸屏显示器、音频插孔、语音接口以及可选地网络接口712。在示例实施例中,网络接口712可以包括一个或多个无线电收发器,其被配置为与任何一个或多个标准无线和/或蜂窝协议或接入技术(例如,第二代(2G)、2.5代、第三代(3G)、***(4G)和下一代蜂窝***的无线电接入、全球移动通信***(GSM)、通用分组无线电业务(GPRS)、增强型数据GSM环境(EDGE)、宽带码分多址(WCDMA)、LTE、CDMA2000、WLAN、无线路由器(WR)网等)兼容。网络接口712还可被配置为与各种其他有线和/或无线通信协议一起使用,包括TCP/IP、UDP、SIP、SMS、RTP、WAP、CDMA、TDMA、UMTS、UWB、WiFi、WiMax、IEEE 802.11x等。本质上,网络接口712可以实际上包括或支持任何有线和/或无线通信和数据处理机制,通过该机制,信息/数据可以通过网络714在计算***700和另一计算或通信***之间传送。
存储器704可以代表机器可读介质,在其上存储体现本文所描述和/或要求保护的方法或功能中的任何一个或多个的一组或多组指令、软件、固件或其他处理逻辑(例如,逻辑708)。在由移动计算和/或通信***700执行期间,逻辑708或其一部分也可以完全或至少部分地驻留在处理器702内。这样,存储器704和处理器702也可以构成机器可读介质。逻辑708或其一部分也可以被配置为处理逻辑或逻辑,其至少一部分部分地以硬件实现。逻辑708或其一部分还可以经由网络接口712通过网络714发送或接收。虽然示例实施例的机器可读介质可以是单个介质,但是术语“机器可读介质”应当被认为包括存储一个或多个指令集的单个非暂时性介质或多个非暂时性介质(例如,集中式或分布式数据库和/或相关联的高速缓存和计算***)。术语“机器可读介质”也可以被认为包括任何非暂时性介质,其能够存储、编码或携带一组指令以供机器执行并且使机器执行各种实施例的任何一个或多个方法,或者能够存储、编码或携带由该组指令利用或与之相关联的数据结构。因此,术语“机器可读介质”可被认为包括但不限于固态存储器、光学介质和磁性介质。
图12示出了基于所公开的技术的实施例实现的基于预测的轨迹规划***的示例。基于预测的轨迹规划***202可以包括建议轨迹生成器802、轨迹预测生成器804和比较器806。建议轨迹生成器802生成针对主车辆的建议轨迹。轨迹预测生成器804基于针对主车辆的建议轨迹来生成主车辆附近的邻近车辆的预测轨迹。比较器806将针对主车辆的建议轨迹与邻近车辆的预测轨迹进行比较。基于针对主车辆的建议轨迹与邻近车辆的预测轨迹的比较,车辆控制器808决定是否要调整主车辆的速度或行进方向。如果针对主车辆的建议轨迹与邻近车辆的预测轨迹的比较指示针对主车辆的建议轨迹超过最小可接受阈值,则修改针对主车辆的建议轨迹,直到满足最小可接受阈值为止。在所公开技术的示例实现中,基于针对主车辆的建议轨迹并基于训练数据来生成邻近车辆的预测轨迹,所述训练数据包括与来自现实世界交通环境中的车辆和驾驶员的人类驾驶行为相对应的感知数据。例如,轨迹预测生成器包括机器学***。
提供本公开的摘要以允许读者快速地确定技术公开的性质。提交本文档时应理解为不会将其用于解释或限制权利要求的范围或含义。另外,在前述具体实施方式中,可以看出,出于简化本公开的目的,在单个实施例中将各种特征组合在一起。本公开的方法不应被解释为反映了以下意图:所要求保护的实施例需要比每个权利要求中明确记载的特征更多的特征。相反,如所附权利要求所反映的,本发明主题在于少于单个公开实施例的所有特征。因此,所附权利要求由此并入详细描述中,其中每个权利要求独立地作为单独的实施例。
Claims (20)
1.一种***,包括:
数据处理器;以及
基于预测的轨迹规划模块,能够由所述数据处理器执行,所述基于预测的轨迹规划模块被配置为:
接收与主车辆相关联的感知数据;
从所述感知数据中提取主车辆特征数据和邻近车辆上下文数据;
生成针对所述主车辆的建议轨迹;
使用训练的轨迹预测模块来生成针对一个或多个邻近车辆中的每一个的预测轨迹,已经使用训练数据训练了所述训练的轨迹预测模块,该训练数据包括与人类驾驶行为相对应的感知数据和上下文数据,针对所述一个或多个邻近车辆中的每一个的所述预测轨迹是对所述建议的主车辆轨迹的反应;以及
如果针对所述主车辆的所述建议轨迹将与所述一个或多个邻近车辆的所述预测轨迹中的任何一个冲突,则修改针对所述主车辆的所述建议轨迹。
2.根据权利要求1所述的***,还被配置为:对所述感知数据进行滤波和平滑。
3.根据权利要求1所述的***,还被配置为:生成相对于所述一个或多个邻近车辆的所述感知数据的坐标变换。
4.根据权利要求1所述的***,其中,所述训练数据包括标记数据,所述标记数据包括定义所述训练数据中表示的车辆的方向性和速率行为的上下文信息。
5.根据权利要求1所述的***,其中,所述训练数据包括标记数据,所述标记数据包括定义所述训练数据中表示的车辆的方向性和速率行为的上下文信息,所述上下文数据还定义左转弯,不转弯,或右转弯。
6.根据权利要求1所述的***,其中,修改针对所述主车辆的所述建议轨迹包括:
确定针对所述主车辆的所述建议轨迹是否将与所述一个或多个邻近车辆的所述预测轨迹中的任何一个冲突;以及
基于所确定的冲突修改针对所述主车辆的所述建议轨迹直到所述冲突消除。
7.根据权利要求1所述的***,还被配置为:使用回归来预测车辆的加速度。
8.根据权利要求1所述的***,还被配置为:确定针对所述一个或多个邻近车辆的所述预测轨迹中的任何一个是否能够导致所述主车辆基于相关分数低于最小可接受阈值而违反预定义目标。
9.根据权利要求1所述的***,其中,针对所述主车辆的所述建议轨迹被输出到车辆控制子***,以使所述主车辆遵循所述输出的建议轨迹。
10.一种方法,包括:
接收与主车辆相关联的感知数据;
从所述感知数据中提取主车辆特征数据和邻近车辆上下文数据;
生成针对所述主车辆的建议轨迹;
使用训练的轨迹预测模块来生成针对一个或多个邻近车辆中的每一个的预测轨迹,已经使用训练数据训练了所述训练的轨迹预测模块,该训练数据包括与人类驾驶行为相对应的感知数据和上下文数据,针对所述一个或多个邻近车辆中的每一个的所述预测轨迹是对所述建议的主车辆轨迹的反应;以及
如果针对所述主车辆的所述建议轨迹将与所述一个或多个邻近车辆的所述预测轨迹中的任何一个冲突,则修改针对所述主车辆的所述建议轨迹。
11.根据权利要求10所述的方法,其中所述邻近车辆上下文数据包括邻近车辆位置和邻近车辆速度。
12.根据权利要求10所述的方法,包括:确定相对于所述主车辆的每个邻近车辆的位置。
13.根据权利要求10所述的方法,包括:从一组感知信息收集设备或传感器获得感知数据。
14.根据权利要求10所述的方法,其中,所述训练数据包括从人类标记者或自动化标记过程获得的标记数据。
15.根据权利要求10所述的方法,其中,所述感知数据包括从传感器接收的数据,所述传感器来自以下构成的组:相机或图像捕捉设备,全球定位***GPS收发器,和激光测距仪/LIDAR单元。
16.根据权利要求10所述的方法,包括:预测车辆的加速度。
17.根据权利要求10所述的方法,包括:确定针对所述一个或多个邻近车辆的所述预测轨迹中的任何一个是否能够导致所述主车辆违反预定义目标。
18.根据权利要求10所述的方法,包括:使所述主车辆遵循所述建议轨迹。
19.一种非暂时性机器可用存储介质,包含指令,所述指令在由机器执行时使所述机器:
接收与主车辆相关联的感知数据;
从所述感知数据中提取主车辆特征数据和邻近车辆上下文数据;
生成针对所述主车辆的建议轨迹;
使用训练的轨迹预测模块来生成针对一个或多个邻近车辆中的每一个的预测轨迹,已经使用训练数据训练了所述训练的轨迹预测模块,该训练数据包括与人类驾驶行为相对应的感知数据和上下文数据,针对所述一个或多个邻近车辆中的每一个的所述预测轨迹是对所述建议的主车辆轨迹的反应;以及
如果针对所述主车辆的所述建议轨迹将与所述一个或多个邻近车辆的所述预测轨迹中的任何一个冲突,则修改针对所述主车辆的所述建议轨迹。
20.根据权利要求19所述的非暂时性机器可用存储介质,被配置为:生成针对所述主车辆附近的所述一个或多个邻近车辆中的每一个的预测加速度。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/806,013 | 2017-11-07 | ||
US15/806,013 US10782694B2 (en) | 2017-09-07 | 2017-11-07 | Prediction-based system and method for trajectory planning of autonomous vehicles |
PCT/US2018/059689 WO2019060927A2 (en) | 2017-09-07 | 2018-11-07 | PREDICTION BASED SYSTEM AND METHOD FOR TRACK PLANNING OF AUTONOMOUS VEHICLES |
CN201880058298.8A CN111373458B (zh) | 2017-11-07 | 2018-11-07 | 用于自主车辆的轨迹规划的基于预测的***和方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880058298.8A Division CN111373458B (zh) | 2017-11-07 | 2018-11-07 | 用于自主车辆的轨迹规划的基于预测的***和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115610409A true CN115610409A (zh) | 2023-01-17 |
Family
ID=71212280
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211237407.7A Pending CN115610409A (zh) | 2017-11-07 | 2018-11-07 | 用于自主车辆的轨迹规划的基于预测的***和方法 |
CN201880058298.8A Active CN111373458B (zh) | 2017-11-07 | 2018-11-07 | 用于自主车辆的轨迹规划的基于预测的***和方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880058298.8A Active CN111373458B (zh) | 2017-11-07 | 2018-11-07 | 用于自主车辆的轨迹规划的基于预测的***和方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN115610409A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112867A (zh) * | 2023-10-24 | 2023-11-24 | 四川国蓝中天环境科技集团有限公司 | 一种基于gps轨迹数据的重型车辆排放计算和可视化方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190204842A1 (en) * | 2018-01-02 | 2019-07-04 | GM Global Technology Operations LLC | Trajectory planner with dynamic cost learning for autonomous driving |
US11966838B2 (en) * | 2018-06-19 | 2024-04-23 | Nvidia Corporation | Behavior-guided path planning in autonomous machine applications |
WO2020163390A1 (en) | 2019-02-05 | 2020-08-13 | Nvidia Corporation | Driving lane perception diversity and redundancy in autonomous driving applications |
CN112949756B (zh) * | 2021-03-30 | 2022-07-15 | 北京三快在线科技有限公司 | 一种模型训练以及轨迹规划的方法及装置 |
US20220327919A1 (en) * | 2021-04-12 | 2022-10-13 | At&T Intellectual Property I, L.P. | Predicting road blockages for improved navigation systems |
CN113561996B (zh) * | 2021-09-23 | 2021-12-21 | 国汽智控(北京)科技有限公司 | 轨迹规划方法及装置 |
CN113949996B (zh) * | 2021-10-11 | 2022-10-28 | 重庆大学 | 用于车路协同测试场景采集回放的数据处理方法及*** |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8457827B1 (en) * | 2012-03-15 | 2013-06-04 | Google Inc. | Modifying behavior of autonomous vehicle based on predicted behavior of other vehicles |
US9248834B1 (en) * | 2014-10-02 | 2016-02-02 | Google Inc. | Predicting trajectories of objects based on contextual information |
JP6202538B2 (ja) * | 2015-04-21 | 2017-09-27 | 本田技研工業株式会社 | 運転支援方法、プログラム、および運転支援装置 |
CN104882025B (zh) * | 2015-05-13 | 2017-02-22 | 东华大学 | 一种基于车联网技术的碰撞检测预警方法 |
KR101714250B1 (ko) * | 2015-10-28 | 2017-03-08 | 현대자동차주식회사 | 주변 차량의 이동 경로의 예측 방법 |
WO2017079349A1 (en) * | 2015-11-04 | 2017-05-11 | Zoox, Inc. | System for implementing an active safety system in an autonomous vehicle |
EP3400419A2 (en) * | 2016-01-05 | 2018-11-14 | Mobileye Vision Technologies Ltd. | Trained navigational system with imposed constraints |
US10029682B2 (en) * | 2016-01-22 | 2018-07-24 | Toyota Motor Engineering & Manufacturing North America, Inc. | Surrounding vehicle classification and path prediction |
-
2018
- 2018-11-07 CN CN202211237407.7A patent/CN115610409A/zh active Pending
- 2018-11-07 CN CN201880058298.8A patent/CN111373458B/zh active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112867A (zh) * | 2023-10-24 | 2023-11-24 | 四川国蓝中天环境科技集团有限公司 | 一种基于gps轨迹数据的重型车辆排放计算和可视化方法 |
CN117112867B (zh) * | 2023-10-24 | 2024-01-09 | 四川国蓝中天环境科技集团有限公司 | 一种基于gps轨迹数据的重型车辆排放计算和可视化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111373458B (zh) | 2022-11-04 |
CN111373458A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11892846B2 (en) | Prediction-based system and method for trajectory planning of autonomous vehicles | |
US10782693B2 (en) | Prediction-based system and method for trajectory planning of autonomous vehicles | |
US11948082B2 (en) | System and method for proximate vehicle intention prediction for autonomous vehicles | |
US11853071B2 (en) | Data-driven prediction-based system and method for trajectory planning of autonomous vehicles | |
US11673557B2 (en) | System and method for path planning of autonomous vehicles based on gradient | |
US10953881B2 (en) | System and method for automated lane change control for autonomous vehicles | |
CN111373458B (zh) | 用于自主车辆的轨迹规划的基于预测的***和方法 | |
US10953880B2 (en) | System and method for automated lane change control for autonomous vehicles | |
US20190367019A1 (en) | System and method for proximate vehicle intention prediction for autonomous vehicles | |
CN112154088B (zh) | 用于自主车辆的自动车道变更控制的***和方法 | |
CN112272844B (zh) | 针对用于自主车辆的邻近车辆意图预测的***和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |