用于确定对象的未来意图的系统和方法与流程

未命名 09-24 阅读:79 评论:0

用于确定对象的未来意图的系统和方法
1.交叉引用和优先权要求
2.本专利文件要求享有于2021年2月19日提交的美国专利申请第17/179,510号的优先权,其全部内容通过引用并入本文。
技术领域
3.本公开总体上涉及计算系统。更具体地,本公开涉及实现用于确定对象的未来意图的系统和方法(其可以例如用于车辆运动规划)。


背景技术:

4.现代车辆具有至少一个车载计算机并且具有互联网/卫星连接。在这些车载计算机上运行的软件监测和/或控制车辆的操作。如果车辆是自主车辆,则需要能够预测场景中的代理者的轨迹,以便做出安全和有效的行为决策。


技术实现要素:

5.本公开涉及实现用于操作自主车辆的系统和方法。该方法包括由计算设备执行以下操作:使用传感器数据来跟踪在自主驾驶车辆附近检测到的对象;将所述对象分类为多个动态状态类别中的至少一个动态状态类别;将所述至少一个动态状态类别确定、映射或转换为多个目标类别中的至少一个目标类别;将所述至少一个目标类别确定、映射或转换为多个提出的未来意图类别中的至少一个提出的未来意图类别;基于提出的未来意图类别来确定所述对象的至少一个预测的未来意图;以及基于为对象确定的至少一个预测的未来意图使自主车辆执行至少一个自主驾驶操作。
6.在一些场景中,分层概率树用于将至少一个动态状态类别确定、映射或转换为至少一个目标类别,并且将至少一个目标类别确定、映射或转换为至少一个提出的未来意图类别。动态状态类别可以包括但不限于停放的车辆类别、功能上停止的车辆类别、车道阻塞车辆类别、排队的车辆类别和/或驾驶车辆类别。目标类别可以包括但不限于停放目标类别、车道阻塞目标类别和/或跟随标称车道目标类别。提出的未来意图类别可以包括但不限于停止意图类别、交叉意图类别、行走意图类别和/或驾驶意图类别。
7.在那些或其他场景中,提出的未来意图被认为是预测的未来意图。可替代地,当提出的未来意图具有超过阈值的概率值时,预测的未来意图被认为是提出的未来意图,或者被认为是在给定周期的未来意图上的提出的概率分布是在先前周期的预测的概率。可以执行分类、确定/映射/转换和确定的至少一个下一个循环,以获得对象的至少一个下一个提出的未来意图类别。可以将与至少一个提出的未来意图类别相关联的概率和与至少一个下一个提出的未来意图类别相关联的概率进行组合,以生成至少一个预测的未来意图的总概率。可以另外基于动态状态类别、目标类别、与提出的未来意图类别相关联的概率值、与预测的未来意图相关联的概率值和/或与预测的未来意图相关联的总概率值或预测的未来意图上的分布来使自主车辆执行自主驾驶操作。
8.所实现的系统包括:处理器;以及非暂时性计算机可读存储介质,其包括被配置为使处理器实现上述方法的编程指令。
附图说明
9.将参考以下附图描述本解决方案,其中在所有附图中相同的附图标记表示相同的项目。
10.图1是说明性系统的图示。
11.图2是车辆的说明性架构的图示。
12.图3是说明性计算设备的图示。
13.图4提供了用于理解根据本解决方案的如何实现车辆控制的框图。
14.图5a-图5b(在本文中统称为“图5”)提供了用于使用lidar去相关来控制自主车辆的说明性方法的流程图。
15.图6提供了使用检测到的对象的预测的轨迹进行自主车辆(av)运动规划的说明性方法的流程图。
16.图7提供了用于确定检测到的对象的未来意图的说明性方法的流程图。
17.图8是说明性分层概率树的图示。
具体实施方式
18.如本文件中所使用的,单数形式“一”、“一个”和“该”包括复数引用,除非上下文另有明确说明。除非另有定义,否则本文使用的所有技术和科学术语具有与本领域普通技术人员通常理解的含义相同的含义。如本文档中所使用的,术语“包含”意指“包括但不限于”。与本文档相关的附加术语的定义包括在本具体实施方式的末尾。
[0019]“电子设备”或“计算设备”是指包括处理器和存储器的设备。每个设备可以具有其自己的处理器和/或存储器,或者处理器和/或存储器可以与虚拟机或容器布置中的其他设备共享。存储器将包含或接收编程指令,该编程指令在由处理器执行时使电子设备根据编程指令执行一个或多个操作。
[0020]
术语“存储器”、“存储器设备”、“数据存储”、“数据存储设施”等各自是指其上存储计算机可读数据、编程指令或两者的非暂时性设备。除非另有特别说明,否则术语“存储器”、“存储器设备”、“数据存储”、“数据存储设施”等旨在包括单个设备实施例、其中多个存储器设备一起或共同存储一组数据或指令的实施例、以及这样的设备内的各个扇区。
[0021]
术语“处理器”和“处理设备”是指被配置为执行编程指令的电子设备的硬件组件。除非另有特别说明,否则单数术语“处理器”或“处理设备”旨在包括单个处理设备实施例和多个处理设备一起或共同执行过程的实施例。
[0022]
术语“车辆”是指能够携带一个或多个人类乘员和/或货物并且由任何形式的能量提供动力的任何移动形式的运输工具。术语“车辆”包括但不限于汽车、卡车、货车、火车、自主车辆、飞机、空中无人机等。“自主车辆”是具有处理器、编程指令和传动系部件的车辆,所述编程指令和传动系部件能够由处理器控制而不需要人类操作者。自主车辆可以是完全自主的,因为它对于大多数或所有驾驶条件和功能不需要人类操作者,或者它可以是半自主的,因为在某些条件下或对于某些操作可能需要人类操作者,或者人类操作者可以凌驾车
辆的自主系统并且可以控制车辆。
[0023]
在本文件中,当诸如“第一”和“第二”的术语用于修饰名词时,这样的使用仅旨在将一个项目与另一个项目区分开,并且不旨在要求顺序次序,除非特别说明。另外,当使用时,诸如“竖直”和“水平”或“前”和“后”的相对位置术语旨在相对于彼此并且不需要是绝对的,并且仅指代与这些术语相关联的设备的一个可能位置,这取决于设备的取向。
[0024]
av应当能够理解世界的状态并预测世界的未来状态以用于行动规划和导航。对象的未来轨迹的几何预测通常不足以确定av应该如何表现。对于静止车辆尤其如此。车辆可能由于许多原因而停止,例如停车或在红色交通灯处等待。预测车辆静止并不帮助估计它将保持停止多长时间或者在静止的原因不再成立之后将发生什么。理解车辆静止的原因可以帮助av更好地解释情况,预见接下来将发生什么并规划适当的导航决策。
[0025]
为了预测场景中行动者的行为,重要的是确定他们的未来意图。知道行动者(或检测到的对象)的意图对于进行长期预测变得特别重要。长的预测范围使得av能够提前对其他行动者做出反应,从而提高安全性和车载舒适性。意图还增强了几何预测的互操作性,av可以利用几何预测来进行导航决策。然而,从感官数据推断行动者的意图不是直接的,因为意图在场景中通常不明显。
[0026]
为了增加静止预测的可解释性,本解决方案推断了车辆停止的多个可能原因,并将其整合以估计车辆的当前目标。本解决方案考虑了车辆静止的以下一组原因,这些原因与理解情况和选择要执行的适当动作相关。
[0027]
·
停车:车辆至少部分地停止在道路外,并且预期在给定时间段(例如,10分钟)内不移动。
[0028]
·
车道阻塞:车辆由于正常交通流之外的原因(例如,停止的运送卡车或装载车辆的驾驶员(例如,帮助带有行李的乘客的出租车驾驶员))而在道路中停止延长的时间段。
[0029]
·
功能上停止:由于正常交通流之外的原因(例如,出租车或公共汽车接乘客、邮车递送邮件和/或垃圾车接垃圾),车辆暂时停止在道路中。
[0030]
·
排队:车辆由于正常的交通流而暂时停在道路中(例如,车辆在红色交通灯、停车标志或人行横道处等待,或者车辆向道路上的另一车辆让步)。
[0031]
注意,对于行人,类似的动态状态可以被定义为例如行走、交叉行走、跟随人行道和/或游荡。
[0032]
使用分类器的集合,其推断车辆静止的上面列出的原因中的每一个的可能性。这些静止的原因是行动者的可能动态状态的子集。分类器的输出被集成以用于定义表示相对于彼此的可能性的可能静止原因上的概率分布。该信息用于av运动规划,以便能够明确推理静止对象并将其并入av的决策过程中。
[0033]
车辆静止的原因与车辆的意图密切相关。因此,本解决方案还使用分类器输出来确定车辆的当前目标。虽然停放的车辆可以与停放目标相关联,但是在交通中排队的车辆可以与跟随标称车道目标相关联。每个分类器可以有助于一个或多个目标。例如,功能上停止的车辆可以与车道阻塞目标相关联,并且当准备好在交通中合并回来时与跟随标称车道目标相关联。同时,一个目标可以合并来自多个源的信息。例如,车道阻挡目标可以集成来自车道阻挡车辆分类器和功能上停止的车辆分类器的信息。目标允许进一步增强预测的可解释性,并为运动规划提供用于选择要执行的动作的附加上下文信息。
[0034]
本解决方案采用分层过程来从语义特征预测车辆的未来意图,该语义特征从传感器数据推断出。车辆的未来意图超出了预测范围,并且旨在覆盖与av交互的整个时间。通过抽象如上所述的目标的概念来估计车辆的未来意图。每个目标与至少一个未来意图相关联。例如,停放目标与停止意图相关联,而跟随标称车道目标与驾驶意图相关联。这定义了自下而上的分层结构,其将语义特征从动态状态分类器转换为未来的意图估计。此外,分类器可能性可以通过层级传播以确定每个未来意图的可能性。这可以通过首先定义观察模型以基于分类器输出更新目标可能性来实现。例如,功能上停止的车辆以概率p被映射或转换到车道阻塞目标,并且以1-p的概率被映射或转换到跟随标称车道目标。类似地,概率被传播到未来意图级别,以便获得行动者(例如,检测到的车辆)的可能意图的概率分布。具有该概率分布的显式表示允许av推理检测到的对象的意图,并且选择要执行的动作而不需要意识到分类器输出。这种分层方法改进了在分类器的输出之间(例如,在停放的车辆和功能上停止的车辆之间)存在歧义的情况下的预测,并且允许表示行动者(例如,检测到的车辆)的未来意图之间的平滑过渡。
[0035]
上述解决方案具有许多优点。例如,本解决方案允许关于行动者的未来意图及其相关联的概率的显式推理,这促进决策制定,而不需要预测建立在个体目标上或启发式地合并它们。本解决方案还采用用于抽象的附加层,该附加层允许关于意图的推理,而不向决策过程暴露该行动者静止的原因。这使得预测和运动规划之间的接口简单且更可维护,这可以提高开发速度,因为可以修改分类器而不需要运动规划中的架构改变。此外,本解决方案使能以分层方式计算概率。该分层过程确保了概率的一致性,使它们成为概率预测和运动规划的合适输入。
[0036]
本文在自主车辆的背景下描述本解决方案。本解决方案不限于自主车辆应用。本解决方案可以用于其他应用,诸如机器人应用、人工智能(ai)应用、度量应用和/或系统性能应用。
[0037]
说明性系统
[0038]
现在参考图1,提供了说明性系统100的图示。系统100包括以半自主或自主方式沿着道路行驶的车辆1021。车辆1021可以是av。av 1021可以包括但不限于车道车辆(如图1所示)、飞机或船只。
[0039]
av 1021通常被配置为检测其附近的对象1022、114、116。对象可以包括但不限于车辆1022、骑车人114(诸如自行车、电动滑板车、摩托车等的骑手)和/或行人116。例如,可以通过分析由av 1021上的至少一个传感器设备生成的传感器数据和/或经由通信链路150、152、154从对象的通信设备(例如,收发器、信标和/或智能电话)接收的信息来进行该对象检测。通信链路150、152、154可以包括但不限于v2x通信链路。术语“v2x”是指车辆与可能影响车辆或可能受车辆影响的任何实体之间的通信。该信息可以包括但不限于指定对象已经执行、正在执行和/或将要执行的动作或操作的信息。
[0040]
当进行这样的检测时,av 1021执行操作以:为检测到的对象生成一个或多个可能的对象轨迹;确定所述检测对象的一个或多个动态状态分类、目标和/或未来意图;以及使用所生成的可能的对象轨迹、动态状态分类、目标和未来意图中的至少一个来促进车辆轨迹的确定。然后,av 1021可以执行操作以遵循车辆轨迹。
[0041]
在一些情况下,av 1021执行附加操作以确定是否存在在阈值时间段(例如,1分
钟)内在av和对象之间将发生碰撞的不期望的风险水平。如果是,则如果av 1021遵循车辆轨迹并且在预定义时间段(例如,n毫秒)内执行多个动态生成的紧急操纵中的任何一个,则av 1021执行操作以确定是否可以避免碰撞。如果可以避免碰撞,则av 1021不采取动作或可选地执行谨慎的操纵(例如,温和地减速)。相反,如果无法避免碰撞,则av 1021立即进行紧急操纵(例如,制动和/或改变行驶方向)。
[0042]
现在参考图2,提供了用于车辆的说明性系统架构200的图示。图1的车辆1021和/或1022可以具有与图2中所示的系统架构相同或相似的系统架构。因此,以下对系统架构200的讨论足以理解图1的车辆1021、1022。
[0043]
如图2所示,车辆200包括发动机或马达202和用于测量车辆的各种参数的各种传感器204-218。在具有燃料动力发动机的气体动力或混合动力车辆中,传感器可以包括例如发动机温度传感器204、电池电压传感器206、发动机每分钟转数(rpm)传感器208和节气门位置传感器210。如果车辆是电动车辆或混合动力车辆,则车辆可以具有电动马达,并且因此将具有传感器,诸如电池监测系统212(以测量电池的电流、电压和/或温度)、马达电流传感器214和电压传感器216以及马达位置传感器,诸如旋转变压器和编码器218。
[0044]
两种类型的车辆共有的操作参数传感器包括例如:位置传感器236,诸如加速度计、陀螺仪和/或惯性测量单元;速度传感器238;以及里程表传感器240。车辆还可以具有时钟242,系统使用时钟242来确定操作期间的车辆时间。时钟242可以被编码到车载计算设备中,它可以是单独的设备,或者多个时钟可以是可用的。
[0045]
车辆还将包括各种传感器,其操作以收集关于车辆行驶的环境的信息。这些传感器可以包括例如:位置传感器260(例如,全球定位系统(gps)设备);对象检测传感器,诸如一个或多个相机262;lidar传感器系统264;和/或雷达和/或声纳系统266。传感器还可以包括环境传感器268,诸如降水传感器和/或环境温度传感器。对象检测传感器可以使得车辆能够检测在任何方向上在车辆200的给定距离范围内的对象,而环境传感器收集关于车辆的行驶区域内的环境状况的数据。
[0046]
在操作期间,信息从传感器传送到车载计算设备220。车载计算设备220分析由传感器捕获的数据,并且可选地基于分析的结果来控制车辆的操作。例如,车载计算设备220可以控制:经由制动控制器232进行制动;经由转向控制器224的方向;经由节气门控制器226(在气体动力车辆中)或马达速度控制器228(诸如电动车辆中的电流水平控制器)的速度和加速度;差速齿轮控制器230(在具有变速器的车辆中);和/或其他控制器。
[0047]
地理位置信息可以从位置传感器260传送到车载计算设备220,车载计算设备220然后可以访问对应于位置信息的环境的地图,以确定环境的已知固定特征,诸如街道、建筑物、停车标志和/或停车/行进信号。从相机262捕获的图像和/或从诸如lidar 264的传感器捕获的对象检测信息从那些传感器传送到车载计算设备220。对象检测信息和/或捕获的图像由车载计算设备220处理,以检测车辆200附近的对象。用于基于传感器数据和/或捕获的图像进行对象检测的任何已知或将要已知的技术可以用于本文档中公开的实施例中。
[0048]
lidar信息从lidar传感器264传送到车载计算设备220。另外,捕获的图像从相机262传送到车载计算设备220。lidar信息和/或捕获的图像由车载计算设备220处理,以检测车辆200附近的对象。
[0049]
当车载计算设备220检测到移动对象时,车载计算设备220将为检测到的对象生成
一个或多个可能的对象轨迹,并分析可能的对象轨迹以评估对象和av之间碰撞的风险。如果风险超过可接受的阈值,则车载计算设备220执行操作以确定如果av遵循限定的车辆轨迹和/或实现在预定义的时间段(例如,n毫秒)内执行的一个或多个动态生成的紧急操纵,则是否可以避免碰撞。如果可以避免碰撞,则车载计算设备220可以使车辆200执行谨慎的操纵(例如,温和地减速、加速或转弯)。相反,如果无法避免碰撞,则车载计算设备220将使车辆200采取紧急操纵(例如,制动和/或改变行驶方向)。
[0050]
现在参考图3,提供了用于计算设备300的说明性架构的图示。图1的计算设备110和/或图2的车载计算设备220与计算设备300相同或相似。这样,对计算设备300的讨论足以理解图1的计算设备110和图2的车载计算设备220。
[0051]
计算设备300可以包括比图3中所示的组件更多或更少的组件。然而,所示的组件足以公开实现本解决方案的说明性解决方案。图3的硬件架构表示被配置为操作车辆的代表性计算设备的一个实现方式,如本文所述。这样,图3的计算设备300实现本文描述的方法的至少一部分。
[0052]
计算设备300的一些或所有组件可以被实现为硬件、软件和/或硬件和软件的组合。硬件包括但不限于一个或多个电子电路。电子电路可以包括但不限于无源组件(例如,电阻器和电容器)和/或有源组件(例如,放大器和/或微处理器)。无源和/或有源组件可以适于、被布置为和/或被编程为执行本文描述的方法、过程或功能中的一个或多个。
[0053]
如图3所示,计算设备300包括用户接口302、中央处理单元(cpu)306、系统总线310、通过系统总线310连接到计算设备300的其他部分并可由其访问的存储器312、系统接口360和连接到系统总线310的硬件实体314。用户接口可以包括输入设备和输出设备,其促进用于控制计算设备300的操作的用户-软件交互。输入设备包括但不限于物理和/或触摸键盘350。输入设备可以经由有线或无线连接(例如,连接)连接到计算设备300。输出设备包括但不限于扬声器352、显示器354和/或发光二极管356。系统接口360被配置为促进去往和来自外部设备(例如,诸如接入点的网络节点等)的有线或无线通信。
[0054]
硬件实体314中的至少一些执行涉及访问和使用存储器312的动作,存储器312可以是随机存取存储器(ram)、磁盘驱动器、闪存、光盘只读存储器(cd-rom)和/或能够存储指令和数据的另一硬件设备。硬件实体314可以包括磁盘驱动单元316,磁盘驱动单元316包括计算机可读存储介质318,计算机可读存储介质318上存储有被配置为实现本文描述的方法、过程或功能中的一个或多个的一组或多组指令320(例如,软件代码)。指令320还可以在其由计算设备300执行期间完全或至少部分地驻留在存储器312内和/或cpu 306内。存储器312和cpu 306还可以构成机器可读介质。本文使用的术语“机器可读介质”是指存储一组或多组指令320的单个介质或多个介质(例如,集中式或分布式数据库和/或相关联的高速缓存和服务器)。本文使用的术语“机器可读介质”还指能够存储、编码或携带一组指令320以供计算设备300执行并且使计算设备300执行本公开的任何一种或多种方法的任何介质。
[0055]
现在参考图4,提供了用于理解如何根据本解决方案实现车辆控制的框图。在框402-410中执行的所有操作可以由车辆的车载计算设备(例如,图1的av 1021)执行。
[0056]
在框402中,检测车辆的位置。可以基于从车辆的位置传感器(例如,图2的位置传感器260)输出的传感器数据来进行该检测。该传感器数据可以包括但不限于gps数据。然后将检测到的车辆位置传递到框406。
[0057]
在框404中,在车辆附近检测到对象。该检测是基于从车辆的相机(例如,图2的相机262)、lidar系统(例如,图2的lidar系统264)和/或雷达/声纳系统264输出的传感器数据进行的。用于检测对象的技术在本领域中是公知的。本文中可以使用任何已知或将要已知的对象检测技术。关于检测到的对象的信息412被传递到框406。该信息412包括但不限于检测到的对象的轨迹(或空间描述)。轨迹(或空间描述)可以包括对象的至少一个预测轨迹或行进路径、对象的速度、对象的完整范围、对象的前进方向、对象的行进方向、对象的分类、对象的目标和/或对象的预测的未来意图。预测的对象轨迹或行进路径可以包括但不限于指向车道方向的线性路径或指向车道方向的弯曲路径。
[0058]
从框404输出的该对象检测信息412随后可以用于促进至少一个自主驾驶操作(例如,对象跟踪操作、对象轨迹预测操作、车辆轨迹确定操作和/或碰撞避免操作)。例如,对象的当前位置、预测的对象轨迹和对象的预测的未来意图可以用于在框406中确定车辆轨迹,和/或在框406中触发谨慎或紧急操纵。本解决方案不限于该示例的细节。
[0059]
在框406中,使用来自框402和404的信息生成车辆轨迹。用于确定车辆轨迹的技术在本领域中是公知的。用于确定车辆轨迹的任何已知或将要已知的技术可以在本文中使用而没有限制。例如,在一些场景中,这样的技术涉及确定当对象在av前方时将经过对象的av的轨迹,对象具有与av移动的方向对准的航向方向,对象被分类为功能上停止的车辆,对象与车道阻塞目标相关联,并且对象具有预测的未来停止意图。本解决方案不限于该场景的细节。可以基于来自框402的位置信息、来自框404的对象检测信息和地图信息428(其预先存储在车辆的数据存储中)来确定车辆轨迹420。车辆轨迹420可以表示不具有突然变化的平滑路径,否则突然变化将提供乘客不适。例如,车辆轨迹由沿着道路的给定车道的行驶路径定义,其中在给定时间量内对象不被预测为行驶。然后将车辆轨迹420提供给框408。
[0060]
在框408中,基于车辆轨迹420生成转向角和速度命令。转向角和速度命令被提供给框410以用于车辆动态控制。
[0061]
车辆控制
[0062]
现在参考图5,提供了用于控制车辆(例如,图1的车辆1021)的说明性方法500的流程图。方法500的至少一部分由车载计算设备(例如,图2的车载计算设备220)执行。针对在任何给定时间已经检测到在距车辆一定距离范围内的每个对象(例如,图1的车辆1022、图1的骑车人114和/或图1的行人116)执行方法500。
[0063]
方法500包括多个操作502-530。本解决方案不限于图5中所示的操作502-530的特定顺序。例如,520的操作可以与504-518的操作并行执行,而不是在如图5所示的之后执行。
[0064]
如图5a所示,方法500开始于502并且继续于504,其中生成av的车辆轨迹(例如,图4的车辆轨迹420)。车辆轨迹可以表示不具有否则将提供乘客不适的突然变化的平滑路径,或者可以回答紧急操纵以避免碰撞。用于确定车辆轨迹的技术在本领域中是公知的。用于确定车辆轨迹的任何已知或将要已知的技术可以在本文中使用而没有限制。在一些场景中,基于由av的位置传感器(例如,图2的位置传感器260)生成的位置信息、由av的车载计算设备(例如,图2的车载计算设备220)生成的对象检测信息、由av的至少一个相机(例如,图2的相机262)捕获的图像、存储在av的存储器(例如,图4的存储器412)中的地图信息和/或车道信息来确定车辆轨迹。
[0065]
一旦生成了车辆轨迹,方法500就继续到505,其中av执行操作以检测在其附近的
对象。对象检测算法在本领域中是公知的。这里可以使用任何已知或将要已知的对象检测算法。然后使用对象检测来促进至少一个自主驾驶操作(例如,对象跟踪操作、对象轨迹预测操作、车辆轨迹确定操作和/或碰撞避免操作)。
[0066]
因此,方法500继续到506,其中针对在505中检测到的对象(例如,图1的车辆1022、骑车人114或行人116)确定一个或多个可能的对象轨迹(例如,图4的可能的对象轨迹412)。用于确定检测到的对象的轨迹的技术是公知的。在一些场景中,传感器数据用于确定对象轨迹。可替代地或另外地,可以使用其他信息来确定对象轨迹。该其他信息可以包括但不限于经由无线通信链路(例如,图1的链路150、152、154)从对象的通信设备(例如,收发器、信标和/或智能电话)接收的信息。该信息可以指定对象已经执行、正在执行和/或将要执行的动作或操作。(例如,右转/左转、改变车道、加速/减速、行驶路径等)。
[0067]
接下来在510中,确定在504中生成的车辆轨迹和在506中生成的可能的对象轨迹是否彼此相交。如果它们彼此不相交[511:否],则执行512,其中方法500返回到504。
[0068]
相反,如果它们确实彼此相交[511:是],则方法500继续到514,其中确定时间值。该时间值表示如果av遵循车辆轨迹并且对象(例如,已经被分类为驾驶车辆并且具有驾驶意图)遵循可能的对象行驶轨迹,则将发生碰撞的时间。然后将在514中确定的时间值与阈值时间值进行比较,如516所示。根据给定应用(例如,一秒或多秒)来选择阈值时间值。如果时间值大于阈值时间值[516:否],则执行518,其中方法500返回到504。如果时间值等于或小于阈值时间值[516:是],则方法500继续进行520-522。520-522涉及:基于车辆轨迹和可能的对象轨迹/预测的行驶路径动态地生成一个或多个紧急操纵配置文件;并且如果av遵循车辆轨迹并且在预定义时间段(例如,n毫秒)内执行任何一个紧急操纵,则确定是否可以避免碰撞。在完成522时,方法500继续图5b的524。
[0069]
现在参考图5b,如果在预定义时间段内无法避免碰撞[524:否],则执行526,其中使av立即采取紧急操纵。紧急操纵可以包括但不限于上面关于520讨论的动态生成的紧急操纵之一。用于使av采取紧急操纵的技术在本领域中是公知的。这里可以使用用于使av采取紧急操纵的任何已知或将要已知的技术。随后,执行530,其中方法500结束或执行其他处理。
[0070]
相反,如果可以在预定义时间段内避免碰撞[524:是],则执行528,其中可选地使av执行谨慎操纵(例如,温和地减速)。用于使av采取谨慎操纵(诸如减速)的技术在本领域中是公知的。这里可以使用用于使av采取谨慎操纵的任何已知或将要已知的技术。随后,执行530,其中方法500结束或执行其他处理。
[0071]
上述方法500确实涵盖检测到的对象是停放的车辆、功能上停止的车辆、车道阻塞车辆、排队的车辆和/或驾驶的车辆的场景。然而,为当前停止的车辆生成静止轨迹预测可能不足以确定世界将如何演变,并且因此确定av应该如何表现。推断车辆停止的可能原因使得静止预测更可解释。关于静止原因的推理帮助估计车辆将保持停止多长时间以及在原因不再成立之后可能发生什么。本解决方案通过表示可能的静止原因及其相关联的目标和可能性的概率分布来推断该信息并将其暴露于运动规划。av可以利用该信息来规划av的导航操作。例如,当av在静止车辆后面时,这样的信息可以帮助解释情况,决定是经过静止车辆还是排队在静止车辆后面,或者决定av是否需要获取更多信息以决定是经过静止车辆还是排队在静止车辆后面。因此,图6中示出了另一种方法600,其考虑了车辆静止的原因以做
出av运动规划决策。方法600可以由图1的车辆1021、图1的计算设备110、图2的车载计算设备220和/或图3的计算设备300执行。
[0072]
如图6所示,方法600包括操作602-624。框604-606的操作可以在图5的框505中执行。框608-620的操作可以在图5的框506中执行。框622的操作可以包括但不限于图5的框510-528的操作。
[0073]
方法600开始于602并且继续于604,其中计算设备获得由车辆(例如,图1的车辆1021)的至少一个传感器生成的传感器数据。传感器数据可以包括但不限于由车辆的相机(例如,图2的相机262)捕获的图像、由车辆的lidar系统(例如,图2的lidar系统264)生成的lidar数据和/或由车辆的雷达/声纳系统(例如,图2的雷达/声纳系统266)生成的传感器数据。
[0074]
在606中,由计算设备分析传感器数据以检测车辆附近的对象。用于对象检测的算法在本领域中是公知的。这里可以采用的说明性对象检测算法是众所周知的基于卷积神经网络(cnn)的对象检测算法。在606中执行的操作还可以涉及:确定对象的类型(例如,车辆(例如,公共汽车、出租车、垃圾车、邮车、送货卡车等)、行人或骑车人)、检测到的对象的边界框、检测到的对象的当前位置、检测到的对象与车辆的距离以及检测到的对象相对于车辆的方向。检测到的对象的当前位置由x坐标、y坐标和z坐标定义。
[0075]
一旦检测到对象,计算设备执行608中的操作以确定对象是否是车辆。如果对象不是车辆[608:否],则执行612,其中方法600结束或执行其他操作(例如,返回到604)。如果对象是车辆[608:是],则执行614,其中确定和/或显示检测到的对象的未来意图(例如,在图3的显示器354上)。随着讨论的进行,确定未来意图的方式将变得显而易见。如果对象没有具有给定确定性(例如,高于阈值的确定性)的给定意图(例如,驾驶意图)[616:否],则方法600继续到622,如618所示。
[0076]
如果对象具有具有给定确定性(例如,高于阈值的确定性)的给定意图(例如,驾驶意图)[616:是],则在620中确定和/或显示(例如,在图3的显示器354上)对象的轨迹。随着讨论的进行,确定对象轨迹的方式将变得明显。在622中,可选地使车辆(例如,图1的av 1021)基于对象的轨迹和/或对象的未来意图来执行操作。随后,执行624,其中方法600结束或执行其他操作(例如,返回到602、604或606)。
[0077]
现在参考图7,提供了在图6的框614中执行的操作的更详细的流程图。操作开始于702并且继续于704,其中使用传感器数据跟踪检测到的车辆(例如,图1的车辆1022)和其他对象。例如,可以从图像到图像和/或从点云到点云跟踪车辆。该跟踪为车辆提供指定车辆的状态、特性和/或期望的地点和位置的时间序列。例如,可以将车辆的最近地点和位置投影到3d道路图中,以确定车辆当前是否驻留在道路中/道路外,并确定车辆驻留在道路中/道路外的程度。
[0078]
在706中可以使用车辆的地点和位置的时间序列来确定车辆是静止的还是移动的,并且确定车辆是由于正常交通流(例如,在红灯或停车标志处停车)还是由于正常交通流之外的原因(例如,允许行人穿过道路、接乘客或将物品递送给接收者)而静止。
[0079]
如果静止,则可以确定车辆是否预期在给定时间段(例如,对于与av交互的时间通常为5-10分钟)内移动。该确定可以例如基于以下来进行:车辆当前是否停放在停车场中、停放在与道路相邻的停车位中或停放在道路的侧面(例如,如3d道路图、传感器数据的内容
和/或从对象的通信设备接收的其他信息所指示的);车辆在道路中静止多长时间(例如,如3d道路图、传感器数据的内容和/或从对象的通信设备接收的其他信息所指示的);和/或任何个体当前是否位于车辆附近或朝向车辆行驶(例如,如传感器数据的内容和/或从对象的通信设备接收的其他信息所指示的)。例如,当(i)车辆停放在停车场、停车位或道路一侧以及(ii)没有检测到个体接近停放的车辆、朝向停放的车辆行进或坐在停放的车辆中时,可以确定静止的车辆不会在给定时间段内移动。当在以下情况时,可以确定静止车辆预期在给定时间段内移动:(i)车辆停放在停车场/停车空间/道路侧,以及(ii)检测到至少一个个体接近停放的车辆或朝向停放的车辆行进;或者当出租车让乘客下车时。本解决方案不限于该示例的细节。
[0080]
在706中,采用分类器将车辆分类为多个动态状态类别中的一个。分类器可以包括但不限于被配置为将车辆分类为停放的车辆的停放的车辆分类器、被配置为将车辆分类为功能上停止的车辆的功能上停止的车辆分类器、被配置为将车辆分类为车道阻塞车辆的车道阻塞分类器、被配置为将车辆分类为排队的车辆的排队的车辆分类器和/或被配置为将车辆分类为驾驶的车辆的驾驶的车辆分类器。因此,动态状态类别可以包括但不限于停放的车辆类别、功能上停止的车辆类别、车道阻塞车辆类别、排队的车辆类别和/或驾驶的车辆类别。停放的车辆可以被定义为至少部分地停止在道路外并且预期在给定时间段(例如,10分钟)内不移动的车辆。功能上停止的车辆可以被定义为由于正常交通流之外的原因(例如,接载乘客的出租车或公共汽车、递送邮件的邮车和/或接载垃圾的垃圾车)而暂时停止在道路中的车辆。车道阻塞车辆可以被定义为由于正常交通流之外的原因而在道路中停在延长的时间段内的车辆(例如,停止的递送卡车,或装载车辆的驾驶员(例如,帮助带有行李的乘客的出租车驾驶员))。排队的车辆可以被定义为由于正常交通流而暂时停在道路中的车辆(例如,在红色交通灯、停车标志或人行横道处等待的车辆,或者向道路上的另一车辆让步的车辆)。驾驶的车辆可以被定义为在道路中移动的车辆。
[0081]
一旦车辆被分类为动态状态类别,就使用分层概率树将动态状态类别(例如,停放的车辆、功能上停止的车辆、排队的车辆或驾驶车辆)转换或映射为具有给定概率p
goal
的多个目标类别中的至少一个目标类别。概率p
goal
可以由每种类型的目标预定义,或者可替代地在该方法期间动态地确定。概率p
goal
可以根据以下贝叶斯数学函数(1)来定义。
[0082]
p

goal
=p(x

)=η
·
p(z|x)
·
p(x)
ꢀꢀ
(1)
[0083]
其中p(z|x)=∏
i p(zi|x),
[0084]
其中p(zi|x)是以目标x为条件的一个动态状态分类器zi的输出的观察模型,并且p(x)是前一周期的目标概率。对于两个或更多个目标类别,概率p
goal
可以相同或不同。例如,概率p
goal-1
被分配给第一目标类别,而概率p
goal-2
被分配给第二目标类别,其中p
goal-2
=p
goal-1
或者p
goal-2
≠p
goal-1
。还应当注意,与每个目标类别相关联的概率p
goal
在该方法的每个周期中可以相同或不同。
[0085]
图8中示出了说明性分层概率树800。分层概率树800包括用于多个目标类别的中间节点812、814、816。目标类别可以包括但不限于如节点812所示的停放目标、如节点814所示的车道阻塞目标和/或如节点816所示的跟随标称车道目标。停放目标可以被定义为使车辆停止并将其暂时留在给定位置(例如,在停车场或道路旁边)而不期望在给定时间段(例如,10分钟)内移动的目标。车道阻塞目标可以被定义为在道路的车道中至少部分地停止并
保持静止达延长的时间段(例如,以便防止交通穿过或沿着道路)的目标。跟随标称车道目标816可以被定义为在道路的车道中行进的目标。
[0086]
中间节点812、814、816与动态状态分类节点802、804、806、808、810相关联,如箭头850-860所示。专家分类节点802-810和目标分类节点812-816之间的这些关联定义了动态状态类别如何经由分层概率树800贡献于目标类别或者如何被转换/映射到目标类别。例如,节点802的停放的车辆类别有助于节点812的停放目标类别或被转换/映射到节点812的停放目标类别,如箭头850所示。节点804的功能上停止的车辆类别有助于或被转换/映射到节点814的车道阻挡的目标(例如,当乘客被装载到车辆中时)(如箭头852所示)和/或遵循节点816的标称车道目标类别(例如,当车辆准备好合并回到道路上的交通中时)(如箭头854所示)。节点806的车道阻挡的车辆类别有助于或被转换/映射到节点814的车道阻挡的目标,如箭头856所示。值得注意的是,节点814的车道阻挡的目标集成来自两个动态状态类别的信息,即功能上停止的车辆类别和车道阻挡的车辆类别。本解决方案在这方面不受限制,目标分类节点可以根据给定应用合并来自任何数量的动态状态类别的信息。节点808的排队的车辆类别贡献到节点816的跟随标称车道目标类别或被转换/映射到节点816的跟随标称车道目标类别,如箭头858所示。节点810的驾驶车辆类别贡献到或被转换/映射到节点816的以下标称车道目标类别,如箭头860所示。
[0087]
再次参考图7,该方法继续到710,其中分层决策树用于将目标分类转换或映射到具有给定概率p
intention
的提出的未来意图分类。概率p
intention
可以由每个未来意图类预定义,或者可替代地在该方法期间动态地确定。概率p
intention
可以由以下贝叶斯数学方程(2)定义。
[0088]
p

intention
=p(u

)=η
·
p(x|u)
·
p(u)
ꢀꢀ
(2)
[0089]
其中p(x|u)=∏
i p(xi|u),
[0090]
其中p(xi|u)是以意图u为条件的目标x的可能性的观察模型,并且p(u)是前一周期的意图概率。对于两个或更多个未来意图类别,概率p
intention
可以相同或不同。例如,概率p
intention-1
被分配给第一意图类别,而概率p
intention-2
被分配给第二意图类别。p
intention-2
不同于p
intention-1
。本解决方案不限于该示例的细节。还应当注意,与每个提出的未来意图类相关联的概率p
intention
在该方法的每个循环中可以相同或不同。
[0091]
如上所述,图8中示出了说明性分层概率树800。分层概率树800包括用于提出的未来意图分类的根节点818、820。分层信息从底部节点802-810传播到根节点818-820。因此,根节点818-820不是原始信息源,而是包括分层概率树800的最后导出层。提出的未来意图类别包括但不限于停止意图类别、交叉意图类别、行走意图类别或驾驶意图类别。停止意图可以被定义为在给定时间段(例如,3-10分钟,例如,对于停放的汽车)内保持静止的意图。驾驶意图被定义为沿着道路行进并且没有期望在给定时间段(例如,3-10分钟)内停止行进的意图。应当注意,驾驶意图不一定与当前驾驶的车辆相关联(例如,合并回交通的公共汽车可能具有可能的驾驶意图)。
[0092]
一旦使用分层概率树获得了车辆的提出的未来意图,该方法就继续确定车辆的预测的未来意图,如图7的712所示。在712中,可以显示(例如,在图3的显示器354上)预测的未来意图。在一些场景中,系统将提出的未来意图视为预测的未来意图。在其他场景中,系统将预测的未来意图视为仅具有超过给定阈值thr
fi
的概率值的提出的未来意图。阈值thr
fi
可以是预定义阈值并且根据给定应用来选择。相同或不同的阈值thr
fi
可以用于两个或更多个不同的提出的未来意图。
[0093]
接下来,在714中,可选地执行704-712的至少一个下一个循环,以获得具有相关联的概率值p
intention
的车辆的下一个提出的未来意图。在716中,系统确定和/或显示(例如,在图3的显示器354上)每个预测的未来意图的总概率。总概率可以包括但不限于跨在704-712的多个周期中确定的多个概率值的贝叶斯更新。
[0094]
随后,执行718,其中方法结束或执行其他操作。例如,该方法可以返回到704。可替代地,该方法可以进行到图6的616,使得基于动态状态分类(例如,图8的节点802-810的分类)、目标分类(例如,图8的节点812-816的目标分类)、预测的未来意图、与提出的未来意图相关联的概率值(即p
goal
和/或p
intention
)和/或与预测的未来意图相关联的总概率值来执行av(例如,图1的av 1021)的运动和/或轨迹操作。
[0095]
执行运动和/或轨迹操作,使得av可以自主地安全地导航道路。例如,预测的未来意图可以用于确定av是否应该经过静止车辆或在静止车辆后面排队、执行谨慎操纵以促进av经过静止车辆、改变车道和/或主动获取关于检测到的对象的更多信息。当检测到的对象被分类为功能上停止的车辆时,可以选择并执行谨慎操纵,因为可能存在与其相邻的行人或者车辆可能开始移动。av可以排队在检测到的对象后面,该对象被分类为排队的车辆并且被预测为在给定时间段内开始移动(例如,当行人行进通过人行横道时)。可以使av跟随被分类为功能上停止的车辆的检测到的对象(例如,公共汽车),然后当检测到的对象被确定为具有停放目标时使av超过检测到的对象。本解决方案不限于该示例的细节。
[0096]
尽管已经关于一个或多个实施方式示出和描述了本解决方案,但是在阅读和理解本说明书和附图后,本领域技术人员将想到等同的改变和修改。另外,虽然本解决方案的特定特征可能已经仅关于若干实施方式中的一个公开,但是这样的特征可以与其他实施方式的一个或多个其他特征组合,如对于任何给定或特定应用可能是期望的和有利的。因此,本解决方案的广度和范围不应受任何上述实施例的限制。相反,本解决方案的范围应当根据所附权利要求及其等同物来限定。

技术特征:
1.一种用于操作自主车辆的方法,包括:由所述计算设备使用传感器数据来跟踪在所述自主车辆附近检测到的对象;由所述计算设备将所述对象分类为多个动态状态类别中的至少一个动态状态类别;由所述计算设备将所述至少一个动态状态类别转换为多个目标类别中的至少一个目标类别;由所述计算设备将所述至少一个目标类别转换为多个提出的未来意图类别中的至少一个提出的未来意图类别;由所述计算设备基于所述提出的未来意图类别确定所述对象的至少一个预测的未来意图;以及由所述计算设备使所述自主车辆基于为所述对象确定的所述至少一个预测的未来意图来执行至少一个自主驾驶操作。2.根据权利要求1所述的方法,其中,使用分层概率树将所述至少一个动态状态类别转换为至少一个目标类别,并且将所述至少一个目标类别转换为所述至少一个提出的未来意图类别。3.根据权利要求1所述的方法,其中,所述多个动态状态类别包括停放的车辆类别、功能上停止的车辆类别、车道阻塞车辆类别、排队的车辆类别和驾驶车辆类别中的至少一个。4.根据权利要求1所述的方法,其中,所述多个目标类别包括停放目标类别、车道阻塞目标类别和跟随标称车道目标类别中的至少一个。5.根据权利要求1所述的方法,其中,所述多个提出的未来意图类别包括停止意图类别和驾驶意图类别中的至少一个。6.根据权利要求1所述的方法,其中,所述确定包括将所述至少一个提出的未来意图视为所述至少一个预测的未来意图。7.根据权利要求1所述的方法,其中,所述确定包括当所述至少一个提出的未来意图具有超过阈值的概率值时,将所述至少一个预测的未来意图视为所述至少一个提出的未来意图。8.根据权利要求1所述的方法,还包括执行所述分类、转换和确定的至少一个下一个循环,以获得所述对象的至少一个下一个提出的未来意图类别。9.根据权利要求8所述的方法,还包括将与所述至少一个提出的未来意图类别相关联的概率和与所述至少一个下一个提出的未来意图类别相关联的概率进行组合,以生成总概率。10.根据权利要求1所述的方法,其中,另外基于所述至少一个动态状态类别、所述至少一个目标类别、与所述至少一个提出的未来意图类别相关联的概率值、与所述至少一个预测的未来意图相关联的概率值和/或与所述至少一个预测的未来意图相关联的总概率值中的至少一个,使所述自主车辆执行所述至少一个自主驾驶操作。11.一种系统,包括:处理器;非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质包括编程指令,所述编程指令被配置为使所述处理器实现用于操作自主车辆的方法,其中,所述编程指令包括用于以下操作的指令:
使用传感器数据来跟踪在所述自主车辆附近检测到的对象;将所述对象分类为多个动态状态类别中的至少一个动态状态类别;将所述至少一个动态状态类别转换为多个目标类别中的至少一个目标类别;将所述至少一个目标类别转换为多个提出的未来意图类别中的至少一个提出的未来意图类别;基于所述提出的未来意图类别来确定所述对象的至少一个预测的未来意图;以及使所述自主车辆基于为所述对象确定的所述至少一个预测的未来意图来执行至少一个自主驾驶操作。12.根据权利要求11所述的系统,其中,分层概率树用于将所述至少一个动态状态类别转换为至少一个目标类别,并且用于将所述至少一个目标类别转换为所述至少一个提出的未来意图类别。13.根据权利要求11所述的系统,其中,所述多个动态状态类别包括停放的车辆类别、功能上停止的车辆类别、车道阻塞车辆类别、排队的车辆类别和驾驶车辆类别中的至少一个。14.根据权利要求11所述的系统,其中,所述多个目标类别包括停放目标类别、车道阻塞目标类别和跟随标称车道目标类别中的至少一个。15.根据权利要求11所述的系统,其中,所述多个提出的未来意图类别包括停止意图类别和驾驶意图类别中的至少一个。16.根据权利要求11所述的系统,其中,所述确定包括将所述至少一个提出的未来意图视为所述至少一个预测的未来意图。17.根据权利要求11所述的系统,其中,所述确定包括当所述至少一个提出的未来意图具有超过阈值的概率值时,将所述至少一个预测的未来意图视为所述至少一个提出的未来意图。18.根据权利要求11所述的系统,其中,所述编程指令还包括执行所述分类、转换和确定的至少一个下一个循环以获得所述对象的至少一个下一个提出的未来意图类别的指令。19.根据权利要求18所述的系统,其中,所述编程指令还包括用于将与所述至少一个提出的未来意图类别相关联的概率和与所述至少一个下一个提出的未来意图类别相关联的概率进行组合以生成总概率的指令。20.根据权利要求11所述的系统,其中,另外基于所述至少一个动态状态类别、所述至少一个目标类别、与所述至少一个提出的未来意图类别相关联的概率值、与所述至少一个预测的未来意图相关联的概率值和/或与所述至少一个预测的未来意图相关联的总概率值中的至少一个,使所述自主车辆执行所述至少一个自主驾驶操作。21.一种存储指令的非暂时性计算机可读介质,所述指令被配置为当由至少一个计算设备执行时使所述至少一个计算设备执行操作,所述操作包括:使用传感器数据来跟踪在所述自主车辆附近检测到的对象;将所述对象分类为多个动态状态类别中的至少一个动态状态类别;将所述至少一个动态状态类别转换为多个目标类别中的至少一个目标类别;将所述至少一个目标类别转换为多个提出的未来意图类别中的至少一个提出的未来意图类别;
基于所述提出的未来意图类别来确定所述对象的至少一个预测的未来意图;以及使所述自主车辆基于为所述对象确定的所述至少一个预测的未来意图来执行至少一个自主驾驶操作。

技术总结
用于操作自主车辆的系统/方法。该方法包括由计算设备:使用传感器数据来跟踪在自主驾驶车辆附近检测到的对象;将所述对象分类为多个动态状态类别中的至少一个动态状态类别;将所述至少一个动态状态类别转换为多个目标类别中的至少一个目标类别;将所述至少一个目标类别转换为多个提出的未来意图类别中的至少一个提出的未来意图类别;基于提出的未来意图类别来确定所述对象的至少一个预测的未来意图;和/或使自主车辆基于为对象确定的至少一个预测的未来意图来执行至少一个自主驾驶操作。作。作。


技术研发人员:L
受保护的技术使用者:埃尔构人工智能有限责任公司
技术研发日:2022.01.27
技术公布日:2023/9/22
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐