CN116710961A - 使用图形切割进行地面分割的方法和系统 - Google Patents
使用图形切割进行地面分割的方法和系统 Download PDFInfo
- Publication number
- CN116710961A CN116710961A CN202180081650.1A CN202180081650A CN116710961A CN 116710961 A CN116710961 A CN 116710961A CN 202180081650 A CN202180081650 A CN 202180081650A CN 116710961 A CN116710961 A CN 116710961A
- Authority
- CN
- China
- Prior art keywords
- ground
- points
- processor
- vertices
- graph
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000011218 segmentation Effects 0.000 title description 28
- 238000004422 calculation algorithm Methods 0.000 claims description 32
- 238000001514 detection method Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 15
- 238000007781 pre-processing Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 35
- 238000004891 communication Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 14
- 230000033001 locomotion Effects 0.000 description 12
- 238000005259 measurement Methods 0.000 description 9
- 230000007423 decrease Effects 0.000 description 7
- 230000008447 perception Effects 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 239000010426 asphalt Substances 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000002310 reflectometry Methods 0.000 description 3
- 230000005366 Ising model Effects 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000003657 Likelihood-ratio test Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/162—Segmentation; Edge detection involving graph-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
- G06V10/422—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation for representing the structure of the pattern or shape of an object therefor
- G06V10/426—Graphical representations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
- G06T2207/30256—Lane; Road marking
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
Abstract
本发明公开了用于分割扫描数据的系统和方法。该方法包括接收表示与地面和一个或多个对象相关的环境中的多个点的扫描数据,以及由扫描数据创建图形。该图形包括对应于多个点的多个顶点。该方法还包括将一元势分配给多个顶点中的每一个,一元势是为顶点分配地面标签或非地面标签的代价,以及为图形中的每一对相邻顶点分配成对势,成对势是为相邻顶点分配不同标签的代价。该方法包括使用一元势和成对势来识别多个点中的每个点的标签,并且根据识别的标签对扫描数据进行分割,以识别与地面相关的点。
Description
交叉引用和优先权要求
本专利文件要求2020年12月4日提交的申请号为17/111,899的美国专利申请的优先权,该申请通过引用并入本文。
背景技术
了解环境是自主车辆等智能机器人可靠执行任务的基本问题之一。为了模拟环境,通常使用三维(3D)传感器(例如,激光扫描仪,如光检测和测距“激光雷达”)来获得三维坐标系中的一组顶点(称为点云)。3D扫描技术的最新进展使得快速获取密集和准确的点云数据成为可能,且成本适中,并可以促进车辆的感知。例如,来自传感器的图像可用于执行避障、任务特定的目标检测和生成用于导航的地形图。当激光扫描仪用于扫描场景/城市环境时,场景通常包含许多对象。很难确定哪些点属于场景中的哪个对象。例如,如果激光扫描城市街区,除了诸如树木、植被、道路等对象之外,该扫描还会包括地面。对于自主车辆的导航而言,区分属于地面的点(地面分割)和属于场景中其他对象(如建筑物、植被、车辆等)的点是非常重要的。具体来说,地面分割是重要的预处理步骤,该步骤从点云中去除大量的点,减少了下游处理任务(如自主车辆的感知和预测)的负担。然而,由于地面分割作为预处理步骤执行,因此需要实现较高的精度,以避免下游误差。
地面分割对于提高自主车辆的感知能力至关重要。在自主车辆通常运行的各种环境中,通常没有关于地面的先验信息。此外,在车辆的运行过程中,地面结构和外观可能会发生显著的变化。因此,在无人监督的情况下,基于特定线索的地面检测算法往往是不合适的。
本文描述了旨在解决上述问题和/或其他问题的方法和系统。
发明内容
在一个或多个情形中,公开了用于分割扫描数据的系统和方法。该系统包括处理器和包括编程指令在内的非临时计算机可读介质。处理器可以执行编程指令来执行本公开的方法。计算机可读介质和编程指令可以可选地包括在计算机程序产品中。
该方法可以包括接收表示与地面以及一个或多个对象相关的环境中的多个点的扫描数据,并由扫描数据创建图形。该图形可以包括对应于多个点的多个顶点。该方法可以进一步包括将一元势分配给多个顶点中的每一个,一元势是为顶点分配地面标签或非地面标签的代价;以及为图形中的每一对相邻顶点分配成对势,成对势是为相邻顶点分配不同标签的代价。该方法还可以包括使用一元势和成对势来识别多个点中的每一个的标签,并基于所识别的标签分割扫描数据以识别与地面相关的点。可选地,这些方法可以包括输出(例如经由用户接口)在扫描数据中与地面相关的点。
在各种实施方式中,该方法可以包括丢弃识别出的与地面相关的点,并使用多个点中未丢弃的点来识别一个或多个对象。可选地,该方法可以包括使用一个或多个对象的识别来在环境中导航自主车辆。
在一些实施方式中,该方法还包括对扫描数据进行预处理以识别可能与地面相关的多个点的子集,以及仅使用已识别的点的子集来创建图形。可以通过将扫描数据转换到与环境对应的地图参考坐标系以及识别地图中位于地面阈值距离内的多个点中的一个或多个来预处理扫描数据。
在某些实施方式中,可以使用K-最近邻算法创建图形。可选地,该图形可以包括连接多个顶点的多个边,多个边中的每个边具有相应的权重。另外和/或可选地,该图形可以包括与地面标签和非地面标签相关的两个终端顶点。
可选地,使用一元势和成对势识别多个点中每个点的标签可以包括确定一元能量函数以及使用多个成对势确定二元能量函数,一元能量函数作为多个顶点中所有顶点的一元势的总和,二元能量函数作为为多个顶点的所有相邻顶点中的每对相邻顶点分配成对的地面标签和非地面标签的代价的总和。一元能量是一个或多个加权特征的函数,一个或多个加权特征与多个顶点中的每一个相关且选自例如地面高度、相对高度、颜色、范围、传感器姿态不确定性、地面高度不确定性、语义标签、检测掩模、强度、定位输出、掠射角、面法线兼容性、离地高度、遮挡检查、每点地面似然度、和/或网格兼容性。二元能量可以是一个或多个加权特征的函数(例如Potts模型),一个或多个加权特征与图形中的每对相邻顶点相关且选自例如相邻顶点间的点激光雷达强度相似性、相邻顶点间的点颜色相似性、面法线相似性、距离相似性、相邻顶点间的相对角度、和/或图像颜色连续性。另外和/或可选地,该方法还可以包括通过执行图形切割来将能量函数优化为一元能量和二元能量的组合。
附图说明
图1是说明示例自主车辆系统的框图;
图2示出了示例车辆控制系统;
图3示出了用于执行地面分割的示例过程的流程图;
图4示出了用于收集扫描数据的示意系统;
图5示出了由点云构造的示例图;
图6示出了将图5分割为地面部分和非地面部分的图;
图7是示出可行的电子系统、子系统、控制器和/或AV的其他部件、和/或外部电子设备的各种元件的框图。
具体实施方式
本文中使用的单数形式“一”、“一个”和“该”包括复数形式,除非上下文另有明确规定。除非另有定义,否则本文中使用的所有技术和科学术语与本领域普通技术人员通常理解的含义相同。本文中使用的术语“包括”是指“包括但不限于”。与本文档相关的附加术语的定义包含在具体实施方式的末尾。
在环境中运行的自主车辆依赖于检测地面和在地面上或附近的障碍物来进行导航。在一个示例中,自主车辆可以配置为收集密集的三维(3D)点云,并将该点云分割为障碍物和地面。自主车辆还可以识别地面的一个或多个特征或特性(例如,轮廓、植被、颠簸、洞、上坡、下坡、弯道、直线、路缘、道路边缘等),以用于安全控制和导航策略。由诸如激光雷达传感器的传感器收集的数据(称为点云数据)很难解释,而分割是解释扫描环境的关键预处理步骤。
地面分割是为了分离与地面对应的点以便对地面进行分类,和/或区分与地面不对应的点以识别与环境中各种障碍物对应的点。在不同的实施方式中,地面分割将表示地面高度的预先构建的环境地图与定位系统结合,该定位系统相对于预先构建的地图定位车辆。在这些方法中,如果点的离地高度低于某个阈值(例如0.3米),则该点被归类为地面,否则就被归类为非地面。然而,这种硬分类对地图中的错误(例如对地面高度的错误估计和/或对地图的长范围扭曲)并不可靠。具体来说,由于要将激光雷达点与地图进行比较,必须通过车辆坐标系(frame)将激光雷达点从传感器坐标系转换到地图坐标系。这需要将每个单独的激光器坐标系转换为传感器坐标系,然后通过车辆坐标系从传感器坐标系转换到地图坐标系。这意味着在地图坐标系中的点高度误差在每个变换中都会受到许多误差的影响,包括:姿态的俯仰或侧倾误差(尤其由于双地——即由于例如地图质量差的原因导致地图上的点落入两个或更多个高度簇的区域——引起的)、外部校准误差(例如对激光雷达传感器和车辆坐标系之间的转换的错误估计)、固有校准误差(例如对单个激光器与传感器体之间的变换的估计误差)、定位误差(与如何在地图坐标系中估计车辆的姿态相关的误差)、地图中的地面误差等。在长范围处,即使是小于一度的微小间距误差也可能足以造成几十厘米的高度误差。这些可能导致将落在地面上的点不准确地分类为非地面。这导致车辆错误地检测到不存在的对象,导致车辆停止或颠簸。这也可能导致将与非地面对象相关的点不准确地分类成地面,可能导致碰撞。
本公开的方法和系统描述了一种地面分割方法,该方法使用另外的因素(如邻近点的相互关系),并利用图形切割来执行二元地面分割。地面分割可用于例如通过识别地面和执行障碍物识别来操作自主车辆。
图1是示例系统100的框图,该系统100包括通过网络110与一个或多个数据存储器102和/或一个或多个服务器103通信的自主车辆101。尽管示出了一个自主车辆,但多个自主车辆可以通过网络110彼此连接和/或连接到数据存储器102和/或服务器103。网络110可以是任何类型的网络,如局域网(LAN)、如因特网的广域网(WAN)、蜂窝网络、卫星网络或它们的组合,并且可以是有线的或无线的。数据存储器102可以是任何类型的数据存储器,例如但不限于,地图数据存储器、交通信息数据存储器、用户信息数据存储器、关注点数据存储器或任何其他类型的内容数据存储器。服务器103可以是任何类型的服务器或服务器集群,例如但不限于,Web或云服务器、应用服务器、后端服务器或它们的组合。
如图1所示,自主车辆101可以包括传感器系统111、车载计算设备112、通信接口114和用户接口115。自主车辆101还可以包括车辆中所包括的某些部件(例如图2中所示的),例如发动机、车轮、方向盘、变速器等,这些部件可以由车载计算设备112使用各种通信信号和/或命令(例如加速信号或命令、减速信号或命令、转向信号或命令、制动信号或命令等)来控制。
传感器系统111可以包括连接到自主车辆101和/或包括在自主车辆101中的一个或多个传感器。此类传感器的示例包括但不限于激光雷达系统(LIDAR)、无线电检测和测距(RADAR,下文称为雷达)系统、激光检测和测距(LADAR)系统、声音导航和测距(SONAR,下文称为声纳)系统、一个或多个摄像机(例如可见光谱摄像机、红外摄像机等)、温度传感器、定位传感器(例如全球定位系统(GPS)等)、位置传感器、燃料传感器、运动传感器(如惯性测量单元(IMU)等)、湿度传感器、占用率传感器等。传感器数据可以包括描述自主车辆101的周围环境中的对象的位置的信息、关于环境本身的信息、关于自主车辆101的运动的信息、关于自主车辆的路线的信息等。当自主车辆101在表面上行驶时,至少一些传感器可以收集与该表面有关的数据。
例如,GPS可以用来确定或估计自主车辆101的地理位置。为此目的,GPS可以包括收发器,其配置为根据基于卫星的定位数据来估计自主车辆101相对于地球的位置。在一个示例中,该系统可以配置为使用GPS结合地图数据来估计自主车辆101正在行驶的道路上的车道边界的位置。
IMU可以是配置为基于惯性加速度感知自主车辆101的位置和方向变化的传感器的任何组合。在一些示例中,传感器的组合可以包括例如加速度计和陀螺仪。
RADAR系统可以被视为对象检测系统,其配置为使用无线电波来确定对象的特征,如对象的距离、高度、方向或速度。RADAR系统配置为发射可由处于无线电波的路径中的任何对象反弹的无线电波或微波的脉冲。对象可以将波的部分能量返回给接收器(例如抛物面天线或其他天线),该接收器也可以是RADAR系统的一部分。RADAR系统还可以配置为执行所接收信号(由对象反射的)的数字信号处理,并可以配置为识别对象。接收的信号或基于RADAR的信息可以指示例如给定表面的尺寸特征。
LIDAR系统可以包括配置为使用光感测或检测在自主车辆101所处的环境中的对象的传感器。一般来说,LIDAR系统是结合了光学遥感技术的设备,其可以通过用光照射目标(例如地面)来测量到目标的距离或其他属性。例如,LIDAR系统可以包括配置为发射激光脉冲的激光源和/或激光扫描仪以及配置为接收激光脉冲的反射的检测器。例如,LIDAR系统可以包括由旋转镜反射的激光测距仪,并且激光围绕被数字化的场景在一维、二维或更多维中扫描,以特定角度间隔收集距离测量值。例如,LIDAR系统可以配置为发射激光脉冲作为光束,并扫描光束以生成二维或三维范围矩阵。在示例中,距离矩阵可以通过测量脉冲传输和相应反射信号的检测之间的时间延迟来确定到给定车辆或表面的距离。在一些示例中,多个LIDAR系统可以连接到第一车辆,以扫描第一车辆的完整的360°视距。LIDAR可以配置为向计算设备提供代表道路上已经被激光击中的表面的点的数据云。除了距离之外,LIDAR系统还可以根据方位角和仰角来表示这些点,这些点可以转换为相对于连接到车辆的局部坐标系的(X,Y,Z)点数据。此外,LIDAR可以配置为提供从道路表面反射的光或激光的强度值,其可以指示表面类型。在示例中,LIDAR系统可以包括诸如光(例如激光)源、扫描仪和光学器件的部件、光电检测器和接收器电子设备以及定位和导航系统。在示例中,LIDAR系统可以配置为使用紫外线(UV)、可见光或红外线来进行对象成像,并且可以与多种目标一起使用,包括非金属对象。在一个示例中,窄激光束可用于以高分辨率映射对象的物理特征。可以用宽发散激光束以单脉冲和/或逐点的方式照射视场。
摄像机可以是配置为捕获自主车辆101所处环境的图像的任何摄像机(例如静态摄像机、视频摄像机等)。这些摄像机可以用来收集其他传感器无法感知到的对象的其他细节。此外,一对摄像机可以使用三角测量等方法来确定摄像机到自主车辆101行驶的表面的距离。
应该注意的是,用于收集有关表面数据的传感器可以包括在自主车辆101以外的系统中,例如但不限于其他车辆(自主驾驶或普通驾驶)、地面或空中测量系统、卫星、空中安装的摄像机、红外传感设备、其他机器人、机器等。
图2示出了车辆201的示例系统架构,车辆201可以是例如图1的自主车辆的自主车辆101。车辆201可以包括发动机或马达202和用于测量车辆和/或其环境的各种参数的各种传感器。两种类型的车辆通用的操作参数传感器包括,例如:位置传感器236,例如加速度计、陀螺仪和/或惯性测量单元;速度传感器238;以及里程计传感器240。车辆101还可以具有时钟242,系统架构使用该时钟来确定操作期间的车辆时间。时钟242可以被编码到车辆车载计算设备212中,它可以是单独的设备,或者多个时钟可以是可用的。
车辆201还包括各种传感器,这些传感器用于收集有关车辆行驶环境的信息。这些传感器可以包括,例如:定位传感器260(例如全球定位系统(“GPS”)设备);对象检测传感器,例如一个或多个摄像机262;激光雷达传感系统264;和/或雷达和/或声纳系统266。传感器还可以包括环境传感器268,例如降水传感器和/或环境温度传感器。对象检测传感器可以使车辆201能够在任何方向上检测在车辆201的给定距离或范围内的对象,同时环境传感器收集关于车辆行驶区域内的环境条件的数据。该系统架构还包括用于捕获环境的图像的一个或多个摄像机262。
在操作过程中,信息从传感器传递到车载计算设备212。车载计算设备212分析由传感器捕获的数据,并且可选地基于分析结果控制车辆的操作。例如,车载计算设备212可以经由制动控制器222控制制动;经由转向控制器224控制方向;经由节气门控制器226(在燃气动力车辆中)或马达速度控制器228(例如电动车辆中的电流水平控制器)控制速度和加速度;控制差速齿轮控制器230(在具有变速器的车辆中)和/或控制如辅助设备控制器254的其他控制器。
地理位置信息可以从定位传感器260传送到车载计算设备212,然后车载计算设备可以访问与位置信息相对应的环境地图,以确定环境的已知固定特征,例如街道、建筑物、停车标志和/或停/走信号。从摄像机262捕获的图像和/或从诸如激光雷达系统264之类的传感器捕获的对象检测信息从这些传感器传送到车载计算设备212。对象检测信息和/或捕获的图像由车载计算设备212处理,以检测车辆201附近的对象。此外或可选地,车辆201可将任何数据传输到远程服务器系统103(图1)以供处理。用于基于传感器数据和/或捕获的图像进行对象检测的任何已知或将要已知的技术都可以用于本文公开的实施例中。
车载计算设备212可以获得、检索和/或创建提供关于自主车辆201的周围环境的详细信息的地图数据。车载计算设备212还可以基于例如三维定位数据(例如来自GPS的数据)、三维方向数据、预测位置等确定AV在局部环境中的位置、方向、姿态等。例如,车载计算设备212可以接收GPS数据以确定AV的纬度、经度和/或高度位置。例如基于激光的定位系统、惯性辅助GPS或基于摄像机的定位的其他定位传感器或系统也可用于识别车辆的位置。车辆的位置可以包括绝对地理位置(例如纬度、经度和海拔高度)以及相对位置信息(例如相对于紧邻其周围的其他车辆的位置,通常可以以比绝对地理位置更少的噪声来确定相对位置信息)。地图数据可以提供关于以下方面的信息:不同道路、路段、车道段、建筑物或其他项目的标示和位置;车道的位置、边界和方向(例如停车道、转弯车道、自行车道或特定道路内其他车道的位置和方向)和与车道相关的元数据;交通控制数据(例如,标志、交通信号灯或其他交通控制设备的位置和说明);和/或提供帮助车载计算设备212分析自主车辆201的周围环境的信息的任何其他地图数据。
地图数据还可以包括确定冲突区域或空间内对象和/或车辆通行权的信息和/或规则。冲突空间(或冲突区域)是指预测多个对象和/或车辆可能同时出现而导致风险碰撞的区域,除非其中一个对象和/或车辆被给予穿越冲突空间的优先权(即通行权)。这种冲突空间的示例包括交通灯、十字路口、停车标志、环形路、转弯处、人行横道、行人穿行道等。冲突空间的通行权信息和/或规则可以源自与地理区域相关的交通法规和规则(且可以对所有空间都不相同)。例如,对于交通灯,具有绿灯信号的车辆优先于具有黄色或红灯信号的车辆,直行的车辆具有优先于试图左转或右转的车辆的通行权,当有行走标志信号时行人具有通行权等。类似地,行驶的车辆具有优先于试图汇入交通中的停止车辆的通行权,和/或在其车道上行驶的车辆具有优先于由另一车道并入的车辆的通行权。在另一示例中,在行人穿行道上行人有通行权。在十字路口处,直行的车辆具有优先于试图左转或右转的车辆的通行权。在停车标志处,首先到达停车标志的车辆具有优先于稍后到达停车标志的车辆的通行权。
在一些实施例中,地图数据还可以包括对应于车辆沿着一个或多个车道行驶的公共模式的参考路径信息,以使对象的运动被限制在参考路径(例如,对象通常行驶的交通车道内的位置)。这些参考路径可以被预先定义,例如交通车道的中心线。可选地,可以基于在一段时间内对车辆或其他对象的历史观察来生成参考路径(例如,对于直线行驶、车道合并、转弯等的参考路径)。
在一些实施例中,车载计算设备212还可以包括和/或可以接收与用户的行程或路线有关的信息、路线上的实时交通信息等。
车载计算设备212可以包括路线控制器231和/或可以与路线控制器231通信,路线控制器231为自主车辆生成从起始位置到目的地位置的导航路线。路线控制器231可以访问地图数据存储器,以识别车辆可以行驶以从起始位置到达目的地位置的可行的路线和路段。路线控制器231可以对可行的路线进行评分,并识别出到达目的地的优选路线。例如,路线控制器231可以生成在路线中使行驶的欧氏距离或其他成本函数最小化的导航路线,并且可以进一步访问会影响在特定路线上行驶所需的时间量的交通信息和/或估计。根据实施方式,路线控制器231可以使用各种路线规划方法生成一个或多个路线,路线规划方法可以是如Dijkstra算法、贝尔曼-Fort算法或其他算法。路线控制器231还可以使用交通信息来生成反映该路线的预期条件(例如星期几或一天中的当前时间等)的导航路线,使得在高峰时段行驶的路线可能与在深夜行驶的路线不同。路线控制器231还可以生成到目的地的多个导航路线,并将多个这样的导航路线发送给用户,供用户从各种可行的路线中进行选择。
在各种实施方式中,车载计算设备212可以确定自主车辆201的周围环境的感知信息。基于由一个或多个传感器提供的传感器数据和所获得的位置信息,车载计算设备212可以确定自主车辆201的周围环境的感知信息。感知信息可以表示普通驾驶员在车辆周围环境中感知的信息。感知数据可以包括与自主车辆201的环境中的一个或多个对象相关的信息。例如,车载计算设备212可以处理传感器数据(例如,LIDAR或RADAR数据、摄像机图像等),以便识别自主车辆201的环境中的对象和/或特征。这些对象可以包括交通信号、道路边界、其他车辆、行人和/或障碍物等。车载计算设备212可以使用任何现在或以后已知的对象识别算法、视频跟踪算法和计算机视觉算法(例如,在多个时间周期内迭代地帧到帧地跟踪对象)来确定感知。感知信息可以包括通过丢弃地面激光雷达点来识别的对象,如下所述。
在一些实施例中,车载计算设备212还可以为环境中的一个或多个已识别的对象确定该对象的当前状态。状态信息可以包括但不限于每个对象:当前位置;当前速度和/或加速度、当前前行方向;当前姿态;当前形状、大小或足迹;类型(例如,车辆、行人、自行车、静态对象或障碍物);和/或其他状态信息。
车载计算设备212可以执行一种或多种预测和/或预测操作。例如,车载计算设备212可以预测一个或多个对象的未来位置、轨迹和/或动作。例如,车载计算设备212可以至少部分地基于感知信息(例如,包括如下所述的估计形状和姿态的每个对象的状态数据)、位置信息、传感器数据和/或描述对象的过去和/或当前状态的任何其他数据、自主车辆201、周围环境和/或它们的关系来预测对象的未来位置、轨迹和/或动作。例如,如果对象是车辆,并且当前的行驶环境包括十字路口,车载计算设备212可以预测该对象是否会直行或转弯。如果感知数据表明该十字路口没有交通灯,那么车载计算设备212也可以预测该车辆在进入该十字路口之前是否必须完全停车。
如下面更详细地讨论的,车载计算设备212还可以预测通过冲突空间的多个对象的轨迹,并确定与每个这种预测相关联的似然度。
在各种实施例中,车载计算设备212可以确定该自主车辆的运动计划。例如,车载计算设备212可以基于感知数据和/或预测数据来确定自主车辆的运动计划。具体地说,考虑到关于邻近对象的未来位置的感知和其他感知数据,车载计算设备212可以确定自主车辆201的运动计划,以便相对于对象的未来位置最好地导航自主车辆。
在一个或多个实施例中,车载计算设备212可以接收预测并作出关于如何处理自主车辆201的环境中的对象的决定。例如,对于特定对象(例如,具有给定的速度、方向、转弯角度等的车辆),车载计算设备212根据例如交通条件、地图数据、自主车辆的状态等来决定是否超车、让行、停止和/或通行。此外,车载计算设备212还规划了一条可使自主车辆201在给定路线上行驶的路径,以及驾驶参数(例如,距离、速度和/或转弯角度)。也就是说,对于给定对象,车载计算设备212决定对该对象做什么,并决定如何这样做。例如,对于给定的对象,车载计算设备212可以决定超过该对象,并可以决定是在该对象的左侧或右侧通过(包括诸如速度等的运动参数)。车载计算设备212还可以评估被检测到的对象与自主车辆201之间的碰撞风险。如果风险超过可接受的阈值,则可以确定在自主车辆遵循定义的车辆轨迹和/或在预定的时间段(例如N毫秒)内执行一个或多个动态生成的紧急操作是否可以避免碰撞。如果可以避免碰撞,那么车载计算设备212可以执行一个或多个控制指令,以执行谨慎的操作(例如,轻度减速、加速、改变车道或转向)。相反,如果碰撞不能避免,则车载计算设备112可以执行一个或多个控制指令来执行紧急操作(例如,制动和/或改变行驶方向)。
例如,如果车载计算设备212基于对象轨迹预测确定对象可能违反与自主车辆所达成的通行权,则车载计算设备212可以确定自主车辆的运动计划,以避免在冲突空间中与该对象碰撞。
如上所述,生成有关自主车辆运动的规划和控制数据以供执行。例如,车载计算设备212可以:经由制动控制器控制制动;经由转向控制器控制方向;经由节气门控制器(在燃气动力车辆中)或马达速度控制器(例如电动车辆中的电流水平控制器)控制速度和加速;控制差速齿轮控制器(在具有变速器的车辆中);和/或控制其他控制器。
在本文讨论的各种实施例中,描述可以说明车辆或车辆中包含的控制器(例如车载计算系统中)可以执行以使车辆和/或控制器做出决定并使用该决定来控制车辆的操作的编程指令。然而,实施例不限于这种布置,因为在各种实施例中,分析、决策制定和/或操作控制可以全部或部分地由与车辆的车载计算设备电子通信的其他计算设备和/或车辆控制系统处理。这种其他计算设备的示例包括与乘坐车辆的人相关联的电子设备(例如智能手机)以及通过无线通信网络与车辆进行电子通信的远程服务器。任何此类设备的处理器都可以执行下面将要说明的操作。
参考图1,通信接口114可以被配置为允许自主车辆101和外部系统之间的通信,外部系统可以为例如外部设备、传感器、其他车辆、服务器、数据存储器、数据库等。通信接口114可以利用任何现在或以后已知的协议、保护方案、编码、格式、封装等,例如但不限于,Wi-Fi、红外线连接、蓝牙等。用户接口系统115可以是在车辆101内实施的外围设备的一部分,例如包括键盘、触摸屏显示设备、麦克风和扬声器等。
图3示出了使用根据实施方式的图形切割执行地面分割的示例程序300的流程图。
如图3中所示,在302处,系统可以从环境中收集传感器数据(即扫描数据)。扫描数据可以由诸如激光雷达的扫描传感器产生。在一些情况下,传感器可以连接到车辆上或成为车辆的一部分。扫描数据可以被组织成扫描数据的点云。点云数据通常包括位置(X,Y,Z)和强度(i)数据,有些数据可以具有颜色(R,G,B)数据。该系统还可以接收用于收集各种扫描点的传感器的姿态和协方差。
图4示出了车辆扫描系统的一个示例。该扫描系统可以包括连接到车辆400上的车辆传感器401。在一些情况下,车辆传感器401可以是图1的摄像机262、激光雷达264、雷达系统266等。车辆400可以是图1和图2中的车辆101/201。车辆传感器401可以扫描车辆400周围的环境,并收集该环境中的特征407的扫描数据点405。例如,激光雷达传感器可以收集环境中的扫描数据点405。当车辆400处于静止状态时或当车辆400沿着路径移动时,车辆传感器401可以收集扫描数据点405。可以基于对扫描数据点405的收集和分析控制车辆400的导航。
扫描数据点405可以是从环境中的特征407到车辆传感器401或车辆400的距离的度量。虽然在图4中示出了有限数量的扫描数据点405,但是可以记录车辆400上方、下方以及另外周围的特征407(包括车辆400本身)的许多扫描数据点405。
可选地,可以使用坐标系在空间中记录扫描数据点405。例如,局部坐标、地理坐标、地心坐标或笛卡尔坐标可用于记录扫描数据点405。局部坐标可以是局部坐标空间中不同于广义坐标系但与广义坐标系相关联的索引系统。地理坐标可以是描述点相对于地球的位置的坐标系,例如,使用纬度、经度和海拔。地心坐标可以是使用x、y和z坐标表示空间中的点的坐标系,其中原点位于地球的质心。笛卡尔坐标是通过一组数字坐标将点的位置唯一地指定在一个或多个平面中的坐标系,该组数字坐标表示从定义平面并在原点处相交的两个或更多个垂直轴到该点的距离。在一些情况下,相对于车辆的路径记录坐标。
重新参考图3,系统可以处理接收到的扫描数据(例如点云),以识别地面附近的扫描数据点的子集(304)。可选地,点的子集在地面附近和/或在距离车辆的阈值范围内。使用下面描述的将点分类为地面或非地面的方法进一步分析子集中包含的点。
例如,点的子集可以包括位于距离地面的阈值距离(例如,约0.2-约0.8米、约0.1-1米、约0.3-约0.7米、约0.4-约0.6米、约0.5米、约0.4米、约0.6米等)内的点。另外和/或可选地,子集可以包括位于车辆最大阈值范围内的点(例如,沿一个或多个方向距离车辆约45-55米,距离车辆约47-53米,距离车辆约40-60米等)。可选地,扫描数据中未包括在识别的点子集中的点可以被归类为非地面点(即,并非位于距离地面的阈值距离内或在车辆的最大范围之外的点)。如下所述进一步分析识别的点的子集以进行分类。
可以基于例如传感器的类型、传感器的方向、所需的地面分割精度、环境类型、扫描数据内的点的范围等确定距离地面的阈值距离和/或车辆的最大阈值范围,例如在更保守的方向上的阈值的范围可以移动,即增加从子集中排除点的阈值距离。
为了识别点的子集,系统可以首先将扫描数据从传感器坐标系转换为地图坐标系(例如通过车辆坐标系转换为预先构造的地图坐标系),以相对于地图定位传感器。这可以用于为每个点识别每个点所落入的瓦片地图中的单元格以及地图坐标系中点的离地高度。然后,系统可以使用地图坐标系中每个点的高度来识别位于距离地面的阈值距离内和/或位于车辆的最大范围内的点。也可以直接在局部传感器坐标系中分析该部分内容和点。例如,可以将点的面法线特征与局部车辆坐标系中的垂直于竖直方向的面进行比较,相对角度特征可以计算在局部车辆坐标系而不是在地图坐标系中的斜率等。
识别点的子集的其他可选和/或附加方法也在本公开的范围内。例如,另外和/或可选地,根据基于扫描数据中的点的离地高度特征的似然比测试可用于识别点的子集。离地高度特征可以预先计算并考虑点的离地高度(可选地结合车辆姿态的不确定性)和地图中存储的地面高度的不确定性,以计算该点是否属于地面的似然度。然后,系统将点是地面的点的似然比和该点不是地面的点的似然比与阈值比较。如果比率超过阈值(例如,约20:1,约19:1,约18:1等),那么该点被归类为属于最大似然类(即地面)且不包括在识别的点的子集中。这允许系统分析离地高度变得不确定的情况(例如在远离自主车辆处),因为属于地面的似然函数更广泛,这样使用下面描述的方法,系统能够将在更长范围处的点保持在选择的子集中以执行分割。
可选地,系统可以在似然比上使用两个单独的似然阈值(主阈值和二级阈值),其中二级阈值>主阈值。在这样的实施方式中,如果点的似然比超过了主阈值(例如,20:1),那么系统可以将其归类为最大似然类(即地面)。但是,如果似然比小于二级阈值(例如,750:1),系统仍然可以选择将点包含在识别的点的子集中,以执行如下所述的分割。只有当点的似然比超过二级阈值时,该点才被排除在识别的点的子集之外。这允许系统更新相邻未分类点的一元能量,以反映其相邻点的硬分类(其中相邻点的似然比大于主阈值,但小于二级阈值)。目标是使已识别子集中硬决策边界附近的点保持为使得它们的能量反映在下面描述的全图能量中的相邻点中。例如,在全图(下文所述)中,如果未知点A与使用似然比测试分类为非地面的点B相邻,则在已知B是非地面点的情况下,当A和B都包含在点的子集中时,边能量项通过对将A分类为地面增加惩罚而促使将A同样分类为非地面。
在各种实施方式中,基于似然比测试可以通过如下方法来计算。给定地图坐标系中地面高度的方差(Var_map)、在地图坐标系z方向的车辆位置的方差(Var_vehicle_z)以及车辆侧倾和俯仰的不确定性(Var_vehicle_pitch),系统可以计算范围为R内的点的离地高度的不确定性(Var_HAG)的近似估计(使用小角度近似),如下所示:
Var_HAG=Var_map+Var_vehicle_z+R^2*Var_vehicle_pitch
其中,
Var_vehicle_z和Var_vehicle_pitch可以通过估计车辆在地图坐标系中的姿态的不确定性的扩展卡尔曼滤波器(EKF)计算出来;
Var_map要么是反映地图的整体精度的硬编码常数,要么是编码在地图本身中的值。
然后,系统可以计算高斯概率密度函数,并根据点的离地高度(HAG)使用该函数估计点为地面似然度(P(Ground))和非地面的似然度(P(Not Ground)),如下所示:
exp_term=exp(-HAG^2/(2*Var_HAG))
norm_constant=1.0/sqrt(2*pi*Var_HAG)
计算地面似然度为:
P(Ground)=exp_term/norm_constant;
P(Not Ground)=(1-exp_term)/norm_constant
应该注意的是,使用与估计方差相关的归一化常数(norm_constant)会使似然度之和随着方差的增加而减少。这样随着范围增加会将权重从这个特征转移到其他特征。此外,地面似然度相对于离地高度为零呈对称。因此,在预期地面下方过远的点可以被归类为非地面,这将允许系统探测到地面上的负向障碍物和孔洞。
可选地,该系统可以考虑激光雷达光束从地面反射后冲击对象时的情况,例如当道路是湿的时候。系统可以使用拒绝方法解释反射,其中一旦点超过地面以下标准偏差的数量的阈值乘数(例如3或更多),则假设点是反射(而不是与地面一致的噪声和姿态误差)。在这种情况下,上述的指数项(exp_term)被设置为1.0(这相当于离地高度为0)。因此,系统倾向于将这些反射点分类为地面,这导致它们不包括在已识别点的子集中。
已识别点的子集是可以对应于地面并按如下所述方式进行分割的点。用于识别可以对应于地面的点的子集的扫描数据的这种处理和预分类具有节省处理能力和/或时间的优势,因为在完整点云上进行基于图形切割的分割在计算上昂贵和/或可能不满足所需的时间限制。
在306,系统可以使用扫描数据的子集创建图形,通过图形表示的边来识别扫描数据中的相邻点对。这一步的目标是将扫描数据的子集变成无向图形G={N,E},其中节点N={(x,y,z)i}是所有的三维测量点(即对应于点云数据的子集中的点),连接节点的边E={(Ni,Nj)}。该图形还可以包括被称为终端的两个虚拟节点,它们表示从N到表示地面(S)点或非地面(T)点的两个集合之间的点的分配。与这些集合对应的终端被称为源s和汇t。在这种图形中,每条边都被分配有非负的权重或代价。
可以通过识别包含扫描数据点的空间或坐标系以及生成图形的算法来构造该图形。坐标系的示例可以包括例如二维坐标系、三维坐标、与传感器相关的XYZ连续笛卡尔坐标、与传感器相关的球坐标(即方位角、仰角、范围)、与传感器相关的柱坐标系(即方位角、Z、距离)、与传感器相关的水平坐标系(2D且连续,包括方位角和仰角)、距离图像(2D且离散,包括激光ID和发射方位角)车辆坐标系等。构造图形的算法示例可以包括但不限于K-最近邻算法、K-最近邻算法的变体(例如,考虑相邻激光器数)、距离阈值内点算法、可变距离阈值算法、Delaunay三角测量算法、网格生成算法(例如行进立方体)、基于八叉树数据结构的算法、4/8连接距离图像算法、4/8连接距离图像和附加列连接算法、4/8连接距离图像和动态方位角边缘算法、和/或其组合。
图5中示出了使用网格图构建器和与传感器相关的XYZ连续笛卡尔坐标构造的示例图形,其中每个点都以网格形式与K=4的最近邻点连接。在各种实施例中,可以考虑4连接或8连接,但是其他连接方式也在本公开的范围内。可选地,在一些情况下,可以使用K最近邻算法和与传感器相关的XYZ连续笛卡尔坐标来构造非网格图形(即,类似于图5的图形,但节点是随机分布的)。在使用K-最近邻算法生成的图形中,越近的点的连接性越强(即,不一致的二元能量项的代价更高)。图形的节点最初可以与K最近邻点连接,连接两个节点的每个边E可以基于端点之间的距离进行加权(边二元不一致能量成反比),颜色和返回强度的差异作为不一致能量的一部分等。点p∈{N}和两个终端s和t之间的边可以被初始化,并且可以具有对应于将点分配给地面集合或非地面集合的概率的权重,在一些示例中,基于某些先验已知信息(下面讨论的成对二元势)、某些假设(例如,忽略离地面超过阈值距离的激光雷达点)、或其他特征(例如,在局部坐标系中斜率特征与竖直方向的比较)来进行该分配。例如,概率可以反映该点与已知颜色模型的匹配情况。
在308处,可以针对每个可能的标签(即地面标签和非地面标签)为图形表示中的每个顶点分配一元势。具体地说,一元势可以定义为带有标签L的顶点n的势。例如,整体一元能量(Unary Energy)项可以用以下方程定义:
Unary Energy=w1Σn∈ND1n(Ln)+w2Σn∈ND2n(Ln)+....wiΣn∈NDin(Ln).
一元能量项是关于所有顶点的将标签Ln分配给给定点n的代价Dn(Ln)的和。该项对应于模型的识别部分。在示例目标函数中,其中目标是为了最小化能量,这是模型寻求最小化的能量项。每个Dn(Ln)可以看作是惩罚项,即根据给定的特征Di为点n分配标签Ln的代价。下面描述了计算一元势Dn(Ln)的多种方法。
该一元能量可以是一个或多个加权特征Di的函数,特征Di可以是例如但不限于地面高度、相对高度、颜色特征、与传感器的距离、传感器姿态不确定性、地面高度不确定性、语义标签、检测掩膜、强度、定位输出、掠射角、面法线兼容性、离地高度、遮挡检查、每点地面似然度、网格兼容性等。
计算一元能量时每个特征的权重wi可以手动分配(即预先编码)和/或由系统自动学习,并可以基于上述特征中的一个或多个用于确定最终的一元能量。具体地说,分配权重是为了控制各种特征对一元能量的相对影响。此外,许多特征是相互依赖的(如下所述),并且权重会根据特征之间的关系而变化。
范围特征:对于范围特征,随着传感器射线(光束)与地面之间的入射角变浅,传感器获得返回射线的可能性变小。系统可以假设近似平坦的地面,因此较长的返回范围意味着与地面的角度应该较浅,而这在地面不平的环境(如丘陵和山谷)中是不正确的。为了考虑该特性,例如系统可以使用用于将远范围处(即随着范围增加)的点标记为地面而增加一元能量的函数,因为传感器不可能从这些点收到返回射线,除非这些点垂直于传感器。然而,在某个阈值范围以下,范围对一元能量没有影响,以避免分类的偏差。需要注意的是,系统基于地面为平面和车辆水平的假设考虑范围特征(如上所述)。
相对范围特征:系统可以分析相邻点之间的范围差,以推断前景对象的存在。相邻点之间较近的点很可能是前景对象。具体来说,用同一激光测量的点之间的大范围不连续表明了前景对象的存在。在较长的范围处,这是不太有效的线索,因为随着测量点和表面之间的角度变浅,返回范围对道路的轮廓变得更加敏感。为了说明这个特征,系统可以使用在检测到范围不连续时增加将点标记为地面的一元能量的函数(因为不连续可以表示非地面对象的存在)。
可以使用上述步骤304中讨论的离地高度特征来分析姿态不确定性,以计算点为地面的似然比。然后,系统可以根据确定的该点是非地面或地面分别为该点分配高或低的一元能量。
相对高度特征:许多对象可能有几乎竖直的边。对于这样的对象,如果一个点在一个相邻的测量点之上,那么较高的点很可能不是地面。这个特征特别有用,因为它不需要地图的先验知识,也不需要相对于地图的绝对姿态,并且增加它的权重可以使系统对地图中的误差更稳定。然而,对远范围处的扫描该特征可能不够有效,因为扫描变得足够稀疏以致于人和车辆大小的对象通常只被一条激光线击中。
对于两个相邻的点(x和y),系统可以以相对于彼此的局部坐标系中的z的高度差计算相对高度特征。该系统还可以计算各点之间的水平距离。然后,系统可以为每个点(考虑每个相邻点)确定相邻点间的最大值,如下所示:
intermediate_val=abs(delta_z)/max(delta_xy,minimum_xy)
最小xy值(minimum_xy)配置用于确保避免因位于另一点正上方的点造成的“除以0”的情况。此外,对于每个点:
Ground_Likelihood=clamp(scaling*inermediate_val,0,1)
地面似然度(Ground_Likelihood)的计算方法是将值intermediate_val乘以可配置的比例因子(scaling),然后利用clamp函数在0和1之间运算。可能是地面的点被分配低的一元能量项,而不太可能是地面的点被分配高的一元能量项。
NotGround_Likelihood=1-Cround_likelihood
在光束稀疏的情况下,由于光束之间的角分离,在远范围处形成竖直边的两点并非标志着上方点是非地面的。相反,竖直边可以标志着较低的点也不是地面的,因为由光束冲击地面形成的稀疏范围环,对象不太可能恰好在地面之上。系统可以通过上述范围特征计算中的delta_z值的第一次加权来解释这些点。其中,z_a为局部坐标系中该点的高度z,z_b为局部坐标系中相邻点的高度。因此,对于小于最小阈值范围(R1)的范围,系统可以确定:
对于(z_a-a_b>0),delta_z=(z_a-z_b),否则0.0;
对于大于最大阈值范围(R2)的范围,系统可以确定:
不管符号如何,delta_z=(z_a-z_b);且
当范围在R1和R2之间时,对于z_a-z_b为负值时,一元能量的权重可以从0.0增加到1.0。
颜色特征:通过将激光雷达的点投射到摄像机的图像中,该系统可以使用摄像机收集到的附加信息。通常由沥青和混凝土组成的可驾驶道路区域是灰色阴影(忽略车道标记,如双黄线)。因此,明亮的饱和色的存在可能意味着非道路对象的存在。而且,从沥青或混凝土中接收到较低的颜色饱和点的可能性更高,而且更有可能落在地面上。例如,系统可以为颜色特征分配函数,以随着颜色饱和度降低而降低为点分配地面标签的能量。可选地,地面的颜色(例如砖路是红色的)可以以定义的规则编码在地图本身中,低能量会分配给属于地面类的红色点。
强度特征:对于激光雷达返回的强度,低强度更可能表示地面,因为沥青具有低反射率。具体地说,返回强度是由材料的反射率以及激光与面法线之间的夹角共同决定的。较高的返回强度表明表面较浅,或者表面与我们的光束之间的角度更接近垂直。假设地面反射率恒定,系统可以从返回的强度中获得相对角度的知识。例如,系统可以为强度特征分配函数,以随着强度的降低而降低为点分配地面标签的能量。
语义标签:从摄像机图像中获得的语义标签可以作为特征。摄像机图像可以将图像中的像素分类为道路、人行道、地形、植被、车辆、行人等。通过将激光雷达扫描点投射到摄像机图像中,系统可以获得每个点的分类标签。看似与道路、人行道、地形和其他地面类型类相对应的点因属于地面类而被分配低能量,而看似属于非地面语义类的点可以被分配高的地面能量(和低的非地面能量)。
检测掩膜:如果点投射到检测掩膜内的摄像机的坐标系中,那么它不太可能是地面的(视差和运动效应除外),系统可以相应地分配权重。
掠射角:随着激光束与表面之间的角度变浅,获得从表面返回的光束的可能性减小。具体来说,假设点已经击中地面(即,接收到返回光束),系统可以使用先前的地图和车辆在地图中的姿态来估计光束的入射角。然后,系统可以根据入射角计算从地面接收返回光束的概率。在长范围处,当角度变得较浅时,接收返回光束的可能性降低。然而,假设接收到返回光束,这意味着这个点不太可能是地面的(应该分配较高的一元能量)。该特征允许使用地图信息,使对于丘陵和山谷的确定更稳定(丘陵改变入射角,导致在丘陵处观察长范围处时,范围特征出现误报)。
面法线兼容性:此特征是点处的面法线与给定位置的地面之间的比较。例如,此特征可用于检查点的面法线是否位于竖直方向上。指向竖直方向的面法线表示表面可能是地面的(反之亦然),相应的一元能量项可以相应地减少/增加。可选地,面法线特征还可以将面法线与存储在地图中的预期面法线值(代替假定的竖直方向)进行比较。
遮挡检查:此特征与检查传感器是否具有将点假定在地面上的视线有关。该特征容易受到长范围曲率的影响,可以相应地调整权重。
定位输出:为了对车辆进行定位,定位系统将激光雷达扫描与定位先验物(基于地图信息)进行配准,先验物代表环境中静止部分(例如建筑物、墙壁、道路等)的点云。此配准步骤将激光雷达扫描与表示环境静止部分的点云模型对齐。但是,并非扫描中的所有点都与地图匹配。例如,当地图中不包含车辆时,车辆上的点会是异常点,系统会使用该点作为地面分割的一部分。异常点不太可能是地面的且会被分配高的一元能量项(反之亦然)。
每点地面似然度:上述不确定的离地高度特征可能没有完全考虑姿态误差。例如,当车辆的姿态改变时,激光雷达点投射到地图中的单元格可能会改变。在这种情况下,系统并非基于点投射到地图中的单元格的假设来计算地面似然度,而是计算点投射到不同单元格的期望。然后,系统可以执行如上所述的不确定的离地高度特征的确定,并相应地调整一元能量项。
网格兼容性:该特征利用基于网格的地图重建,然后使用基于网格的地图确定的离地高度以及面法线来确定点是地面的似然度。
在310处,用于标签对(即地面和非地面标签)的成对势被分配给图形表示中的每个相邻顶点对。二元能量(Binary energy)项表示为所有相邻点(n,m)中的相邻点(n,m)分配一对标签(Ln,Lm)的代价的总和。
Binary energy=∑n,m∈NVn,m(Ln,Lm)
这里,两个点或顶点(n,m)的成对势Vn,m(Ln,Lm)是将一对标签(Ln,Lm)分配给相邻点(n,m)的代价。该项负责模型中的正则化:相邻的像素被鼓励共享相同的标签(避免标签中的噪声)。因此,例如,如果可行的标签是二元的(即地面和非地面),二元能量项促进标签对(地面,地面)和(非地面,非地面),并抑制(但不阻止)标签对(地面,非地面)和(非地面,地面),即在标签一致时分配较低的代价。
然而,该项也负责将分割与对象边界对齐,其中希望从一个标签到另一个标签有明显的变化,即,对于从一个区域变为另一个区域处的点,相邻点的标签不一致。为了确保这两个属性,在某些实施方式中,可以采用Potts模型作为成对函数。Potts模型是Ising模型的推广。它不仅惩罚标签不一致的相邻点(与Ising模型中一样),而且惩罚项取决于观测值差异的大小。差异越大,罚分越小。这具有降低图像/点云轮廓旁边的约束的效果。该方法实现了规则化分割,区域边界跟随轮廓。其他类似的模型也在本公开的范围内,例如通过点之间的距离缩放二元能量的点差项。
成对势是基于下列的特征,例如但不限于相邻顶点之间的点激光雷达强度相似度、点颜色相似度、距离相似度、相对角度、图像颜色连续性等。例如,Potts模型可以修改为对于不一致随着点之间距离的增加、随着点之间颜色差异的增加、和/或随着点之间激光雷达强度的差异的增加而具有更低的能量。就相对角度而言,彼此竖直排列的这些点(即如果一个点在另一个点之上,则可以表示地面和非地面之间的边界)离得越近,点标签之间不一致的代价就越小。可选地,这种相对角度函数需要通过点之间的绝对距离进行一些加权,以便促使将短的不连续点(例如<1cm)仍然分到同一标签类别中。对于法线特征,系统可以计算两点的估计面法线之间的点积。而且,面法线彼此越相似,将这些点分配给不同类别的不一致能量就越大。对于图像的颜色连续性,系统可以取边中每个激光雷达点投射到的像素的颜色,然后计算颜色值的差作为相似度的度量(随着相似度的增加而增加不一致的代价)。可选地,系统可以将边中的每个激光雷达点投射到图像坐标上,并搜索它们之间的路径,这样二元能量代价就可以是路径中像素之间的颜色差的平方之和。这一特征允许系统利用摄像机提供的密集数据来确定两个激光雷达点是否应该分在同一组,并且在点与点之间的距离使得邻接性不太有用的情况下的长范围处尤其有用。
因此,例如成对函数操作使得观察到的特征值之间具有第一差异的标签不同的第一对顶点的成对势高于观察到的特征值之间具有较低的差异的标签不同的第二对顶点。
在312处,优化能量函数,其中能量函数聚集了一元势(一元能量)和成对势(二元能量)。具体地,能量函数是一元势和成对势的选择性加权组合,例如使用图形模型(例如图形切割方法)将能量函数优化成例如在可能的标签集合上最小化。在优化过程中,系统可以提供能量函数优化问题的精确解或近似解。图形切割是s-t切割(在图5的图中),它是终端S和T在诱导图上完全分离的边的子集。如图6所示,任何切割都对应于底层点云划分为“地面”和“非地面”分割的一些二元分割。例如,如图6所示,通过图4所示的使用能量函数分割地面和非地面点的图绘制潜在的分割线。目标是计算给出“最优”分割的最佳切割。
在314处,输出与优化后的能量函数对应的点标签。例如,在点云的视觉显示中,使用能量函数标记为地面的点云中的点可以被分配第一颜色,并且使用能量函数标记为非地面的点云中的点可以被分配第二颜色。可选地,在视觉显示器中可以将这些区域标记为地面或非地面。可选地和/或另外地,可以作为应用于范围图像的像素颜色在视觉显示器中输出地面分割。
上述地面分割可用于过滤掉地面点,并可对点云数据进行分割,试图在点云数据中找到/分类/分离不同的对象。所选择和分类的对象可用于控制自主车辆的导航。例如,可以控制自主车辆以避免与一个或多个被检测到的对象发生碰撞。由于来自城市环境的大规模和大密度的激光扫描点,在分割过程中消耗了大量的内存;去除地面点减少了所需的处理时间、内存和其他计算资源。
图7描述了可以包含在系统的任何电子部件中的内部硬件的示例,例如AV的内部处理系统、外部监视和报告系统、或远程服务器。电气总线700用作连接其他图示硬件部件的信息高速公路。处理器705是系统的中央处理设备,其被配置为执行运行编程指令所需的计算和逻辑操作。如本文和权利要求中使用的,术语“处理器”和“处理设备”可指单个处理器或一组处理器中共同执行一组操作的任何数量的处理器,例如中央处理单元(CPU)、图形处理单元(GPU)、远程服务器或这些部件的组合。只读存储器(ROM)、随机存取存储器(RAM)、闪存存储器、硬盘驱动器和能够存储电子数据的其他设备构成了存储器设备725的示例。存储设备可以包括单个设备或存储数据和/或指令的设备的集合。本发明的各种实施例可以包括包含编程指令的计算机可读介质,该编程介质配置为使一个或多个处理器和/或计算设备执行在前面的图的上下文中描述的功能。
可选的显示接口730可允许来自总线700的信息以可视化、图形化或字母数字格式显示在显示设备735(例如车辆的仪表板显示系统)上。还可以提供音频接口和音频输出(例如扬声器)。与外部设备的通信可以使用各种通信设备740,如无线天线、射频识别(RFID)标签和/或短程或近场通信收发器,每个通信设备可选地通过一个或多个通信系统与设备的其他部件通信连接。通信设备740可以配置为通信地连接到通信网络,如因特网、局域网或蜂窝电话数据网络。
硬件还可以包括用户接口传感器745,其允许从如键盘或按键、操纵杆、触摸屏、触摸板、遥控器、指向设备和/或麦克风的输入设备750接收数据。也可以从可以捕获视频和/或静止图像的摄像机720接收数字图像帧。该系统还可以从如加速度计、陀螺仪或惯性测量单元的运动和/或定位传感器770接收数据。该系统还可以从激光雷达系统760接收数据,如本文前面描述的。
上面公开的特征和功能以及替代方案可以组合到许多其他不同的系统或应用中。各种部件可以以硬件或软件或嵌入式软件来实施。目前无法预料或本领域的技术人员可以做出的未预料到的各种替代、修改、变形或改进中的每一个也旨在被所公开的实施例所涵盖。
与上述公开相关的术语包括:
“自动化设备”或“机器人设备”是指包括处理器、编程指令和一个或多个物理硬件部件的电子设备,其响应来自处理器的命令可以在最少或不需要人工干预的情况下运动。通过这种运动,机器人设备可以执行一个或多个自动功能或功能集。此类操作、功能或任务的示例可以包括但不限于操作车轮或螺旋桨以实现驱动、飞行或其他运输操作、操作机器人升降机进行装卸、医疗相关过程、建筑相关过程和/或类似操作。示例自动化设备可以包括但不限于自主车辆、无人机和其他自主机器人设备。
术语“车辆”是指能够承载一名或多名乘客和/或货物并由任何形式的能量提供动力的任何移动形式的运输工具。术语“车辆”包括但不限于轿车、卡车、货车、火车、自主车辆、飞机、无人机等。“自主车辆”是指具有处理器、编程指令和可由处理器控制而无需操作人员的传动系部件的车辆。自主车辆可以是完全自主的,对于大多数或所有驾驶条件和功能而言,不需要操作人员,或者可以是半自主的,在某些条件下或对于某些操作,可能需要操作人员,或者操作人员可以超驰车辆的自主系统并且可以控制车辆。自主车辆还包括自主系统增强了人为操作的车辆,例如具有驾驶员辅助转向、速度控制、制动、停车和其他系统的车辆。
如本文所用,术语“光”是指与光频率相关的电磁辐射,例如紫外线、可见光、红外线和太赫兹辐射。示例光发射器包括激光发射器和发射会聚光的其他发射器。在本文中,术语“发射器”用于指代光发射器,例如发射红外光的激光发射器。
“电子设备”或“计算设备”指包含处理器和存储器的设备。每个设备可以具有其自己的处理器和/或存储器,或者该处理器和/或存储器可以与虚拟机或容器装置中的其他设备共享。存储器将包含或接收编程指令,当由处理器执行时,使电子设备根据编程指令执行一个或多个操作。
术语“存储器”、“存储设备”、“数据存储”、“数据存储设备”等均指存储计算机可读数据、编程指令或两者的非瞬态设备。除非另有特别说明,否则术语“存储器”、“存储设备”、“数据存储”、“数据存储设备”等旨在包括单个设备实施例、多个存储设备一起或共同存储一组数据或指令的实施例、以及这些设备内的单个扇区。
术语“处理器”和“处理设备”是指被配置为执行编程指令的电子设备的硬件部件。除非另有特别说明,否则单数术语“处理器”或“处理设备”旨在包括单个处理设备实施例和多个处理设备一起或共同执行过程的实施例。
在本文中,术语“通信链路”和“通信路径”表示第一设备经由其向一个或多个其他设备发送通信信号和/或从一个或多个其他设备接收通信信号的有线或无线路径。如果设备能够通过通信链路发送和/或接收数据,则设备是“通信连接”的。“电子通信”是指通过一个或多个信号在两个或多个电子设备之间传输数据,无论是通过有线网络还是无线网络,以及通过一个或多个中间设备直接或间接传输。
术语“分类器”是指一种自动化过程,人工智能系统可以通过该过程为一个或多个数据点分配标签或类别。分类器包括通过如机器学习等自动化过程训练的算法。分类器通常从一组标记或未标记的训练数据开始,并应用一个或多个算法来检测数据中对应于各种标签或类别的一个或多个特征和/或模式。这些算法可以包括但不限于像决策树一样简单的算法、像朴素贝叶斯分类一样复杂的算法和/或诸如K最近邻算法的中间算法。分类器可以包括人工神经网络(ANN)、支持向量机分类器和/或许多不同类型的分类器中的任何一个。一旦经过训练,分类器就可以使用它在训练期间学到的知识库对新数据点进行分类。训练分类器的过程会随着时间的推移而发展,因为分类器可能会定期接受更新数据的训练,并且它们可能会从提供的关于它们出现的错误分类的数据的信息中学习。分类器将由执行编程指令的处理器实施,它可以对大型数据集合(例如图像数据、激光雷达系统数据和/或其他数据)进行操作。
“模型”是指可以基于一组输入特征预测现实世界过程的输出而无需明确编程的一组算法例程和参数,预测可以是例如对象轨迹的预测、患者的诊断或治疗、基于用户搜索查询等。可以在训练过程中确定软件例程的结构(例如子例程的数量和它们之间的关系)和/或参数值,这可以使用正在建模的真实世界过程的实际结果。这样的系统或模型被理解为必然植根于计算机技术,事实上,在没有计算技术的情况下其无法实现甚至存在。虽然机器学习系统利用各种类型的统计分析,但机器学习系统与统计分析的区别在于无需显式编程即可具有学习的能力,并且植根于计算机技术。
如本文所述,术语“分割(segmentation)”、“分段(segmenting)”及其衍生词除了一般含义外,还指选择或定义点云/图像的子集的过程,该过程形成整个点云/图像的“割”。分割过程的结果会涉及生成边界、划分、像素/体素列表、轮廓、图像片段、点云片段、突出显示区域或用于区分图像/点云中已选部分(也称为目标数据和/或目标区域)和图像中未选部分的任何其他适当的数据。例如,在某些实施例中,分割点云/图像会导致将点云/图像的一部分复制到剪贴板或其他缓存,由此可以执行进一步的操作。在其他实施例中,对点云/图像进行分割可以导致在作为分割目标的点云/图像的部分周围绘制边界。点云/图像的分割部分可能是连续的,也可能是非连续的,可以包括未选择的“孔”和/或尽管断开但被选择的断开的“岛”。
在本文中,术语“优化”、“最小化”和类似的措辞将被广泛地解释为本领域普通技术人员所理解的这些术语的含义。例如,这些术语不能被解释为局限于绝对全局最优值、绝对全局最小值等。例如,函数的最小化可以采用迭代最小化算法,该算法在达到绝对最小值之前终止于停止准则。还考虑将最优或最小值设定为局部最优或局部最小值。
在本文中,当如“第一”和“第二”这种顺序相关的术语用于修饰名词时,这种使用只是为了将一个项目与另一个项目区分开来,除非特别说明,否则不需要顺序。
此外,相对位置的术语,如“竖直”和“水平”,或“前部”和“后部”,在使用时,旨在彼此相对,而不必是绝对的,并且仅指与这些术语相关联的设备的一个可能位置,这取决于设备的方向。当本文使用术语“前部”、“后部”和“侧部”来指车辆的区域时,它们指的是关于车辆的默认行驶区域的车辆区域。例如,车辆的“前部”是更接近车辆的前照灯而不是车辆的尾灯的区域,而车辆的“后部”是更接近车辆的尾灯而不是车辆的前照灯的区域。此外,术语“前部”和“后部”不一定局限于前向或后向的区域,还各自包括靠近前而非后的侧部区域,反之亦然。车辆的“侧部”是指位于车辆最前面和最后面部分之间的侧面部分。
Claims (41)
1.一种利用处理器分割扫描数据的方法,所述方法包括:
接收扫描数据,所述扫描数据表示与地面以及一个或多个对象相关的环境中的多个点;
由所述扫描数据创建图形,所述图形包括与所述环境中的所述多个点对应的多个顶点;
将一元势分配给所述多个顶点中的每一个,所述一元势对应于为所述顶点分配地面标签或非地面标签的代价;
为所述图形中的每一对相邻顶点分配成对势,所述成对势对应于为所述相邻顶点分配不同标签的代价;以及
使用所述一元势和所述成对势来识别所述多个点中每一个的标签;以及
根据识别的所述标签对所述扫描数据进行分割,以识别与所述地面相关的点。
2.根据权利要求1所述的方法,进一步包括:
丢弃识别出的与所述地面相关的点;以及
使用所述多个点中未丢弃的点来识别一个或多个所述对象。
3.根据权利要求2所述的方法,进一步包括使用一个或多个所述对象的识别来在所述环境中导航自主车辆。
4.根据权利要求1所述的方法,进一步包括:
对所述扫描数据进行预处理以识别可能与所述地面相关的所述多个点的子集;以及
仅使用已识别的点的子集来创建所述图形。
5.根据权利要求4所述的方法,其中对所述扫描数据进行预处理以识别所述多个点的子集包括:
将所述扫描数据转换到与所述环境对应的地图参考坐标系;以及
识别所述地图中位于地面阈值距离内的多个点中的一个或多个。
6.根据权利要求1所述的方法,其中创建所述图形包括将所述图形创建成包括连接多个所述顶点的多个边。
7.根据权利要求6所述的方法,其中创建所述图形包括使用下列方法中的至少一种:使多个边中的每一条都具有相应的权重的K-最近邻算法或网格图构建器。
8.根据权利要求6所述的方法,其中所述图形进一步包括与所述地面标签和所述非地面标签相关的两个终端顶点。
9.根据权利要求1所述的方法,其中使用所述一元势和所述成对势来识别多个点中的每一个的标签包括:
确定一元能量函数,所述一元能量函数作为多个顶点中所有顶点的一元势的总和;以及
使用多个成对势确定二元能量函数,所述二元能量函数作为为所述多个顶点的所有相邻顶点中的每对相邻顶点分配成对的地面标签和非地面标签的代价的总和。
10.根据权利要求9所述的方法,其中所述一元能量是一个或多个加权特征的函数,所述一个或多个加权特征与所述多个顶点中的每一个相关且选自下列中的至少一个:地面高度、相对高度、颜色、范围、传感器姿态不确定性、地面高度不确定性、语义标签、检测掩模、强度、定位输出、掠射角、面法线兼容性、离地高度、遮挡检查、每点地面似然度、或网格兼容性。
11.根据权利要求9所述的方法,其中所述二元能量是一个或多个加权特征的函数,所述一个或多个加权特征与所述图形中的每对相邻顶点相关且选自下列中的至少一个:相邻顶点间的点激光雷达强度相似性、相邻顶点间的点颜色相似性、面法线相似性、距离相似性、相邻顶点间的相对角度或图像颜色连续性。
12.根据权利要求11所述的方法,其中所述二元能量函数是Potts模型。
13.根据权利要求9所述的方法,进一步包括将能量函数优化为所述一元能量和所述二元能量的组合,所述优化包括执行图形切割。
14.根据权利要求1所述的方法,进一步包括经由用户接口输出所述扫描数据中与所述地面相关的点。
15.一种用于分割扫描数据的系统,所述方法包括:
处理器;以及
包括一个或多个指令的非临时计算机可读介质,所述指令在由所述处理器执行时使得所述处理器执行以下操作:
接收扫描数据,所述扫描数据表示与地面以及一个或多个对象相关的环境中的多个点;
由所述扫描数据创建图形,所述图形包括与所述环境中的所述多个点对应的多个顶点;
将一元势分配给所述多个顶点中的每一个,所述一元势对应于为所述顶点分配地面标签或非地面标签的代价;
为所述图形中的每一对相邻顶点分配成对势,所述成对势对应于为所述相邻顶点分配不同标签的代价;以及
使用所述一元势和所述成对势来识别所述多个点中每一个的标签;以及
根据识别的所述标签对所述扫描数据进行分割,以识别与所述地面相关的点。
16.根据权利要求15所述的系统,进一步包括编程指令,所述编程指令在由所述处理器执行时使得所述处理器执行以下操作:
丢弃识别出的与所述地面相关的点;以及
使用所述多个点中未丢弃的点来识别一个或多个所述对象。
17.根据权利要求16所述的系统,进一步包括编程指令,所述编程指令在由所述处理器执行时使得所述处理器使用一个或多个所述对象的识别来在所述环境中导航自主车辆。
18.根据权利要求15所述的系统,进一步包括编程指令,所述编程指令在由所述处理器执行时使得所述处理器执行以下操作:
对所述扫描数据进行预处理以识别可能与所述地面相关的所述多个点的子集;以及
仅使用已识别的点的子集来创建所述图形。
19.根据权利要求18所述的系统,其中在由所述处理器执行时使得所述处理器对所述扫描数据进行预处理以识别所述多个点的子集的所述编程指令包括在由所述处理器执行时使得所述处理器执行以下操作的编程指令:
将所述扫描数据转换到与所述环境对应的地图参考坐标系;以及
识别所述地图中位于地面阈值距离内的多个点中的一个或多个。
20.根据权利要求19所述的系统,其中在由所述处理器执行时使得所述处理器创建图形的所述编程指令包括使得所述处理器将所述图形创建成包括连接多个所述顶点的多个边的编程指令。
21.根据权利要求20所述的系统,其中在由所述处理器执行时使得所述处理器创建图形的编程指令包括使得处理器使用下列方法中的至少一种创建所述图形的编程指令:使多个边中的每一条都具有相应的权重的K-最近邻算法或网格图构建器。
22.根据权利要求20所述的系统,其中所述图形进一步包括与所述地面标签和所述非地面标签相关的两个终端顶点。
23.根据权利要求15所述的系统,其中在由所述处理器执行时使得所述处理器使用所述一元势和所述成对势来识别多个点中的每一个的标签的编程指令包括在由所述处理器执行时使得所述处理器执行以下操作的编程指令:
确定一元能量函数,所述一元能量函数作为多个顶点中所有顶点的一元势的总和;以及
使用多个成对势确定二元能量函数,所述二元能量函数作为为所述多个顶点的所有相邻顶点中的每对相邻顶点分配成对的地面标签和非地面标签的代价的总和。
24.根据权利要求23所述的系统,其中所述一元能量是一个或多个加权特征的函数,所述一个或多个加权特征与所述多个顶点中的每一个相关且选自下列中的至少一个:地面高度、相对高度、颜色、范围、传感器姿态不确定性、地面高度不确定性、语义标签、检测掩模、强度、定位输出、掠射角、面法线兼容性、离地高度、遮挡检查、每点地面似然度、或网格兼容性。
25.根据权利要求23所述的系统,其中所述二元能量是一个或多个加权特征的函数,所述一个或多个加权特征与所述图形中的每对相邻顶点相关且选自下列中的至少一个:相邻顶点间的点激光雷达强度相似性、相邻顶点间的点颜色相似性、面法线相似性、距离相似性、相邻顶点间的相对角度或图像颜色连续性。
26.根据权利要求25所述的系统,其中所述二元能量函数是Potts模型。
27.根据权利要求23所述的系统,进一步包括在由所述处理器执行时使得所述处理器执行以下操作的编程指令:将能量函数优化为一元能量和二元能量的组合,所述优化包括执行图形切割。
28.根据权利要求15所述的系统,进一步包括:
用户接口;以及
在由所述处理器执行时使得所述处理器经由所述用户接口输出所述扫描数据中与所述地面相关的点的编程指令。
29.一种用于分割扫描数据的计算机程序产品,所述计算机程序产品包括一个或多个指令,所述指令被配置为使得处理器执行以下操作:
接收扫描数据,所述扫描数据表示与地面以及一个或多个对象相关的环境中的多个点;
由所述扫描数据创建图形,所述图形包括与所述环境中的所述多个点对应的多个顶点;
将一元势分配给所述多个顶点中的每一个,所述一元势对应于为所述顶点分配地面标签或非地面标签的代价;
为所述图形中的每一对相邻顶点分配成对势,所述成对势对应于为所述相邻顶点分配不同标签的代价;以及
使用所述一元势和所述成对势来识别所述多个点中每一个的标签;以及
根据识别的所述标签对所述扫描数据进行分割,以识别与所述地面相关的点。
30.根据权利要求29所述的计算机程序产品,进一步包括配置为使得所述处理器执行以下操作的指令:
丢弃识别出的与所述地面相关的点;以及
使用所述多个点中未丢弃的点来识别一个或多个所述对象。
31.根据权利要求30所述的计算机程序产品,进一步包括配置为使得所述处理器使用一个或多个所述对象的识别来在所述环境中导航自主车辆的指令。
32.根据权利要求29所述的计算机程序产品,进一步包括配置为使得处理器执行以下操作的指令:
对所述扫描数据进行预处理以识别可能与所述地面相关的多个点的子集;以及
仅使用已识别的点的子集来创建所述图形。
33.根据权利要求32所述的计算机程序产品,其中配置为使处理器对所述扫描数据进行预处理以识别多个点的子集的指令包括下列指令:
将所述扫描数据转换到与所述环境对应的地图参考坐标系;以及
识别所述地图中位于地面阈值距离内的多个点中的一个或多个。
34.根据权利要求33所述的计算机程序产品,其中配置为使得所述处理器创建所述图形的指令包括使所述图形包括连接所述多个顶点的多个边的指令。
35.根据权利要求34所述的计算机程序产品,其中配置为使得处理器创建图形的指令包括使用下列方法中的至少一种创建所述图形的指令:使多个边中的每一条都具有相应的权重的K-最近邻算法或网格图构建器。
36.根据权利要求34所述的计算机程序产品,其中所述图形进一步包括与所述地面标签和所述非地面标签相关的两个终端顶点。
37.根据权利要求29所述的计算机程序产品,其中配置为使得所述处理器使用所述一元势和所述成对势来识别多个点中的每一个的标签的指令包括下列指令:
确定一元能量函数,所述一元能量函数作为多个顶点中所有顶点的一元势的总和;以及
使用多个成对势确定二元能量函数,所述二元能量函数作为为多个顶点的所有相邻顶点中的每对相邻顶点分配成对的地面标签和非地面标签的代价的总和。
38.根据权利要求37所述的计算机程序产品,其中所述一元能量是一个或多个加权特征的函数,所述一个或多个加权特征与所述多个顶点中的每一个相关且选自下列中的至少一个:地面高度、相对高度、颜色、范围、传感器姿态不确定性、地面高度不确定性、语义标签、检测掩模、强度、定位输出、掠射角、面法线兼容性、离地高度、遮挡检查、每点地面似然度、或网格兼容性。
39.根据权利要求37所述的计算机程序产品,其中所述二元能量是一个或多个加权特征的函数,所述一个或多个加权特征与所述图形中的每对相邻顶点相关且选自下列中的至少一个:相邻顶点间的点激光雷达强度相似性、相邻顶点间的点颜色相似性、面法线相似性、距离相似性、相邻顶点间的相对角度或图像颜色连续性。
40.根据权利要求39所述的计算机程序产品,其中所述二元能量函数是Potts模型。
41.根据权利要求37所述的计算机程序产品,进一步包括配置为使得所述处理器执行以下操作的指令:将能量函数优化为一元能量和二元能量的组合,所述优化包括执行图形切割。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/111,899 US11361484B1 (en) | 2020-12-04 | 2020-12-04 | Methods and systems for ground segmentation using graph-cuts |
US17/111,899 | 2020-12-04 | ||
PCT/US2021/072668 WO2022120346A1 (en) | 2020-12-04 | 2021-12-01 | Methods and systems for ground segmentation using graph-cuts |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116710961A true CN116710961A (zh) | 2023-09-05 |
Family
ID=81849353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180081650.1A Pending CN116710961A (zh) | 2020-12-04 | 2021-12-01 | 使用图形切割进行地面分割的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11361484B1 (zh) |
CN (1) | CN116710961A (zh) |
DE (1) | DE112021006299T5 (zh) |
WO (1) | WO2022120346A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970929B2 (en) * | 2018-07-16 | 2021-04-06 | Occipital, Inc. | Boundary detection using vision-based feature mapping |
US11873004B2 (en) * | 2020-10-31 | 2024-01-16 | Huawei Technologies Co., Ltd. | Method and system for motion planning for an autonmous vehicle |
US20220289237A1 (en) * | 2021-03-10 | 2022-09-15 | Gm Cruise Holdings Llc | Map-free generic obstacle detection for collision avoidance systems |
CN115222988B (zh) * | 2022-07-17 | 2024-06-18 | 桂林理工大学 | 激光雷达点云数据城市地物PointEFF精细分类方法 |
CN115861383B (zh) * | 2023-02-17 | 2023-05-16 | 山西清众科技股份有限公司 | 一种拥挤空间下多信息融合的行人轨迹预测装置及方法 |
CN117576144B (zh) * | 2024-01-15 | 2024-03-29 | 湖北工业大学 | 一种激光点云电力线提取方法、装置和电子设备 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8107726B2 (en) * | 2008-06-18 | 2012-01-31 | Samsung Electronics Co., Ltd. | System and method for class-specific object segmentation of image data |
US8249349B2 (en) * | 2008-11-25 | 2012-08-21 | Microsoft Corporation | Labeling image elements |
US8311285B2 (en) | 2009-06-30 | 2012-11-13 | Mitsubishi Electric Research Laboratories, Inc. | Method and system for localizing in urban environments from omni-direction skyline images |
US9396545B2 (en) | 2010-06-10 | 2016-07-19 | Autodesk, Inc. | Segmentation of ground-based laser scanning points from urban environment |
US8824797B2 (en) | 2011-10-03 | 2014-09-02 | Xerox Corporation | Graph-based segmentation integrating visible and NIR information |
US9129192B2 (en) | 2013-12-16 | 2015-09-08 | Adobe Systems Incorporated | Semantic object proposal generation and validation |
KR20150089663A (ko) * | 2014-01-28 | 2015-08-05 | 한국전자통신연구원 | 그래프 기반의 멀티 프리미티브 피팅 장치 및 그 동작 방법 |
US9704257B1 (en) | 2016-03-25 | 2017-07-11 | Mitsubishi Electric Research Laboratories, Inc. | System and method for semantic segmentation using Gaussian random field network |
CN111108342B (zh) * | 2016-12-30 | 2023-08-15 | 辉达公司 | 用于高清地图创建的视觉测程法和成对对准 |
GB201709672D0 (en) * | 2017-06-16 | 2017-08-02 | Ucl Business Plc | A system and computer-implemented method for segmenting an image |
US10579063B2 (en) | 2017-07-21 | 2020-03-03 | Uatc, Llc | Machine learning for predicting locations of objects perceived by autonomous vehicles |
US11004202B2 (en) * | 2017-10-09 | 2021-05-11 | The Board Of Trustees Of The Leland Stanford Junior University | Systems and methods for semantic segmentation of 3D point clouds |
CN108427124B (zh) * | 2018-02-02 | 2020-05-12 | 北京智行者科技有限公司 | 一种多线激光雷达地面点分离方法及装置、车辆 |
US10620317B1 (en) * | 2018-12-23 | 2020-04-14 | Chongqing Jinkang New Energy Automobile Co., Ltd. | Lidar-based high definition map generation |
US11393097B2 (en) * | 2019-01-08 | 2022-07-19 | Qualcomm Incorporated | Using light detection and ranging (LIDAR) to train camera and imaging radar deep learning networks |
US11763565B2 (en) * | 2019-11-08 | 2023-09-19 | Intel Corporation | Fine-grain object segmentation in video with deep features and multi-level graphical models |
-
2020
- 2020-12-04 US US17/111,899 patent/US11361484B1/en active Active
-
2021
- 2021-12-01 DE DE112021006299.9T patent/DE112021006299T5/de active Pending
- 2021-12-01 CN CN202180081650.1A patent/CN116710961A/zh active Pending
- 2021-12-01 WO PCT/US2021/072668 patent/WO2022120346A1/en active Application Filing
-
2022
- 2022-05-12 US US17/663,129 patent/US11842430B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2022120346A1 (en) | 2022-06-09 |
US11842430B2 (en) | 2023-12-12 |
US11361484B1 (en) | 2022-06-14 |
US20220270309A1 (en) | 2022-08-25 |
DE112021006299T5 (de) | 2023-11-09 |
US20220180578A1 (en) | 2022-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11651553B2 (en) | Methods and systems for constructing map data using poisson surface reconstruction | |
US11842430B2 (en) | Methods and systems for ground segmentation using graph-cuts | |
US11769318B2 (en) | Systems and methods for intelligent selection of data for building a machine learning model | |
US11841927B2 (en) | Systems and methods for determining an object type and an attribute for an observation based on fused sensor data | |
US20220188695A1 (en) | Autonomous vehicle system for intelligent on-board selection of data for training a remote machine learning model | |
US11618444B2 (en) | Methods and systems for autonomous vehicle inference of routes for actors exhibiting unrecognized behavior | |
US11577732B2 (en) | Methods and systems for tracking a mover's lane over time | |
US11904906B2 (en) | Systems and methods for prediction of a jaywalker trajectory through an intersection | |
EP4285083A1 (en) | Methods and system for generating a lane-level map for an area of interest for navigation of an autonomous vehicle | |
US11731662B2 (en) | Autonomous vehicle system for detecting pedestrian presence | |
US11358598B2 (en) | Methods and systems for performing outlet inference by an autonomous vehicle to determine feasible paths through an intersection | |
CN116783105A (zh) | 自主车辆的车载反馈系统 | |
US20220067399A1 (en) | Autonomous vehicle system for performing object detections using a logistic cylinder pedestrian model |
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 |