CN114080634B - 使用锚定轨迹的代理轨迹预测 - Google Patents

使用锚定轨迹的代理轨迹预测 Download PDF

Info

Publication number
CN114080634B
CN114080634B CN202080049032.4A CN202080049032A CN114080634B CN 114080634 B CN114080634 B CN 114080634B CN 202080049032 A CN202080049032 A CN 202080049032A CN 114080634 B CN114080634 B CN 114080634B
Authority
CN
China
Prior art keywords
trajectory
neural network
agent
data
trajectory prediction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202080049032.4A
Other languages
English (en)
Other versions
CN114080634A (zh
Inventor
Y.柴
B.萨普
M.班萨尔
D.安格洛夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Waymo LLC
Original Assignee
Waymo LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Waymo LLC filed Critical Waymo LLC
Publication of CN114080634A publication Critical patent/CN114080634A/zh
Application granted granted Critical
Publication of CN114080634B publication Critical patent/CN114080634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0027Planning or execution of driving tasks using trajectory prediction for other traffic participants
    • B60W60/00274Planning or execution of driving tasks using trajectory prediction for other traffic participants considering possible movement changes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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
    • B60W50/0097Predicting future conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0112Measuring and analyzing of parameters relative to traffic conditions based on the source of data from the vehicle, e.g. floating car data [FCD]
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0125Traffic data processing
    • G08G1/0129Traffic data processing for creating historical data or processing based on historical data
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0137Measuring and analyzing of parameters relative to traffic conditions for specific applications
    • G08G1/0145Measuring and analyzing of parameters relative to traffic conditions for specific applications for active traffic flow control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • B60W2554/4041Position
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • B60W2554/4044Direction of movement, e.g. backwards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)

Abstract

用于使用锚定轨迹进行代理轨迹预测的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。

Description

使用锚定轨迹的代理轨迹预测
技术领域
本说明书涉及预测环境中的代理(agent)的未来轨迹。
背景技术
环境可以是真实世界环境,并且代理可以是例如环境中的车辆。预测代理的未来轨迹是(例如,由自主车辆进行的)运动规划所需的任务。
自主车辆包括自动驾驶汽车、船只和飞机。自主车辆使用各种车载传感器和计算机系统来检测附近的对象,并且使用这种检测来做出控制和导航决策。
一些自主车辆具有实施用于各种预测任务(例如,图像内的对象分类)的神经网络、其他类型的机器学习模型或两者的车载计算机系统。例如,可以使用神经网络来确定车载相机所捕获的图像很可能是附近汽车的图像。神经网络(或者为简洁起见,网络)是采用多层操作从一个或多个输入中预测一个或多个输出的机器学习模型。神经网络通常包括位于输入层与输出层之间的一个或多个隐藏层。每一层的输出用作网络中另一层(例如,下一个隐藏层或输出层)的输入。
神经网络的每一层都指定了要对该层的输入执行的一个或多个变换操作。一些神经网络层具有被称为神经元的操作。每个神经元接收一个或多个输入,并且生成由另一神经网络层接收的输出。通常,每个神经元从其他神经元接收输入,并且每个神经元向一个或多个其他神经元提供输出。
神经网络的架构规定了什么层被包括在网络中及其属性,以及网络的每一层的神经元是如何连接的。换句话说,该架构指定了哪些层将其输出作为输入提供给哪些其他层,以及如何提供输出。
每一层的变换操作由安装有实施变换操作的软件模块的计算机来执行。因此,被描述为执行操作的层意味着实施该层的变换操作的计算机执行这些操作。
每一层使用该层的参数集的当前值生成一个或多个输出。因此,训练神经网络涉及连续地对输入执行前向传递、计算梯度值以及使用计算的梯度值(例如,使用梯度下降)更新每一层的参数集的当前值。一旦神经网络被训练,最终的参数值集合可以用于在生产系统中进行预测。
发明内容
本说明书总体上描述了一种被实施为在一个或多个位置的一个或多个计算机上的计算机程序的、预测环境中的代理的未来轨迹的系统。
根据第一方面,提供了一种用于预测环境中的车辆附近的代理的未来轨迹的系统。该系统获得表征该代理的嵌入,并且使用轨迹预测神经网络处理该嵌入,以生成表征在当前时间点之后代理的未来轨迹的轨迹预测输出。轨迹预测输出包括表征代理的未来轨迹与多个锚定轨迹中的每个锚定轨迹的预测相似性的数据。每个锚定轨迹表征代理的可能未来轨迹,并且包括指定环境中多个航点空间位置的序列的数据,每个航点空间位置对应于相应的未来时间点。该系统向车辆的规划系统提供轨迹预测输出,以生成规划车辆的未来轨迹的规划决策。
本说明书中描述的主题可以在特定实施例中实施,以便实施一个或多个以下优点。
本说明书中描述的系统可以生成轨迹预测输出,轨迹预测输出表征代理的未来轨迹与多个“锚定”轨迹中的每个“锚定”轨迹的预测相似性。每个锚定轨迹隐含地对应于代理的可能高级意图,例如,执行掉头、改变车道或停车。对于每个锚定轨迹,轨迹预测输出还可以表征代理如何执行与锚定轨迹相对应的意图的不确定性。
该系统可以使用通过神经网络模型的一次前向传递来有效地生成代理的轨迹预测输出,并且轨迹预测输出可以例如由概率分布参数集来紧凑地表示。相比之下,一些传统的轨迹预测系统生成由一些参数表示的输出,这些参数的数量比表示由本说明书中描述的系统生成的轨迹预测输出所需的参数数量大几个数量级。此外,一些传统的轨迹系统不是生成单个轨迹预测输出,而是重复生成表征代理的多个不同的可能未来轨迹的输出。因此,通过生成单个紧凑的轨迹预测输出,本说明书中描述的系统可以比一些传统的轨迹预测系统消耗更少的计算资源(例如,内存资源)。
本说明书中描述的系统可以比一些传统的轨迹预测系统更准确地生成表征代理的未来轨迹的轨迹预测输出。例如,通过表征代理的未来轨迹中固有的不确定性,系统可以比预测代理的单个最可能的未来轨迹的一些传统系统更准确地生成轨迹预测输出。作为另一示例,通过基于捕获可能未来轨迹的分布模式的锚定轨迹集合生成轨迹预测输出,系统可以避免一些传统系统所经历的“模式崩溃”。经历模式崩溃的传统系统可以生成代理的多个预测未来轨迹,而这些轨迹与代理的未来轨迹的单个确定性估计相差很小。
本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐述。根据描述、附图和权利要求,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1是示例系统的示意图。
图2是生成代理的轨迹预测的图示。
图3是用于生成轨迹预测输出的示例过程的流程图。
图4是用于训练轨迹预测系统的示例过程的流程图。
不同附图中的相似附图标记和名称表示相似元素。
具体实施方式
本说明书描述了车辆(例如,自主或半自主车辆)如何使用经训练的机器学习模型(在本说明书中称为“轨迹预测系统”)来为环境中的车辆附近的一个或多个周围代理中的每个代理生成相应的轨迹预测输出。
在本说明书中,在不失普遍性的情况下,“周围代理”可以是指车辆、自行车、行人、船只、无人机或环境中的任何其他移动对象。
本说明书还描述了如何使用车辆生成的训练示例来有效地训练轨迹预测系统以准确且可靠地进行预测。
图1是示例系统100的示意图。系统100包括车载系统110和训练系统120。
车载系统110位于车辆102上。图1中的车辆102被示出为汽车,但是车载系统110可以位于任何适当的车辆类型上。车辆102可以是确定并执行全自主驾驶决策以便在环境中导航的全自主车辆。车辆102也可以是使用预测来辅助人类驾驶员的半自主车辆。例如,如果预测指示人类驾驶员即将与另一车辆碰撞,则车辆102可以自主地应用刹车。
车载系统110包括一个或多个传感器子系统130。传感器子系统130包括接收电磁辐射的反射的组件的组合,例如,检测激光的反射的激光雷达系统、检测无线电波的反射的雷达系统以及检测可见光的反射的相机系统。
由给定传感器生成的传感器数据通常指示所反射的辐射的距离、方向和强度。例如,传感器可以在特定方向上发送一个或多个电磁辐射脉冲,并且可以测量任何反射的强度以及接收反射的时间。距离可以通过确定脉冲与其相应的反射之间需要多长时间来计算。传感器可以连续地扫描特定空间的角度、方位或两者。例如,扫描方位可以允许传感器沿着相同视线检测多个对象。
传感器子系统130或车辆102的其他组件也可以将来自一个或多个传感器的一个或多个原始传感器测量值的组分类为另一代理的测量。一组传感器测量值可以用各种方式中的任何一种来表示,这依赖于被捕获的传感器测量值的种类。例如,每组原始激光传感器测量值可以被表示为三维点云,其中每个点在特定的二维或三维坐标空间中具有强度和位置。在一些实施方式中,位置被表示为范围和高度对(pair)。每组相机传感器测量值可以被表示为图像斑块(image patch),例如,RGB图像斑块。
一旦传感器子系统130将一组或多组原始传感器测量值分类为相应的其他代理的测量,传感器子系统130就可以将原始传感器测量值编译成原始数据132的集合,并且将原始数据132传送到数据表示系统140。
同样在车辆102上的数据表示系统140从传感器子系统130接收原始传感器数据132,并且生成场景数据142。场景数据142表征截至当前时间点车辆102周围环境的当前状态。
例如,对于环境中的所有周围代理,场景数据可以表征当前时间点的当前状态和一个或多个相应先前时间点的先前状态。换句话说,对于环境中的所有周围代理,场景数据可以包括表征直到当前时间点在环境中的代理的先前轨迹的数据。代理在某一时间点的状态可以包括代理在该时间点的位置以及可选地还有在该时间点的预先确定的运动参数集的值。作为特定示例,运动参数可以包括代理的航向、代理的速度和/或代理的加速度。在一些实施方式中,场景数据还包括表征车辆在当前时间点的当前状态和车辆在一个或多个相应先前时间点的先前状态的数据。在一些实施方式中,场景数据还包括表征环境的特征的数据。这些特征可以包括:(i)环境的动态特征,例如,在当前时间点的交通灯状态;(ii)环境的静态特征,例如,表征车道连通性、车道类型、停车线、速度限制等中的一个或多个的道路图形数据;或者(iii)两者。
作为特定示例,场景数据可以是从自上而下(top-down)的角度表征环境的三维数据表示。换句话说,场景数据可以包括每个时间点的环境的一个或多个自上而下渲染的图像,这种图像包括在该时间点对环境中的周围代理的描绘。例如,场景数据可以包括每个时间点的环境的单个自上而下渲染的图像,其中,在给定时间点的自上而下渲染的图像中,周围代理可以基于它们在该给定时间点的位置和运动而被描绘为自上而下渲染的图像中的边界框。边界框是图像中标识相应对象的边界或边缘的像素框。在一些实施方式中,自上而下渲染的图像还包括用于描绘在当前时间点的道路车道和其他道路图形特征或环境的其他特征的附加的渲染的图像。
数据表示系统140向也在车辆102上的轨迹预测系统150提供场景数据142。
轨迹预测系统150处理场景数据142,以针对一个或多个周围代理中的每个代理生成相应的轨迹预测输出152。给定代理的轨迹预测输出152表征了代理在当前时间点之后的未来轨迹。
更具体地,给定代理的轨迹预测输出152包括表征代理的未来轨迹与多个锚定轨迹中的每个锚定轨迹的预测相似性的数据。每个锚定轨迹表征代理在当前时间点之后的不同的可能未来轨迹,并且包括指定环境中的多个航点空间位置的序列的数据,每个航点空间位置对应于代理在未来时间点之后的相应未来时间点的可能位置。换句话说,每个锚定轨迹标识环境中周围代理在当前时间点之后可能穿越的不同的航点位置序列。
下面将参考图2和图3更详细地描述生成轨迹预测输出。
车载系统110还包括规划系统160。规划系统160可以为车辆102做出自主或半自主驾驶决策,例如,通过生成表征车辆102未来将采取的路径的规划车辆路径来为车辆102做出自主或半自主驾驶决策。
车载系统110可以将轨迹预测系统150所生成的轨迹预测输出152提供给车辆102的一个或多个其他车载系统,例如规划系统160和/或用户界面系统165。
当规划系统160接收到轨迹预测输出152时,规划系统160可以使用轨迹预测输出152来生成规划车辆未来轨迹的规划决策,即生成新的规划车辆路径。例如,轨迹预测输出152可以包含潜在地导致碰撞的、对特定周围代理可能在特定未来时间点插入(cut)车辆102前方的预测。在该示例中,规划系统160可以生成避免潜在碰撞的新规划车辆路径,并且例如通过自主控制车辆的转向来使车辆102遵循新规划路径,并且避免潜在碰撞。
当用户界面系统165接收到轨迹预测输出152时,用户界面系统165可以使用轨迹预测输出152向车辆102的驾驶员呈现信息,以帮助驾驶员安全地操作车辆102。用户界面系统165可以通过任何适当的方式向车辆102的驾驶员呈现信息,例如,通过经由车辆102的扬声器系统发送的音频消息或者通过代理中的视觉显示系统(例如,车辆102的仪表板上的LCD显示器)上显示的警报。在特定示例中,轨迹预测输出152可以包含潜在地导致碰撞的、对特定周围代理很可能插入车辆102前方的预测。在该示例中,用户界面系统165可以用指令向车辆102的驾驶员呈现警报消息,以调整车辆102的轨迹来避免碰撞,或者通知车辆102的驾驶员很可能与特定周围代理碰撞。
为了生成轨迹预测输出152,轨迹预测系统150可以使用经训练的参数值195,即从训练系统120中的轨迹预测模型参数存储190中获得的、轨迹预测系统150的经训练的模型参数值。
训练系统120通常被托管(host)在数据中心124内,数据中心124可以是在一个或多个位置具有数百或数千个计算机的分布式计算系统。
训练系统120包括训练数据存储170,训练数据存储170存储用于训练轨迹预测系统的所有训练数据,即用于确定轨迹预测系统150的经训练的参数值195的所有训练数据。训练数据存储170从现实世界中运行的代理接收原始训练示例。例如,训练数据存储170可以从车辆102和与训练系统120通信的一个或多个其他代理接收原始训练示例155。原始训练示例155可以由训练系统120处理以生成新训练示例。原始训练示例155可以包括能用作新训练示例的输入的场景数据,即像场景数据142一样。原始训练示例155还可以包括表征在一个或多个未来时间点车辆102周围的环境状态的结果数据。该结果数据可以用于生成车辆附近的一个或多个代理在由场景数据表征的时间点的地面真实(ground truth)轨迹。每个地面真实轨迹标识了相应代理在未来时间点所穿越的(从结果数据中推导出的)实际轨迹。例如,地面真实轨迹可以标识代理在多个未来时间点中的每个时间点所移动到的、以代理为中心的坐标系中的空间位置。
训练数据存储170向也被托管在训练系统120中的训练引擎180提供训练示例175。训练引擎180使用训练示例175来更新将由轨迹预测系统150使用的模型参数,并且将更新后的模型参数185提供给轨迹预测模型参数存储190。一旦轨迹预测系统150的参数值已经被完全训练,训练系统120就可以例如通过有线或无线连接将经训练的参数值195传送到轨迹预测系统150。
下面参考图4更详细地描述训练轨迹预测系统150。
图2是使用嵌入神经网络210和轨迹预测神经网络220为车辆附近的代理生成轨迹预测的图示。例如,神经网络可以是轨迹预测系统(例如,图1所示的在车辆上的轨迹预测系统150)的一部分。
嵌入神经网络210接收表征车辆周围的环境的当前状态的输入场景数据202(也称为嵌入神经网络输入)。
嵌入神经网络210是处理场景数据202以生成场景特征212作为输出的前馈神经网络,场景特征212对场景中的各个代理的状态以及代理之间的交互进行编码。场景特征212也被称为嵌入神经网络输出。
例如,当场景数据202是从自上而下的角度表征环境的三维数据表示时,嵌入神经网络210可以是卷积神经网络,即包括一个或多个卷积神经网络层的神经网络,并且场景特征212也可以是从自上而下的角度表征环境的三维数据表示。例如,场景数据202和场景特征212可以具有相同的空间分辨率,但是场景特征212可以具有更大数量的深度通道。作为另一示例,场景数据202和场景特征212可以具有不同的空间分辨率,其中场景特征212具有更大数量的深度通道。作为特定示例,嵌入神经网络210可以具有包括卷积神经网络层的多个块的ResNet架构,每个块之后是来自该块的输入的残差连接。
然后,系统可以从场景特征212中为应该为其生成轨迹预测的车辆附近的每个代理生成相应的嵌入。代理的嵌入表征了直到当前时间点的代理。
为了生成代理的嵌入,系统从场景特征212中执行“定向裁剪(oriented crop)”214。具体地,系统裁剪出与代理相对应的场景特征212的部分,并且基于场景特征212的裁剪的部分来确定表征代理的嵌入。与给定代理相对应的场景特征212的部分可以是例如以场景特征212中代理的位置为中心的、场景特征212的固定大小部分。更具体地,裁剪被称为“定向”裁剪,因为系统将场景特征212的裁剪的部分旋转到以代理为中心的坐标系以生成嵌入。例如,系统可以使用可微分双线性扭曲来执行这种旋转。
因为所有感兴趣代理的所有嵌入都是从场景特征212中生成的,所以系统可以仅使用通过嵌入神经网络210的单次前向传递来生成所有感兴趣代理的嵌入。也就是说,给定代理的嵌入神经网络输入不仅表征给定代理,而且还表征直到当前时间点在环境中的一个或多个其他代理的轨迹,并且因此可以使用通过嵌入神经网络210的单次前向传递来生成所有代理的嵌入。
为了生成给定代理的轨迹预测,系统使用轨迹预测神经网络220(在图2中称为“以代理为中心的CNN”)来处理代理的嵌入。
轨迹预测神经网络220是被配置为处理嵌入以生成轨迹预测输出的神经网络,轨迹预测输出包括表征代理的未来轨迹与多个锚定轨迹中的每个锚定轨迹(即与固定数量的锚定轨迹中的每个锚定轨迹)的预测相似性的数据。
每个锚定轨迹表征代理的可能未来轨迹,并且包括指定环境中的多个航点空间位置的序列的数据,每个航点空间位置对应于代理在相应未来时间点的可能位置。也就是说,每个锚定轨迹定义了代理在当前时间点之后可能穿越的环境中的不同的可能未来路径。
通常,被包括在固定数量中的锚定轨迹是预先确定的,并且表示代理从任何给定的当前时间起可以执行的不同的可能行为集合。也就是说,锚定轨迹对于所有代理都是相同的,并且不依赖于场景数据202或关于环境中的当前场景的任何其他信息。因为锚定轨迹也在以代理为中心的坐标系中,所以无论代理在当前场景中的当前位置如何,相同的锚定轨迹集合都可以用于任何代理。
通常,锚定轨迹是在轨迹预测系统的训练之前预先确定的。
作为特定示例,系统可以基于将用于训练轨迹预测系统的代理轨迹的训练集来确定一些或所有锚定轨迹。例如,系统可以将训练集中的轨迹聚类成固定数量的聚类,然后从每个聚类中选择代表性轨迹作为锚定轨迹。
作为另一示例,系统可以通过从可能轨迹的空间中均匀地采样轨迹来确定固定数量的锚定轨迹中的一些或所有锚定轨迹。
图2的示例可视化了场景数据202中表征的代理222的3个锚定轨迹230、240和250。从图2的示例中可以看出,轨迹预测输出已经将0.5的概率分配给轨迹230,将0.3的概率分配给轨迹240,将0.1的概率分配给轨迹250(其中固定数量的锚定轨迹中的其余轨迹具有0.1的组合概率)。分配给给定锚定轨迹的概率可以表示给定锚定轨迹将是与代理的未来轨迹最相似的锚定轨迹的可能性。
在一些实施方式中,对于每个锚定轨迹,轨迹预测输出还可以包括,表征对于锚定轨迹的每个航点空间位置的、依赖于该航点空间位置的概率分布的数据。给定航点空间位置的概率分布定义了代理将在与航点空间位置相对应的未来时间点占据该航点空间位置附近的相应空间位置的相应可能性。也就是说,假设代理遵循锚定轨迹,概率分布表示所预测的代理的实际未来轨迹可能偏离锚定轨迹的空间。换句话说,对于给定的锚定轨迹,在给定未来时间点的概率分布表示代理可能偏离给定锚定轨迹中的航点空间位置的空间,其中被分配较高概率的位置比被分配较低概率的位置更有可能偏离。
因此,在这些实施方式中,轨迹预测输出包括K个概率或其他相似性分数,K个锚定轨迹中的每个锚定轨迹有一个概率或其他相似性分数。如果每个锚定轨迹包括T个未来时间点,则轨迹预测输出还包括针对K个锚定轨迹中的每个锚定轨迹并且在T个未来时间点中的每个未来时间点的、表征概率分布的数据。因此,如果表征概率分布的数据包括D个值,则给定代理的轨迹预测输出包括K+K×T×D个值。
具体地,对于任何给定的航点空间位置,表征依赖于航点空间位置的概率分布的数据包括定义依赖于航点空间位置的参数概率分布的参数的数据。
作为特定示例,依赖于航点空间位置的参数概率分布可以是正态概率分布,并且定义正态概率分布的参数的数据可以包括(i)指定正态概率分布的均值相对于航点空间位置的偏移的偏移参数以及(ii)正态概率分布的协方差参数。例如,协方差参数可以在以代理为中心的坐标系中定义2×2协方差矩阵。在该示例中,轨迹预测输出包括每个锚定轨迹的相应相似性分数,并且对于每个锚定轨迹中的每个未来时间点,轨迹预测输出可以包括5个值:沿着x维度的平均偏移、沿着y维度的平均偏移、定义协方差矩阵的3个参数。因此,轨迹预测输出将包括K个相似性分数以及定义K个锚定轨迹内在未来时间点的概率分布的K×T×5个值。
作为另一特定示例,协方差可以是固定的,并且定义在给定未来时间点的正态分布的参数的数据只能包括给定未来时间点的偏移参数。
在图2的示例中,由概率分布定义的不确定性可以被看作是关于道路几何形状的,并且随着时间的推移对于每个轨迹都在增长。
神经网络220可以包括被配置为将嵌入映射到构成轨迹预测输出的K+K×T×D个值的卷积层的集合。替代地,神经网络220可以自回归地生成在不同未来时间点的概率分布,即,通过使用一个或多个循环神经网络层或其他自回归神经网络层将卷积层的输出映射到序列中每个未来时间点的概率分布参数。
图3是用于为车辆附近的代理生成轨迹预测输出的示例过程300的流程图。为方便起见,过程300将被描述为由位于一个或多个位置的一个或多个计算机的系统来执行。例如,根据本说明书适当编程的轨迹预测系统(例如,图1的轨迹预测系统150)可以执行过程300。
在任何给定的时间点,系统可以对车辆附近的一个或多个代理中的每个代理执行过程300。例如,系统可以对已经被传感器子系统识别为处于车辆附近的每个代理执行过程300,或者对所识别的代理的适当子集(例如,车辆的规划系统需要其轨迹预测的代理的适当子集)执行过程300。
系统获得表征直到当前时间点在环境中的车辆附近的代理的嵌入(步骤302)。
例如,如上所述,系统可以通过使用嵌入神经网络处理场景数据以生成场景特征(步骤304)然后裁剪与代理相对应的场景特征的部分以生成嵌入(步骤306)来获得嵌入。在一些情况下,系统将嵌入神经网络的裁剪部分旋转到以代理为中心的坐标系,以便生成嵌入。如上所述,系统可以仅使用通过嵌入神经网络的单次传递来为所有一个或多个代理生成嵌入。
系统使用轨迹预测神经网络来处理嵌入,以生成表征代理在当前时间点之后的未来轨迹的轨迹预测输出(步骤308)。
如上所述,轨迹预测输出包括表征代理的未来轨迹与多个锚定轨迹中的每个锚定轨迹的预测相似性的数据。例如,对于每个锚定轨迹,轨迹预测输出可以包括表示锚定轨迹将是与代理的未来轨迹最相似的轨迹的可能性的概率或其他相似性分数。
对于每个锚定轨迹,轨迹预测输出还可以包括表征对于锚定轨迹的每个航点空间位置的、依赖于该航点空间位置的概率分布的数据。给定航点空间位置的概率分布定义了代理将在与锚定轨迹中的航点空间位置相对应的未来时间点占据该航点空间位置附近的相应空间位置的可能性。
系统向车辆的规划系统提供轨迹预测输出,以生成规划车辆的未来轨迹的规划决策(步骤310)。
图4是用于训练轨迹预测系统的示例过程400的流程图。为方便起见,过程400将被描述为由位于一个或多个位置的一个或多个计算机的系统来执行。例如,根据本说明书适当编程的训练系统(例如,图1的训练系统120)可以执行过程400。
系统可以对从地面真实代理轨迹的训练集中采样的小批量的一个或多个地面真实代理轨迹中的每个地面真实代理轨迹执行过程400,以确定每个地面真实代理轨迹的相应模型参数更新。然后,系统可以组合(例如,平均或相加)相应模型参数更新以生成组合更新,然后例如根据用于训练的优化器(例如,Adam优化器、rmsProp优化器或随机梯度下降优化器)将组合更新应用于模型参数的当前值。
通过以这种方式对不同小批量的地面真实代理轨迹重复地更新模型参数值,系统可以训练轨迹预测系统以生成准确的轨迹预测输出。
系统获得训练示例,训练示例包括代理截至第一时间点的场景数据,以及标识代理在第一时间点之后所遵循的实际轨迹的代理的地面真实代理轨迹(步骤402)。
系统使用如上所述的轨迹预测系统并根据模型参数的当前值(即根据嵌入神经网络和轨迹预测神经网络的参数的当前值)来处理场景数据,以生成轨迹预测输出(步骤404)。
对于每个锚定轨迹,锚定轨迹系统确定该锚定轨迹与地面真实轨迹的相似性(步骤406)。例如,系统可以将锚定轨迹与地面真实轨迹之间的相似性计算为两个轨迹之间的状态序列空间中的l2范数距离或其他适当的距离度量。
系统通过计算相对于损失函数的模型参数的梯度来确定对模型参数的当前值的更新(步骤408),该损失函数基于相似性、地面真实轨迹和轨迹预测输出。因为系统联合地训练嵌入神经网络和轨迹预测神经网络,所以系统可以反向传播损失函数的梯度,以通过轨迹预测神经网络并且到嵌入神经网络中。
在一些情况下,损失函数采用地面真实轨迹与锚定轨迹之一之间的硬分配,并且因此仅依赖于与地面真实轨迹最相似的锚定轨迹。在这些情况下,损失函数可以满足:
其中,K是锚定轨迹的总数,θ是模型参数,是指示函数,该指示函数在索引k与地面真实轨迹的最相似锚定轨迹的索引/>相同时为1,并且每当索引k与索引/>不相同时为0,π(ak|xm;θ)是在给定场景数据xm的情况下被分配给轨迹预测输出中的锚定轨迹k的概率,T是锚定轨迹中的时间点的总数,/>是通过正态分布分配给地面真实轨迹中在时间t的航点空间位置/>的概率,该正态分布具有平均值/>和协方差参数/>其中/>是锚定轨迹k中在时间t的航点空间位置,/>是正态概率分布的均值相对于锚定轨迹k的轨迹预测输出中在时间t的航点空间位置的偏移,并且/>是锚定轨迹k的轨迹预测输出中在时间t的航点空间位置的协方差参数。
在一些其他情况下,损失函数采用地面真实轨迹与锚定轨迹之间的软分配,并且因此依赖于所有锚定轨迹,其中任何给定锚定轨迹的损失的贡献依赖于给定锚定轨迹与地面真实轨迹之间的相似性。在这些情况下,上述损失函数中的指示项将基于轨迹k与地面真实轨迹之间的相似性而被向锚定轨迹k分配权重的项所取代,该权重依赖于锚定轨迹k之间的相似性。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路中、在有形体现的计算机软件或固件中、在包括本说明书中所公开的结构及其结构等同物的计算机硬件中、或者在它们中的一个或多个的组合中实施。本说明书中描述的主题的实施例可以被实施为一个或多个计算机程序,即编码在有形的非暂时性存储介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机存储介质可以是机器可读存储设备、机器可读存储基底、随机或串行存取存储器设备、或者它们中的一个或多个的组合。替代地或附加地,程序指令可以被编码在人工生成的传播信号(例如,机器生成的电、光或电磁信号)上,其被生成来对信息进行编码,以传输到合适的接收器装置供数据处理装置执行。
术语“数据处理装置”是指数据处理硬件,并且涵盖用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、或者多个处理器或计算机。该装置还可以是或进一步包括现成的或定制的并行处理子系统,例如GPU或另一种专用处理子系统。该装置还可以是或进一步包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中的一个或多个的组合的代码。
计算机程序(也可以被称为或描述为程序、软件、软件应用、小应用、模块、软件模块、脚本或代码)可以用任何形式的编程语言来编写,包括编译或解释语言或者声明性或过程性语言,并且它可以以任何形式来部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。程序可以但不是必须对应于文件系统中的文件。程序可以被存储在保存其他程序或数据的文件的一部分(例如,标记语言文档中所存储的一个或多个脚本)中,被存储在专用于所讨论的程序的单个文件中,或者被存储在多个协同文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以被部署为在一个计算机上执行,或者在位于一个站点的或分布在多个站点并通过数据通信网络互连的多个计算机上执行。
对于由一个或多个计算机组成的系统来说,被配置为执行特定的操作或动作意味着该系统已经在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在操作中使得该系统执行这些操作或动作。对于一个或多个计算机程序来说,被配置为执行特定操作或动作意味着该一个或多个程序包括指令,当该指令由数据处理装置执行时,使得该装置执行这些操作或动作。
如在本说明书中所使用的,“引擎”或“软件引擎”是指提供不同于输入的输出的软件实施的输入/输出系统。引擎可以是经编码的功能块,诸如库、平台、软件开发工具包(“SDK”)或对象。每个引擎可以在任何适当类型的计算设备上实施,例如,服务器、移动电话、平板计算机、笔记本计算机、音乐播放器、电子书阅读器、膝上型或台式计算机、PDA、智能电话、或者包括一个或多个处理器和计算机可读介质的其他固定或便携式设备。另外,两个或更多个引擎可以在相同的计算设备上实施,或者在不同的计算设备上实施。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机来执行,以通过对输入数据进行操作并生成输出来执行功能。这些过程和逻辑流程也可以由专用逻辑电路(例如现,FPGA或ASIC)来执行,或者由专用逻辑电路和一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可以基于通用微处理器或专用微处理器或两者,或者任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以由专用逻辑电路来补充,或者包含在专用逻辑电路中。通常,计算机还将包括或可操作地耦合到用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),以从其接收数据,或向其发送数据,或两者兼有。然而,计算机不需要具有这样的设备。此外,计算机可以备嵌入到另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器、或者便携式存储设备(例如,通用串行总线(USB)闪存驱动器),仅举几例。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如:半导体存储器设备,例如,EPROM、EEPROM和闪存设备;磁盘,例如,内部硬盘或可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。
为了提供与用户的交互,本说明书中所描述的主题的实施例可以在计算机上实施,该计算机具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示)监视器)以及用户可以通过其向计算机提供输入的键盘和定点设备(例如,鼠标、轨迹球、或者存在敏感显示器或其他表面)。也可以使用其他种类的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备传送文档和从用户所使用的设备接收文档来与用户交互;例如,通过响应于从网络浏览器接收的请求将网页传送到用户设备上的网络浏览器。此外,计算机可以通过向个人设备(例如,智能电话)传送文本消息或其他形式的消息、运行消息应用并从用户接收响应消息作为应答来与用户交互。
本说明书中所描述的主题的实施例可以在计算系统中实施,计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如具有图形用户界面、网络浏览器或用户可以通过其与本说明书中所描述的主题的实施方式交互的应用的客户端计算机),或者一个或多个这样的后端、中间件或前端组件的任意组合。该系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如,互联网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络交互。客户端和服务器的关系是借助运行在各自计算机上且彼此之间具有客户端-服务器关系的计算机程序而产生的。在一些实施例中,服务器将数据(例如,HTML页面)发送到用户设备,例如,为了向与充当客户端的设备交互的用户显示数据和从其接收用户输入。在用户设备处生成的数据(例如,用户交互的结果)可以在服务器处从该设备接收。
虽然本说明书包含许多具体的实施细节,但是这些不应被解释为对任何发明的范围或对所要求保护的范围的限制,而是对特定发明的特定实施例可能特有的特征的描述。本说明书中在分离的实施例的上下文中描述的某些特征也可以在单个实施例中以组合方式来实施。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地实施或者在任意合适的子组合中实施。此外,尽管特征可以在上面被描述为在某些组合中起作用,并且甚至最初被这样要求保护,但是在一些情况下,来自所要求保护的组合的一个或多个特征可以从该组合中删除,并且所要求保护的组合可以指向子组合或子组合的变体。
类似地,虽然在附图中以特定次序描述了操作,但是这不应被理解为要求以所示的特定次序或顺序次序来执行这些操作或者要求执行所有示出的操作来获得期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应该被理解为在所有实施例中都需要这种分离,并且应该理解,所描述的程序组件和系统通常可以集成在单个软件产品中或者封装到多个软件产品中。
已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。例如,权利要求中列举的动作可以以不同的次序来执行,并且仍然获得期望的结果。作为一个示例,附图中所描述的过程不一定需要所示的特定次序或顺序次序来获得期望的结果。在某些情况下,多任务和并行处理可能是有利的。

Claims (14)

1.一种由一个或多个数据处理装置执行的方法,所述方法包括:
使用从车辆的传感器子系统接收的传感器数据生成场景数据,其中场景数据包括表征直到当前时间点的在环境中在所述车辆附近的代理的先前轨迹的数据;以及
获得表征直到当前时间点的在环境中在所述车辆附近的所述代理的嵌入,其中,获得所述嵌入包括:
使用轨迹预测系统的嵌入神经网络将所述场景数据作为嵌入神经网络输入进行处理,以生成嵌入神经网络输出,以及
根据所述嵌入神经网络输出生成所述嵌入;
使用所述轨迹预测系统的轨迹预测神经网络处理所述嵌入以生成轨迹预测输出,所述轨迹预测输出表征在所述当前时间点之后所述代理的未来轨迹,其中:
所述轨迹预测输出包括表征所述代理的所述未来轨迹与多个预先确定的锚定轨迹中的每个锚定轨迹的预测相似性的数据,其中,所述预先确定的锚定轨迹与所述场景数据或关于所述环境中的当前场景的任何其他信息无关;以及
每个锚定轨迹表征所述代理的可能未来轨迹,并且包括指定所述环境中的多个航点空间位置的序列的数据,每个航点空间位置对应于所述代理在相应未来时间点的可能位置;以及
向所述车辆的规划系统提供所述轨迹预测输出,以生成规划所述车辆的未来轨迹的规划决策。
2.根据权利要求1所述的方法,其中,对于所述多个预先确定的锚定轨迹中的每个锚定轨迹,所述轨迹预测输出还包括:
对于所述锚定轨迹的每个航点空间位置,表征依赖于所述航点空间位置的概率分布的数据,所述概率分布定义所述代理将在与所述航点空间位置相对应的未来时间点占据所述航点空间位置附近的相应空间位置的相应可能性。
3.根据权利要求2所述的方法,其中,表征依赖于所述航点空间位置的概率分布的数据包括定义依赖于所述航点空间位置的参数概率分布的参数的数据。
4.根据权利要求3所述的方法,其中,依赖于所述航点空间位置的所述参数概率分布是正态概率分布,并且定义所述正态概率分布的参数的数据包括(i)指定所述正态概率分布的均值相对于所述航点空间位置的偏移的偏移参数以及(ii)所述正态概率分布的协方差参数。
5.根据任一前述权利要求所述的方法,其中,所述轨迹预测神经网络包括一个或多个卷积神经网络层。
6.根据权利要求1-3中任一项所述的方法,其中,所述轨迹预测神经网络包括一个或多个循环神经网络层。
7.根据权利要求1-3中任一项所述的方法,其中,根据所述嵌入神经网络输出生成所述嵌入包括:
裁剪与所述代理相对应的所述嵌入神经网络输出的部分;以及
基于所述嵌入神经网络输出的裁剪的部分来确定表征所述代理的嵌入。
8.根据权利要求7所述的方法,其中,所述嵌入神经网络输入还表征:
直到所述当前时间点在所述环境中的一个或多个其他代理的轨迹;和/或
(i)包括交通灯状态的所述环境的动态特征,以及(ii)包括车道连通性、车道类型、停车线和速度限制中的一个或多个的所述环境的静态特征。
9.根据权利要求7所述的方法,其中,所述嵌入神经网络输入和所述嵌入神经网络输出各自包括从自上而下的角度表征所述环境的相应三维数据表示。
10.根据权利要求7所述的方法,其中,所述嵌入神经网络包括一个或多个卷积神经网络层。
11.根据权利要求7所述的方法,其中,基于所述嵌入神经网络输出的裁剪的部分来确定表征所述代理的所述嵌入包括:将所述嵌入神经网络输出的裁剪的部分旋转到以代理为中心的坐标系。
12.根据权利要求11所述的方法,其中,预先确定所述锚定轨迹包括从代理轨迹的训练集中聚类代理轨迹。
13.一种用于使用锚定轨迹的代理轨迹预测的系统,包括:
一个或多个计算机;以及
存储指令的一个或多个存储设备,当所述指令被所述一个或多个计算机执行时,使得所述一个或多个计算机执行权利要求1-12中任一项所述的相应方法的操作。
14.一个或多个非暂时性计算机存储介质,其存储指令,所述指令当被一个或多个计算机执行时,使得所述一个或多个计算机执行权利要求1-12中任一项所述的相应方法的操作。
CN202080049032.4A 2019-07-03 2020-07-02 使用锚定轨迹的代理轨迹预测 Active CN114080634B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962870399P 2019-07-03 2019-07-03
US62/870,399 2019-07-03
PCT/US2020/040682 WO2021003379A1 (en) 2019-07-03 2020-07-02 Agent trajectory prediction using anchor trajectories

Publications (2)

Publication Number Publication Date
CN114080634A CN114080634A (zh) 2022-02-22
CN114080634B true CN114080634B (zh) 2024-04-26

Family

ID=74066312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080049032.4A Active CN114080634B (zh) 2019-07-03 2020-07-02 使用锚定轨迹的代理轨迹预测

Country Status (6)

Country Link
US (2) US11618481B2 (zh)
EP (1) EP3977227A4 (zh)
JP (1) JP7459224B2 (zh)
KR (1) KR20220030270A (zh)
CN (1) CN114080634B (zh)
WO (1) WO2021003379A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6728495B2 (ja) * 2016-11-04 2020-07-22 ディープマインド テクノロジーズ リミテッド 強化学習を用いた環境予測
DE102019209736A1 (de) * 2019-07-03 2021-01-07 Robert Bosch Gmbh Verfahren zur Bewertung möglicher Trajektorien
US11754408B2 (en) * 2019-10-09 2023-09-12 Argo AI, LLC Methods and systems for topological planning in autonomous driving
US11912271B2 (en) 2019-11-07 2024-02-27 Motional Ad Llc Trajectory prediction from precomputed or dynamically generated bank of trajectories
US11926347B2 (en) * 2020-10-30 2024-03-12 Waymo Llc Conditional agent trajectory prediction
US11674806B2 (en) * 2021-02-25 2023-06-13 Navico Holding As Anchoring systems and methods for marine vessels
US11858514B2 (en) 2021-03-30 2024-01-02 Zoox, Inc. Top-down scene discrimination
US11810225B2 (en) * 2021-03-30 2023-11-07 Zoox, Inc. Top-down scene generation
US11753043B2 (en) * 2021-05-20 2023-09-12 Waymo Llc Predicting crossing behavior of agents in the vicinity of an autonomous vehicle
CN113256681B (zh) * 2021-05-26 2022-05-13 北京易航远智科技有限公司 基于时空注意力机制的行人轨迹预测方法
US20220391639A1 (en) * 2021-06-02 2022-12-08 Nvidia Corporation Techniques for classification with neural networks
CN113240198A (zh) * 2021-06-07 2021-08-10 兰州大学 一种基于tcn模型的港口船舶轨迹预测方法
US20220396289A1 (en) * 2021-06-15 2022-12-15 Nvidia Corporation Neural network path planning
US11993288B2 (en) 2021-12-29 2024-05-28 Waymo Llc Automated cut-in identification and classification
CN114757355B (zh) * 2022-04-08 2024-04-02 中国科学技术大学 轨迹数据集差异性度量方法、系统、设备及存储介质
CN116001807B (zh) * 2023-02-27 2023-07-07 安徽蔚来智驾科技有限公司 多场景轨迹预测方法、设备、介质及车辆

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914985A (zh) * 2014-04-25 2014-07-09 大连理工大学 一种混合动力客车未来车速轨迹预测方法
US8849737B1 (en) * 2011-03-18 2014-09-30 Rockwell Collins, Inc. Prediction method of predicting a future state of a system
CN108629978A (zh) * 2018-06-07 2018-10-09 重庆邮电大学 一种基于高维路网和循环神经网络的交通轨迹预测方法
CN109034448A (zh) * 2018-06-14 2018-12-18 重庆邮电大学 基于车辆轨迹语义分析和深度信念网络的轨迹预测方法
CN109272108A (zh) * 2018-08-22 2019-01-25 深圳市亚博智能科技有限公司 基于神经网络算法的移动控制方法、系统和计算机设备
KR101951595B1 (ko) * 2018-05-18 2019-02-22 한양대학교 산학협력단 모듈형 순환 신경망 구조 기반 차량 경로 예측 시스템 및 방법
CN109711557A (zh) * 2018-12-28 2019-05-03 西安航空学院 一种行车轨迹预测方法、系统、计算机设备及存储介质
CN109937343A (zh) * 2017-06-22 2019-06-25 百度时代网络技术(北京)有限公司 用于自动驾驶车辆交通预测中的预测轨迹的评估框架

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4062353B1 (ja) 2006-11-10 2008-03-19 トヨタ自動車株式会社 障害物進路予測方法、装置、およびプログラム
EP3448032B1 (en) * 2013-03-25 2022-10-19 Imax Corporation Enhancing motion pictures with accurate motion information
JP2017211691A (ja) 2016-05-23 2017-11-30 株式会社ツクタ技研 画像処理装置、画像処理方法、および画像処理プログラム
US10111043B1 (en) * 2017-04-24 2018-10-23 Uber Technologies, Inc. Verifying sensor data using embeddings
US10579063B2 (en) 2017-07-21 2020-03-03 Uatc, Llc Machine learning for predicting locations of objects perceived by autonomous vehicles
US11256983B2 (en) * 2017-07-27 2022-02-22 Waymo Llc Neural networks for vehicle trajectory planning
WO2019023628A1 (en) 2017-07-27 2019-01-31 Waymo Llc NEURAL NETWORKS FOR VEHICLE TRACK PLANNING
CN108229292A (zh) 2017-07-28 2018-06-29 北京市商汤科技开发有限公司 目标识别方法、装置、存储介质和电子设备
US10649458B2 (en) 2017-09-07 2020-05-12 Tusimple, Inc. Data-driven prediction-based system and method for trajectory planning of autonomous vehicles
US10562538B2 (en) 2017-11-22 2020-02-18 Uatc, Llc Object interaction prediction systems and methods for autonomous vehicles
US11169531B2 (en) * 2018-10-04 2021-11-09 Zoox, Inc. Trajectory prediction on top-down scenes
US11195418B1 (en) * 2018-10-04 2021-12-07 Zoox, Inc. Trajectory prediction on top-down scenes and associated model
US11023749B2 (en) * 2019-07-05 2021-06-01 Zoox, Inc. Prediction on top-down scenes based on action data

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8849737B1 (en) * 2011-03-18 2014-09-30 Rockwell Collins, Inc. Prediction method of predicting a future state of a system
CN103914985A (zh) * 2014-04-25 2014-07-09 大连理工大学 一种混合动力客车未来车速轨迹预测方法
CN109937343A (zh) * 2017-06-22 2019-06-25 百度时代网络技术(北京)有限公司 用于自动驾驶车辆交通预测中的预测轨迹的评估框架
KR101951595B1 (ko) * 2018-05-18 2019-02-22 한양대학교 산학협력단 모듈형 순환 신경망 구조 기반 차량 경로 예측 시스템 및 방법
CN108629978A (zh) * 2018-06-07 2018-10-09 重庆邮电大学 一种基于高维路网和循环神经网络的交通轨迹预测方法
CN109034448A (zh) * 2018-06-14 2018-12-18 重庆邮电大学 基于车辆轨迹语义分析和深度信念网络的轨迹预测方法
CN109272108A (zh) * 2018-08-22 2019-01-25 深圳市亚博智能科技有限公司 基于神经网络算法的移动控制方法、系统和计算机设备
CN109711557A (zh) * 2018-12-28 2019-05-03 西安航空学院 一种行车轨迹预测方法、系统、计算机设备及存储介质

Also Published As

Publication number Publication date
US20210001897A1 (en) 2021-01-07
CN114080634A (zh) 2022-02-22
KR20220030270A (ko) 2022-03-10
JP7459224B2 (ja) 2024-04-01
JP2022539250A (ja) 2022-09-07
US11618481B2 (en) 2023-04-04
WO2021003379A1 (en) 2021-01-07
EP3977227A1 (en) 2022-04-06
EP3977227A4 (en) 2023-01-25
US20230234616A1 (en) 2023-07-27

Similar Documents

Publication Publication Date Title
CN114080634B (zh) 使用锚定轨迹的代理轨迹预测
CN113272830B (zh) 行为预测系统中的轨迹表示
CN113366495B (zh) 搜索自主车辆传感器数据存储库
JP7239703B2 (ja) 領域外コンテキストを用いたオブジェクト分類
CN114341950A (zh) 占据预测神经网络
CN114830138A (zh) 训练轨迹评分神经网络以准确分配分数
CN113052321B (zh) 从短期意图和长期结果生成轨迹标记
US11727690B2 (en) Behavior prediction of surrounding agents
CN114514524A (zh) 多智能体模拟
CN114787739A (zh) 使用向量化输入的智能体轨迹预测
US20220169244A1 (en) Multi-modal multi-agent trajectory prediction
EP4052221A1 (en) Generating depth from camera images and known depth data using neural networks
CN114061581A (zh) 通过相互重要性对自动驾驶车辆附近的智能体排名
CN116194351A (zh) 使用目标位置的代理轨迹预测
EP4052190A1 (en) Spatio-temporal-interactive networks
EP4060626A1 (en) Agent trajectory prediction using context-sensitive fusion
US20210364637A1 (en) Object localization using machine learning
US20230040006A1 (en) Agent trajectory planning using neural networks
US11950166B2 (en) Predicting occupancy probabilities of surrounding agents
CN114846523A (zh) 使用记忆注意力的多对象跟踪
US20230082079A1 (en) Training agent trajectory prediction neural networks using distillation
US20220289209A1 (en) Evaluating multi-modal trajectory predictions for autonomous driving
US20230110391A1 (en) 3d sensing and visibility estimation
US20230082365A1 (en) Generating simulated agent trajectories using parallel beam search
CN114139697A (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
GR01 Patent grant
GR01 Patent grant