掌桥专利:专业的专利平台
掌桥专利
首页

具有时间跟踪器的车辆感知系统

文献发布时间:2024-07-23 01:35:21


具有时间跟踪器的车辆感知系统

相关申请的交叉引用

本专利申请要求享有于2021年12月3日提交的美国专利申请第17/542,352号的优先权,其全部内容通过引用并入本申请。

背景技术

自主车辆利用各种系统、方法和装置来穿越环境。例如,自主车辆可以利用一个或多个机器学习模型在可以存在车辆、人、建筑物和其他对象的环境中导航。在许多情况下,自主车辆将利用具体的机器学习模型用于具体的任务和操作。另外地,来自自主车辆的一个机器学习模型的输出可以用作自主车辆的另一个机器学习模型的输入。

附图说明

参考附图来描述具体实施方式。在附图中,附图标记最左边的数字标识附图标记首次出现的数字。在不同的附图中使用相同的附图标记指示类似或者相同的组件或者特征。

图1是示出根据本文所述技术的示例过程的图示流程图,用于使用机器学习模型来确定被跟踪对象数据。

图2示出了用于基于输入传感器数据确定被跟踪对象数据的机器学习模型的示例细节。

图3示出了根据本文公开的一些技术的机器学习模型的检测组件和跟踪组件的示例细节。

图4是示出与端对端训练机器学习模型相关联的示例方法的流程图,使得机器学习模型的第一部分的输出被定制为用作机器学习模型的第二部分的输入。

图5是示出与机器学习模型相关联的示例方法的流程图,该机器学习模型确定供车辆使用的被跟踪对象数据。

图6是示出可以用于执行本文所述技术的示例系统的框图。

具体实施方式

本公开尤其涉及用于改进车辆的感知系统的技术,其通过至少部分地利用感知系统的第二部分(例如,第二机器学习模型、第二组件等)的输出来训练感知系统的第一部分(例如,第一机器学习模型、第一组件等),使得第一部分的输出被定制为用作针对第二部分的输入。换言之,本公开描述了将感知系统的不同部分一起训练的技术,而不是单独地训练感知系统的每个部分。通过端对端地训练感知系统(例如,基于第二部分的输出来训练第一部分,或者以其他方式一起训练单独的部分)并且将时间信息包括在输入中,第一部分的输出可以被定制为用作第二部分的输入,导致改进整个感知系统的输出的准确性和置信度。

另外地,本申请涉及车辆感知系统的改进架构,该架构利用时间数据以跟踪车辆的环境中的对象,并且将跟踪数据与环境中的具体对象相关联。即,不是训练感知系统的第一机器学习模型以检测对象,并且单独地训练感知系统的第二机器学习模型以跟踪对象,而是将感知系统的架构配置为基于输入传感器数据来输出被跟踪对象数据。即,感知系统可以包括第一部分和第二部分,它们一起基于输入传感器数据输出被跟踪对象数据。

例如,感知系统(例如,机器学习模型)可以被配置为使得在第一操作中,针对在环境中检测到的对象确定对象数据,该对象数据指示对象的当前位置。在第二操作中,感知系统可以基于存储的与对象相关联的跟踪数据确定对象的估计的当前位置。在第三操作中,感知系统可以至少部分地基于当前位置在估计的当前位置的阈值距离内,将对象数据与存储的跟踪数据相关联,作为被跟踪对象数据。然后,感知系统可以输出被跟踪对象数据,该数据然后可以被车辆的其他组件和/或系统用来进行关于检测到的对象的预测、确定车辆穿过环境的轨迹等等。

通过示例而非限制的方式,根据本公开中描述的各种技术的方法可以包括接收表示车辆在其中运行的环境的传感器数据的技术。在一些示例中,车辆可以包括一个或多个传感器,例如图像传感器(例如,相机)、激光雷达传感器、雷达传感器、飞行时间传感器、环境传感器等。因此,表示环境的传感器数据可以包括图像数据、激光雷达数据、雷达数据、飞行时间数据等。另外地,在一些实例中,传感器数据可以与第一时刻(例如,当前时间)相关联,在本文中可以被称为“t

在一些示例中,传感器数据可以被输入到被配置为在车辆中使用的机器学习模型中。在一些实例中,机器学习模型可以是车辆的感知系统的部分,该感知系统被配置为检测对象、跟踪检测到的对象、和/或对检测到的对象和/或被跟踪对象做出特定预测。在一些示例中,感知系统可以包括一个或多个机器学习模型。另外地或者可替代地,感知系统可以包括单个机器学习模型,该模型包括多个阶段、子过程、或者组件。即,单个机器学习模型可以被配置为确定针对单个输入的单个输出,即使机器学习模型的不同阶段可以确定中间输出。

在各种示例中,机器学习模型可以包括对象检测部分(例如,第一阶段、子过程、组件等),其被训练以生成或者以其他方式确定与在环境中检测到的一个或多个对象相关联的对象数据。即,机器学习模型的对象检测部分可以使用一个或多个算法来分析或者处理传感器数据,以便检测环境中对象的存在和/或确定与对象相关联的对象数据。在一些示例中,对象数据可以包括与环境中的相应对象相关联的一个或多个边界框。相应的边界框可以指示在其中传感器数据被生成/捕获的第一时刻(t

在一些示例中,机器学习模型可以包括对象跟踪部分。在一些示例中,对象跟踪部分可以被配置为执行多个子过程,以确定由检测到的对象在从t

在一些示例中,在位置估计子过程中,机器学习模型可以确定在时间t

在一些示例中,机器学习模型可以在跟踪-位置关联子过程期间,至少部分地基于与对象的估计位置相对应的对象的位置,将具体对象数据与具体跟踪数据相关联。换言之,机器学习模型可以确定如对象数据中所指示的对象的位置与估计位置相对应。例如,机器学习模型可以被训练以至少部分地基于位置和估计位置之间的距离、对象的定向和对象的估计定向、对象的大小和对象的估计大小、对象的分类和对象的预测分类等中的一个或多个确定位置与估计位置相对应。在一些示例中,可以在一时间针对多个对象和轨迹建立轨迹与相关联对象之间的关联。

在一些示例中,在轨迹估计子过程期间,机器学习模型可以确定与具体对象相关联的被跟踪对象数据,该被跟踪对象数据包括对象数据和由对象在包括当前时刻的一段时间期间(例如,从t

在一些示例中,在轨迹存储子过程期间,机器学习模型可以将对象的轨迹存储在机器学习模型可访问的存储器中。在一些实例中,这可以是机器学习模型的长短期存储器(long short-termmemory)。在一些示例中,因为机器学习模型可以在车辆穿越环境时连续地运行,因此机器学习模型可以会随着对象的轨迹的发展而继续更新该对象的每个存储的轨迹。

在一些示例中,该技术还可以包括从机器学习模型接收至少包括被跟踪对象数据的输出。即,作为从机器学习模型的输出而接收的被跟踪对象数据可以针对环境中的每个对象指示与该对象相关联的对象数据(例如,边界框、分类、速度、置信度等)以及由该对象穿越环境的轨迹。

在一些示例中,可以至少部分地基于被跟踪对象数据控制车辆。例如,被跟踪对象数据的至少一部分可以用作与车辆相关联的另一系统的输入,该另一系统例如是预测系统、规划系统等。

如上所述,本公开还涉及用于包括多个部分(例如,阶段、子过程、组件等)的机器学习模型的端对端训练的技术。当机器学习模型被端对端地训练时,机器学习模型的输出被用于训练机器学习模型中的各个部分,这些部分可以以其他方式作为独立的机器学习模型存在。以这种方式,机器学习模型的一个部分的中间输出可以被具体地定制以用作由机器学习模型的其他部分的输入。

通过示例而非限制的方式,与机器学习模型的端对端训练相关联的方法可以包括接收表示车辆穿越环境的传感器数据的技术。在一些示例中,传感器数据可以包括与车辆相关联的存储的日志数据。传感器数据/日志数据可以是图像数据、激光雷达数据、雷达数据、飞行时间数据等。在一些示例中,传感器数据可以是表示与环境相关联的传感器数据的图像帧的按时间次序的集合,使得第一帧表示在第一时间的环境、第二帧表示在第二时间的环境等。

在一些示例中,该技术还可以包括接收与传感器数据中表示的环境中的对象相关联的真实数据。在一些示例中,真实数据可以包括与对象相关联的被跟踪对象数据。因此,真实数据可以包括与对象相关联的边界框、对象穿越的轨迹、对象的分类等。在一些示例中,真实数据可以由人工贴标机、经过训练的机器学习模型等来确定。在一些示例中,真实数据可以包括表示与环境相关联的传感器数据的图像帧的按时间次序的集合,其中,每个帧已经被注释以指示在相应时间关于环境中的对象的信息,该信息包括边界框、轨迹、分类等。

在一些示例中,传感器数据可以被输入到机器学习模型中。在各种示例中,机器学习模型可以包括第一部分(例如,对象检测部分),该第一部分被配置为至少部分地基于传感器数据确定与对象相关联的对象数据。因此,对象数据可以至少包括与对象相关联的预测边界框。另外地,在一些示例中,机器学习模型可以包括第二部分(例如,对象跟踪部分),其被配置为至少部分地基于由第一部分确定的对象数据确定与对象在环境中的移动相关联的跟踪数据。在一些示例中,跟踪数据可以包括由对象在环境中穿越的预测轨迹。

在一些示例中,这些技术可以包括接收来自机器学习模型的输出。该输出可以包括预测的被跟踪对象数据,该数据包括预测边界框和预测轨迹以及其他元素。基于该输出,可以比较真实数据和预测的被跟踪对象数据,以确定真实数据与预测的被跟踪对象数据之间是否存在差。在一些实例中,如果差被确定为满足或者超过阈值差,则可以改变机器学习模型的参数以最小化差。在一些实例中,可以改变机器学习模型的一个或多个部分的参数。例如,可以改变机器学习模型的第一部分的参数以定制对象数据以供机器学习模型的第二部分使用,使得真实数据和预测的被跟踪对象数据之间的差最小化。另外地,或者可替代地,可以改变机器学习模型的第二部分的参数以帮助最小化差。在一些示例中,改变机器学习模型的参数可以包括基于差对第一部分或者第二部分进行再训练、更新第一部分或者第二部分的软件等。

根据本文所述的技术,可以改进车辆感知系统和/或机器学习模型的性能。当在检测到的对象和存储的跟踪数据之间进行关联时,通过利用对象轨迹的时间历史,机器学习模型/感知系统不太容易受到对象遮挡和数据切换(例如,将错误的跟踪与错误的对象相关联)的影响。另外地,通过根据本公开的技术端对端地训练感知系统模型,可以针对模型的其他部分定制来自模型的一个部分的中间输出,最终导致更好的整体输出。在自主车辆的上下文中,本文所述的技术提供了更准确的机器学习模型,其可以通过进行更准确的预测提高自主车辆的安全性,例如通过改进安全决策和最小化不良事件的风险。这些和其他改进对于本领域普通技术人员来说将是显而易见的。

本文所描述的技术可以以多种方式来实现。下文参考所附附图提供示例实现方式。示例实现方式是在自主车辆的上下文中讨论的;然而,本文所述的方法、装置、和组件可以应用于各种组件(例如,传感器组件或者机器人平台),并且不限于自主车辆。例如,这些技术可以用于航空或者航海上下文中,或者其他机器学习和训练上下文中。此外,本文描述的技术可以与真实数据(例如,使用传感器捕获的)、仿真数据(例如,由模拟器(simulator)生成的)或者两者的任何组合一起使用。

图1是示出根据本文所述的用于使用机器学习模型来确定被跟踪对象数据的技术的示例过程100的图示流程图。在示例中,车辆102可以与一个或多个传感器组件相关联。在至少一个示例中,传感器组件可以捕获与车辆102周围的环境104相关联的传感器数据106。环境104可以包括一个或多个对象,例如对象108(1),其是车辆,以及对象108(2),其是行人。对象108(1)和对象108(2)在本文中可以被统称为“对象108”。在至少一个示例中,传感器组件可包括激光雷达传感器、雷达传感器、超声换能器、声纳传感器、位置传感器(例如,全球定位组件(GPS)、指南针等)、惯性传感器(例如,惯性测量单元、加速度计、磁力计、陀螺仪等)、相机(例如,RGB、IR、强度、深度等)、车轮编码器、麦克风、环境传感器(例如,温度传感器、湿度传感器、光传感器、压力传感器等)、飞行时间(ToF)传感器等。传感器组件可以生成与环境104相关联的传感器数据106,其可以包括但是不限于激光雷达数据、雷达数据、超声换能器数据、声纳数据、位置数据(例如,全球定位组件(GPS)、指南针等)、姿态数据、惯性数据(例如,惯性测量单元数据、加速度计数据、磁力计数据、陀螺仪数据等)、图像数据(例如,RGB数据、IR数据、强度数据、深度数据等),车轮编码器数据、麦克风数据、环境传感器数据(例如,温度传感器数据、湿度传感器数据、光传感器数据、压力传感器数据等)、和ToF传感器数据等。在一些示例中,传感器数据106可以是可以作为集合被输入到机器学习模型112中的多个快照(例如,帧)的形式,使得可以随时间推移跟踪对象移动。在一些实例中,传感器数据106可以是在一段时间内表示环境104的帧的按时间次序的集合。例如,传感器数据106可以是以按时间次序的方式表示帧的五个帧的集合,然后可以以滚动的方式更新(例如,其中,新的帧被添加到集合并且旧的帧被移除)。

在至少一个示例中,传感器数据106可以被发送到与车辆102相关联的一个或多个计算设备110。一个或多个计算设备110可以被车辆102车载,或者经由网络连接被车辆102远程可访问。一个或多个计算设备110可以使用计算设备110的资源(例如,计算、存储器、处理核心等)执行机器学习模型112。在一个示例中,机器学习模型112与车辆102的感知系统相关联。机器学习模型可以包括检测组件114和跟踪组件122。

如图1所示,传感器数据106被转发作为机器学习模型112的输入。至少部分地基于传感器数据106,机器学习模型112的检测组件114可以输出对象数据116。在说明性示例中,对象数据116包括自顶向下的数据118,其表示从自顶向下(例如,鸟瞰)的视角的环境104的视图。然而,这并不旨在如此限制,并且对象数据116可以包括数据的其他表示。在一些实例中,对象数据116可以包括与由检测组件114在环境104中检测到的对象108相关联的边界框,例如与对象108(1)相关联的边界框120(1)和与对象108(2)相关联的边界框120(2)。

在一些实例中,对象数据116可以全部或者部分地用作机器学习模型112的跟踪组件122的输入。尽管在图1中未示出,但是在一些示例中,跟踪组件122还可以接收与对象108(1)和对象108(2)相关联的存储的跟踪数据作为输入,这将在下文进一步详细讨论。至少部分地基于对象数据116和/或存储的跟踪数据,跟踪组件122可以确定并且机器学习模型112可以输出被跟踪对象数据124。在一些示例中,被跟踪对象数据124可以包括自顶向下的数据118,其表示从自顶向下的视角的环境104的视图,其中移动数据指示对象移动。在一些示例中,除了包括对象数据116(例如,边界框120(1)和边界框120(2))之外,被跟踪对象数据124还可以包括由环境104中的对象穿越的轨迹,例如,由对象108(1)穿越的轨迹126(1)以及由对象108(2)穿越的轨迹126(2)。

在一些示例中,跟踪组件122可以被配置为执行多个子过程,以确定在当前时间之前的一段时间内检测到的对象108所穿越的轨迹126。例如,跟踪组件122可以执行位置估计子过程、跟踪-位置关联子过程、轨迹估计子过程、和/或跟踪存储子过程,如上文和此处所述。在一些示例中,这些子过程可以被存储为彼此独立执行的跟踪组件122的单独组件,或者可以被视为与机器学习模型112的跟踪组件122确定被跟踪对象数据124的方式相关联的逻辑操作。

在一些示例中,在位置估计子过程期间,跟踪组件122可以确定对象108(1)和对象108(2)在当前时间t

在一些示例中,跟踪组件122可以在跟踪-位置关联子过程期间,至少部分地基于与对象108(1)和对象108(2)的估计位置相对应的对象108(1)和对象108(2)的位置,将具体对象数据116(例如,边界框120(1)和边界框120(2))与具体跟踪数据(例如,分别的轨迹126(1)和轨迹126(2))相关联。换言之,跟踪组件122可以确定如对象数据116中所指示的对象108(1)和对象108(2)的位置与估计位置相对应。

在一些示例中,在轨迹估计子过程期间,跟踪组件122可以确定与具体对象108(1)或者对象108(2)相关联的被跟踪对象数据124,被跟踪对象数据124包括对象数据116以及在包括当前时刻(例如,从t

在一些示例中,在跟踪存储子过程期间,跟踪组件122或者机器学习模型112可以将对象108(1)和对象108(2)的轨迹126(1)和轨迹126(2)存储在机器学习模型122和/或跟踪组件122可访问的存储器中。在一些实例中,存储器可以包括机器学习模型112和/或跟踪组件122的长短期存储器。在一些示例中,因为机器学习模型112可以在车辆102穿越环境104时连续运行,所以跟踪组件122可以在对象108(1)和对象108(2)通过环境104的过程中继续更新对象108(1)和对象108(2)的每一个存储轨迹。

在一些示例中,被跟踪对象数据124可以被转发到在计算设备110上执行的预测组件128。在一个示例中,预测组件128包括一个或多个机器学习模型,该模型被训练以做出关于环境104中的对象的预测。因此,预测组件128可以至少部分地基于被跟踪对象数据124中的一些或者全部确定与对象相关联的预测数据130。在一些示例中,预测数据130可以包括自顶向下的数据118,其表示从自顶向下的视角的环境104的视图。另外地,或者可替代地,预测数据130可以指示与对象相关联的一个或多个预测。例如,分别与对象108(1)和对象108(2)相关联的预测132(1)和预测132(2)包括为对象108(1)和对象108(2)预测在未来一段时间内在环境104中穿越的轨迹。

在一些示例中,预测数据130可以作为输入被转发到在计算设备110上执行的车辆102的规划组件134。在一个示例中,规划组件134包括一个或多个机器学习模型和/或其他算法,其被配置为确定针对车辆102在通过环境104中遵循的规划轨迹。因此,规划组件134可以至少部分地基于被跟踪对象数据124和/或预测数据130确定车辆102的规划轨迹。

在各种示例中,传感器数据106、对象数据116、被跟踪对象数据124、或者预测数据130中的任何一个可以被格式化为多通道图像,其中,多通道图像的各个通道可以表示信息的选择。例如,多通道图像的第一通道可以包括与对象相关联的边界框,多通道图像的第二通道可以包括与对象相关的速度信息,多通道图像的第三通道可以包括环境数据(例如,路面或者车道标记、交通灯信息等)等。另外地,在一些示例中,多通道图像的多个不同通道可以包括相同信息的一部分。例如,多通道图像的第一通道和第二通道可以各自包括与环境中的相同对象相关联的边界框。例如,通道可以表示为三维图像栈中的颜色和/或层。

图2示出了用于基于输入传感器数据106确定被跟踪对象数据124的机器学习模型112的示例细节200。传感器数据106可以是与车辆在其中正在操作的环境相关联的图像数据、激光雷达数据、雷达数据、和/或飞行时间数据。在“1”处,机器学习模型112的检测组件114接收传感器数据106,并且确定在当前时间t

在“2”处,位置估计组件202可以接收与环境中的对象相关联的跟踪数据206,并且基于跟踪数据206确定与在当前时间t

在“3”处,跟踪位置关联和轨迹估计组件212可以至少部分地基于对象数据116和估计对象数据210确定在当前时间t

在“4”处,在t

图3示出了根据本文公开的一些技术的机器学习模型的检测组件114和跟踪组件122的示例细节300。如图所示,检测组件114可以包括可以确定自顶向下的数据118的二维卷积神经网络(2D CNN)主干302和可以确定对象数据116的检测头306。跟踪组件122可以包括双线性插值组件308、有限差分组件310、多层感知(MLP)组件312、长短期存储器(LSTM)组件316、MLP细化组件320、双边匹配和单对象跟踪(SOT)组件322、以及非极大值抑制(NMS)组件326。

双线性插值组件308可以接收自顶向下数据118和跟踪数据206,并且确定在环境中的对象是新的观测值(例如,不存在跟踪数据206的对象),并且反之亦然。例如,如果跟踪数据指示在环境中存在三个对象,但是自顶向下数据118仅指示两个对象,则双线性插值组件308可以被用来确定为什么没有匹配的跟踪数据(例如,环境中的新对象、离开环境的对象等)。

LSTM组件316可以接收与对象/特征相关联的数据和其他信息,例如,特征张量、有限差分和MLP组件312的输出,并且确定一个或多个轨迹水平表示318。MLP细化组件320可以利用轨迹水平表示318来确定分数、位置偏移和其他数据328。

双边匹配和SOT组件322可以在如跟踪数据206中所指示的跟踪对象和包括在对象数据116中的对象的新观测值之间执行一对一匹配。即,双边匹配和SOT组件322可以确定与环境中的对象相关联的一个或多个当前跟踪324(例如,被跟踪对象数据124)。

NMS组件326可以利用当前跟踪324和分数、位置偏移和其他数据328来确定细化的当前跟踪330。细化的当前跟踪可以被转发并且与其他跟踪数据206一起存储。以这种方式,细化的当前跟踪330可以用于确定在未来时间轨迹水平表示318和/或附加的当前跟踪324。

图4和图5是示出在显示器上呈现与监控车辆相关联的各种用户界面的示例方法的流程图。为了便于理解,参考图1-图3中描述的车辆、系统和/或用户界面的一个或多个来描述图4和图5中所示的方法。然而,图4和图5中所示的方法不限于使用图1-图3中描述的车辆、系统和/或用户界面来执行,并且可以使用本申请中描述的其他车辆、系统和用户界面中的任何一项,以及除了本文中描述的那些之外的车辆、系统和用户界面来实现。此外,本文所描述的车辆、系统和用户界面不限于执行图4和图5所示的方法。

方法400和方法500被图示为逻辑流程图中块的集合,其表示可以在硬件、软件或其组合中实现的操作的序列。在软件的上下文中,这些块表示存储在一个或多个计算机可读存储介质上的计算机可执行指令,这些计算机可执行指令当由一个或多个处理器执行时,执行所述操作。总体上,计算机可执行指令包括执行特定功能或者实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。描述操作的次序不旨在被解释为限制,并且任何数量的所描述的块可以以任何次序和/或并行地组合以实现过程。在一些实施例中,可以完全省略该过程的一个或多个块。此外,方法400和方法500可以整体地或者部分地彼此组合,或者与其他方法组合。

图4是示出与端对端地训练机器学习模型相关联的示例方法400的流程图,使得机器学习模型的第一部分的输出被定制为用作机器学习模型第二部分的输入。方法400开始于操作402,操作402包括接收与穿越环境的车辆相关联的传感器数据。例如,计算设备110可以接收与车辆102周围的环境104相关联的传感器数据106。在一些示例中,环境可以包括一个或多个对象,例如对象108(1)和对象108(2)。在一些示例中,传感器数据可以包括但是不限于激光雷达数据、雷达数据、超声换能器数据、声纳数据、位置数据(例如,全球定位组件(GPS)、指南针等)、姿态数据、惯性数据(例如,惯性测量单元数据、加速度计数据、磁力计数据、陀螺仪数据等)、图像数据(例如,RGB数据、IR数据、强度数据、深度数据等)、车轮编码器数据、麦克风数据、环境传感器数据(例如,温度传感器数据、湿度传感器数据、光传感器数据、压力传感器数据等)、和飞行时间(ToF)传感器数据等。在一些示例中,传感器数据可以是真实的传感器数据(例如,由车辆的传感器生成的)或者仿真的传感器数据。

在操作404处,方法400包括接收与环境中的对象相关联的真实数据。例如,计算设备110可以接收真实数据。在一些示例中,真实数据可以包括与对象相关联的被跟踪对象数据。因此,真实数据可以包括与对象相关联的边界框、对象所穿越的轨迹、对象的分类等。在一些示例中,真实数据可以由人工贴标机、经过训练的机器学习模型等来确定。

在操作406处,方法400包括将传感器数据输入到机器学习模型中。例如,计算设备110可以将传感器数据106输入到机器学习模型112中。在操作408处,方法400包括从机器学习模型接收输出,该输出包括由机器学习模型的第一部分确定的第一数据和由机器学习的模型的第二部分确定的第二数据。例如,该输出可以包括被跟踪对象数据124,其包括第一数据(例如,由检测组件114确定的对象数据)和第二数据(例如,由跟踪组件122确定的轨迹数据)。即,该输出可以至少包括与对象相关联的预测边界框和对象所穿越的预测轨迹。如本文所述,在一些示例中,机器学习模型的第二部分可以至少部分地基于由机器学习模型的第一部分确定的第一数据确定第二数据。

在操作410处,方法400包括确定输出和真实数据之间的差。在一些示例中,输出和真实数据之间的差可以是轨迹和预测轨迹之间的差、边界框和预测边界框之间的差等。在操作412处,方法400包括确定差是否超过阈值差。如果差不超过阈值差(例如,小于阈值差),则方法400进行到操作414。然而,如果差满足或者超过阈值差,则方法400进行到操作416。

在操作414处,方法400包括执行第一动作。在一些示例中,第一动作可以包括确定机器学习模型是经过训练的机器学习模型。另外地,或者可替代地,第一动作可以包括将机器学习模型发送到车辆以供车辆使用以穿越环境。在一些示例中,第一动作可以包括在仿真中或者利用附加传感器数据验证机器学习模型的性能。

在操作416处,方法400包括改变机器学习模型的第一部分的参数。例如,检测组件114或者跟踪组件122的参数可以被改变,以及或者在替代方案中,由这些组件执行的子过程。在一些示例中,改变参数可以包括至少部分地基于差来改变模型的第一部分的软件组件或者对模型的第一部分再训练。以这种方式,可以调整由模型的第一部分确定的第一数据,使得在未来的预测中,第一数据被定制为用作机器学习模型的第二部分的输入。

图5是示出与机器学习模型相关联的示例方法500的流程图,该机器学习模型确定供车辆使用的被跟踪对象数据。方法500开始于操作502,操作502包括将表示车辆在其中正在操作的环境的传感器数据输入到机器学习模型中,该传感器数据与当前时间相关联。例如,计算设备110可以将与车辆102周围的环境104相关联的传感器数据106输入到机器学习模型112中。在一些示例中,传感器数据106中表示的环境可以包括一个或多个对象,例如,对象108(1)和对象108(2)。在一些示例中,传感器数据可以包括但是不限于激光雷达数据、雷达数据、超声换能器数据、声纳数据、位置数据(例如,全球定位组件(GPS)、指南针等)、姿态数据、惯性数据(例如,惯性测量单元数据、加速度计数据、磁力计数据、陀螺仪数据等)、图像数据(例如,RGB数据、IR数据、强度数据、深度数据等)、车轮编码器数据、麦克风数据、环境传感器数据(例如,温度传感器数据、湿度传感器数据、光传感器数据、压力传感器数据等)和飞行时间(ToF)传感器数据等。在一些示例中,传感器数据可以是真实的传感器数据(例如,由车辆的传感器生成)或者仿真的传感器数据。

在方法500的操作504处,机器学习模型112可以确定与环境中的对象相关联的对象数据,该对象数据指示对象在环境中的位置。例如,机器学习模型112的检测组件114可以确定与环境104中的对象108相关联的对象数据116。在一些示例中,对象数据可以包括自顶向下数据118,自顶向下数据118表示从自顶向下(例如,鸟瞰)的视角的环境的视图。在一些实例中,对象数据116可以包括与由检测组件114在环境中检测到的对象相关联的边界框,例如与对象108(1)相关联的边界框120(1)和与对象108(2)相关联的边界框120(2),如图1所示。

在方法500的操作506处,机器学习模型112可以至少部分地基于与对象相关联的存储的跟踪数据206确定对象在环境中的估计位置。例如,跟踪组件122可以至少部分地基于存储的跟踪数据206确定对象在环境中的估计位置。在一些示例中,可以是跟踪组件122的组件或者子过程的位置估计组件202可以确定对象的估计位置。在一些示例中,确定估计位置可以包括确定与对象相关联的边界框的估计位置。

在方法500的操作508处,机器学习模型112可以至少部分地基于位置和估计位置将对象数据与跟踪数据相关联,作为被跟踪对象数据。例如,跟踪组件122可以将对象数据116与跟踪数据206相关联,作为被跟踪对象数据124。在一些示例中,可以是跟踪组件122的组件或者子过程的跟踪位置关联组件和/或轨迹估计组件可以关联被跟踪对象数据。在一些示例中,对象数据与存储的跟踪数据的关联可以至少部分地基于该位置与估计位置之间的接近度。

在方法500的操作510处,机器学习模型112可以至少部分地基于被跟踪对象数据更新存储的跟踪数据。例如,机器学习模型112的跟踪组件122可以更新存储的跟踪数据。在一些示例中,更新的存储的跟踪数据206可以存储在机器学习模型112和/或跟踪组件122可访问的存储器中,例如长短期存储器。

在方法500的操作512处,机器学习模型112可以输出被跟踪对象数据。在操作514处,方法500包括控制车辆的操作。例如,可以至少部分地基于从机器学习模型112接收的被跟踪对象数据124控制车辆的操作。在一些示例中,车辆102的预测组件128可以利用被跟踪对象数据124对环境中的对象进行一个或多个预测,例如预测的未来轨迹等,并且可以至少部分地基于这些预测控制车辆。另外地,或者可替代地,车辆102的规划组件134可以利用被跟踪对象数据124和/或基于被跟踪对象数据的预测来控制车辆的操作。例如,规划组件134可以至少部分地基于被跟踪对象数据或者预测来确定针对车辆102穿越环境的轨迹。

图6是示出可以用于执行本文所描述的技术的示例系统的框图。在至少一个示例中,对应于上文参考图1-图5描述的车辆102的车辆602可以包括一个或多个车辆计算设备604(其可以对应于计算设备110)、一个或多个传感器系统606、一个或多个发射机608、一个或多个通信连接610、至少一个直接连接612、和一个或多个驱动系统614。

在至少一个示例中,车辆602可以是自主车辆,其被配置为根据美国国家公路交通安全管理局发布的6级分类进行操作,其描述了一种能够在整个行程中执行所有安全关键功能的车辆,驾驶员(或乘员)在任何时候都不被期望控制车辆。在这样的示例中,由于车辆602可以被配置为控制从开始到停止的所有功能,包括所有停车功能,所以它可以是无人占用的。这仅仅是一个示例,并且本文所述的组件和方法可以被并入到任何地面、空中或者水上车辆中,包括从始终需要由驾驶员手动控制的车辆到那些部分或者完全自主控制的车辆。即,在所示出的示例中,车辆602是自主车辆;然而,车辆602可以是任何其他类型的车辆。虽然在图6中仅示出了单个车辆602,但是在实际应用中,示例系统600可以包括多个车辆,在一些示例中,其可以包括车队。

车辆计算设备604可以包括处理器616和与处理器616通信地耦合的存储器618。在所示出的示例中,车辆计算设备604的存储器618存储定位组件620、感知组件622、预测组件130、规划组件134、和一个或多个系统控制器624。

在至少一个示例中并且如上所述,定位组件620可以至少部分地基于从传感器组件606接收的传感器数据和/或与车辆602正在其中操作的环境的地图相关联的地图数据确定车辆602相对于局部和/或全局地图的姿态(位置和定向)。在至少一个示例中,定位组件620可以包括校准组件,或者与校准组件相关联,该校准组件能够实质上同时执行用于校准(确定与传感器组件606中的任何一个或多个相关联的各种内在和外在参数)、定位和映射的操作。

在至少一个示例中,感知组件622可以至少部分地基于从传感器组件606接收的传感器数据执行对象检测、分割和/或分类。在至少一个示例中,感知组件622可以接收原始传感器数据(例如,从传感器组件606)。在至少一个示例中,感知组件622可以接收传感器数据,并且可以利用一个或多个处理算法和/或机器学习模型相对于在传感器数据中识别的对象执行对象检测、分割和/或分类。在一些示例中,感知组件622可以将边界区域(例如,边界框,或者除此以外实例分割)与所识别的对象相关联,并且可以将与所识别的对象的分类相关联的置信度分数与所识别对象相关联。

在示例中,感知组件622可以包括机器学习模型112以及跟踪数据206。如本文所述,机器学习模型112或者至少机器学习模型112的跟踪组件可以利用跟踪数据206来估计在环境中对象的位置。在一些示例中,跟踪数据206被存储在存储器中,例如长短期存储器。

预测组件130可以从传感器组件606接收传感器数据、地图数据和/或从感知组件622输出的感知数据(例如,经处理的传感器数据),并且可以输出与车辆602的环境内的一个或多个对象相关联的预测。预测可以包括与车辆602在其中正在操作的环境中的对象相关联的预测轨迹。如本文所述,预测组件还可以接收由机器学习模型112输出的被跟踪对象数据124。

规划组件134可以接收来自定位组件620、感知组件622、预测组件130的数据、信息和/或输出以及地图数据,并且可以生成一个或多个提议的车辆操作(例如,提议的轨迹)。可使用的定位组件、感知组件、预测组件和/或规划组件的附加细节可以在于2017年4月4日颁发的美国专利第9,612,123号和于2019年7月16日颁发的美国专利第10,363,390号中找到,这两个专利的全部内容通过引用的方式全部并入本文,并且用于所有目的。在一些示例中(例如,在车辆602不是自主车辆的情况下),可以从车辆602省略上述组件中的一个或多个。在至少一个示例中,规划组件134从感知组件622的机器学习模型112接收被跟踪对象数据124。

在至少一个示例中,车辆计算设备604可以包括一个或多个系统控制器624,其可以被配置为控制车辆602的转向、推进、制动、安全、发射机、通信和其他系统。这些系统控制器624可以与驱动系统614和/或车辆602的其他系统的相应系统通信和/或控制它们。

虽然上文描述的组件被示出为“车载”在车辆602上,但是在其他实现方式中,这些组件可以被车辆602远程定位和/或可访问。例如,该组件可以远程位于计算设备628上,并且可由车辆602经由一个或多个网络626访问。此外,虽然上述组件被描述为“组件”,但是这样的组件可以包括一个或多个组件和/或模块,它们可以是系统的部分,用于执行属于组件中的每一个的操作。

在至少一个示例中,如上所述,定位组件620、感知组件622、预测组件130和规划组件134可以处理数据,并且可以通过网络626将它们相应的输出发送到计算设备628。在至少一个示例中,定位组件620、感知组件622、预测组件130和规划组件134可以在经过预先确定时间段之后、近乎实时等以特定频率向计算设备628发送它们相应的输出。

在至少一个示例中,传感器组件606可以包括激光雷达传感器、雷达传感器、超声换能器、声纳传感器、位置传感器(例如GPS、指南针等)、惯性传感器(例如,惯性测量单元、加速度计、磁力计、陀螺仪等)、相机(例如,RGB、IR、强度、深度等)、车轮编码器、音频传感器、环境传感器(例如,温度传感器、湿度传感器、光传感器、压力传感器等)、ToF传感器等。传感器组件606可以向车辆计算设备604提供输入。在一些示例中,传感器组件606可以在将传感器数据发送到车辆计算设备604之前预处理传感器数据中的至少一些。在至少一个示例中,传感器组件606可以在经过预先确定时间段之后、近乎实时等以特定频率经由网络626向计算设备628发送传感器数据。

车辆602还可以包括用于发射光和/或声音的一个或多个发射机608,如上所述。在该示例中,发射机608包括用于与车辆602的乘客通信的内部音频和视觉发射机。通过示例而非限制的方式,内部发射机可以包括扬声器、灯、标志、显示屏、触摸屏、触觉发射机(例如,振动和/或力反馈)、机械致动器(例如,安全带张紧器、座椅定位器、头枕定位器等)等。该示例中的发射机608还可以包括外部发射机。通过示例而非限制的方式,该示例中的外部发射机包括用于与行人、其他驾驶员、其他附近车辆等进行视觉通信的光发射机(例如,指示灯、标志、光阵列等),以及用于与行人、其他驾驶员、其他附近车辆等进行听觉通信的一个或多个音频发射机(例如,扬声器、扬声器阵列、喇叭等)。在至少一个示例中,发射机608可以被定位在车辆602的外部和/或内部周围的各个位置。

车辆602还可以包括通信连接610,其使得能够在车辆602和其他本地或者远程计算设备(例如,计算设备628)之间,以及车辆602和其他远程或者本地计算设备之间进行通信。例如,通信连接610可以促进与车辆602和/或驱动系统614上的其他本地计算设备的通信。而且,通信连接610可以允许车辆与其他附近的计算设备(例如,其他附近的车辆、交通信号灯等)通信。通信连接610还使得车辆602能够与远程操作计算设备或者其他远程服务通信。

通信连接610可以包括用于将车辆计算设备604连接到另一计算设备或者网络(例如,网络626)的物理和/或逻辑界面。例如,通信连接610可以实现基于Wi-Fi的通信,例如经由IEEE 602.11标准定义的频率、诸如

直接连接612可以直接地连接驱动系统614和车辆602的其他系统。在至少一个示例中,车辆602可以包括驱动系统614。在一些示例中,车辆602可以具有单个驱动系统614。在至少一个示例中,如果车辆602具有多个驱动系统614,则单独的驱动系统614可以被定位在车辆602的相对端(例如,前部和后部等)。在至少一个示例中,驱动系统614可以包括传感器组件,用于检测驱动系统614的状况和/或车辆602的周围环境。通过示例而非限制的方式,传感器组件可以包括用于感测驱动系统的车轮的旋转的车轮编码器(例如,旋转编码器)、用于测量驱动系统的位置和加速度的惯性传感器(例如,惯性测量单元、加速度计、陀螺仪、磁力计等)、相机或者其他图像传感器、用于声学检测驱动系统的周围中的对象的超声波传感器、激光雷达传感器、雷达传感器等。一些传感器,例如车轮编码器,可以是驱动系统614所独有的。在一些情况下,驱动系统614上的传感器组件可以与车辆602的相应系统(例如,传感器组件606)重叠或者补充。

驱动系统614可以包括许多车辆系统,包括高压电池、驱动车辆602的电动机、将来自电池的直流电转换成交流电以供其他车辆系统使用的逆变器、包括转向马达和转向齿条(其可以是电动的)的转向系统、包括液压或者电动致动器的制动系统、包括液压和/或气动组件的悬挂系统、用于分配制动力以减轻牵引力损失并且维持控制的稳定性的控制系统、HVAC系统、照明(例如,用于照亮车辆外部环境的头灯/尾灯等照明)和一个或多个其他系统(例如,冷却系统、安全系统、车载充电系统、其他电气组件,例如DC/DC转换器、高压电接头、高压电电缆、充电系统、充电端口等)。另外地,驱动系统614可以包括驱动系统控制器,其可以接收和预处理来自传感器组件的数据并且控制各种车辆系统的操作。在一些示例中,驱动系统控制器可以包括处理器和与处理器通信地耦合的存储器。存储器可以存储一个或多个组件以执行驱动系统614的各种功能。此外,驱动系统614还可以包括通信连接,其使得相应驱动系统能够与其他本地或者远程计算设备通信。

在图6中,车辆计算设备604、传感器组件606、发射机608和通信连接610被示出为在车辆602上被车载。然而,在一些示例中,车辆计算设备604、传感器组件606、发射机608和通信连接610可以在实际车辆之外(即,不被车辆602车载)被实现。

如上所述,车辆602可以经由网络626向计算设备628发送数据。在一些示例中,车辆602可以向计算设备628发送原始传感器数据。在其他示例中,车辆602可以向计算设备628发送经处理的传感器数据和/或传感器数据的表示(例如,从定位组件620、感知组件622、预测组件130、规划组件134、机器学习模型等输出的数据)。在一些示例中,车辆602可以在经过预先确定的时间段后、近乎实时等以特定频率向计算设备628发送数据。

计算设备628可以接收来自车辆602和/或其他数据收集设备的数据(原始或者经处理的),以及来自一个或多个第三方源和/或系统的数据。在至少一个示例中,计算设备628可以包括处理器630和与处理器630通信地耦合的存储器632。在所示出的示例中,计算设备628的存储器632存储训练组件634,以及一个或多个机器学习模型636。

训练组件634包括用于训练一个或多个机器学习模型636的功能,其可以包括机器学习模型112。训练组件634可以包括或者存储用于训练机器学习模型636的训练数据638。训练数据638可以包括与穿越环境的车辆相关联的日志数据640。在一些示例中,日志数据640可以是表示车辆602在其中操作的环境的传感器数据。即,在一些示例中,日志数据640可以包括图像数据、激光雷达数据、雷达数据等。

训练数据638还可以包括真实数据642。在一些示例中,对于用于训练机器学习模型636的日志数据640的每个实例,可以存储真实数据642的对应实例。在一些示例中,真实数据642可以包括与对象相关联的被跟踪对象数据。因此,真实数据642可以包括与对象相关联的边界框、对象所穿越的轨迹、对象的分类等。在一些示例中,真实数据642可以由人工贴标机、经训练的机器学习模型等来确定。

车辆602的处理器616和计算设备628的处理器630可以是能够执行指令以处理数据并且执行如本文所述的操作的任何合适的处理器。通过示例而非限制的方式,处理器616和处理器632可以包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)、或者处理电子数据以将该电子数据转换为可以存储在寄存器和/或存储器中的其他电子数据的任何其他设备或者设备的部分。在一些示例中,集成电路(例如,ASIC等)、门阵列(例如,FPGA等)和其他硬件设备还可以被视为处理器,只要它们被配置为实现编码指令。

存储器618和存储器634是非暂时性计算机可读介质的示例。存储器618和存储器634可以存储操作系统和一个或多个软件应用、指令、程序和/或数据,以实现本文所述的方法和属于各种系统的功能。在各种实现方式中,可以使用任何合适的存储器技术来实现存储器,例如,静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/闪存型存储器或者能够存储信息的任何其他类型的存储器。本文描述的架构、系统和各个元件可以包括许多其他逻辑、程序和物理组件,附图中所示的这些组件仅仅是与本文讨论相关的示例。

应当注意,虽然图6被示出为分布式系统,但是在一些示例中,车辆602的组件可以与计算设备628相关联,和/或计算设备628的组件可以与车辆602相关联。即,车辆602可以执行与计算设备628相关联的一个或多个功能,并且反之亦然。

此外,尽管车辆计算设备604和计算设备628被示出为包括多个组件,但是在一些示例中,这样的组件可以与更多或者更少的单独组件相关联。例如,定位组件620、感知组件622、预测组件130和/或规划组件134可以被组合成单个组件。即,虽然被描述为单独的组件,但是组件的任何一个或多个都可以被组合。

示例条款

A.一种系统,包括:一个或多个处理器;以及一个或多个非暂时性计算机可读介质,其存储指令,该指令当由一个或多个处理器执行时,使系统执行包括以下各项的操作:接收表示车辆在其中正在操作的环境中的对象的传感器数据,该传感器数据与当前时间相关联;将传感器数据输入到被配置为在车辆中使用的机器学习模型中,该机器学习模型被配置为:至少部分地基于传感器信息确定对象数据,该对象数据至少包括与环境中的对象相关联的边界框,边界框指示在当前时间在环境中对象的位置;至少部分地基于传感器数据并且至少部分地基于跟踪数据,确定对象在环境中在当前时间的估计位置,该跟踪数据是根据由机器学习模型在当前时间之前接收的附加传感器数据确定的;以及至少部分地基于估计位置将对象数据与跟踪数据相关联,作为被跟踪对象数据;从机器学习模型接收至少包括被跟踪对象数据的输出;以及至少部分地基于被跟踪对象数据控制车辆。

B.根据段落A所述的系统,其中,机器学习模型进一步被配置为:至少部分地基于将对象数据与跟踪数据相关联,更新跟踪数据,使得轨迹与位置相交;以及将更新后的跟踪数据存储在机器学习模型可访问的存储器中。

C.根据段落A至B中任一个所述的系统,其中,将对象数据与跟踪数据相关联是进一步至少部分地基于以下各项中的至少一个:位置与估计位置之间的距离小于阈值距离;对象的检测到的分类对应于对象的被跟踪的分类;或者对象的检测到的大小与对象的被跟踪的大小之间的差小于阈值差。

D.根据段落A至C中任一个所述的系统,其中,从机器学习模型接收的输出进一步指示对象的未来位置。

E.根据段落A至D中任一个所述的系统,其中,附加的传感器数据包括在当前时间之前的一段时间内表示对象的传感器数据的帧的按时间次序的集合。

F.一种方法,包括:在第一时间接收与在环境中操作的车辆相关联的传感器数据;将传感器数据输入到机器学习模型中,该机器学习模型被配置为:至少部分地基于传感器数据确定在环境中的对象的位置;至少部分地基于跟踪对象穿越的轨迹,确定在环境中跟踪对象的估计位置,该轨迹是至少部分地基于机器学习模型在第一时间之前接收到的附加传感器数据来确定的;以及至少部分地基于位置和估计位置将对象与跟踪对象相关联;接收位置和轨迹的指示,作为来自机器学习模型的输出;以及至少部分地基于输出控制车辆。

G.根据段落F所述的方法,其中,位置和估计位置与第一时间相关联,并且其中,跟踪对象在第一时间之前穿越轨迹。

H.根据段落F至G中任一个所述的方法,其中,附加传感器数据表示在第一时间之前的一段时间内的对象。

I.根据段落F至H中任一个所述的方法,其中,机器学习模型被配置为将对象分类为车辆、行人或者骑自行车的人中的至少一个。

J.根据段落F至I中任一个所述的方法,其中,机器学习模型进一步被配置为:至少部分地基于将对象与跟踪对象相关联,更新跟踪对象穿越的轨迹,使得轨迹与位置相交;以及将更新后的轨迹存储在机器学习模型可访问的存储器中。

K.根据段落F至J中任一个所述的方法,其中,将对象与跟踪对象相关联是进一步至少部分地基于关联于对象的第一特征与关联于跟踪对象的第二特征之间的特征距离。

L.根据段落F至K中任一个所述的方法,其中,将对象与跟踪对象相关联是进一步至少部分地基于对象的检测到的分类对应于跟踪对象的跟踪分类的确定的。

M.根据段落F至L中任一个所述的方法,其中,将对象与跟踪对象相关联是进一步至少部分地基于位置与估计位置的距离小于阈值距离的确定。

N.根据段落F至M中任一个所述的方法,其中,来自机器学习模型的输出进一步包括与对象相关联的边界框,该边界框指示以下各项中的至少一个:在环境中对象相对于车辆的位置;与对象相关联的大小;或者与对象相关联的定向。

O.根据段落F至N中任一个所述的方法,其中,传感器数据包括以下各项中的至少一个:图像数据、激光雷达数据、雷达数据或者飞行时间数据。

P.根据段落F至O中任一个所述的方法,其中,机器学习模型包括被配置为存储关于对象的先验信息的存储器。

Q.一个或多个非暂时性计算机可读介质,其存储指令,指令当由一个或多个处理器执行时,使处理器执行包括以下各项的操作:在第一时间接收与在环境中操作的车辆相关联的传感器数据;将传感器数据输入到机器学习模型中,该机器学习模型被配置为:至少部分地基于传感器数据确定在环境中对象的位置;至少部分地基于跟踪对象所穿越的轨迹确定在环境中跟踪对象的估计位置,该轨迹至少部分地基于机器学习模型在第一时间之前接收到的附加传感器数据被确定;以及至少部分地基于位置和估计位置将对象与跟踪对象相关联;接收位置和轨迹的指示,作为来自机器学习模型的输出;以及至少部分地基于输出控制车辆。

R.根据段落Q所述的一个或多个非暂时性计算机可读介质,其中,位置和估计位置与第一时间相关联,并且其中,跟踪对象在第一时间之前穿越轨迹。

S.根据段落Q至R中任一个所述的一个或多个非暂时性计算机可读介质,其中,附加传感器数据表示在第一时间之前的一段时间内的对象。

T.根据段落Q至S中任一个所述的一个或多个非暂时性计算机可读介质,其中,机器学习模型进一步被配置为:至少部分地基于将对象与被跟踪对象相关联,更新跟踪对象所穿越的轨迹,使得轨迹与位置相交;并且将更新的轨迹存储在机器学习模型可访问的存储器中。

U.一种系统,包括:一个或多个处理器;以及一个或多个非暂时性计算机可读介质,其存储指令,指令当由一个或多个处理器执行时,使系统执行包括以下各项的操作:接收传感器数据,该传感器数据包括表示穿越环境的车辆的帧的按时间次序的第一集合;接收与传感器数据中表示的环境中的对象相关联的真实数据,该真实数据包括帧的按时间次序的第二集合,其至少指示与对象相关联的边界框、对象所穿越的轨迹以及将边界框与轨迹相关联的标识符;将传感器数据输入到与车辆相关联的机器学习模型中;从机器学习模型接收输出,该输出至少包括与对象相关联的预测边界框和对象所穿越的预测轨迹;确定真实数据与输出之间的差;以及至少部分地基于差达到或者超过阈值差,端对端地训练机器学习模型,使得真实数据与输出之间的差最小化。

V.根据段落U所述的系统,其中,传感器数据包括以下各项中的至少一个:图像数据、激光雷达数据、雷达数据或者飞行时间数据。

W.根据段落U至V中任一个所述的系统,其中:机器学习模型包括第一部分和第二部分,第一部分被配置为确定预测边界框,第二部分被配置为至少部分地基于预测边界框确定预测轨迹;以及端对端地训练机器学习模型包括训练机器学习模型的第一部分,使得第一部分的输出被定制为用作机器学习模型的第二部分的输入,第一部的输出至少包括预测边界框。

X.根据段落U至W中任一个所述的系统,其中:帧的按时间次序的集合的第一帧指示在当前时间在环境中对象的第一位置;以及帧的按时间次序的集合的第二帧指示对象在先前时间沿着轨迹的第二位置。

Y.一种方法,包括:接收与穿越环境的车辆相关联的传感器数据,该传感器数据表示在一段时间内环境中的对象;接收与传感器数据相关联的真实数据,该真实数据指示至少指示在环境中对象的位置的边界框;将传感器数据输入到机器学习模型中;从机器学习模型接收输出,该输出至少包括指示在环境中对象的预测位置的预测边界框;确定位置与预测位置之间的差;以及至少部分地基于差改变机器学习模型的参数以最小化该差。

Z.根据段落Y所述的方法,其中,改变机器学习模型的参数包括端对端地训练机器学习模型,使得机器学习模型的第一部分和机器学习模型的第二部分各自至少部分地基于输出被训练。

AA.根据段落Y至Z中任一个所述的方法,其中,机器学习模型包括第一部分和第二部分,第一部分被配置为确定预测边界框,第二部分被配置为至少部分地基于预测边界框确定预测轨迹。

BB.根据段落Y至AA中任一个所述的方法,其中,差是第一差,真实数据是进一步指示对象所穿越的轨迹,并且输出进一步包括对象所穿越的预测轨迹,该方法进一步包括:确定轨迹与预测轨迹之间的第二差;并且其中,改变机器学习模型的参数是进一步至少部分地基于该第二差。

CC.根据段落Y至BB中任一个所述的方法,其中,差是第一差,边界框是进一步指示对象的定向,并且预测边界框是进一步指示对象的预测定向,该方法进一步包括:确定对象的定向与对象的预测定向之间的第二差;并且其中,改变机器学习模型的参数是进一步至少部分地基于该第二差。

DD.根据段落Y至CC中任一个所述的方法,其中,改变机器学习模型的参数包括至少部分地基于差更新机器学习模型的软件组件。

EE.根据段落Y至DD中任一个所述的方法,其中,传感器数据包括以下各项中的至少一个:图像数据;激光雷达数据;雷达数据;或者飞行时间数据。

FF.根据段落Y至EE中任一个所述的方法,其中,对象是另一车辆、行人或者骑自行车的人中的至少一个。

GG.根据段落Y至FF中任一个所述的方法,其中,真实数据进一步包括将对象所穿越的轨迹与边界框相关联的标识符。

HH.根据段落Y至GG中任一个所述的方法,进一步包括,在改变机器学习模型的参数之后,将机器学习模型发送到车辆以用于穿越环境。

II.根据段落Y至HH中任一个所述的方法,其中,机器学习模型包括:第一部分,其被配置为确定预测边界框,该预测边界框指示在环境中对象的位置;以及第二部分,其被配置为:至少部分地基于与对象相关联的跟踪数据确定在环境中对象的估计位置;至少部分地基于位置和估计位置将预测边界框与跟踪数据相关联;以及至少部分地基于位置和跟踪数据确定对象所穿越的预测轨迹。

JJ.一个或多个非暂时性计算机可读介质,其存储指令,指令当由一个或多个处理器执行时,使一个或多个处理器执行包括以下各项的操作:接收与穿越环境的车辆相关联的传感器数据,该传感器数据表示在一段时间内环境中的对象;接收与传感器数据相关联的真实数据,该真实数据指示至少指示在环境中对象的位置的边界框;将传感器数据输入到机器学习模型中;从机器学习模型接收输出,该输出至少包括指示对象在环境中的预测位置的预测边界框;确定位置与预测位置之间的差;以及至少部分地基于差改变机器学习模型的参数以最小化该差。

KK.根据段落JJ所述的一个或多个非暂时性计算机可读介质,其中,改变机器学习模型的参数包括端对端地训练机器学习模型,使得机器学习模型的第一部分和机器学习模型的第二部分各自至少部分地基于输出被训练。

LL.根据段落JJ至KK中任一个所述的一个或多个非暂时性计算机可读介质,其中,机器学习模型包括第一部分和第二部分,第一部分被配置为确定预测边界框,第二部分被配置为至少部分地基于预测边界框确定预测轨迹。

MM.根据段落JJ至LL中任一个所述的一个或多个非暂时性计算机可读介质,其中,差是第一差,真实数据进一步指示对象所穿越的轨迹,并且输出进一步包括对象所穿越的预测轨迹,该方法进一步包括:确定轨迹与预测轨迹之间的第二差;并且其中,改变机器学习模型的参数是进一步至少部分地基于该第二差。

NN.根据段落JJ至MM中任一个所述的一个或多个非暂时性计算机可读介质,其中,改变机器学习模型的参数包括至少部分地基于差更新机器学习模型的软件组件。

虽然上述示例条款是关于一种特定实现方式进行描述的,但是应该理解,在本文的上下文中,示例条款的内容还可以经由方法、设备、系统、计算机可读介质和/或其他实现方式来被实现。

结论

虽然已经描述了本文所述技术的一个或多个示例,但是各种改变、添加、置换及其等同物都被包括在本文所述的技术的范围内。

在示例的描述中,参考构成本文一部分的附图,附图通过图示的方式示出了所要求保护的主题的具体示例。应当理解,可以使用其他示例,并且可以进行改变或者更改,例如结构改变。这样的示例、改变或者更改不一定偏离关于所要求保护的主题的范围。虽然本文中的步骤可以以特定次序呈现,但是在一些情况下,可以改变次序,使得在不改变所描述的系统和方法的功能的情况下在不同时间或者以不同次序提供特定输入。所公开的过程也可以以不同的次序执行。另外地,本文中的各种计算不需要按照所公开的次序来执行,并且可以容易地实现使用计算的替代次序的其他示例。除了重新排序,计算还可以被分解为具有相同结果的子计算。

相关技术
  • 用于基于传感器数据的时间连续性来诊断车辆的感知系统的系统和方法
  • 一种感知疏水系统及具有该感知疏水系统的无人驾驶车辆
技术分类

06120116679857