用于稀疏地表示以及存储地理和地图数据的系统的制作方法

文档序号:35282935发布日期:2023-09-01 03:12阅读:43来源:国知局
用于稀疏地表示以及存储地理和地图数据的系统的制作方法
用于稀疏地表示以及存储地理和地图数据的系统
相关申请的交叉引用
1.本技术要求于2020年12月18日提交的名称为“system for sparsely representing and storing geo graphic and map data”的美国专利申请17/247,646号的优先权,其全部内容通过引用并入本文。


背景技术:

2.自主车辆可以依赖大量环境数据和地图数据来帮助导航。然而,由于自主车辆所使用的环境数据和地图数据的图形性质和量,传输、存储和处理该环境数据和地图数据是资源密集和时间密集的。
附图说明
3.参考附图来描述详细描述。在图中,附图标记的最左边的数字标识该附图标记首次在其中出现的图。在不同的图中使用相同的附图标记表示相似或同样的组件或特征。
4.图1是示出根据本公开的实施方式的与多个自主车辆相关联的映射系统的示例架构的框图。
5.图2是示出根据本公开的实施方式的图1中的映射系统的示例架构的框图。
6.图3是示出根据本公开的实施方式的物理区域的稀疏表示的示例。
7.图4是示出根据本公开的实施方式的图3中的稀疏表示的一个部分的示例。
8.图5是示出根据本公开的实施方式的图3中的稀疏表示的一个部分的另一个示例。
9.图6是示出根据本公开的实施方式的在图5中的区域内的节点已经被折叠之后所得的因子图的示例。
10.图7是示出根据本公开的实施方式的与初始化物理环境的稀疏表示相关联的示例过程的流程图。
11.图8是示出根据本公开的实施方式的与更新物理环境的稀疏表示相关联的示例过程的流程图。
12.图9是示出根据本公开的实施方式的与更新物理环境的稀疏表示相关联的示例过程的另一流程图。
13.图10是示出根据本公开的实施方式的与更新物理环境的稀疏表示相关联的示例过程的另一流程图。
14.图11是示出根据本公开的实施方式的与触发对物理环境的稀疏表示的更新相关联的示例过程的流程图。
15.图12是示出根据本公开的实施方式的与执行与更新物理环境的稀疏表示关联的位姿图优化技术相关联的示例过程的流程图。
16.图13是用于实施本文讨论的技术的示例系统的框图。
具体实施方式
17.本文讨论了用于稀疏地存储、处理、和以其他方式利用环境数据和地图数据的技术。例如,当自主车辆接收到行驶到目的地位置的请求时,该自主车辆可以沿着规划的路径从自主车辆的当前位置导航到上车位置以接载乘客,然后从上车位置导航到目的地位置。该自主车辆可以估计车辆的位姿(例如,位置和/或朝向)并且将其与由与车辆相关联的传感器捕获的环境数据相关联。地图数据和环境数据都可以由自主车辆使用以帮助导航到目的地。
18.例如,由(多个)传感器捕获的环境数据可以用于生成环境的表示,例如环境中表面的二维或三维表示,例如等高线图、多边形网格、线框模型等。生成这样的表示可以至少部分地基于该环境数据被捕获时车辆及其传感器的位置和朝向。生成和/或更新此表示可能会因自主车辆的重复经过而为环境的同一部分生成的环境数据而变得复杂,这些数据可能来自不同的位置和角度,这可以表示同一对象或环境的不同视角。
19.在各种情况下,自主车辆可能遇到需要更新地图数据和/或环境数据的一个部分的情况。在传统系统中,更新与地理区域相关联的数据的部分经常需要解析与该地理区域相关联的整个数据集和/或按顺序执行各种操作(这在时间和资源方面都是低效的)。在一些时间敏感的操作中,例如自主车辆导航,任何由于更新或检索地图数据和/或环境数据导致的延迟都可能是有问题的。
20.在一些示例中,本文所讨论的系统可以被配置为将地图数据和/或环境数据存储为稀疏数据图或因子图。在一些情况下,也可以对稀疏数据图进行索引,例如沿着地理区域,以减少与访问和/或更新地图数据和/或环境数据相关联的资源消耗和时间。在一些情况下,本文讨论的系统可以包括数据库或数据仓储,该数据库或数据仓储以特定时间间隔维护有组织的和经索引的地图数据和/或环境数据的稀疏图,这允许自主车辆的各种其他系统在图形数据上并行地操作。
21.在一个特定示例中,有组织的和经索引的稀疏图或因子图可以包括与环境相关联或表示环境的多个节点。在一些情况下,该节点可以包括或存储位姿数据以及根据例如从全球定位系统(gps)、地图定位数据等接收到的信息创建的许多因子,该信息例如,行进方向、朝向或imu数据、速度、图像数据、雷达数据、激光雷达数据、热数据、一元全局因子,这可以用于将节点组织到位姿数据的因子图表示中。在一些情况下,多个节点可以被稀疏地表示为沿轨迹的时刻(例如,在具体时间的六自由度(6dof)位姿),或者单个节点可以由多个时刻形成,在其中每个时刻的6dof位姿相对于代表性节点或时刻被维护。作为说明性示例,系统可以存储节点内每个时刻的位姿与代表性节点或时刻之间的相对变换(例如,6dof变换)。以这种方式,可以通过反向执行相对变换来重新创建每个时刻。
22.在一个示例中,自主车辆可以通过至少部分地基于传感器数据确定轨迹而沿着路线穿过。轨迹可以包括一组指令,用于致动驱动系统直至达到地平线时间(horizon time)或距离(例如,下一个50毫秒、下一个100毫秒、下一秒、任何其他时间量、下一个3米、下一个10米,下一个50英尺、任何其他距离)。随着车辆穿过轨迹,车辆可以至少部分地基于第一传感器数据确定在第一时间的第一位姿(例如,位置和/或朝向),并且至少部分地基于第二传感器数据确定在第二时间的第二位姿。在第一时间的第一位姿和在第二时间的第二位姿可以由因子图内基于共享轨迹而链接的节点表示。
23.除了基于共享轨迹来链接因子图内的节点之外,在一些情况下,系统可以使用传感器数据(例如激光雷达数据、相机数据等)来链接节点。例如,可以使用传感器数据来链接沿不同轨迹的两个位姿(例如,第一位姿和第三位姿)以表示第一位姿在因子图和/或环境内相对于第三位姿的位置。例如,基于对传感器数据的分析,系统可以识别在第一位姿和第三位姿两者捕获的地标或静态环境对象。然后系统可以在第一位姿和第三位姿之间添加图形链接或连接。在一些情况下,系统可以确定相对位置数据(例如第一位姿的位置与第三位姿的位置之间的距离)并且该相对位姿数据可以由第一位姿与第三位姿之间的链接的变换来表示。
24.作为其他示例,系统也可以至少部分地基于预形成与每个节点相关联的操作来链接节点。例如,系统可以确定从gps数据、地图定位数据、或其他基于地理的位置数据导出的共享一元全局因子。作为另一示例,系统可以基于在两个节点之间的传感器数据(例如,图像数据、激光雷达数据、雷达数据等)之间预形成关联和/或闭环操作来链接节点。在一个特定示例中,系统可以通过至少部分地基于现有的或预先存在的地图数据或道路网络来匹配特定节点的传感器数据以确定链接。在一些情况下,系统也可以至少部分地基于两个或更多个节点的相对6dof位姿之间的欧氏距离或框架内的确定的接近度来生成链接。作为可选择的示例,系统也可以至少部分地基于两个或更多个节点之间的非欧氏图距离或框架内的确定的接近度来生成链接。
25.当然,在其他示例中,减少数据量可以包括确定从未实际遍历或记录的虚拟表示(例如,位姿)。在这样的示例中,可以选择虚拟位姿作为在其中表示阈值量的数据的节点轨迹之一。例如,与这样的虚拟节点或表示相关联的数据可以使得它与来自这样的节点的集群中的一个或多个附近节点的阈值量的数据相关联(例如,在阈值距离内,无论是物理距离还是欧氏空间中基于与数据使用相关联的各种因子测量的(加权)距离,这些因子例如但不限于地理位置、数据的协方差、数据的数量/密度、数据中表示的独特特征的数量等)。
26.在一些情况下,可以基于预定的时间间隔选择位姿以将其包括在因子图中,如上文所讨论的。在其他情况下,系统可以基于其他节点沿轨迹的预定欧式距离、基于期望的节点密度、以及其他因子来选择要包含在因子图中的位姿。例如,该图可以具有在期望的传感器系统的范围内的节点。例如,节点可以彼此足够靠近(例如,在欧式距离或物理距离和/或非欧式图形距离内),使得系统能够从重叠的传感器数据(例如,激光雷达数据、相机数据等)确定不同轨迹上的两个节点可以相连接,如上文所讨论的。因此,在一些示例中,图的节点的稀疏性可以基于与利用因子图进行导航的自主车辆相关联的传感器系统的质量或范围来确定。在各种示例中,代表性节点上的这样的时间和/或空间限制可以通过车辆在与节点相关联的区域之间穿过的典型速度或速率来关联。
27.在一些情况下,随着与多个重叠轨迹相关联的节点被输入到因子图中或被因子图消耗,系统可以将多个轨迹解析到所得的高精地图中,该高精地图可以由自主车辆的其他系统(例如定位、感知、移位等)更快速或更容易地(例如,资源密集度较低)消耗。例如,在解析或优化轨迹之前,与不同轨迹相关联的多个单独节点可以被相对于彼此接近地定位。因此,在一些情况下,在预定距离内的每个节点或时刻可以被解析为单个节点并且可以在位姿图优化技术过程中利用该单个节点。例如,每个节点可以包括多个运动,在其中相对于代表性时刻维护每个时刻的位姿(例如,6dof位姿)。以这种方式,对节点可以执行的后续操作
可以被限制在代表性时刻,由此减少操作时间和成本。当然,设想了任何其他技术,例如但不限于束调整、同时定位和映射(slam)、rslam等。在一些情况下,新节点的位姿可以是基于多个节点的相对位姿被组合后的平均位姿。
28.在一些具体示例中,可以使用一个或多个图形距离阈值与一个或多个地理或物理(例如,欧式)距离阈值的组合将多个节点或时刻组合为单个节点。因此,被组合的节点可以在因子图内紧密地相关或分组并且在物理环境内紧密地间隔。在一个特定示例中,因子图的节点的数量或节点之间的距离可以基于最终或所得的图中的期望图距离或物理距离。例如,节点的距离可以来自应用于生成最终或所得图的特定位姿图优化技术。在至少一些示例中,可以确定度量,并且在因子图中生成的节点可以取决于度量的评估。
29.在一些情况下,环境可以改变,例如当道路被建造、移除、或改道时(例如,在施工期间,车道通常至少暂时改道)。在这些情况下,系统可以被配置为将新接收到的位姿数据(以及与其相关联的数据)与所得的因子图进行核对。在一些示例中,如果大于或等于预定数量的位姿大于或等于距所得因子图的最近节点的预定距离(例如,物理或欧式距离和/或图形距离),那么系统可以触发图更新。在一些情况下,更新图可以包括移除多个节点中的一个或多个节点、添加新接收到的位姿数据、以及使用位姿图优化技术重新优化图。以这种方式,地图更新可以基于在自主车辆运行时接收到的数据而自动进行。在一些情况下,图更新可以被隔离或限于图形的选定部分,例如与新位姿或多个新位姿相距图形距离阈值或物理距离阈值。在一些示例中,可以保持与每个节点相关联的数据,使得可以重新创建节点或时刻而不是移除数据或节点本身。例如,系统可以存储被选定移除的组成节点或时刻之间的相对变换。
30.类似地,系统可以被配置为从图中衰减或移除老化数据。例如,系统可以在接收或捕获到以下各项之后更新节点:当前节点的图距离阈值(例如,(边缘距离、马氏距离、各种图形聚类度量等)和物理距离阈值(例如,欧氏距离、地理距离等)内的附加节点的预定数量、达到或超过与传感器数据相关联的质量阈值(例如,达到或超过点云噪声阈值)、达到或超过包括节点的区域内的因子图质量度量(例如,地图质量度量、收敛度量等)、语义特征、达到预定年龄的节点、经过的时间量(例如,经过了预定的间隔)、等等。
31.作为说明性示例,系统可以接收位姿数据和传感器数据的五个集合或其五个实例,这些数据表示相同的道路段,例如桥梁的跨度。对于五个位姿的每个集合,系统可以选择时间上最近的位姿插入或添加到图中和/或对因子图的相应部分执行重新优化(例如,移除老化节点并添加所选择的位姿数据)。以这种方式,如果与新添加的节点或轨迹相关联的位姿数据和传感器数据与老化节点的位姿数据和传感器数据不同(例如,环境已经改变),那么因子图可以将该变化集成为新节点和新轨迹被添加到图中和/或老化节点和老化轨迹被从图中移除。在至少一些这样的示例中,节点可以与权重相关联并且与这样的节点相关联的数据可以基于这样的衰减模型被降低权重。
32.在因子图的部分过时、接收到新数据、或需要更新的情况下,系统可以围绕该部分进行更新。例如,通过在过时节点的图距离阈值或物理距离阈值内更新图中的节点并重新优化,如上文所讨论的。另外,系统能够基于两个或更多个节点的图距离小于或等于图距离阈值但是物理距离大于或等于物理距离阈值的位置来确定图的老化部分。
33.如本文所讨论的,地理数据的因子图表示可以用于改进自主车辆的整体安全性。
例如,本文讨论的稀疏表示可以被车辆的操作系统更快地消耗或利用,由此改进自主车辆的反应时间和操作决策制定。
34.图1是示出根据本公开的实施方式的与多个自主车辆相关联的映射系统102的示例架构100的框图。在示出的示例中,与一个或多个自主车辆106相关联的传感器系统104可以捕获传感器数据108(例如,环境数据、车辆位姿数据等)并将该传感器数据发送到映射系统102。
35.映射系统102也可以将地图数据存储为表示一个或多个环境的一个或多个因子图110。如上所述,因子图110可以包括多个节点,这些节点表示在一个或多个特定时刻(例如,车辆位姿、在特定时间、在特定位姿等)的传感器数据108。在一些示例中,车辆可以使用贝叶斯滤波器(例如卡尔曼滤波器)、束调整、最大后验估计(map)、和/或slam算法来估计位姿,如在于2017年8月11日提交的美国专利申请15/674,853号中更详细地讨论的,该专利的全部内容并入本文。因子图110的各个节点可以基于共享轨迹和/或基于一个或多个环境或传感器数据链接(例如,传感器数据中表示的共享地标或静态对象)来连接。以这种方式,因子图110可以包括基于图的链接(例如,节点基于传感器数据108的分析而连接)和物理位置或距离链接(例如,两个节点在环境中物理地靠近)。
36.在该示例中,随着映射系统102从一个或多个在环境中行驶的车辆106接收附加传感器数据108,映射系统102可以更新因子图110,如上文所讨论的。例如,映射系统102可以检测距离因子图110的现有节点大于物理距离阈值或图距离阈值的位姿数据的组合。
37.在该示例中,映射系统102可以将新接收到的位姿数据集成为因子图的一个或多个新节点。新添加的节点可以通过共享轨迹彼此相连接,但是不连接到因子图110的其他节点。映射系统102然后可以应用一种或更多种链接评估技术,下文关于图2进行讨论,以生成因子图110的现有节点与新添加的节点之间的链接。在一些情况下,映射系统102也可以至少针对因子图的邻近位置(例如,在更新的物理距离阈值或更新的图距离阈值内)应用一种或更多种位姿图优化技术,以对新添加的节点与一个或多个现有节点进行分解或组合,或对新添加的节点相互之间进行分解或组合,以减小因子图110的总体大小并维护稀疏表示。一旦添加了新节点来表示一个或多个节点,那么可以组合和/或剔除与其相关联的传感器数据。例如,重复的、低质量的、和/或过时的传感器数据可以被删除—如果两个传感器数据集合描绘了同一面墙,那么较低级别的传感器数据可以被存档或删除;如果以前的传感器数据集合描绘了一棵不再存在的树或标志,那么该传感器数据可以被删除。在一些示例中,这样的数据可以被衰减、降低权重或以其他方式组合(例如,与关联的协方差)以在保留数据用于某些用途的同时考虑不一致。或者,与合并的节点或时刻相关联的传感器数据可以基于节点的代表性时刻与其他合并的时刻或节点的相对位姿来维护。在一个示例中,代表性节点和该节点的其他时刻之间的相对变换可以由系统维护。以这种方式,可以在代表性时刻或节点执行未来的操作,而不是在节点的每个时刻执行操作,由此改进处理时间并减少处理资源,而无需从因子图中检测或剔除数据。
38.在当前示例中,新更新的因子图110然后可以用于索引传感器数据(和/或其表示,网格、特征、关键点等)和/或最近生成的环境表示。当从对应于代表性节点的车辆接收到新的位姿数据和传感器数据时,系统可以检索传感器数据和/或与该节点相关联的最近表示,而不是对所有先前节点进行位姿图估计。这可以简化基于新传感器数据来更新和/或检索
环境表示的过程。
39.在一些情况下,因子图110和/或轨迹112或其他类型的导航产品可以由映射系统102使用因子图110确定并被提供回车辆106。
40.图2是示出根据本公开的实施方式的图1中的映射系统102的实例架构200的另一示例框图。在当前示例中,数据仓储202可以维护或以其他方式管理表示一个或多个物理环境的一个或多个因子图。随着从工作车辆接收到附加的传感器数据(例如,位姿数据和环境数据等),因子图的各个节点可以被移除、更新、或与其他节点合并/组合。各个节点可以基于多个组件的输出被移除、更新、或合并/组合,例如边界采样组件204、里程计链接评估组件206、激光雷达链接提案组件208、激光雷达链接评估组件210、一元链接提案组件212、和一元链接评估组件214。
41.在示出的架构200中,组件204-214中的每一个组件都可以独立地操作作为并行操作,以维护和更新由数据仓储202存储的因子图。作为一个说明性示例,当接收到传感器数据时,边界采样组件204可以确定与从操作车辆接收到的传感器数据集合相关联的感兴趣区域。在一些示例中,感兴趣区域可以对应于全局地图的一个部分,该部分之前已经被映射或者还不存在地图表示或环境表示。感兴趣区域可以估计传感器数据中识别到的地理区域的范围。感兴趣区域以及传感器数据可以在节点提案组件216处被提供或接收。节点提案组件216可以提案或以其他方式生成沿着与传感器数据相关联的轨迹的潜在节点集合。这样的节点可以包括至少部分地基于车辆或其子集的可利用的数据确定的任意数量的位姿,包括节点之间的虚拟节点。在一些情况下,节点提案组件216可以确定感兴趣区域具有少于期望数量的节点(例如,关联度量用于确定关联节点的数据仅提供小于或等于位姿确定的阈值置信度级别)或相对于因子图尚不存在,并且作为响应,将潜在节点中的至少一部分添加到由数据仓储202维护的因子图中。在附加或替代示例中,节点提案组件216可以确定感兴趣区域的至少一部分与由数据仓储202维护的因子图的一部分重叠。在这种情况下,可以确定节点与已经存在于因子图中的节点相关联。根据本文讨论的技术,这样的节点可以是要与现有节点合并的候选者。
42.在一些情况下,里程计链接评估组件206可以在感兴趣区域内评估传感器数据中包括的里程计数据,以确定沿着轨迹的新添加的节点之间的链接或连接。在该示例中,由里程计链接评估组件206生成的链接或连接可以与沿共享轨迹的单个车辆和单个传感器数据集合相关联,如上文所讨论的。如本文详细描述的,这样的里程计链接可以表示连续的(或非连续的)节点之间行进的距离和预期的数据重叠量。作为非限制性示例,如果激光雷达数据在150米(或其他预定阈值距离)的360度视场周围可见,并且车辆位姿在节点之间的差异小于150米(或其他预定阈值距离),如里程计数据所表示的,那么激光雷达数据的一些部分应该在测量之间重叠。
43.如上所述,新添加的节点可以不连接到由数据仓储202维护的因子图的其他节点。在该示例中,激光雷达链接提案组件208可以基于感兴趣区域来提案现有节点与新添加节点之间(例如,沿不同轨迹的节点之间)或两个新添加节点之间的链接或连接。提案的链接然后可以由激光雷达链接评估组件210评估。例如,激光雷达链接评估组件210可以基于接收到的激光雷达数据来评估提案的链接。作为一些说明性示例,激光雷达链接评估组件210可以执行体素协方差对齐、焦虑搜索对齐、迭代最近点算法等以评估提案的链接并将通过
的链接添加到因子图。这样的链接可以指示两组不同的传感器数据与环境的同一部分相关联的可能性。这样的链接可以包括第一传感器数据集合和第二传感器数据集合之间的关系的变换或任何其他指示。作为说明性示例,在美国申请序列号16/722,598和16/722,771中讨论了体素协方差对齐操作的细节,这两个申请通过引用以其全部内容本文。
44.新添加的节点也可以通过一元链接提案组件212和一元链接评估组件214链接或连接到其他节点。例如,一元链接提案组件212可以基于各种节点的车辆位姿数据在感兴趣区域内确定链接或连接,并且一元链接评估组件214可以在将链接添加到因子图之前评估所提案的链接。
45.在示出的示例中,稀疏位姿估计组件218和/或因子图稀疏化组件220可以被配置为将时刻或候选节点收集到由作为因子图的节点的单个时刻表示的集群中。例如,节点或时刻集合可以由稀疏位姿估计组件218和/或因子图稀疏化组件220分组或组合,使得代表性时刻或节点被选择,并且其他时刻或节点的位姿与代表性时刻或节点的位姿之间的变换被相对于因子图存储。在各种示例中,这样的附加节点可以触发位姿图优化/松弛以最小化与这样的节点和相关联的数据/地图相关联的不确定性(或其他)的量。
46.图3是示出根据本公开的实施方式的物理区域304的稀疏表示302的示例。在示出的示例中,物理区域304可以表示如图所示的停车场。停车场可以由各种自主车辆穿过。每个车辆可以收集关于停车场的传感器数据(例如,位姿数据和环境数据等)。映射系统例如图1中的映射系统102然后可以生成因子图形式的稀疏表示302,如图所示。
47.在当前示例中,稀疏表示302可以包括多个节点,这些节点在其之间具有链接或连接。在该示例中,实线链接可以表示与共享轨迹相关联的节点,并且虚线链接可以表示由例如图2中的一元链接组件或激光雷达链接组件添加的图形链接。因此,虚线可以表示不同轨迹的节点之间的图形链接,并且实线可以表示沿相同轨迹的节点之间的链接。
48.在当前示例中,一个或多个示出的节点,例如节点306,可以包括多个时刻,通常由308指示。每个时刻可以包括位姿数据(车辆的6dof位姿)和传感器数据(例如,激光雷达数据、红-绿-蓝图像数据、雷达数据、热数据等)。特定节点的各个时刻的位置可以由因子图维护为各个时刻与节点的代表性时刻(例如,由因子图呈现并链接到其他节点的时刻)之间的相对位姿。
49.图4是示出根据本公开的实施方式的图3中的稀疏表示302的一个部分400的示例。同样,如上所述,稀疏表示302可以包括多个节点,这些节点表示在给定物理位置和给定时间的位姿数据和环境数据的组合。例如,每个节点可以包括多个时刻,每个时刻在给定的物理位置和给定的时间具有相关联的位姿数据和环境数据。
50.在当前示例中,单独的节点可以连接或链接在一起。在所示示例中,示出了第一节点402。第一节点402经由第一链接406连接到第二节点404。第一链接406可以表示由自主车辆穿过的物理空间内的共享轨迹,该自主车辆捕获与第一节点402相关联的传感器数据(例如,位姿数据和环境数据)以及与第二节点404相关联的传感器数据。
51.在当前示例中,第一节点402也可以包括经由第二链接410到第三节点408的链接。第二链接410可以表示图形链接或非欧式距离测量。例如,与第一节点402和第三节点408相关联的传感器数据,例如环境的图像或激光雷达数据,可以包括重叠的静态对象或其他环境细节,使得映射系统能够确定与第一节点402和第三节点408都相关联的传感器数据表示
相同的区域,因此应该生成第二链接410。在该示例中,诸如第二链接410的图链接可以帮助将单独的轨迹或因子图彼此相连接以形成更大环境的统一的全局因子图。例如,在所示示例中,与第三节点408相关联的轨迹和与第一节点402以及第二节点404相关联的轨迹不相连。然而,第一节点402和第三节点408在物理距离上相对较近,如图所示。因此,诸如第二链接410的图链接可以用于将不同的因子图对齐和/或组合在一起。作为其他示例,系统也可以至少部分地基于从gps数据、地图定位数据、或其他基于地理的位置数据导出的共享一元全局因子,通过至少部分地基于现有或预先存在的地图数据或道路网络、在节点402和408的相对位姿数据之间的欧式距离或框架内确定的接近度、节点402和408之间的非欧式图形距离或框架内确定的接近度匹配节点402和408的环境或传感器数据,在两个节点402和408之间的环境数据或传感器数据(例如,图像数据、激光雷达数据、雷达数据等)之间预形成关联和/或闭环操作,从而链接诸如节点402和节点408的节点。
52.图5是示出根据本公开的实施方式的图3中的稀疏表示302的一个部分500的另一示例。在当前示例中,稀疏表示302可以包括在由502指示的区域内多于期望数量的节点。例如,多个车辆可能已经捕获导致节点彼此靠近放置的传感器数据。在该示例中,映射系统可以识别出多于阈值数量的节点在预定图形距离或预定物理距离内(如由物理距离的链接504和其他类型的测量的链接506所表示的,例如激光雷达数据中的共视性)。
53.在该示例中,映射系统可以将部分500和/或区域502的节点折叠并且应用位姿图优化技术以通过调整整个图的位姿来减少不确定性。在一些情况下,代表性节点的位姿可以是基于被组合的多个节点的相对位姿所选择的位姿。在各种示例中,可以创建代表性节点,其表示与节点集群的一个或多个其他节点相关联的信息阈值量。
54.在一个特定示例中,在区域502的节点被聚类之后,单个代表性节点可以保留在因子图的区域502中并且包括与区域502内的每个原始节点相关联的数据。代表性节点也可以包括或维护与各个原始节点相关联的每个外部链接(例如,维护区域502内的节点和区域502外的节点之间的每个链接),以及与其相关联的所有数据。
55.在一些情况下,代表性节点可以包括与每个原始节点相关联的数据以及原始节点之间的链接。在这些情况下,原始节点相对于代表性节点的相对位姿可以在集群内被维护。例如,相对变换可以相对于代表性节点和集群的其他节点被存储。以这种方式,当执行附加的位姿图优化技术或折叠事件时,可以只使用代表性节点。例如,附加的节点可以被插入到因子图中,并且靠近所得节点。在一些情况下,附加节点和代表性节点的数量可以再次达到或超过阈值,并且系统可以再次折叠包括代表性节点的区域。在该第二轮中,可以仅处理代表性节点,因为剩余的原始节点的位姿相对于代表性节点而被维护。
56.图6是示出根据本公开的实施方式的在图5中的区域502内的节点已经被折叠之后的所得因子图600的示例。如上所述,重叠或多个因子图和/或因子图的节点可以被聚类或以其他方式组合以提供所得因子图600,该因子图具有彼此稀疏表示的节点(例如,大于物理距离阈值和/或图距离阈值)。所得因子图600然后可以用于生成规划的轨迹或路径以供自主车辆在从起始位置到目的地的导航期间使用。
57.图7至图12是示出与如上所述的实况流事件相关联的示例过程的流程图。该过程被示出为逻辑流程图中的一系列框,其表示操作序列,其中一些或全部可以用硬件、软件或其组合来实施。在软件的场景中,块表示存储在一个或多个计算机可读介质上的计算机可
执行指令,当由一个或多个处理器执行时,执行所述的操作。通常,计算机可执行指令包括执行特定功能或实施特定抽象数据类型的例程、程序、对象、组件、加密、解密、压缩、记录、数据结构等。
58.描述操作的顺序不应被解释为限制。可以按任何顺序和/或并行地组合任何数量的所描述的框,以实现该过程或替代过程,并且不需要执行所有框。出于讨论的目的,参考本文的示例中描述的框架、架构和环境来描述本文的过程,尽管这些过程可以在各种各样的其他框架、架构或环境中实现。
59.图7是示出根据本公开的实施方式的与初始化物理环境的稀疏表示相关联的示例过程700的流程图。如上所述,自主车辆可以被配置为随着车辆穿过物理环境而捕获传感器数据。捕获的传感器数据可以与来自其他车辆或系统的传感器数据融合或组合以生成地图。然而,存储所有与环境相关联的传感器数据可以产生非常大的资源密集型地图,这在所有情况下都不适用于自主车辆导航。过程700讨论了一种将地图数据存储为稀疏表示或因子图的方法,该稀疏表示或因子图可以被自主车辆的系统更快更容易地使用。
60.在702,映射系统可以从穿过物理环境的自主车辆接收位姿数据和环境数据。在一些情况下,位姿数据可以表示车辆在给定或特定时间以及在给定或特定位置的6dof位姿。位姿数据可以包括相关联的轨迹,其可以包括随着车辆穿过环境从第一位姿到第二位姿等由车辆所采用的路径。在一些情况下,环境数据可以包括图像数据、热数据、激光雷达数据等。
61.在704,映射系统可以确定与位姿数据和环境数据相关联的感兴趣区域。在一些示例中,映射系统可以确定相对于物理环境的现有或全局因子图或稀疏表示的感兴趣区域。例如,感兴趣区域可以对应于与位姿数据和环境数据相关联的地理区域。
62.在706,映射系统可以至少部分地基于感兴趣区域和位姿数据以及环境数据来确定候选节点(或时刻)集合。例如,可以基于位姿数据和时间间隔来生成节点,使得随着车辆行驶,每个节点对应于车辆在该时间间隔的位姿。在其他示例中,可以基于位姿数据和物理距离间隔来生成节点,使得每个节点对应于在车辆已经穿过阈值距离之后车辆的位姿。在一些情况下,时间间隔可以基于与车辆中的一个或多个传感器系统相关联的时间间隔和/或距离阈值可以基于车辆的一个或多个传感器系统的范围。在各种示例中,这样的节点可以在使用一些其他度量的彼此的阈值距离内(例如,与节点相关联的数据相关联的特征之间的欧式距离)。
63.在708,映射系统可以至少部分地基于位姿数据来确定该候选节点集合中的节点之间的第一链接集合。例如,映射系统可以沿着车辆的轨迹或规划路径链接连续的节点。以这种方式,从对应于车辆的连续驾驶时间的传感器数据中生成的每个节点可以使用车辆的位姿数据和/或轨迹来链接。在一些情况下,第一链接集合可以使用例如位姿数据和/或里程计数据表示物理(例如,欧式)距离链接。
64.在710,映射系统可以至少部分地基于环境数据来确定候选节点集合中的节点之间的第二链接集合。例如,映射系统可以识别激光雷达数据和/或图像数据内的与两个或更多候选节点相关联的重叠静态对象或地标。在一些情况下,可以使用位姿数据评估第二链接集合中的每个链接以帮助确保在候选节点之间建立质量有效链接。
65.作为其他示例,映射系统也可以至少部分地基于从gps数据、地图定位数据或其他
基于地理的位置数据导出的经确定的共享一元全局因子来链接候选节点。映射系统可以基于在两个节点之间的环境数据(例如,图像数据、激光雷达数据、雷达数据等)之间预形成关联和/或闭环操作来链接候选节点。在一个特定示例中,映射系统可以通过至少部分地基于现有或预先存在的地图数据或道路网络来匹配特定候选节点的环境数据以确定链接。
66.在712,映射系统可以生成因子图,并且在714,映射系统可以至少部分地基于候选节点集合、第一链接集合和第二链接集合来应用位姿图优化技术,如上所述。在一些情况下,因子图可以用于生成在起始位置和目的地之间的车辆的未来轨迹或规划路径。
67.图8是示出根据本公开的实施方式的与更新物理环境的稀疏表示相关联的示例过程800的流程图。在一些情况下,地理或物理区域可能已经具有现有的或相关联的因子图(例如,地理区域之前已经被一个或多个车辆穿过)。在此示例中,映射系统可以将新捕获的传感器数据与现有因子图集成或组合。
68.在802,映射系统可以从穿过物理环境的自主车辆接收传感器数据。在一些情况下,传感器数据可以包括位姿数据、轨迹、激光雷达数据、图像数据、热数据、里程计数据等。
69.在804,映射系统可以确定与传感器数据相关联的感兴趣区域以及与物理环境相关联的经存储的因子图。在一些示例中,映射系统可以将感兴趣区域确定为与传感器数据相关联的因子图的地理区域。
70.在806,映射系统可以至少部分地基于感兴趣区域和传感器数据来确定候选节点(或时刻)集合。在一些示例中,可以基于位姿数据和/或imu数据和时间间隔来生成节点。例如,候选节点可以基于在各种时间间隔或距离阈值的位姿数据生成,使得随着车辆行驶节点可以在周期位置沿着轨迹被生成。在一些情况下,可以基于关于因子图的现有节点的图距离阈值或物理距离阈值来生成候选节点。
71.在808,映射系统可以至少部分地基于传感器数据来确定候选节点集合中的候选节点之间的第一链接集合。例如,映射系统可以使用位姿数据、imu数据、里程计数据等沿着车辆的轨迹或规划路径来链接连续的节点。如上所述,可以链接每个候选节点以表示捕获传感器数据的车辆的连续驾驶轨迹。候选节点也可以使用在激光雷达数据和/或图像数据内检测到的静态对象来链接,如上所述。
72.在810,映射系统可以至少部分地基于感兴趣区域和传感器数据来确定候选节点集合中的候选节点与因子图的现有节点之间的第二链接集合。例如,映射系统可以响应于确定激光雷达数据和/或图像数据表示相同的静态对象或环境特征而将现有节点链接到候选节点。在一些情况下,现有节点和候选节点之间的链接可以用于帮助将候选节点与因子图在地理上对齐。
73.在812,映射系统可以评估第一链接集合和第二链接集合。例如,可以使用诸如体素卷积、焦虑搜索对齐等各种技术来评估链接。
74.在814处,映射系统可以至少部分地基于候选节点集合和在感兴趣区域内的因子图的现有节点,通过应用位姿图优化技术来更新因子图。在一些情况下,映射系统可以为候选节点集合和感兴趣区域内的因子图的现有节点选择代表性节点。在一些情况下,可以至少部分地基于节点的年龄、与节点相关联的传感器的质量或环境数据、节点的语义性质等来选择节点。
75.图9是示出根据本公开的实施方式的与更新物理环境的稀疏表示相关联的示例过
程900的另一流程图。在一些情况下,与因子图相关联的各种数据可以随着时间的推移而老化或变得过时。例如,街道可以被重新规划路线、升级或以其他方式改变。在这些情况下,地图或因子图应被更新以移除老化或过时的节点。
76.在902,映射系统可以接收多个与感兴趣区域相关联的节点以插入因子图中。例如,多个节点可以包括一个或多个与新捕获的传感器数据相关联并且被选择、评估和链接的候选节点,如本文所述。
77.在904,映射系统可以确定与多个节点相关联的节点的数量大于阈值。例如,映射系统可以被配置为响应于与超过或以其他方式达到阈值的区域相关联的新节点集合来触发对节点和/或与因子图相关联的其他数据的更新。以这种方式,当有足够的新传感器数据可以用于该区域时,映射系统可以启动对因子图的局部区域的自动更新。
78.在906,映射系统可以移除或以其他方式修整感兴趣区域内的因子图的现有节点。例如,可以从因子图中清除或以其他方式删除节点和相关联的数据。在一些情况下,映射系统可以被配置为在收到或捕获在当前节点的图距离阈值(例如,(边缘距离、马氏距离、各种图聚类度量等)和物理距离阈值(例如,欧氏距离、地理距离等)内的附加节点的预定数量之后,从图中衰减或删除老化数据。在其他示例中,映射系统可以至少部分地基于达到或超过与传感器数据相关的质量阈值(例如,达到或超过点云噪声阈值)、达到或超过包括节点的区域内的因子图质量度量(例如,地图质量度量、收敛度量等)、语义特征、节点达到预定的年龄、已经过去的时间量(例如,预定的时间间隔已经过去)、和/或其组合来选择节点进行删除。
79.在908,映射系统可以选择多个节点中的至少第一节点以插入因子图中。在一些情况下,所选节点的数量可以至少部分基于感兴趣区域的大小、确保在节点之间的任何点进行定位的阈值置信度所需的最小数据量、相对于906移除的节点数量等。在其他情况下,映射系统可以评估多个节点中的每一个节点并且选择预定数量的具有最高质量位姿数据、环境数据等的节点。
80.在910,映射系统可以确定与被插入到该区域中的第一节点以及任何其他节点相关联的链接。如上所述,映射系统可以生成与物理距离的链接相关联的链接(例如,基于共享轨迹)以及与图因子相关联的链接,例如响应于检测匹配的激光雷达数据或图像数据。
81.在912,映射系统可以通过至少部分地基于第一节点和链接来应用位姿图优化技术,以更新因子图。在此示例中,更新可以定位到感兴趣区域以减少与地图或因子图更新相关联的处理时间和资源。
82.图10是示出根据本公开的实施方式的与更新物理环境的稀疏表示相关联的示例过程1000的另一流程图。在一些情况下,映射系统可以接收与未探索或未映射区域相关联的传感器数据。例如,可以建设新的道路、停车场或其他路径。
83.在1002,映射系统可以接收多个与感兴趣区域相关联的节点以插入因子图中。例如,多个节点可以包括一个或多个与新捕获的传感器数据相关联并且被再次选择、评估和链接的候选节点,如本文所述。
84.在1004,映射系统可以确定多个节点与未映射区域相关联。例如,映射系统可以确定多个节点与因子图的现有节点的距离大于阈值距离(例如,图距离和/或物理距离)。作为示例,如果建设了新道路,那么从相应的传感器数据生成的节点中的至少一个节点与因子
图的其他现有节点的距离可以大于阈值距离。以此方式,距离阈值可以用于触发图形更新以将新扫描的感兴趣区域添加到全局地图或图。作为其他示例,映射系统可以至少部分地基于从达到或超过阈值的gps数据、地图定位数据、或其他基于地理的位置数据导出的一个或多个一元全局因子来触发未映射区域的图更新。作为另一示例,映射系统可以至少部分地基于与达到或超过阈值的因子图的区域、边缘距离、马氏距离、一个或多个图聚类度量等相关联的质量度量、收敛度量等来触发图更新。在1006,映射系统可以选择多个节点中的至少第一节点以插入因子图中。在一些情况下,所选择的节点的数量可以至少部分地基于感兴趣区域的大小、与多个节点相关联的节点的数量等。在其他情况下,映射系统可以评估多个节点中的每一个并且选择预定数量的具有最高质量位姿数据、环境数据等的节点。
85.在1008,映射系统可以确定与被插入到感兴趣区域中的第一节点以及任何其他节点相关联的链接。如上所述,映射系统可以生成与物理距离的链接相关联的链接(例如,基于共享轨迹)以及与图因子相关联的链接,例如响应于检测匹配的激光雷达数据或图像数据。
86.在1010,映射系统可以通过至少部分地基于第一节点和链接来应用位姿图优化技术,以更新因子图。在此示例中,更新可以定位到感兴趣区域以减少与地图或因子图更新相关联的处理时间和资源。例如,如上所述,映射系统可以对节点或时刻的集合进行聚类或分组,以存储聚类节点的位姿数据与代表性节点之间的相对变换。
87.图11是示出根据本公开的实施方式的与触发对物理环境的稀疏表示的更新相关联的示例过程1100的流程图。在一些情况下,全局因子图或地图的两个区域可以在物理上相对靠近但保持未链接或未连接,例如当建筑物、墙壁、或其他障碍物位于两个区域的节点之间时。在这些情况下,映射系统可以能够识别这两个区域并触发地图更新以尝试进一步连接因子图中的两个物理上邻近的区域。
88.在1102,映射系统可以确定第一节点小于或等于距第二节点的图距离(无论是物理距离还是欧式距离)。例如,基于在第一节点与第三节点和/或第二节点与第三节点之间可见的共享静态对象,第一节点和第二节点可以都链接到第三节点。
89.在1104,映射系统可以确定第一节点大于或等于距第二节点的物理距离。例如,可能没有车辆穿过第一节点与第二节点之间的直接路径,导致因子图表示彼此相距较大的物理距离的第一节点和第二节点。
90.在1106,映射系统可以确定与第一节点和第二节点相关联的因子图的感兴趣区域。例如,映射系统可以确定围绕第一节点和第二节点之间的中心点的半径或直径以包括在该区域中。在其他情况下,映射系统可以选择第一节点和第二节点周围的图距离阈值和物理距离阈值并且将该图距离阈值和/或物理距离阈值内的每个节点包括为感兴趣区域的一部分。
91.在1108,映射系统可以触发感兴趣区域的因子图更新。例如,映射系统可以至少部分地基于第一节点小于或等于图距离阈值并且大于或等于物理距离阈值来触发因子图更新。在一些情况下,感兴趣区域的因子图更新可以尝试以更能表示物理世界的方式将第一节点与第二节点在物理上关联起来。
92.图12是示出根据本公开的实施方式的与执行与物理环境的稀疏表示关联的位姿图优化技术相关联的示例过程1200的流程图。如上所述,当折叠或优化因子图的一个或多
个区域时,映射系统可以导致该区域内的节点相对于一个或多个所得节点被固定,使得该区域内的每个节点的数据(例如,位姿数据和环境数据等等)都被维护在因子图中。
93.在1202,映射系统可以确定与因子图相关联的感兴趣区域。例如,如上所述,映射系统可以通过识别彼此的物理距离阈值和/或图距离阈值内大于或等于阈值数量的节点来确定感兴趣区域。
94.在1204,映射系统可以至少部分地基于与感兴趣区域相关联的因子图的节点来生成代表性节点。例如,在位姿优化期间,映射系统可以基于与区域的每个节点相关联的数据生成代表性节点。在其他示例中,系统可以选择该区域中的节点之一作为幸存节点或代表性节点,如上所述。
95.在1206,映射系统可以存储与感兴趣区域相关联的因子图的节点相对于代表性节点之间的变换。例如,映射系统可以维护每个节点相对于代表性节点一定距离和6dof位姿。以这种方式,当映射系统应用未来位姿优化技术时,只需要考虑与代表性节点相关联的数据,由此改进与优化过程相关联的处理时间并减少与优化过程相关联的资源消耗。
96.图13描绘了用于实施本文所述的技术的示例系统1300的框图。在至少一个示例中,系统1300可以包括车辆1302,例如上文所述的自主车辆。车辆1302可以包括计算装置1304、一个或多个传感器系统1306、一个或多个发射器1308、一个或多个通信连接1310(也称为通信装置和/或调制解调器)、至少一个直接连接1313(例如,用于与车辆1302物理耦合以交换数据和/或提供电力)、以及一个或多个驱动系统1314。一个或多个传感器系统1306可以被配置为捕获与周围物理环境相关联的传感器数据1332。
97.在至少一些示例中,传感器系统1306可以包括热传感器、飞行时间传感器、位置传感器(例如,gps、罗盘等)、惯性传感器(例如,惯性测量单元(imu)、加速度计、磁力计、陀螺仪等)、激光雷达传感器、雷达传感器、声纳传感器、红外传感器、相机(例如,rgb、ir、强度、深度等)、麦克风传感器、环境传感器(例如,温度传感器、湿度传感器、光传感器、压力传感器等)、超声换能器、车轮编码器等。在一些示例中,传感器系统1306可以包括每种类型传感器的多个实例。例如,飞行时间传感器可以包括位于车辆1302的拐角、前部、后部、侧面和/或顶部处的单独的飞行时间传感器。作为另一示例,相机传感器可以包括设置在围绕车辆1302的外部和/或内部的各种位置处的多个相机。在一些情况下,传感器系统1306可以给计算装置1304提供输入。
98.车辆1302也可以包括一个或多个用于发射光和/或声音的发射器1308。该示例中的一个或多个发射器1308包括与车辆1302的乘客通信的内部音频和视觉发射器。通过示例而非限制的方式,内部发射器可以包括扬声器、灯、标志、显示屏、触摸屏、触觉发射器(例如,振动和/或力反馈)、机械致动器(例如,安全带张紧器、座椅定位器、头枕定位器等)和类似物。该示例中的一个或多个发射器708还可以包括外部发射器。作为示例而非限制,该示例中的外部发射器包括示意行进方向的灯或车辆动作的其他指示器(例如,指示灯、标志、灯阵列等),以及一个或多个音频发射器(例如,扬声器、扬声器阵列、喇叭等)以与行人或其他附近车辆用声音进行通信,其中的一个或多个可以包括声束转向技术(acoustic beam steering technology)。
99.车辆1302也可以包括一个或多个通信连接1310,其实现车辆1302与一个或多个其他本地或远程计算装置(例如,远程操作计算装置)或远程服务之间的通信。例如,通信连接
1310可以有助于与车辆1302上的其他本地计算装置和/或驱动系统1314的通信。通信连接1310可以允许车辆1302与其他附近的计算装置通信(例如,其他附近的车辆、交通信号等)。
100.通信连接1310可以包括物理接口和/或逻辑接口,用于将计算装置1304连接到另一计算装置或一个或多个外部网络1334(例如,因特网)。例如,通信连接1310可以启用基于wi-fi的通信,例如由ieee 802.11标准定义的频率,短距离无线频率诸如蓝牙、蜂窝通信(例如,2g、3g、4g、4g lte、5g等),卫星通信,专用短程通信(dsrc),或任何合适的有线或无线通信协议,其使得各自的计算机装置能够与其他计算机装置交互。在至少一些示例中,通信连接1310可以包括如上详细描述的一个或多个调制解调器。
101.在至少一个示例中,车辆1302可以包括一个或多个驱动系统1314。在一些示例中,车辆1302可以具有单个驱动系统1314。在至少一个示例中,如果车辆1302具有多个驱动系统1314,那么单独的驱动系统1314可以被定位在车辆1302的相对端部(例如,前部和后部等)上。在至少一个示例中,驱动系统1314可以包括一个或多个传感器系统1306,以检测驱动系统1314和/或车辆1302的周围环境的状况。作为示例而非限制,传感器系统1306可以包括:一个或多个车轮编码器(例如,旋转编码器)以感测驱动系统的车轮的旋转,惯性传感器(例如,惯性测量单元、加速度计、陀螺仪、磁力计等)以测量驱动系统的朝向和加速,相机或其他图像传感器,超声传感器以声学检测驱动系统的周围环境中的对象,激光雷达传感器、雷达传感器等。一些传感器,诸如车轮编码器,可以对于驱动系统1314是唯一的。在一些情况下,驱动系统1314上的传感器系统1306可以重叠或补充车辆1302的对应系统(例如,传感器系统1306)。
102.驱动系统1314可以包括车辆系统中的许多系统,包括:高压电池;马达,用于推进车辆;逆变器,将来自电池的直流电转换成交流电以供其他车辆系统使用;转向系统,包括转向马达和转向齿条(其可以是电动);制动系统,包括液压致动器或电动致动器;悬架系统,包括液压组件和/或气动部件;稳定性控制系统,用于分配制动力以减轻牵引力的损失并维持控制;hvac系统;照明(例如,诸如用于照亮车辆的外部周围环境的头/尾灯的照明);以及一个或多个其他系统(例如,冷却系统、安全系统、车载充电系统、其他电气组件,例如dc/dc转换器、高压接头、高压电缆、充电系统、充电端口等)。另外,驱动系统1314可以包括驱动系统控制器,其可以接收和预处理来自传感器系统1306的数据以及控制各种车辆系统的操作。在一些示例中,驱动系统控制器可以包括一个或多个处理器以及与该一个或多个处理器通信耦合的存储器。存储器可以存储一个或多个模块以执行驱动系统1314的各种功能。此外,驱动系统1314还可以包括一个或多个通信连接,其使得各自的驱动系统能够与一个或多个其他本地或远程计算装置进行通信。
103.计算装置1304可以包括一个或多个处理器1318和与该处理器1318通信耦合的一个或多个存储器1320。在所示示例中,计算装置1304的存储器1320存储感知系统1322、预测系统1324、映射系统1326、以及一个或多个系统控制器1328。存储器1320也可以存储数据,例如由一个或多个传感器系统1306捕获或收集的传感器数据1332、因子图/地图数据1330和传感器数据1332。虽然出于说明目的被描绘为存在于存储器1320中,但是设想感知系统1322、预测系统1324、映射系统1326、以及一个或多个系统控制器1328可以另外地或可选择地可以由计算装置1304访问(例如,存储在车辆1302的不同组件中和/或可以由车辆1302访问(例如,远程地存储))。
104.感知系统1322可以被配置为对传感器数据1332,例如图像或激光雷达数据,执行对象检测、分割、和/或分类。在一些示例中,感知系统1322可以从传感器数据1332生成经处理的感知数据。感知数据可以指示物理接近车辆1302的物体的存在和/或该物体的分类或类型(例如,汽车、行人、骑自行车的人、建筑物、树木、路面、路缘、人行道、未知等)。在附加和/或可选择的示例中,感知系统1322可以生成或识别一个或多个与对象和/或物理环境相关联的特征。在一些示例中,与对象相关联的特性可以包括但不限于x位置、y位置、z位置、朝向、类型(例如,分类)、速度、大小、行进方向等。与环境相关的特征可以包括但不限于另一物体的存在、一天中的时间、天气状况、地理位置、黑暗/光线的指示等。例如,在美国申请序列号15/820,245中讨论了与感知系统相关联的分类和/或分割的细节,其通过引用整体并入本文。
105.预测系统1324可以被配置为确定对应于由感知系统1322识别到的对象的踪迹。例如,预测系统1324可以被配置为预测速度,位置、轨迹改变、或以其他方式预测已识别对象的决策和移动。例如,预测系统1324可以包括一个或多个机器学习模型,该模型可以基于诸如对象类型或分类以及对象特性的输入,输出对象在一个或多个未来时间点的预测特性。例如,在美国申请序列号16/246,208和16/420,050中讨论了预测系统的细节,这两个申请通过引用整体并入本文。
106.映射系统1326可以被配置为生成或以其他方式利用因子图/地图数据1330。例如,映射系统1326可以被配置为基于因子图/地图数据1330生成车辆1302的轨迹。映射系统1326还可以被配置为基于捕获的传感器数据1332来更新因子图/地图数据1330,如上文关于图1至图12所讨论的。
107.在至少一个示例中,计算装置1304可以存储一个或多个系统控制器1328,其可以被配置为控制车辆1302的转向、推进、制动、安全、发射器、通信、和其他系统。系统控制器1328可以与驱动系统1314的相应系统和/或车辆1302的其他组件进行通信和/或对其进行控制,其可以被配置为按照从规划系统提供的路线进行操作。
108.在一些示例中,车辆1302可以经由网络1334连接到计算装置1336。例如,计算装置1336可以生成并向车辆1302提供因子图/地图数据1330和/或轨迹1344,以及从该车辆接收传感器数据1332。计算装置1336可以包括一个或多个处理器1338和与该一个或多个处理器1338通信耦合的存储器1340。在至少一个实例中,处理器1338可以类似于处理器1318以及存储器1340可以类似于存储器1320。在示出的示例中,计算装置1336的存储器1340存储因子图/地图数据1330和传感器数据1332。存储器1340也可以存储地图生成系统1342以帮助编译和生成因子图/地图数据1330,如上文关于图1至图12所讨论的。
109.计算装置1304的处理器1318和计算装置1336的处理器1338可以是任何合适的能够执行指令以处理数据和执行如本文所描述的操作的处理器。作为示例而非限制,处理器1318和处理器1338可以包括一个或多个中央处理单元(cpu)、图形处理单元(gpu)、或任何其他处理电子数据以将该电子数据转换为可以存储在寄存器和/或存储器中的其他电子数据的装置或装置的一部分。在一些示例中,集成电路(例如,asic等)、门阵列(例如,fpga等)、和其他硬件装置也可以被视为是被配置为实现编码的指令的处理器。
110.计算装置1304的存储器1320和计算装置1336的存储器1340是非暂时性计算机可读介质的示例。存储器1320和/或1340可以存储操作系统和一个或多个软件应用、指令、程
序、和/或数据以实现本文描述的方法以及归属于各种系统的功能。在各种实施方式中,存储器1320和1340可以使用任何合适的存储器技术来实现,例如静态随机存取存储器(sram)、同步动态ram(sdram)、非易失性/闪存型存储器、或任何其他类型的能够存储信息的存储器。本文描述的架构、系统、和单独的元件可以包括许多其他逻辑组件、程序化组件和物理组件,其中附图中示出的那些组件仅仅是与本文中的讨论有关的示例。在一些情况下,本文讨论的一些或所有组件的方面可以包括任何模型、算法和/或机器学习算法。例如,在一些实例中,存储器1320和存储器1340中的组件可以被实现为神经网络。结论
111.虽然已经描述了本文所述的技术的一个或多个示例,但是其各种更改、添加、置换和等同物被包括在本文所描述的技术的范围内。正如可以理解的,本文讨论的组件出于说明性目的被描述为划分的。然而,由各种组件执行的操作可以在任何其他组件中组合或执行。还应当理解,关于一个示例或实施方式所讨论的组件或步骤可以与其他示例的组件或步骤结合使用。例如,图13中的组件和指令可以利用图1至图13的方法和流程。
112.对象的非限制性列表可以包括环境中的障碍物,包括但不限于行人、动物、骑自行车的人、卡车、摩托车、其他车辆等。环境中这样的对象具有“几何位姿”(其在本文中也可以仅称为“位姿”),其包括整体对象相对于参照系的位置和/或朝向。在一些示例中,位姿可以指示对象(例如,行人)的位置、对象的朝向、或对象的相对附属物位置。几何位姿可以在二维(例如,使用x-y坐标系)或三维(例如,使用x-y-z或极坐标系)中描述,并且可以包括对象(例如,滚动、俯仰、和/或偏航)的朝向。一些对象,例如行人和动物,也有本文所说的“外观位姿”。外观位姿包括身体各部分(例如,附肢、头部、躯干、眼睛、手、脚等)的形状和/或定位。如本文所用,术语“位姿”是指以下两者:物体相对于参照系的“几何位姿”、以及在行人、动物和其他能够改变身体部分的形状和/或定位的对象的情况下的“外观位姿”。在一些示例中,参照描述对象相对于车辆的位置的二维或三维坐标系或地图来描述参照系。然而,在其他示例中,可以使用其他参照系。
113.在示例的描述中,参考了形成其一部分的附图,附图通过图示的方式示出所要求保护的主题的具体示例。应当理解,可以使用其他示例,并且可以进行诸如结构改变的改变或更改。这样的示例、改变或更改不一定偏离关于意图要求保护的主题的范围。虽然本文中的步骤可以按某种顺序呈现,但是在一些情况下,可以改变排序,使得某些输入在不同的时间或按不同的顺序提供,而不会改变所描述的系统和方法的功能。公开的程序也可以按不同的顺序执行。另外,不需要按照所公开的顺序执行本文的各种计算,并且可以容易地实施使用计算的替代顺序的其他示例。除了被重新排序之外,还可以将计算分解为具有相同结果的子计算。示例条款
114.a.一种系统,包括:一个或多个处理器;以及一个或多个存储指令的非暂时性计算机可读介质,当由一个或多个处理器执行时,所述指令使一个或多个处理器执行包括以下各项的操作:接收与自主车辆的车队相关联的数据;至少部分地基于所述数据,确定表示所述自主车辆的车队所经过的环境的因子图;确定所述因子图的第一节点小于或等于距所述因子图的第二节点的阈值距离,所述因子图的所述第一节点表示所述数据中与所述车队中具有第一位姿数据的第一车辆相关联的第一部分,以及所述因子图的所述第二节点表示所
述数据中与所述车队中具有第二位姿的第二车辆相关联的第二部分;至少部分地基于所述第一数据、所述第一位姿、所述第二数据和所述第二位姿来确定所述因子图的第三节点,所述第三节点具有第三数据;丢弃所述第一节点或所述第二节点中的一项或多项;生成所述因子图的包括所述第三节点的更新后的表示;以及将所述更新后的表示传输到自主车辆,所述自主车辆被配置为确定相对于由所述因子图表示的所述环境的位置和朝向中的一项或多项。
115.b.根据权利要求a所述的系统,其中,所述第三节点是所述第一节点,并且所述第三数据是所述第一数据。
116.c.根据权利要求a所述的系统,其中,丢弃所述第一节点或所述第二节点中的一项或多项包括:基于所述第三数据来确定与定位操作相关联的置信水平;以及确定所述置信水平达到或超过阈值置信水平。
117.d.根据权利要求a所述的系统,其中,确定所述第一节点和所述第二节点之间的距离小于或等于阈值距离包括以下各项中的一项或多项:确定与所述第一节点相关联的第一位置和与所述第二节点相关联的第二位置之间的物理距离,或者确定数据的所述第一部分和数据的所述第二部分之间的重叠量。
118.e.根据权利要求a所述的系统,其中,该操作还包括:接收与附加区域相关联的附加数据;基于所述附加区域处的所述因子图来确定与定位操作相关联的置信值小于或等于阈值置信水平;将所述附加数据包括作为所述因子图的附加节点;以及对所述因子图执行位姿图优化。
119.f.一种方法,包括:确定与因子图相关联的感兴趣区域,所述感兴趣区域至少包括第一节点和第二节点,并且所述因子图表示车辆行驶所经过的环境;将所述第一节点确定为所述感兴趣区域的代表性节点;确定所述第一节点的第一位姿和所述第二节点的第二位姿之间的变换;至少部分地基于所述变换来相对于所述第一节点维护所述第二节点;生成所述第一节点和第三节点之间的第一链接,所述第三节点在所述感兴趣区域之外;至少部分地基于所述第一节点和所述第三节点生成环境的更新后的表示;以及将所述更新后的表示发送给自主车辆。
120.g.根据段落f所述的方法,其中,生成所述第一节点和所述第三节点之间的所述第一链接至少部分地基于所述第一节点和所述第三节点之间的欧式距离。
121.h.根据段落g所述的方法,还包括至少部分地基于以下一个或多个来生成所述第一节点和所述感兴趣区域外部的第四节点之间的第二链接:与所述第一节点相关联的传感器数据和与所述第三节点相关联的传感器数据内的环境的区域的共视性;所述第一节点和所述第三节点之间的图距离;与所述第一节点的位置和所述第三节点的位置相关联的共享一元全局因子;或者在与所述第一节点相关联的传感器数据和与所述第三节点相关联的传感器数据之间检测到的闭环。
122.i.根据段落f所述的方法,其中,将所述第一节点确定为所述代表性节点至少部分地基于以下各项中的一项或多项:所述第一节点与所述第二节点之间的相对位置;所述第一节点、所述第二节点和至少第三节点、所述第三节点之间的相对位置;与所述第一节点和所述第二节点相关联的传感器数据的质量;所述感兴趣区域内所述因子图的质量;与所述感兴趣区域相关联的收敛度量;或者与所述第一节点和所述第二节点的所述传感器数据相
关联的共视性度量。
123.j.根据段落f所述的方法,其中,所述变换是第一变换,所述感兴趣区域是第一感兴趣区域,并且所述方法进一步包括:确定与所述因子图相关联的第二感兴趣区域,所述第二感兴趣区域至少包括所述第一节点和第四节点;将所述第四节点确定为所述第二感兴趣区域的代表性节点;确定所述第四节点的第三位姿和所述第一节点的第四位姿之间的第二变换;至少部分地基于所述第二变换相对于所述第四节点维护所述第一节点;至少部分地基于所述第一变换相对于所述第一节点维护所述第二节点;以及生成所述第四节点和所述第三节点之间的第二链接,所述第三节点在所述第一感兴趣区域和所述第二感兴趣区域的外部。
124.k.根据段落f所述的方法,还包括接收与第二感兴趣区域相关联的数据;基于所述第二感兴趣区域处的所述因子图确定与定位操作相关联的置信值小于或等于阈值置信水平;包括所述数据作为所述因子图的附加节点;以及对所述因子图执行位姿图优化。
125.l.根据段落f所述的方法,其中,至少部分地基于以下各项中的一项或多项来确定所述感兴趣区域:所述第一节点和第四节点之间的欧式距离阈值,所述第四节点在所述感兴趣区域的外部;以及与所述第一节点和所述第二节点相关联的传感器数据的质量。
126.m.根据段落f所述的方法,其中,确定所述感兴趣区域响应于以下各项中的一项或多项:确定所述第一节点或所述第二节点的年龄超过或达到第一阈值;确定所述感兴趣区域内的节点的数量达到或超过第二阈值;与所述感兴趣区域相关联的收敛度量达到或超过第三阈值;或者与所述感兴趣区域相关联的点云噪声达到或超过第四阈值。
127.n.一种存储指令的非暂时性计算机可读介质,当被执行时,所述指令使一个或多个处理器执行包括以下各项的操作:确定与因子图相关联的感兴趣区域,所述感兴趣区域至少包括第一节点和第二节点,并且所述因子图表示车辆行驶所经过的环境;将所述第一节点确定为感兴趣区域的代表性节点;确定所述第一节点的第一位姿和所述第二节点的第二位姿之间的变换;至少部分地基于所述变换相对于所述第一节点维护第二节点;生成所述第一节点和第三节点之间的第一链接,所述第三节点在所述感兴趣区域之外;以及至少部分地基于所述第一节点和所述第三节点生成环境的更新后的表示。
128.o.根据段落n所述的非暂时性计算机可读介质,其中,将所述第一节点确定为所述代表性节点至少部分地基于以下各项中的一项或多项:所述第一节点与所述第二节点之间的相对位置;所述第一节点、所述第二节点和至少第三节点、所述第三节点之间的相对位置;与所述第一节点和所述第二节点相关联的传感器数据的质量;或所述感兴趣区域内因子图的质量。
129.p.根据段落n所述的非暂时性计算机可读介质,其中,至少部分地基于以下各项中的一项或多项来确定所述感兴趣区域:所述第一节点和第四节点之间的欧式距离阈值,所述第四节点在所述感兴趣区域的外部;或者与所述第一节点和所述第二节点相关联的传感器数据的质量。
130.q.根据段落n所述的非暂时性计算机可读介质,其中,生成所述第一节点和所述第三节点之间的所述第一链接至少部分地基于以下各项中的一项或多项:所述第一节点和所述第三节点之间的欧式距离;与所述第一节点相关联的传感器数据和与所述第三节点相关联的传感器数据内的所述环境的区域的共视性;所述第一节点和所述第三节点之间的图距
离;与所述第一节点的位置和所述第三节点的位置相关联的共享一元全局因子;或者在与所述第一节点相关联的传感器数据和所述与第三节点相关联的传感器数据之间检测到的闭环。
131.r.根据段落n所述的非暂时性计算机可读介质,其中,所述操作进一步包括:确定与所述因子图相关联的第二感兴趣区域,所述第二感兴趣区域至少包括所述第一节点和第四节点;将所述第四节点确定为所述第二感兴趣区域的代表性节点;确定所述第四节点的第三位姿和所述第一节点的第四位姿之间的第二变换;至少部分地基于所述第二变换来相对于所述第四节点维护所述第一节点;至少部分地基于所述第一变换相对于所述第一节点维护所述第二节点;以及生成所述第四节点和所述第三节点之间的第二链接,所述第三节点在所述第一感兴趣区域和所述第二感兴趣区域的外部。
132.s.根据段落n所述的非暂时性计算机可读介质,其中,所述操作进一步包括:接收与所述第二感兴趣区域相关联的数据;基于所述第二感兴趣区域处的所述因子图来确定与定位操作相关联的置信值小于或等于阈值置信水平;将所述数据包括作为所述因子图的附加节点;以及对所述因子图执行位姿图优化。
133.t.根据段落n所述的非暂时性计算机可读介质,还包括将所述更新后的表示发送到自主车辆。
134.虽然上文描述的示例条款是关于一种具体实施方式进行描述的,但是应当理解,在本文的上下文中,示例条款的内容也可以经由方法、装置、系统、计算机可读介质、和/或另一实施方式来实施。另外,示例a-t中的任何一个可以单独地实现或与示例a-t中的任何其他一个或多个示例组合来实现。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1