基于本地感测的自主导航以及相关联的系统和方法与流程

文档序号:22688591发布日期:2020-10-28 12:58阅读:119来源:国知局
基于本地感测的自主导航以及相关联的系统和方法与流程

本公开涉及自主导航,更具体地,涉及移动平台的基于本地感测的自主运动。



背景技术:

自主载运工具通常依靠访问外部提供的高精度地图来执行自主驾驶功能。外部高精度地图通常是根据其他来源(例如,数据采集车)所采集的数据而预先生成的。例如,数据采集车可以包括立体相机,这些立体相机沿着预先计划的路线扫描道路并采集图像数据,可以将这些图像数据与高精度gps叠加(具有位置数据)组合以创建地区、国家或世界的三维(3d)模型。基于3d模型,可以自动或半自动地标记基本的导航特征,例如车道标记、可导航区域等,从而为自主驾驶提供基本的“真实值”。依靠外部高精度地图,载运工具的自主驾驶系统通常将其计算资源集中在动态障碍物检测和跟踪上,从而使载运工具能够自行“驾驶”或以其他方式自行导航。然而,依靠访问外部提供的地图可能具有各种缺点和不灵活性。因此,需要一种用于移动平台的改进的自主导航系统。

附图说明

图1是具有根据本公开技术的一些实施例配置的元件的代表性系统的示意图。

图2是示出根据本公开技术的一些实施例的基于本地导航地图的自主导航的方法的流程图。

图3是示出根据本公开技术的一些实施例的用于基于本地传感器数据和预定导航地图来生成本地导航地图的方法的流程图。

图4是示出根据本公开技术的一些实施例的用于基于本地导航地图和预定导航地图来确定移动平台的动作的方法的流程图。

图5示出了根据本公开技术的一些实施例的点云形式的3d环境信息的示例表示。

图6示出了根据本公开技术的一些实施例的从移动平台所搭载的传感器获得的传感器数据的示例。

图7示出了根据本公开技术的一些实施例的从图6的传感器数据中检测到的导航特征的示例。

图8示出了根据本公开技术的各种实施例配置的移动平台的示例。

图9是示出可以被利用来实现本公开技术的各个部分的计算机系统或其他控制装置的架构的示例的框图。

图10示出了根据本公开技术的一些实施例的在图1的系统上实现的示例架构。

通过结合附图来参考以下具体实施方式,可以更好地理解在此介绍的技术,其中,相同的附图标记指示相同或功能相似的元件。

具体实施方式

尽管外部高精度地图和高精度gps可以为自主载运工具提供用于自主驾驶或其他导航的数据,但是存在gps信号微弱或不是想要的信号的情况,或者高精度地图不可用(例如,在室内环境中)的情况。这些情况可能使得自主导航功能失调或失效。此外,依靠外部高精度地图至少具有以下缺点:

1、离线产生高精度地图可能会很昂贵,例如,因为通常必须由相对昂贵的传感器从众多来源收集高精度数据(例如,误差被限制在几厘米的大小或更小);

2、更新和维护高精度地图可能会很昂贵,例如,因为通常需要频繁更新和维护被自主载运工具视为“真实”的地图,以提供对当前环境的准确反映;

3、如果高精度地图出现故障(例如,地图未及时更新,未下载到自主载运工具或自主载运工具无法以其他方式访问),则会严重影响自主驾驶系统的安全性;以及

4、产生高精度地图可能涉及地图提供者的资格或认证,考虑到不同国家和地区所实施的当地法律和法规,这可能会很复杂。

一般而言,本公开技术的一些方面涉及整合由移动平台本地检测的导航特征以形成本地高精度的导航地图。本地导航地图可以部分地基于在移动平台静止、移动或以其他方式执行各种自主导航功能时本地获得的高精度姿态信息实时地生成。本公开技术的一些方面涉及使用从外部地图获得的特征作为补充或参考数据(与“真实”数据相反),以增强本地生成的导航地图和/或辅助移动平台的其他自主导航功能。

作为说明,本公开技术提供了一种用于控制移动平台的方法。根据代表性方法,与移动平台相关联的控制器获得实时环境信息,该实时环境信息指示在移动平台的一定距离内的环境的至少一部分。例如,实时环境信息可以包括对应于环境的至少一部分的3d表示的深度信息。实时环境信息可以基于由移动平台搭载的一个或多个传感器(例如,立体相机或激光雷达(lidar)传感器)生成的传感器数据。

根据代表性方法,控制器可以基于从移动平台所搭载的一个或多个传感器获得的传感器数据来检测导航特征。这些传感器可以与或可以不与用于生成实时环境信息的传感器重叠。例如,用于检测导航特征的传感器可以包括相机、lidar传感器、超声传感器或雷达。作为说明,检测到的导航特征可以包括车道线或标记、边缘线或标记、引导线或标记、斑马线、交通信号灯、交通标志、向导牌、可导航的表面或空间、静止障碍物或移动障碍物。为了检测导航特征,控制器可以将一个或多个人工神经网络(ann)和/或其他合适的机器学习技术应用于传感器数据。

根据代表性方法,控制器可以将与导航特征相对应的信息与实时环境信息进行整合,以生成本地导航地图。信息整合过程可以包括将导航特征的子集与环境信息的一个或多个部分实时关联。作为说明,整合过程可以基于与如下传感器相关联的参照系统之间或之中的空间和/或时间变换:(a)用于生成环境信息的传感器和(b)用于检测导航特征的传感器。备选地或附加地,信息整合过程可以基于满足一个或多个精度准则的移动平台的估计的位置和/或取向。例如,对于估计的位置,移动平台的定位误差可以被限制在几厘米、几毫米的大小或更小,和/或对于估计的取向角,移动平台的定位误差可以被限制在十分之一度、百分之一度的大小或更小。借助本地导航地图,控制器可以生成一个或多个导航命令,以至少部分地控制移动平台的运动。

在一些实例中,控制器还可以基于预定的导航地图(例如,外部高精度地图)来获得附加的(例如,第二)导航特征。控制器可以确定移动平台相对于预定导航地图的位置,并且可以在所确定的移动平台的位置的一定距离内从预定导航地图获得第二导航特征。在这些实例中,控制器可以附加地将第二导航特征与环境信息进行整合,以生成本地导航地图。

在一些实例中,控制器还可以基于预定导航地图(例如,外部低精度地图)来获得用于控制移动平台的动作预测。动作预测可以包括对沿移动平台前进方向的阈值距离内的车道改变、停止或转弯的预测。在这些实例中,除了本地导航地图之外,控制器还可以基于动作预测来生成用于移动平台的一个或多个导航命令。

更具体地,为了在未知环境中导航,代表性移动平台可以使用各种传感器来感测其周围环境并生成对环境进行建模的高精度3d信息(例如,3d深度图、3d点云等)。高精度3d环境信息的测量误差可以被限制在几厘米(例如,10厘米或更小)、几毫米(例如,10毫米或更小)的大小或更小(例如,小于1毫米)。同时,移动平台可以使用从本地传感器获得的姿态信息来在3d环境信息内定位自身(例如,其相对位置和/或取向)。定位误差(例如,用于在3d环境信息内定位移动平台的误差)也可以被限制在几厘米、几毫米的大小或更小。

当移动平台正在导航时,移动平台可以基于新收集的传感器数据(例如,新的立体图像、新的点云等)连续更新3d环境信息。在与移动平台相关联的计算资源受限的情况下,移动平台可以忽视反映环境特征超出移动平台当前位置一定距离的传感器数据或使其边缘化。当对3d环境信息进行更新时,可以在以移动平台(或者,其传感器之一)的当前位置为中心的本地参照系统(例如,3d坐标系)中表示3d环境信息或以其他方式将其与本地参照系统关联。

作为说明,为了在3d环境信息内定位移动平台,与移动平台相关联的控制器可以确定移动平台所搭载的适用传感器的姿态。例如,控制器可以访问由移动平台所搭载的惯性测量单元(imu)或车轮里程计提供的姿态信息。

作为另一示例,控制器可以将基于新收集的传感器数据的点云与要更新的3d环境信息进行比较,以确定传感器的姿态。实现这种比较的两种代表性方法是:基于地标的方法和原始数据方法。地标是环境中唯一可识别的物体,其具有可以由传感器估计的位置。它们可以是物理上不同的物体,例如,wi-fi接入点,或具有其他不同特征(例如,颜色)的空间点。在这种方法下,控制器可以识别新收集的传感器数据和3d环境信息中的地标,然后对这些地标进行匹配以确定姿态。另一方面,原始数据方法不假设可以识别地标,而是直接根据位置进行建模。可选地,imu和/或里程计所提供的数据可以用于进一步减小姿态误差。在控制器获得传感器的姿态之后,该控制器可以通过根据姿态将新收集到的传感器数据(例如,深度图像)融合到该控制器中来更新3d环境信息。

因此,在不基于任何外部高精度地图的情况下,本公开技术的实施例可以使移动平台控制器能够使用例如移动平台所搭载的视觉传感器(例如,立体相机)、imu和/或车轮里程计实时地估计姿态的改变(例如,具有6个自由度和高精度)。基于高精度的姿态估计,本公开技术可以在移动平台的一定距离内(例如,在200至500米内)提供较小的姿态误差,从而创建可以以高精度整合或融合检测到的导航特征的本地导航地图。本地高精度导航地图可以包括自主导航所需的所有信息,从而实现稳健而高效的自主导航系统,而不依靠外部高精度地图。

根据一些实施例,与移动平台相关联的控制器可以包括多个功能层。例如,控制器可以包括传感器层,其中许多类型的传感器可以提供用于生成3d环境信息的深度信息。例如,激光传感器(例如,lidar传感器)和/或视觉传感器(例如,立体视觉相机或rgb-d相机)可以与传感器层一起使用。尽管这些传感器的操作原理可能有所不同,但它们能够收集与周围环境的一些部分有关的深度信息和/或其他的3d信息,或者至少可以提供可用于生成此类深度或3d信息的原始数据。当移动平台移动时,机载传感器可以连续收集从不同角度检测到的深度或3d信息。借助传感器层,移动平台控制器可以生成对周围环境的至少一部分进行建模的3d环境信息(例如,以点云的形式)。传感器层还可以包括可以根据本公开技术的各个实施例使用的其他传感器(例如,imu、gps传感器等)。

控制器可以包括识别层,其中控制器可以从移动平台所搭载的各种传感器获得的传感器数据中检测或提取导航特征。如上所述,导航特征可以包括与道路状况、交通法规、方向信息、障碍等有关的元素。控制器可以在识别层中实现合适的机器学习技术,例如卷积神经网络(cnn)。在一些实施例中,可以对传感器数据的单独的单个帧执行某些导航特征检测。在一些实施例中,可以对一系列传感器数据帧执行某些导航特征检测。

控制器还可以包括整合层,其中该控制器可以将检测到的导航特征(例如,车道线或标记、边缘线或标记、引导线或标记、斑马线、交通信号灯、交通标志、向导板、可导航表面或空间、静止障碍物或移动障碍物)与3d环境信息在时间和/或空间上进行整合,并生成实时的本地导航地图。借助整合层,控制器可以提供相对于移动平台的一定距离内的本地环境具有高精度表示的检测到的导航特征。在一些实施例中,在与移动平台相关联的本地坐标系中表达所有检测到的导航特征(例如,以基于移动平台的位置和/或取向进行更新滚动缓冲器的形式)。在一些其他的实施例中,可以在其他合适的坐标系中表达检测到的导航特征。如上所述,使用本地导航地图,控制器可以生成一个或多个导航命令,以至少部分地控制移动平台的运动。

为了清楚起见,在以下描述中没有阐述描述结构和/或过程的若干细节,这些结构或过程是公知的且通常与移动平台(例如,自主载运工具、uav和/或其他类型的移动平台)以及对应的系统和子系统相关联,但是可能会不必要地使本公开技术的一些重要方面变得模糊。此外,尽管以下公开内容阐述了本公开技术的不同方面的若干实施例,但是若干其它的实施例可以具有与本文中所描述的实施例不同的配置或不同的部件。因此,本公开技术可以具有其他实施例,这些实施例具有附加元件和/或不具有下面参考图1至图10所描述的元件中的若干元件。

提供图1至图10以说明本公开技术的代表性实施例。除非另有规定,否则附图不旨在限制本申请中权利要求的范围。

以下描述的本技术的许多实施例可以采取计算机或控制器可执行指令的形式,包括由可编程计算机或控制器执行的例程。可编程计算机或控制器可以或可以不驻留在对应的移动平台上。例如,可编程计算机或控制器可以是移动平台的机载计算机,或者是与移动平台相关联的单独但专用的计算机,或者是基于网络或基于云的计算服务的一部分。相关领域技术人员将会理解,除了下文所示和所述的那些之外,还可以在计算机或控制器系统上实施该技术。该技术可以体现在被专门编程、配置或构造为执行下文所述的一个或多个计算机可执行指令的专用计算机或数据处理器中。因此,本文中通常使用的术语“计算机”和“控制器”指代任何数据处理器,并且可以包括互联网家用电器和手持装置(包括掌上计算机、可穿戴计算机、蜂窝或移动电话、多处理器系统、基于处理器的或可编程的消费电子产品、网络计算机、迷你计算机等)。由这些计算机和控制器处理的信息可以呈现在包括lcd(液晶显示器)的任何合适的显示介质上。用于执行计算机或控制器可执行任务的指令可以存储在任何合适的计算机可读介质中或其上,包括硬件、固件或硬件和固件的组合。指令可以包含在任何合适的存储器装置中,包括例如闪存驱动器、通用串行总线(usb)装置和/或其他合适的介质。在特定实施例中,指令因此是非暂时性的。

图1是具有根据本公开技术的一些实施例配置的元件的代表性系统100的示意图。系统100包括移动平台110(例如,自主载运工具)和控制系统120。移动平台110可以是任何合适类型的可移动物体,例如自主载运工具、无人驾驶飞行器或机器人。

移动平台110可以包括主体112,主体112可以搭载有效载荷(例如,乘客和/或货物)。主体112还可以搭载传感器组114,该传感器组114包括一个或多个传感器,例如成像装置和/或光电扫描装置。例如,传感器组114可以包括立体相机、单目相机、摄像机、静态相机和/或lidar传感器。在一些实施例中,传感器组114可以用于执行或支持诸如导航之类的功能。在另外的实施例中,传感器组114可以用于捕获图像以用于其他目的,例如检测、房地产摄影、森林火灾监控等。

在一些实施例中,利用搭载机构116(例如,云台、齿条和/或横梁)相对于主体112对传感器组114进行支撑。搭载机构116可以允许传感器组114相对于主体112独立地定位。

移动平台110可以被配置为从控制系统120接收控制命令和/或向控制系统120发送数据。在图1中所示的实施例中,控制系统120包括移动平台110上搭载的一些部件和定位在移动平台110之外的一些部件。例如,控制系统120可以包括移动平台110所搭载的第一控制器122以及远离移动平台110定位并经由通信链路128(例如,诸如基于射频(rf)的链路、wi-fi网络、蜂窝网络、基于蓝牙的链路和/或其他近场通讯链路之类的无线链路)连接的第二控制器124(例如,诸如遥控车钥匙或运行控制器应用的智能手机之类的人工操作的遥控器)。第一控制器122可以包括计算机可读介质126,该计算机可读介质126执行指导移动平台110的动作的指令,这些动作包括但不限于移动平台的运动和有效载荷114的操作。第二控制器124可以包括一个或多个输入/输出装置,例如显示器和控制按钮。在一些实施例中,操控者至少部分地操纵第二控制器124来远程控制移动平台110,并且经由第二控制器124上的显示器和/或其他接口从移动平台110接收反馈。在一些实施例中,移动平台110自主地进行操作,在这种情况下,可以取消第二控器124,或者可以仅用于操控者超控功能。

为了提供安全且有效的操作,对于移动平台而言,能够自主或半自主地检测障碍物和/或进行避让操作以避开障碍物是有益的。另外,感测环境物体对于移动平台功能(例如导航、目标跟踪和地图构建)可以是有用的,尤其是在移动平台以半自主或完全自主的方式运行时。

本文中所描述的移动平台可以包括一个或多个传感器(例如,与传感器组114分离且独立),该传感器被配置为检测移动平台周围的环境中的物体。在一些实施例中,移动平台包括一个或多个传感器(例如,图1的距离测量装置140),该传感器被配置为测量物体与移动平台之间的距离。距离测量装置可以由移动平台以各种方式搭载,例如在移动平台主体的上方、下方,侧面或内部。可选地,距离测量装置可以经由云台或允许该装置相对于移动平台平移和/或旋转的其他搭载机构耦合到移动平台。在一些实施例中,距离测量装置可以包括光学距离测量装置,该光学距离测量装置使用光来测量到物体的距离。在一些实施例中,距离测量装置是可以提供立体视觉数据的立体视觉系统,可以根据该立体视觉数据来确定深度信息。立体视觉系统可以是立体相机。在一些实施例中,距离测量装置可以包括lidar系统、雷达系统或激光测距仪。

图10示出了根据本公开技术的一些实施例的在图1的移动平台上实现的示例架构1000。作为说明,架构1000可以包括多个功能层,其中一些功能层经由控制器(例如,移动平台的机载计算机、相关联的计算装置和/或相关联的计算服务)来实现。

参考图10,架构1000可以包括传感器层1010,该传感器层1010可以包括对移动平台所搭载的各种传感器(例如,lidar、立体相机、雷达、里程计、imu、gps等)进行访问。在一些实施例中,传感器层还可以包括对外部地图(例如,外部高精度地图)进行访问。架构1000可以包括多个功能模块,这些功能模块基于对传感器层的直接或间接的数据访问来执行各种类型的估计、检测、定位、融合或其他分析。例如,不同模块可以执行多传感器状态估计和/或定位、多传感器深度估计、基于地图的定位、基于lidar的3d检测、基于立体的3d检测、基于雷达的检测、实时3d重建、车道和标志检测、基于地图的可行进性、车道和标志提取、用于移动物体跟踪的多传感器融合、可行进性分析、车道观察的融合等。作为说明,可以通过执行用于运动物体跟踪的多传感器融合、可行进性分析以及车道观测的融合的模块来生成本地导航地图的示例。架构100还可以包括语义层1020,该语义层1020可以包括语义映射模块,用于将模块所生成的结果映射到可以馈入更高级别的导航模块(例如,用于移动平台操作决策制定和/或路线规划)的语义值或表示。

图2是示出根据本公开技术的一些实施例的用于基于本地导航地图的自主导航的方法200的流程图。可以通过控制器(例如,移动平台的机载计算机、相关联的计算装置和/或相关联的计算服务)来实现方法200。

参考图2,在框210处,方法200包括确定(a)指示移动平台的一定距离内的环境的至少一部分的三维(3d)环境信息,以及(b)自主载运工具相对于3d环境信息的位置和/或取向。在一些实施例中,该确定是实时执行的。

作为说明,可以基于由移动平台所搭载的视觉传感器(例如,立体相机)、lidar或雷达来确定3d环境信息。例如,立体相机所产生的立体图像可以用于生成高精度3d环境信息,该信息对移动平台周围环境的至少一部分进行建模(例如,朝移动平台前进的方向)。可以以各种方式来表达和/或格式化3d环境信息。例如,3d信息可以是3d点云、3d网格、符号距离场等形式。高精度3d环境信息的测量误差可以被限制在几厘米、几毫米的大小或更小。例如,这可以通过使用满足特定精度要求的lidar、立体相机和/或其他传感器并仅将与移动平台的一定距离内的测量相对应的传感器数据并入到3d环境信息中来实现。当移动平台在导航时,移动平台可以基于新收集的传感器数据(即,新的立体图像、新的点云等)连续更新3d环境信息。在与移动平台相关联的计算资源受限的情况下,控制器可以跳过反映环境特征超出移动平台当前位置一定距离的传感器数据或使其边缘化。图5示出了根据本公开技术的一些实施例的点云形式的3d环境信息的至少一部分的示例表示。

返回参考图2,基本上与创建和/或更新3d环境信息同时,控制器可以使用从移动平台所搭载的一个或多个传感器获得的姿态信息在3d环境信息内定位移动平台(例如,其相对位置和/或取向)。换言之,创建和/或更新3d环境信息的操作与移动平台的定位操作可以在时间上重叠。该过程通常可以被称为本地化。作为说明,控制器可以通过访问由移动平台所搭载的imu、车轮里程计、视觉传感器和/或其他传感器提供的数据来定位移动平台。例如,控制器可以将根据新收集的传感器数据而生成的点云与现有的、尚待更新的3d环境信息(例如,基于先前收集的传感器数据的点云)进行比较,以确定传感器/移动平台的姿态。用于实现此目的的两种代表性方法包括基于地标的方法和原始数据方法。地标是环境中唯一可识别的物体,可以由传感器估计其位置。它们可以是物理上不同的物体,例如wi-fi接入点,也可以是环境中具有其他不同特征(例如,颜色)的特征点。在这种方法下,控制器可以(例如,使用适用的模式识别技术)在新收集的传感器数据和现有的3d环境信息两者中识别地标,然后将它们进行匹配以确定当前姿态(例如,与现有的3d环境信息和新收集的传感器数据相关联的坐标系之间的相对旋转和/或平移,以便实现地标的匹配)。另一方面,原始数据方法不假设地标可以识别,而是直接根据新的取向和/或位置对新收集的传感器数据进行建模。可选地,可以利用imu、里程计和/或其他传感器所提供的数据来进一步减小姿态误差。定位误差(例如,用于在3d环境信息内定位移动平台的误差)也可以被限制在几厘米、几毫米的大小或更小。可以至少部分地实现这些精度,因为3d环境信息是以高精度从移动平台获得的(例如,误差被限制在几十厘米、几十厘米的大小或更小)并且被限制在移动平台的一定距离(例如,几百米、几十米、几米或更小)内。在控制器获得传感器的姿态之后,控制器可以通过根据姿态将新收集到的传感器数据(例如,深度数据)融合到该控制器中来更新3d环境信息。例如,在基于姿态进行旋转和/或平移变换之后,可以将基于新收集的传感器数据而生成的新点云与现有的3d环境信息(例如,点云形式)进行合并。作为更新过程的一部分,可以在以移动平台的当前位置为中心的本地参照系统(例如,3d坐标系)中表达3d环境信息或将3d环境信息与参照系统关联。

继续参考图2,在框220处,方法200包括至少部分地基于从移动平台所搭载的一个或多个传感器获得的传感器数据来检测导航特征(例如,车道线、边缘线、引导线、斑马线、交通信号灯、交通标志、向导板、可导航表面或空间、静止障碍物或移动障碍物)。作为说明,控制器可以访问从由移动装置所搭载的各种传感器(例如,lidar传感器、相机、雷达、超声传感器等)获得的传感器数据,以检测导航特征。用于导航特征检测的传感器可以与或可以不与用于确定3d环境信息的传感器重叠。例如,在成本敏感的系统中,用于导航特征检测的传感器可以与用于确定3d环境信息的传感器(或者,其子集)相同。作为另一示例,未被用于确定3d环境信息的传感器可以提供用于导航特征检测的附加数据,因此增强了自主导航的性能和稳健性。

如上所述,导航特征可以包括与道路状况、交通法规、方向信息、障碍物等有关的元素。控制器可以实现合适的机器学习或其他物体检测技术,以分析传感器数据并提取导航特征(例如,它们的类型、内容、大小、边界、位置等)。例如,可以使用选择性搜索物体检测器、基于区域的卷积神经网络(r-cnn)、快速r-cnn等来实现导航特征检测。在一些实施例中,可以对传感器数据的单独的单个帧执行某些导航特征检测。在一些实施例中,可以对一系列传感器数据帧执行某些导航特征检测。

以车道标记为例,对于每一帧图像数据(或者,点云数据),检测图像中对应于车道标记的像素(或点云中的点)。可选地,控制器然后可以适当地对检测到的标记执行2d到3d(或者,3d到3d)的位置转换。为了跟踪多个平行车道,控制器还可以实现合适的车道拟合算法以链接车道标记并在车道段中表示它们。

图6示出了根据本公开技术的一些实施例的从移动平台所搭载的传感器(例如,相机)获得的传感器数据(例如,一帧图像)的示例。从传感器获得的传感器数据可以与图5中所示的3d环境信息至少部分地重叠。也就是说,它们可以包括移动平台周围的环境的相同部分的表示。在各种实施例中,传感器数据的格式可以与或可以不与3d环境信息的格式不同。

作为说明,如图6中所示的图像可以是由移动平台所搭载的前置相机捕获的单帧图像。该图像示出了移动平台前进中的环境和/或需要导航通过的环境。该图像可以具有或可以不具有深度信息(例如,如果由立体相机生成的话)。

图7示出了根据本公开技术的一些实施例的从图6的传感器数据中检测到的导航特征(例如,车道标记、方向引导板、限速标志、正在移动的载运工具)的示例。作为说明,通过分析如图6所示的单帧图像,控制器可以使用适用的模式识别和/或机器学习技术来检测车道标记702、限速704、正在移动的障碍物706和方向标志708。在一些实施例中,控制器可能无法仅使用图6的传感器数据来检测每个可能的导航特征。例如,如果与检测相关联的置信度高于阈值,则控制器可以决定对导航特征的检测的唯一确认。在一些实施例中,控制器可以使用从不同传感器收集的传感器数据的组合来检测更多的导航特征。

返回参考图2,在框230处,方法200包括至少部分地基于3d环境信息和检测到的导航特征来生成本地导航地图。作为说明,控制器可以实时地将检测到的导航特征在时间和/或空间上与3d环境信息进行整合。控制器可以提供相对于移动平台的一定距离内的本地环境具有高精度表示的检测到的导航特征。在一些实施例中,在与移动平台相关联的本地参照系统中表达所有检测到的导航特征(例如,以基于移动平台的位置和/或取向进行更新的滚动缓冲器的形式)。

作为说明,对于每一帧传感器数据,可以参考框210如以上所讨论地估计移动平台(或者,传感器)的姿态(例如,位置和/或取向)。基于姿态信息,控制器可以确定与检测到的导航特征相关联的参照系统与当前3d环境信息之间的变换(例如,平移和/或旋转)。然后,控制器可以将检测到的导航特征投影到3d环境信息上,以生成本地导航地图。

作为更具体的示例,对于从移动平台所搭载的相机生成的每一帧图像,控制器可以识别图像中的车道标记的像素位置(例如,根据基于区域的卷积神经网络(r-cnn)、快速r-cnn、更快速的r-cnn和/或其他合适的算法或方法)。使用合适的深度估计算法(例如,半全局匹配和互信息方法、基于多尺度深度网络的方法和/或其他合适的算法或方法),控制器可以计算车道标记像素的深度信息。控制器还可以计算识别出的车道标记像素相对于相机的三维(3d)坐标。

给定车道标记的3d坐标(x,y,z),控制器可以使用以下投影公式将车道标记投影到二维(2d)鸟瞰视图空间(x’,y’)中:

x′=sx*x+cx

y′=sy*y+cy

其中向量sxsx和sysy是尺度因子,而标量cxcx和cycy是偏移量。这些常数是可选的,并且可以预先确定。例如,sx、sy、cxsxsycx和cycy的值可以以适当地对齐鸟瞰视图空间的视点的方式进行设置。

然后,控制器可以对车道标记进行分组,并且对属于不同组的车道标记进行曲线拟合,以获得结构化的车道线,可以将这样的车道线投影到3d环境信息上作为本地导航地图的一部分。

作为另一特定示例,对于从移动平台所搭载的相机生成的每一帧图像,控制器可以从图像中识别交通标志(例如,指定速度限制、交通法规、方向等)的像素位置(例如,根据基于区域的卷积神经网络(r-cnn)、快速r-cnn、更快速的r-cnn和/或其他合适的算法或方法)。使用合适的深度估计算法(例如,半全局匹配和互信息方法、基于多尺度深度网络的方法和/或其他合适的算法或方法),控制器可以计算交通标志像素的深度信息。控制器还可以计算识别出的交通像素相对于相机的三维(3d)坐标。给定交通标志像素的3d坐标,控制器可以以类似于上述车道线投影的方式将交通标志投影到二维(2d)顶视图空间中。

为了消除或减轻误识别,控制器可以使用与每一帧图像相关联的移动平台的位置和/或取向信息,以对识别出的交通标志执行加权的时间累积。作为说明,可以使用卡尔曼滤波器、八叉树、概率多假设跟踪方法和/或其他合适的算法或方法来执行时间累积和在位置处是否检测到标志的置信度。作为说明,令更新前后的置信度分别为zn-1zn-1和znzn、更新权重为ww且当前观测值为zz,则在当前位置处检测到标志的置信度的更新公式可以为:

zn=w*z+(1-w)*zn-1

控制器可以将交通标志投影到3d环境信息上,并且将它们与它们各自的随着移动平台的不断移动而进行更新的置信度关联,作为本地导航地图的一部分。

继续参考图2,在框240处,方法200包括至少部分地基于本地导航地图以及移动平台位置和/或取向来确定移动平台的下一动作。如上所述,本地高精度导航地图可以包括对移动平台进行自主导航所需的所有信息,因此使控制器能够生成一个或多个命令(例如,停止、加速、减速、左转、右转等),这些命令至少部分地控制移动平台的运动而无需依靠外部地图。

例如,给定在本地导航地图中识别的车道线,移动平台可以执行车道保持操作。作为另一示例,给定在本地导航地图中识别的速度限制,移动平台可以执行速度控制操作。作为又一个示例,给定在本地导航地图中识别的静态和/或运动物体,移动平台可以执行避障操作。

如将在图3和图4中更详细地讨论的,在一些实施例中,控制器可以从外部地图获得特征作为补充或参考数据(与“真实”数据相反),以增强本地生成的导航地图和/或辅助移动平台的其他自主导航功能。

在框250处,方法200包括确定是否继续更新本地导航地图并执行自主导航。如果控制器确定继续该过程,则方法200返回到框210。否则,方法200结束。

图3是示出根据本公开技术的一些实施例的用于基于本地传感器数据和预定导航地图来生成本地导航地图的方法300的流程图。可以通过控制器(例如,移动平台的机载计算机、相关联的计算装置和/或相关联的计算服务)来实现方法300。

参考图3,在框310处,方法300包括至少部分地基于从移动平台所搭载的传感器获得的数据来检测第一组导航特征。作为说明,这可以以类似于参考图2的框210和220所描述的方式来实现。

在框320处,该方法包括相对于预定导航地图定位移动平台。作为说明,预定导航地图可以是控制器可访问的外部高精度地图(例如,具有10cm或更小的精度误差的高清(hd)地图)。为了相对于预定导航地图定位移动平台,控制器可以应用全局定位方法或其他合适的定位技术。作为说明,定位过程可以基于迭代近邻点(icp)算法,该算法旨在通过最小化均方误差来找到两个参照系统(例如,一个与移动平台相关联而另一个与预定导航地图相关联)之间的变换。

在框330处,该方法包括根据移动平台相对于地图的位置,从预定导航地图获得第二组导航特征。作为说明,给定移动平台相对位置,控制器可以搜索和检索预定导航地图所包括的并且在地图上移动平台的位置的一定距离(例如,200至500米)内的导航特征。

在框340处,该方法包括至少使用第一组导航特征和第二组导航特征来生成本地导航地图。作为说明,第一组导航特征和第二组导航特征都可以投影到基于从移动平台本地传感器获得的传感器数据生成/更新的3d环境信息。在一些实施例中,第二组导航特征中的至少一些导航特征并不与第一组导航特征重叠。控制器可以决定为两个组分配不同的权重,并且将它们的投影组合。在一些实施例中,在第一组导航特征与第二组导航特征之间可能会出现冲突信息,控制器可以决定仅使用第一组特征或至少跳过第二组特征中的某些特征,因为它们可能已过时或由于其他原因而不准确。在一些实施例中,控制器可以对来自第一组的所有导航特征进行投影,但是仅对来自第二组的导航特征中的与第一组互补(例如,就特征类型而言)的子集进行投影。

因此,本地导航地图可以充当自主导航的安全冗余机制。当外部或其他预定hd地图可用时,可以将hd地图以传感器数据的形式合并到本地导航地图中。当外部或其他预定的hd地图提供的信息与本地导航地图的信息冲突或由于其他原因而不一致时,控制器可以将本地导航地图用于自主导航,从而提高导航安全性。

利用来自外部地图的特征作为补充或参考数据(与“真实”数据相反),本地导航地图可以更全面且更可靠地用于自主导航。

图4是示出根据本公开技术的一些实施例的用于基于本地导航地图和预定导航地图来确定移动平台的动作的方法400的流程图。可以通过控制器(例如,移动平台的机载计算机、相关联的计算装置和/或相关联的计算服务)来实现方法400。

参考图4,在框410处,方法400包括获得(1)基于从移动平台所搭载的传感器获得的传感器数据而生成的本地导航地图,以及(2)移动平台的位置和/或取向。作为说明,这可以以大体上类似于参考图2的框210、220和230所描述的方式来实现。

在框420处,该方法包括相对于预定导航地图定位移动平台。作为说明,预定导航地图可以是控制器可访问的外部低精度地图(例如,具有5m或更大的精度误差的标清(sd)地图)。控制器可以以大体上类似于参考图3的框320所描述的方式相对于预定导航地图定位移动平台。在一些实施例中,控制器可能不需要相对于预定导航地图精确定位移动平台,只要可以从预定导航地图中检索某些导航指令(例如,“在300米改为左车道”)即可。

在框430处,该方法包括至少部分地基于预定导航地图来获得动作预测。作为说明,给定移动平台的相对位置和/或取向以及目标目的地或方向,控制器可以在预定导航地图中搜索导航指令。导航指令可以包括对移动平台沿其前进方向的阈值距离内的车道改变、停止或转弯的预测。由于预定导航地图可能不具有高精度和/或移动平台的相对位置和/或取向可能不精确,因此并非所有导航指令都是有用的预测。可以由控制器获得预测超出阈值距离或时间的动作的导航指令中的一些并对其进行考虑。

在框440处,该方法包括基于本地导航地图和从预定导航地图中检索出的动作预测来确定移动平台的下一动作。例如,从预定导航地图中检索到的动作预测是“在400米右转”,并且预定导航地图具有约+/-50米的误差。在这种情况下,控制器可以在本地高精度导航地图中定位相关的道路拓扑(例如,用于预测的右转的十字路口),并且确保移动平台正在道路的右车道上行驶以便当十字路口出现时检测到十字路口。当右转检测成功时,控制器可以发出“右转”命令以控制移动平台完成转弯。因此,可以将移动平台操作的保真度提高到几厘米、几毫米的大小或更小,而不是几十米。

因此,利用从外部地图获得的特征作为补充或参考数据(与“真实”数据相反),控制器可以增强本地生成的导航地图和/或辅助移动平台的其他自主导航功能。

以下是本公开技术的附加示例的非穷举性列表。

1、一种用于控制自主载运工具的计算机实现的方法,包括:

至少部分地基于从自主载运工具所搭载的视觉传感器和惯性传感器获得的数据,实时地确定(a)指示在自主载运工具一定距离内的环境的至少一部分的三维(3d)环境信息以及(b)自主载相对于3d环境信息的位置和/或取向;

至少部分地基于从自主载运工具所搭载的一个或多个传感器获得的传感器数据,检测包括以下中的至少一项的导航特征:车道线、边缘线、引导线、斑马线、交通信号灯、交通标志、向导板、可导航的表面或空间、静止障碍物或移动障碍物;

将与导航特征相对应的信息至少与3d环境信息进行整合以生成本地导航地图;

至少部分地基于(a)所生成的本地导航地图和(b)所确定的自主载运工具的位置和/或取向来确定自主载运工具的动作;以及

使自主载运工具根据所确定的动作移动。

2、根据示例1的方法,其中,一个或多个传感器包括视觉传感器或惯性传感器中的至少一个。

3、一种用于控制移动平台的计算机实现的方法,包括:

至少部分地基于从移动平台所搭载的第一传感器接收的数据来获得指示在移动平台一定距离内的环境的至少一部分的实时环境信息;

至少部分地基于从移动平台所搭载的第一传感器或第二传感器中的至少一个获得的传感器数据来检测导航特征;

将与导航特征相对应的信息与至少环境信息进行整合以生成本地导航地图;以及

至少部分地基于所生成的本地导航地图来生成用于至少部分地控制移动平台的运动的一个或多个导航命令。

4、根据示例3的方法,其中,环境信息包括深度信息。

5、根据示例3的方法,其中,环境信息对应于在移动平台一定距离内的环境的至少一部分的3d表示。

6、根据示例3的方法,其中,第一传感器包括激光雷达lidar传感器或立体相机中的至少一个。

7、根据示例3的方法,其中,第二传感器包括相机、lidar传感器、超声传感器或雷达中的至少一个。

8、根据示例3的方法,其中,导航特征包括以下中的至少一项:车道标记、边缘线、引导线、斑马线、交通信号灯、交通标志、向导板、可导航的表面或空间、静止障碍物或移动障碍物。

9、根据示例3的方法,其中,检测导航特征至少部分地基于将一个或多个人工神经网络应用于传感器数据。

10、根据示例3的方法,其中,将与导航特征相对应的信息与至少环境信息进行整合包括:将导航特征的至少一个子集与环境信息的一个或多个部分关联。

11、根据示例3的方法,其中,实时地执行将与导航特征相对应的信息与至少环境信息进行整合。

12、根据示例3的方法,其中,将与导航特征相对应的信息与至少环境信息进行整合至少部分地基于与移动平台所搭载的至少两个传感器相关联的参照系统之间的空间和/或时间变换。

13、根据示例3的方法,其中,将与导航特征相对应的信息与至少环境信息进行整合至少部分地基于移动平台的估计的位置和/或取向。

14、根据示例13的方法,其中,估计的位置和/或取向满足一个或多个精度准则。

15、根据示例3的方法,其中,导航特征是第一导航特征,并且其中,该方法还包括:至少部分地基于至少一个预定导航地图来获得第二导航特征。

16、根据示例15的方法,还包括确定移动平台相对于预定导航地图的位置。

17、根据示例16的方法,还包括从在所确定的移动平台的位置一定距离内的预定导航地图中获得第二导航特征。

18、根据示例15的方法,还包括将第二导航特征与至少环境信息进行整合以生成本地导航地图。

19、根据示例3的方法,其中,还包括基于预定导航地图来获得用于控制移动平台的动作预测。

20、根据示例19的方法,其中,动作预测包括对移动平台的阈值距离内的车道改变、停止或转弯中的至少一项的预测。

21、根据示例19的方法,其中,生成一个或多个导航命令还基于动作预测。

22、根据示例3的方法,其中,移动平台包括以下中的至少一项:无人驾驶飞行器uav、有人驾驶飞行器、自主汽车、自平衡载运工具或机器人。

23、一种存储计算机可执行指令的非暂时性计算机可读介质,当这些计算机可执行指令被执行时使与移动平台相关联的一个或多个处理器执行示例方法1至22中的任何一个。

24、一种载运工具,包括控制器,该控制器被编程为至少部分地控制载运工具的一个或多个运动,其中,经编程的控制器包括一个或多个处理器,这些处理器被配置为执行示例方法1至22中的任何一个。

图8示出了根据本公开技术的各种实施例配置的移动平台的示例。如图所示,本文中所公开的代表性移动平台可以包括以下中的至少一项:无人驾驶飞行器(uav)802、有人驾驶飞行器804、自主载运工具806、自平衡载运工具808、地面机器人810、智能可穿戴装置812、虚拟现实(vr)头戴式显示器814或增强现实(ar)头戴式显示器816。

图9是示出可以用于实现本公开技术的各个部分的计算机系统或其他控制装置900的架构的示例的框图。在图9中,计算机系统900包括经由互连925连接的一个或多个处理器905和存储器910。互连925可以表示通过适当的桥接器、适配器和/或控制器连接的一个或多个单独的物理总线、点对点连接或两者。因此,互连925可以包括例如系统总线、外围组件互连(pci)总线、超传输(hypertransport)或工业标准体系结构(isa)总线、小型计算机系统接口(scsi)总线、通用串行总线(usb)、iic(i2c)总线或电气电子工程师协会(ieee)标准674总线(有时被称为“火线”)。

处理器905可以包括控制例如主计算机的整体操作的中央处理单元(cpu)。在某些实施例中,处理器905通过执行存储在存储器910中的软件或固件来实现这一点。处理器905可以是或可以包括一个或多个可编程通用或专用微处理器、数字信号处理器(dsp)、可编程控制器、专用集成路(asic)、可编程逻辑器件(pld)等,或者这些装置的组合。

存储器910可以是或包括计算机系统的主存储器。存储器910表示任何合适的形式的随机存取存储器(ram)、只读存储器(rom)、闪存等,或者这些装置的组合。在使用中,存储器910可以包含机器指令集,在机器指令集被处理器905执行时,该机器指令集使处理器905执行操作以实现本公开技术的实施例。

通过互连925还连接到处理器905的是(可选的)网络适配器915。网络适配器915向计算机系统900提供与诸如存储客户端和/或其他存储服务器的远程装置通信的能力,并且可以是例如以太网适配器或光纤信道适配器。

可以通过例如用软件和/或固件编程的可编程电路(例如,一个或多个微处理器)来实现本文中所描述的技术,或者完全以专用硬连线电路,或者以这些形式的组合实现。专用硬连线电路可以是例如一个或多个专用集成电路(asic)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)等的形式。

用于实现这里介绍的技术的软件或固件可以存储在机器可读存储介质上,并且可以由一个或多个通用或专用可编程微处理器来执行。本文中所使用的术语“机器可读存储介质”或“计算机可读存储介质”包括可以存储机器(机器可以是例如计算机、网络装置、蜂窝电话、个人数字助理(pda)、制造工具、具有一个或多个处理器的任何装置等)可访问的形式的信息的任何机制。例如,机器可访问的存储介质包括可记录/不可记录介质(例如,只读存储器(rom);随机存取存储器(ram);磁盘存储介质;光学存储介质;闪存装置等)等。

本文使用的术语“逻辑”可以包括例如用特定软件和/或固件编程的可编程电路、专用硬连线电路或其组合。本领域技术人员将理解的是,在不背离本公开技术的情况下,可以以各种方式改变上述附图中示出的组件和步骤或处理元件。例如,可以重新排列逻辑的顺序,可以并行执行子步骤,可以省略图示的逻辑,可以包括其他逻辑等。在一些实施方式中,所描述的组件中的一个或多个可以执行所描述的步骤中的一个或多个。

在本说明书中对“实施例”(例如,“一些实施例”、“各种实施例”、“一个实施例”、“一实施例”等)的引用是指结合该实施例来描述的特定特征、结构或特性被包括在本公开的至少一个实施例或实现方式中。在说明书中各处出现这些短语不一定都指代相同的实施例,也不是与其他实施例互斥的分离的或备选的实施例。此外,描述了可以由一些实施例而不是由其他实施例展现的各种特征。类似地,描述了各种要求,这些要求可以是一些实施例的要求但不是其他实施例的要求。

如本文中所使用的,如“a和/或b”中的短语“和/或”是指单独的a、单独的b以及a和b两者。

就通过引用并入本文中的任何材料与本公开冲突的方面而言,以本公开为准。尽管已用结构特征和/或方法动作的特定语言描述了主题,但是应理解的是,在所附权利要求中限定的主题不必受限于上述特定的特征或动作。出于说明的目的,本文中已描述了特定的实施例和实施方式,但是可以在不背离实施例和实施方式的范围的情况下进行各种修改。上面描述的特定的特征和动作被公开为实现所附权利要求的示例形式。因此,除了所附权利要求之外,实施例和实施方式不受限制。

从上文中可以理解,出于说明的目的,本文已描述了所公开技术的具体实施例,但是可以在不背离本技术的情况下做出各种修改。例如,可以关于任何合适的移动平台来实现图2的方法200,包括但不限于图8中所示的移动平台。在特定实施例的上下文中描述的本技术的某些方面可以在其他实施例中被组合或排除。例如,可以结合图3的方法300来实现图4的方法400。此外,当已在那些实施例的上下文中描述了与公开技术的某些实施例相关联的优点时,其他实施例也可以表现出这种优点,并且并非全部实施例都必须表现出落入该技术的范围内的这种优点。因此,本公开和相关联的技术可以涵盖未在本文中明确示出或描述的其他实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1