CN114636414A - 高清晰度城市地图绘制 - Google Patents
高清晰度城市地图绘制 Download PDFInfo
- Publication number
- CN114636414A CN114636414A CN202111536325.8A CN202111536325A CN114636414A CN 114636414 A CN114636414 A CN 114636414A CN 202111536325 A CN202111536325 A CN 202111536325A CN 114636414 A CN114636414 A CN 114636414A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- determining
- vehicle
- orientation
- 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 claims description 44
- 238000012545 processing Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 9
- 230000009466 transformation Effects 0.000 claims description 7
- 238000012805 post-processing Methods 0.000 claims description 6
- 230000003044 adaptive effect Effects 0.000 claims description 5
- 238000013519 translation Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 25
- 238000001514 detection method Methods 0.000 description 19
- 230000004927 fusion Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 15
- 238000010276 construction Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000003491 array Methods 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3841—Data obtained from two or more sources, e.g. probe vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/86—Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- 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
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/86—Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
- G01S13/865—Combination of radar systems with lidar systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/88—Radar or analogous systems specially adapted for specific applications
- G01S13/93—Radar or analogous systems specially adapted for specific applications for anti-collision purposes
- G01S13/931—Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
- G01S2013/9327—Sensor installation details
- G01S2013/93271—Sensor installation details in the front of the vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/88—Radar or analogous systems specially adapted for specific applications
- G01S13/93—Radar or analogous systems specially adapted for specific applications for anti-collision purposes
- G01S13/931—Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
- G01S2013/9327—Sensor installation details
- G01S2013/93272—Sensor installation details in the back of the vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/88—Radar or analogous systems specially adapted for specific applications
- G01S13/93—Radar or analogous systems specially adapted for specific applications for anti-collision purposes
- G01S13/931—Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
- G01S2013/9327—Sensor installation details
- G01S2013/93274—Sensor installation details on the side of the vehicles
-
- 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/10016—Video; Image sequence
-
- 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
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
Abstract
车辆生成城市比例尺地图。该车辆包括:一个或多个光雷达传感器,其被配置为在不同位置、取向和时间获得点云;一个或多个处理器;以及存储指令的存储器,该指令在由一个或多个处理器执行时使系统执行:基于点云中的每一个的相应表面法线成对地配准点云的子集;基于经配准的点云的子集确定闭环;基于与所确定的闭环相关联的约束,确定点云的子集中的每一个的位置和取向;以及基于点云的子集中的每一个的所确定的位置和取向生成地图。
Description
技术领域
本发明涉及生成城市比例尺地图的车辆及方法。
背景技术
由于中断和准确度限制,仅使用全球定位卫星(GPS)或全球导航卫星系统(GNSS)导航可能无法实现城市比例尺的高准确度地图绘制。GPS接收器需要对天空中的多个卫星的连续、清晰的视线。然而,在城市环境中,来自GPS接收器的信号可能退化和不连续,因为密集的城市特征(诸如建筑物、隧道和地下结构)阻碍卫星的视线。为了解决GPS的缺点,在过去的20年中,同时定位和地图绘制(SLAM)已成为一个日益增长的话题,其旨在既构建机器人周围环境的地图又在地图内定位机器人。
发明内容
在一些实施例中,本文描述了一种被配置为生成城市比例尺地图的车辆,该车辆包括:一个或多个光雷达传感器,其被配置为在不同位置、取向和时间获得点云;一个或多个处理器;以及存储指令的存储器,该指令在由一个或多个处理器执行时使系统执行:基于点云中的每一个的相应表面法线,成对地配准点云的子集;基于经配准的点云的子集确定闭环;基于与所确定的闭环相关联的约束,确定点云的子集中的每一个的位置和取向;以及基于点云的子集中的每一个的所确定的位置和取向生成地图。
在一些实施例中,配准包括:将目标点云与源点云对齐;以及在目标点云与源点云之间确定包括旋转和平移的刚性变换,以形成所有可能对齐中的最接近对齐,其中目标点云相比于源点云在较晚的时间获得。
在一些实施例中,将目标点云与源点云对齐包括:使用图形处理单元(GPU)针对来自源点云的点选择目标点云中的对应的最接近点;确定点与对应的最接近点是否具有相同类别;响应于确定点与对应的最接近点具有相同类别,确定点与对应的最接近点之间的马氏距离;以及基于所确定的马氏距离确定源点云和目标点云的位置参数和取向参数。
在一些实施例中,将目标点云与源点云对齐还包括:迭代地选择来自源点云的附加点和目标点云中的相应最接近点,直到更新的位置参数和更新的取向参数收敛;确定包括附加点中的一个附加点和相应最接近点中的一个相应最接近点的每一对是否具有相同类别;对于具有相同类别的每一对:确定附加点和相应最接近点之间的马氏距离;以及基于附加点和相应最接近点之间的所确定的马氏距离以及点和对应的最接近点之间的所确定的马氏距离,确定源点云和目标点云的更新的位置参数和更新的取向参数;确定更新的位置参数与紧接的前一位置参数之间的差值是否小于阈值,并确定更新的取向参数与紧接的前一取向参数之间的第二差值是否小于阈值;以及响应于确定差值小于阈值且第二差值小于第二阈值,确定更新的位置参数和更新的取向参数收敛。
在一些实施例中,车辆还包括IMU和GNSS传感器,并且其中指令还使系统执行:使用GNSS/INS后处理来融合GNSS数据和IMU数据以估计车辆的里程计数据,里程计数据包括车辆的位置、取向和速度;以及基于与融合的GNSS/IMU数据相关联的约束并且基于与所确定的闭环相关联的约束,确定点云的子集中的每一个的位置和取向。
在一些实施例中,确定点云的子集中的每一个的位置和取向基于车辆与点云的子集中的每一个之间的距离。
在一些实施例中,与融合的GNSS/IMU数据相关联的约束要求车辆在两个不同时间处于一定距离范围内。
在一些实施例中,指令还使系统执行:构造对应于与所确定的闭环相关联的约束以及与融合的GNSS/IMU数据相关联的约束中的每一个的成本函数;并且确定点云的子集中的每一个的位置和取向基于对所述成本函数的优化,所述成本函数对应于与所确定的闭环相关联的约束以及与融合的GNSS/IMU数据相关联的约束中的每一个。
在一些实施例中,指令还使系统执行:确定与所确定的闭环相关联的约束以及与融合的GNSS/IMU数据相关联的约束是否能满足;以及响应于确定与所确定的闭环相关联的约束或与融合的GNSS/IMU数据相关联的约束不能满足,基于实际成本的自适应阈值、重复的迭代和欧几里德距离的差值移除被确定为不能满足的约束。
在一些实施例中,指令还使系统执行:添加与对应于以下区域的闭环相关联的附加约束,在所述区域中,重复特征的频率或密集度超过阈值频率或密度。
本公开的各种实施例提供了一种由如上所述的计算系统实施的方法。
通过参考附图考虑以下描述和所附权利要求书,本文公开的装置、系统、方法和非暂时性计算机可读介质的这些和其他特征、以及结构的相关元件和部分的组合的操作和功能的方法以及制造的经济性将变得显而易见,所有附图形成本说明书的一部分,其中在各个附图中,相同的附图标记表示对应的部分。然而,应该明确地理解,附图仅出于说明和描述的目的,并且不旨在作为对本发明的限制的定义。
附图说明
在所附权利要求中具体阐述了本技术的各种实施例的某些特征。通过参考下面的详细描述,将获得对技术的特征和优点的更好的理解,以下详细描述阐述了说明性实施例和附图,在说明性实施例中利用了本发明的原理,并且附图中:
图1A示出根据本公开的实施例的获取传感器数据并对环境进行地图绘制的系统的示例环境。
图1B示出根据本公开的示例实施例的描绘获取传感器数据并对环境进行地图绘制的系统的混合数据流和框图。
图2A示出根据本公开的示例实施例的根据图1A-图1B示出的计算系统的实施方式。特别地,图2A示出生成姿势曲线图的示例。
图2B示出根据本公开的示例实施例的根据图1A-图1B和图2A示出的计算系统的实施方式。特别地,图2B示出闭环检测的示例。
图3A-图3B和图4A-图4B示出根据本公开的示例实施例的点云配准过程的示例性实施方式。
图5示出根据本公开的示例实施例的示例性实施方式。
图6示出根据本公开的示例实施例的地图绘制方法的流程图。
图7示出可以在其上实施本文描述的任何实施例的计算机系统的框图。
具体实施方式
SLAM的起源发生在1986年的IEEE机器人与自动化会议上。该领域的早期工作表明,当移动机器人通过对地标进行相对观察的未知环境时,由于估计的车辆位置的共同误差,这些地标的估计必然彼此相关,并且相关性将随着连续观察而增长。最终,研究发现组合的映射和定位问题实际上是收敛的。一些当前提出的解决方案基于卡尔曼滤波和概率定位和映射。然而,这些解决方案遭受准确度和向大区域缩放的问题。
本文描述的实施例提供了一种在车辆上的生成高清晰度(HD)城市比例尺地图(诸如网格地图)的装置,以及一种生成城市比例尺地图的方法。生成此类HD城市比例尺地图可能需要在确定不同点云中的每一个的位置和姿态(例如,取向)之后将不同点云集成和拼接在一起。使用来自该城市比例尺地图的数据,车辆上的处理器可以检测或确定周围环境中不同物体或实体的存在,以协助车辆或其他车辆执行导航任务,诸如车辆加速和减速、车辆制动、车辆变道、自适应巡航控制、盲点检测、用于碰撞警告或避免碰撞的追尾雷达、停车辅助、交叉口交通监控、紧急制动和自动距离控制。此外,生成的城市比例尺地图可以补充当前的高清晰度(HD)和其他地图,以用在车辆或其他车辆上。
图1A示出根据本公开的实施例的生成城市比例尺地图的系统的示例环境100。在图1A中,车辆101(诸如自主车辆)可以包括用以检测和识别周围环境中的物体的传感器,诸如光雷达传感器102、惯性测量单元(IMU)103、雷达传感器104、GPS或GNSS传感器(以下称为“GPS传感器”)105、相机106、加速度计、陀螺仪、磁力计和FIR(远红外)传感器。在一些实施例中,IMU可以包括加速度计和陀螺仪,并且可选地包括磁力计。传感器数据可以包括图画或图像数据(诸如图片或视频)、音频数据、视听数据、时间戳数据和/或指示实时或具有时间延迟捕获的车辆101的位置和/或姿势的其他数据。例如,来自光雷达传感器102、IMU103、GPS传感器105和时间戳数据的数据可以用于在不同时间定位车辆101,同时生成环境的城市比例尺地图。车辆101还可以包括无数致动器以基于生成的地图在周围推动和导航车辆101。此类致动器可以包括例如任何合适的机电设备或系统,诸如包括线控驱动(DBW)致动器的致动器,以控制节流响应、制动动作、转向动作等。
环境100还可以包括计算系统122可访问的一个或多个服务器112。一个或多个服务器112可以存储来自车辆101的传感器的数据帧。在一些实施例中,一个或多个服务器112可以存储来自传感器的集成的或融合的数据。计算系统122可以直接或通过通信网络110访问一个或多个服务器112。在一些情况下,一个或多个服务器112可以包括例如联合数据存储装置、数据库或可以从其存储和检索数据的任何其他类型的数据源。在一些实施方式中,一个或多个服务器112可以包括可以配准的点云,或者后处理的全球导航卫星系统(GNSS)-惯性导航系统(INS)数据。通常,操作计算设备的用户可以通过通信网络110(例如通过一个或多个图形用户界面和/或应用编程界面)与计算系统122交互。计算系统122可以包括一个或多个处理器,诸如图形处理单元(GPU)或中央处理单元(CPU)。计算系统122可以包括例如包含高性能微处理器或微控制器的集成电路,诸如能够执行例如需要并行处理大数据块(例如,传感器数据)的算法的图形处理单元(GPU)。在一些示例实施例中,计算系统122可以包括潜在跨多个计算设备分布并经由一个或多个通信总线彼此通信的多种类型的处理单元(例如,GPU、中央处理单元(CPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等)。计算系统122的功能将在随后的图中进一步描述。如下所述的引擎/程序模块可以以硬件、软件和/或固件的任何组合来实施。在某些示例实施例中,这些引擎/程序模块中的一个或多个可以至少部分地实施为软件和/或固件模块,该软件和/或固件模块包括当由处理电路执行时使一个或多个操作被执行的计算机可执行指令。在示例实施例中,这些引擎/程序模块可以是在定制计算机器内实施的定制计算机可执行逻辑,诸如定制FPGA或ASIC。本文描述为被配置为实施本发明的示例实施例的系统或设备可以包括一个或多个处理电路,处理电路中的每一个可以包括一个或多个处理单元或核。计算机可执行指令可以包括计算机可执行程序代码,其在由处理核执行时可以使包含在计算机可执行程序代码中或由计算机可执行程序代码引用的输入数据被处理核访问和处理以产生输出数据。
图1B示出根据示例实施例的混合数据流和框图,其示出定位车辆101同时生成城市比例尺地图的过程。在图1B中,计算系统122可以是一个或多个硬件处理器,其可以至少包括融合引擎134、闭环检测引擎135、配准引擎136和构造引擎137。在一些实施例中,关于融合引擎134、闭环检测引擎135、配准引擎136和构造引擎137描述的功能可以由单个处理器或任何数量的处理器来执行。例如,关于融合引擎134、闭环检测引擎135、配准引擎136和构造引擎137描述的功能可以组合或集成到单个处理器中,并且关于融合引擎134、闭环检测引擎135、配准引擎136和构造引擎137描述的功能中的一个或多个执行的一些或所有功能可以不是空间分离的,而是可以由共同处理器执行。为了提供简要总结,融合引擎134可以融合或同步分别来自IMU 103和GPS传感器105的里程计数据130和131。来自融合引擎134的输出可以与光雷达点云一起由构造引擎137使用来生成姿势曲线图,该姿势曲线图包括表示车辆101在不同时间处的数据并且与在相应不同时间捕获的光雷达点云相关联的节点。来自融合引擎134的输出还可以用于由闭环检测引擎135执行闭环的初步估计或推断。对于推断或估计的这些闭环,配准引擎136可以尝试对与推断或估计的闭环对应的时间捕获的点云执行点云配准。来自构造引擎137的输出(包括姿势曲线图上的节点)可以由配准引擎136使用以确定配准哪些点云,并且根据经配准的点云,闭环检测引擎135可以推断或估计附加闭环,例如,根据重叠的经配准的点云中识别的共同特征。构造引擎137进一步将考虑来自融合引擎134的融合的里程计数据和来自闭环检测引擎135的推断或确认的闭环的约束合并到节点中的每一个中以及节点之间。例如,约束可以要求车辆101在与闭环相关联的时间在阈值距离内处于相同位置处或附近。作为另一示例,里程计约束可以要求车辆101在两个不同时间之间在阈值距离范围内以给定距离间隔开。例如,里程计约束可以要求车辆101在时间0秒和在时间5秒间隔500米。构造引擎137可以通过将部分重叠的点云拼接在一起来进一步补增来自配准引擎136的经配准的点云的地图数据。
在图1B中,IMU 103可以生成里程计数据130,诸如车辆101在不同时间处的相对移动、速度和/或加速度,每个不同时间具有时间戳140。同时,GPS传感器105可以生成里程计数据131,诸如车辆101在不同时间处的绝对位置和速度数据,每个不同时间具有时间戳141。光雷达传感器102可以生成包含具有相应时间戳142和143的光雷达数据的点云132和133。点云132和133可以包括2D、3D和/或2D/3D融合的光雷达数据中的任何一个。为了说明,示出了两个点云,但可以生成任意数量的点云。时间戳142和143可以指示相同或不同时间。
分别从IMU和GPS生成的具有相应时间戳140和141的里程计数据130和131可以在融合引擎134处经由GNSS/INS后处理被融合或同步。例如,可以融合同时捕获的IMU数据和GPS数据以获得对车辆101的位置和姿态(例如,取向)的估计,以及指示每个估计的置信水平或准确度的协方差矩阵。估计的位置和姿态可以纵向和横向叠加到地图上。在一些实施例中,融合引擎134可以包括卡尔曼滤波器和/或平滑滤波器。在一些实施例中,光雷达点云数据的点云132和/或133还可以在融合引擎134处与里程计数据130和131融合,以进一步提供对车辆101的所获得的位置和姿态的完整性检查。与帧142和143一起使用从融合引擎134输出的融合的里程计数据,构造引擎137可以在姿势曲线图上构造节点,每个节点指示车辆101的数据,诸如,车辆101在不同时间处的位置和姿态。如图2A所示,姿势曲线图200可以包括由Xk-1;Xk;Xk+1;和Xk+2表示的节点。地标位置可以由mh;mi;mj;mg;和ml表示。节点Xk-1;Xk;Xk+1;和Xk+2可以分别指示描述车辆101在时间k-1、k、k+1和k+2处的位置和姿态的状态向量。可以从光雷达点云(诸如点云132和/或133)捕获地标,并且可以使用地标的位置来导出光雷达点云的位置和姿态。uk;uk+1;和uk+2可以指示当车辆101在两个节点之间行驶时车辆101的控制和/或里程计读数。uk在两个节点Xk-1和Xk之间,uk+1在两个节点Xk和Xk+1之间,并且uk+2在两个节点Xk+1和Xk+2之间。zk-1,i;zk-1,h;zk-1,g;zk,j;zk+1,g;和zk+1,l表示对不同时间和地标取得的观察。例如,zk-1,i指示在地标mi的时间k-1处取得的观察。当车辆101沿着轨迹行驶时,构造引擎137可以在不同时间构造附加节点并将附加节点与捕获的传感器数据(诸如光雷达点云)相关联。节点可以与捕获的光雷达点云在时间上同步或相关,使得在每个节点处,将在与节点的时间对应的时间捕获的对应的光雷达点云相关联。由于已知车辆101的位置与相关联的光雷达点云之间的距离,因此可以根据车辆101的已知位置和姿态确定相关联的光雷达点云的位置和姿态。如果同时捕获多个点云,则配准引擎136可以执行点云配准以组合这些点云。点云配准将在下面关于图3A和图3B更详细地描述,并且可以包括旋转和平移以将一个点云(目标点云)于另一个点云(源点云)对齐。同时,附加约束被引入姿势曲线图,这些约束定义了每个节点、两个节点之间以及节点和地标之间的限制,以持续更新车辆101的位置和姿态的估计,使得车辆101的位置和姿态以及地标的位置的初始估计可以被更新并最终收敛到车辆101的实际位置和姿态以及地标的实际位置附近。约束增加了姿势曲线图的稳健性水平。
此外,来自融合引擎134的输出可以由闭环检测引擎135使用以基于两个不同时间处的位置之间的接近度或具有时间接近度的不同位置之间的接近度来执行潜在闭环的初始确定。换句话说,基于从融合引擎134生成的融合的里程计数据,闭环检测引擎135可以推断或估计车辆101正在返回到先前经过的阈值距离内的位置,并且具有类似于车辆先前经过该位置时的状态的姿态。位置和姿态可以由x和y平面坐标定义,而忽略z(高程)坐标。因此,如果估计车辆101将返回到与车辆101先前访问的位置相同的位置,但是处于相反的取向,则闭环检测引擎135可能不会检测到潜在闭环,因为闭环条件可以要求车辆以与先前取向相同或相似的取向返回到先前位置,使得取向相差不超过阈值。在图2B所示的姿势曲线图250中示出闭环的示例性说明,其中附加节点Xk+3;Xk+4;Xk+5;和Xk+6已被包括在内。闭环检测引擎135可以推断或估计在对应于时间k+6的节点Xk+6处,车辆101的位置和姿态在车辆101在对应于时间k-1的节点Xk-1处的位置和姿态的阈值内。闭环检测引擎135可以验证或确认节点Xk+6和Xk-1确实对应于闭环,例如通过确定在节点Xk+6和Xk-1处捕获的点云处是否存在共同特征。一种示例性方法设计使用例如反卷积网络、编码和解码步骤以及应用模型(诸如词袋模型)以辨识任何共同特征来将在节点Xk+6和Xk-1处捕获的点云转换并表示为向量。闭环的检测通过减少否则会随时间而发生的漂移误差并结合对应于闭环的附加约束来增加姿势曲线图的准确度。因此,由节点Xk+6表示的估计的位置和姿态可以连同由先前节点表示的位置和姿态一起被更新。还可以更新与每个节点相关联的点云的估计的位置和姿态。
在闭环检测引擎135推断或估计潜在闭环后,配准引擎136可以尝试对在对应于潜在闭环的相同时间处捕获的点云(例如,在图2B中,在时间k+6和k-1处捕获的点云)执行点云配准。配准引擎136还可以尝试对具有时间接近度的点云(这意味着点云在彼此的阈值持续时间内的相似时间被捕获)执行点云配准。如果在尝试点云配准之后,得到的经配准的点云没有充分对齐,则可以将各个点云保持分开而无需配准。点云配准过程的图示在图3A和图3B中示出,其中最初未对齐且具有不同原点的点云301和302通过点云302的刚性变换而配准。刚性变换可以包括点云302的平移和旋转以尽可能接近地与点云301对齐。这里,点云301可以是源点云或较早的点云,并且点云302可以是目标点云或较晚的点云,其被变换以与点云301对齐。在点云302的变换后,变换后的点云352可以与点云301对齐。来自点云301和302之一或两者的离群点和背景数据可以在初始变换之后被检测和过滤,并且在移除离群点和背景数据之后,配准过程可以重复。
例如由配准引擎136执行的点云配准过程可以维持速度和简单性以节省处理资源,同时还考虑离群点、测量噪声和其他概率技术以增强稳健性。该过程可以包括估计点云中的每个点的表面法线,如图4A和图4B所示。这里,考虑了光雷达数据的每个点的法线,并考虑了每个点相对于其邻居的分布。这里,对于光雷达数据的每个点,可以获得该点所属的估计的表面的法线。该表面可以是弯曲的表面,诸如401,如图4A所示,或一个或多个平坦的表面411,如图4B所示。在一些实施例中,点可以位于边或角上,诸如边412。在此类场景下,表面法线可以被确定为与最接近邻居点的表面法线相同,或者被确定为两个最接近邻居点的表面法线之间的平均值,诸如加权平均值。估计每个点的表面法线可以改善对解的收敛速率。点云配准过程的初步步骤还包括基于点到光雷达传感器(例如,光雷达传感器102)的距离、表面法线和光雷达的取向之间的相对差值、表面的先前估计和表面的强度来确定或估计每个点的范围准确度。整个点云的类别可以基于点云自重复的程度来确定,其可以指示点云中的特征重复的频率或程度。在一些实施例中,类别可以包括平坦的表面、极点或不属于任何特定特征(例如,未分类)。类别可以包括地面、路面、高植被、建筑物和人造物体。作为另一个示例,类别可以包括裸露的土地、地面、树冠顶部和水。类别可以定义已经反射来自光雷达传感器的激光脉冲的物体或实体的类型。如果点云具有高度的自重复性,诸如在隧道中,其中无论点云捕获的位置如何,获得的点云都相似,则与较低自重复性的区域中的对应的参数相比可以收紧调节潜在闭环候选者的确定的参数,以减少闭环的错误确定的可能性。某些潜在检测到的闭环可以被丢弃。接下来,可以基于表面法线和表面法线的相关联的奇异值对点云中的每个点的类别进行分类。特别地,对于点云中的每个点,获得该点的几何邻居。可以基于这些邻居点和该点来确定协方差矩阵。可以确定点的特征分解(EVD)。此过程称为主成分分析(PCA)。特征分解将产生特征值,由于协方差矩阵的对称性质,这与从奇异值分解(SVD)获得的奇异值同义。然而,执行EVD的计算成本可能较低。基于特征值的特征,例如特征值的相对值,可以将点分类为平坦的表面、极点或不属于特定类别。
点云配准过程包括重复直到收敛的迭代过程。对于来自较早时间获得的源点云的每个点,可以使用GPU选择在较晚时间获得的目标点云中的对应的最接近点。来自源点云的点和最接近点需要具有相同类别,否则该对被丢弃并选择来自源点云的另一个点和目标点云中的最接近点。对于具有匹配类别的来自源点云的点和目标点云中的对应的最接近点,可以基于源点云的表面法线确定两个点之间的马氏距离。成本函数可以基于所确定的马氏距离并基于来自源点云和/或目标点云的点的所确定或估计的范围精度来确定。通过调整源点云相对于原点的位置和姿态参数,可以获得最小化成本函数的解。在一些示例中,原点可以是车辆的后轴,并且姿态被定义为与车辆的姿态相同。然而,原点和轴可以以其他方式定义,诸如光雷达传感器的原点,或车辆的导航盒的原点。定义不同原点将产生源点云的不同坐标。当连续迭代之间的位置和姿态参数的调整或变化量相差小于阈值时,迭代过程收敛。
基于经配准的点云,闭环检测引擎135可以附加地检测和/或推断潜在闭环。例如,如果来自不同时间的两个点云已经被配准引擎136成功配准,则闭环检测引擎135可以推断出对应于这两个不同时间的潜在闭环已经发生,因为从两个点云观察到相似或相同的特征。闭环检测引擎135然后可以验证或确认闭环已经发生。如果闭环已被确认或验证,则构造引擎137然后可以在对应于不同时间的两个节点之间添加闭环约束。例如,闭环约束可以要求车辆101在与闭环相关联的时间在阈值距离内处于相同位置处或附近。构造引擎137可以进一步基于从融合引擎134获得的GNSS/INS后处理数据添加里程计约束。
对于闭环、里程计和其他约束中的每一个,可以确定对应的成本函数。与相关联的点云的位置和姿态相关联的参数使得成本函数被优化并且可以确定收敛。当成本函数被优化时,可以满足对应的约束。接下来,可以对参数进行进一步细化。例如,如果不能满足或最小化约束,则可以基于实际成本的自适应阈值、重复的迭代和欧几里德距离的差值移除该约束。此外,可以在自重复程度(重复特征的频率或数量)大于阈值的区域中添加闭环约束,同时避免先前已经移除的点。特别地,在自重复区域中收紧参数的先前过程可能导致点变得与姿势曲线图分离以及点之间的未对齐。对于那些分离或未对齐的点,配准引擎136可以尝试添加约束。约束可以来自闭环或来自其他源,诸如GNSS-IMU后处理。可以基于新移除和添加的约束进一步细化参数。可以继续移除约束,直到无法最小化的约束的数量小于阈值,此时过程被认为收敛。
一旦确定了每个点云的位置和姿态信息,点云就可以彼此适当地对齐,并拼接在一起以获得城市比例尺的地图。图5示出可以使用上述过程获得的示例性地图。
图6示出根据本公开的示例实施例的映射方法的流程图。来自其他附图的描述也可以适用于图6。在步骤602中,一个或多个传感器(诸如一个或多个光雷达传感器)可以在不同位置、取向和时间获得点云。在步骤604中,一个或多个处理器可以基于点云中的每一个的相应表面法线,成对地配准点云的子集。配准过程可以将一对点云对齐。在步骤606中,一个或多个处理器可以基于经配准的点云的子集来确定闭环。在步骤608中,一个或多个处理器可以基于与所确定的闭环相关联的约束来确定点云的子集中的每一个的位置和取向。在步骤610中,一个或多个处理器可以基于点云的子集中的每一个的所确定的位置和取向来生成地图。
例如,本文描述的技术由一个或多个专用计算设备实施。专用计算设备可以被硬连线来执行这些技术,或者可以包括被持久地编程为执行这些技术的电路系统或数字电子设备,诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),或者可以包括被编程为根据固件、存储器、其他储存器或组合中的程序指令执行这些技术的一个或多个硬件处理器。
图7示出计算机系统700的框图,在该计算机系统700上可以实施本文描述的任何实施例。计算机系统700包括总线702或用于传送信息的其他通信机制、与总线702联接用于处理信息的一个或多个硬件处理器704。设备执行任务的描述旨在意味着一个或多个硬件处理器704执行该任务。(一个或多个)硬件处理器704可以被硬连线来执行说明书中描述技术;它们可以包括被持久地编程为执行这些技术的电路系统或数字电子设备,诸如一个或多个ASIC或FPGA;和/或可以包括被编程为根据固件、存储器、其他储存器或其组合中的程序指令执行这些技术的一个或多个硬件处理器。(一个或多个)硬件处理器704还可以将定制硬连线逻辑、ASIC或FPGA与定制编程组合以完成这些技术。(一个或多个)硬件处理器704可以包括能够接受数据作为输入、根据存储的计算机可执行指令处理输入数据并生成输出数据的任何合适的处理单元。(一个或多个)硬件处理器704可以包括任何类型的合适的处理单元,包括但不限于中央处理单元、微处理器、精简指令集计算机(RISC)微处理器、复杂指令集计算机(CISC)微处理器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上系统(SoC)、数字信号处理器(DSP)等。此外,(一个或多个)硬件处理器704可以具有任何合适的微架构设计,其包括任何数量的组成部件,诸如寄存器、多路复用器、算术逻辑单元、用于控制对高速缓存存储器的读/写操作的高速缓存控制器、分支预测器,或类似部件。(一个或多个)硬件处理器704的微架构设计可以制成能够支持各种指令集中的任何一种。
计算机系统700还包括主存储器706(诸如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备),其联接到总线702以用于存储信息和将由处理器704执行的指令。主存储器706还可以用于在要由处理器704执行的指令的执行期间存储临时变量或其他中间信息。此类指令在存储于处理器704可访问的存储介质中时使计算机系统700成为被定制为执行指令中指定的操作的专用机器。
计算机系统700还包括只读存储器(ROM)708或其他静态存储设备,其联接到总线702以用于为处理器704存储静态信息和指令。存储设备710(诸如磁盘、光盘、或USB拇指驱动器(闪存驱动器)等)被提供并联接到总线702以用于存储信息和指令。
计算机系统700可以通过总线702联接到(一个或多个)输出设备712,诸如阴极射线管(CRT)或LCD显示器(或触摸屏),以用于向计算机用户显示信息。(一个或多个)输入设备714(包括字母数字和其他键)联接到总线702,以用于将信息和命令选择传送到处理器704。另一种类型的用户输入设备是光标控件716。计算机系统700还包括联接到总线702的通信接口718。
因此,术语“引擎”或“程序模块”应被理解为包括有形实体,该有形实体是被物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)为以某种方式操作或执行本文所述的某些操作的实体。考虑到硬件引擎被临时配置(例如,编程)的实施例,硬件引擎中的每个无需在任何时候都及时被配置或实例化。例如,在硬件引擎包括由软件被配置为专用处理器的通用处理器的情况下,该通用处理器可以在不同时间分别被配置为不同专用处理器(例如,包括不同硬件引擎)。软件相应地可以配置一个或多个特定处理器,例如,以在给定时间实例中构成特定硬件引擎,并在不同时间实例中构成不同硬件引擎。
硬件引擎可以向其他硬件引擎提供信息并从其他硬件引擎接收信息。因此,所描述的硬件引擎可以被认为是通信联接的。在同时存在多个硬件引擎的情况下,可以通过在硬件引擎中的两个或多个之间的信号传输(例如,通过适当的电路和总线)来实现通信。在以不同时间配置或实例化多个硬件引擎的实施例中,可以例如通过在多个硬件引擎可以访问的存储器结构中存储和检索信息来实现此类硬件引擎之间的通信。例如,一个硬件引擎可以执行操作并将该操作的输出存储在其通信联接的存储设备中。然后,另一硬件引擎可以在以后的时间访问该存储设备以检索和处理所存储的输出。硬件引擎还可以启动与输入或输出设备的通信,并且可以对资源(例如,信息的集合)进行操作。
本文中描述的示例方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久被配置为执行相关操作的一个或多个处理器执行。无论是临时配置还是永久配置,此类处理器都可以构成硬件引擎的实施方式。类似地,本文中描述的方法可以至少部分地由处理器实施,其中一个或多个特定处理器是硬件的示例。此外,一个或多个处理器还可以操作为在“云计算”环境中或作为“软件即服务”(SaaS)支持相关操作的性能。例如,操作中的至少一些可以由一组计算机(作为包括处理器的机器的示例)执行,其中这些操作经由网络(例如,互联网)和经由一个或多个适当的接口(例如,API)可访问。
除非上下文另外要求,否则在整个说明书和权利要求书中,词语“包括”及其变体(诸如“包括”和“将……包括”)应以开放、包容的含义来解释,即为“包括但不仅限于。”在整个说明书中对值的数值范围的引用旨在用作速记符号,分别指代落入包括限定范围的值在内的范围内的每个单独的值,并且每个单独的值如本文单独记载的那样并入说明书中。另外,单数形式的“一”、“一个”和“该/所述”包括复数对象,除非上下文另外明确指出。短语“……的至少一个”、“选自……的组中的至少一个”或“选自由……组成的组中的至少一个”等要以析取方式进行解释(例如,不要解释为A中的至少一个和B中的至少一个)。
在整个说明书中,对“一个实施例”或“实施例”的引用是指结合该实施例描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。因此,在整个说明书中各处出现的短语“在一个实施例中”或“在实施例中”不一定全部指的是相同实施例,而是在某些情况下可以指相同实施例。此外,在一个或多个实施例中,可以以任何合适的方式组合特定的特征、结构或特性。
被实施为另一部件的部件可以被解释为以与另一部件相同或相似的方式操作的部件,和/或包括与另一部件相同或相似的特征、特性和参数。
Claims (20)
1.一种被配置为生成城市比例尺地图的车辆,所述车辆包括:
一个或多个光雷达传感器,其被配置为在不同位置、取向和时间获得点云;
一个或多个处理器;以及
存储指令的存储器,所述指令在由所述一个或多个处理器执行时使所述系统执行:
基于所述点云中的每一个点云的相应表面法线,成对地配准所述点云的子集;
基于经配准的点云的子集确定闭环;
基于与所确定的闭环相关联的约束,确定所述点云的所述子集中的每一个点云的位置和取向;以及
基于所述点云的所述子集中的每一个点云的所确定的位置和取向生成地图。
2.根据权利要求1所述的车辆,其中所述配准包括:
将目标点云与源点云对齐;以及
在所述目标点云与所述源点云之间确定包括旋转和平移的刚性变换,以形成所有可能对齐中的最接近对齐,其中所述目标点云相比于所述源点云在较晚的时间获得。
3.根据权利要求2所述的车辆,其中将所述目标点云与源点云对齐包括:
使用图形处理单元针对来自所述源点云的点选择所述目标点云中的对应的最接近点;
确定所述点与所述对应的最接近点是否具有相同类别;
响应于确定所述点与所述对应的最接近点具有相同类别,确定所述点与所述对应的最接近点之间的马氏距离;以及
基于所确定的马氏距离确定所述源点云和所述目标点云的位置参数和取向参数。
4.根据权利要求3所述的车辆,其中将所述目标点云与源点云对齐还包括:
迭代地选择来自所述源点云的附加点和所述目标点云中的相应最接近点,直到更新的位置参数和更新的取向参数收敛;
确定每一对是否具有相同类别,所述每一对包括所述附加点中的一个附加点和所述相应最接近点中的一个相应最接近点;
对于具有相同类别的每一对:
确定附加点与所述相应最接近点之间的马氏距离;以及
基于所述附加点与所述相应最接近点之间的所确定的马氏距离以及所述点与所述对应的最接近点之间的所确定的马氏距离,确定所述源点云和所述目标点云的所述更新的位置参数和所述更新的取向参数;
确定所述更新的位置参数与紧接的前一位置参数之间的差值是否小于阈值,并确定所述更新的取向参数与紧接的前一取向参数之间的第二差值是否小于阈值;以及
响应于确定所述差值小于阈值且所述第二差值小于所述第二阈值,确定所述更新的位置参数和所述更新的取向参数收敛。
5.根据权利要求1所述的车辆,所述车辆还包括IMU和GNSS传感器,并且其中所述指令还使所述系统执行:
使用GNSS/INS后处理来融合GNSS数据和IMU数据以估计所述车辆的里程计数据,所述里程计数据包括所述车辆的位置、取向和速度;以及
基于与融合的GNSS/IMU数据相关联的约束并且基于与所确定的闭环相关联的约束,确定所述点云的所述子集中的每一个点云的位置和取向。
6.根据权利要求5所述的车辆,其中确定所述点云的所述子集中的每一个点云的位置和取向基于所述车辆与所述点云的所述子集中的每一个点云之间的距离。
7.根据权利要求5所述的车辆,其中与所述融合的GNSS/IMU数据相关联的约束要求所述车辆在两个不同时间处于一定距离范围内。
8.根据权利要求5所述的车辆,其中所述指令还使所述系统执行:
构造对应于与所确定的闭环相关联的约束以及与所述融合的GNSS/IMU数据相关联的约束中的每一个的成本函数;并且
确定所述点云的所述子集中的每一个点云的位置和取向基于对所述成本函数的优化,所述成本函数对应于与所确定的闭环相关联的约束以及与所述融合的GNSS/IMU数据相关联的约束中的每一个。
9.根据权利要求8所述的车辆,其中所述指令还使所述系统执行:
确定与所确定的闭环相关联的约束以及与所述融合的GNSS/IMU数据相关联的约束是否能满足;以及
响应于确定与所确定的闭环相关联的约束或与所述融合的GNSS/IMU数据相关联的约束不能满足,基于实际成本的自适应阈值、重复的迭代和欧几里德距离的差值移除被确定为不能满足的约束。
10.根据权利要求9所述的车辆,其中所述指令还使所述系统执行:
添加与对应于以下区域的闭环相关联的附加约束:在所述区域中,重复特征的频率或密集度超过阈值频率或密度。
11.一种由车辆上的一个或多个处理器执行的计算机实施的方法,包括:
从一个或多个光雷达传感器在不同位置、取向和时间获得点云;
基于所述点云中的每一个点云的相应表面法线,成对地配准所述点云的子集;
基于经配准的点云的子集确定闭环;
基于与所确定的闭环相关联的约束,确定所述点云的所述子集中的每一个点云的位置和取向;以及
基于所述点云的所述子集中的每一个点云的所确定的位置和取向生成地图。
12.根据权利要求11所述的计算机实施的方法,其中所述配准包括:
将目标点云与源点云对齐;以及
在所述目标点云与所述源点云之间确定包括旋转和平移的刚性变换,以形成所有可能对齐中的最接近对齐,其中所述目标点云相比于所述源点云在较晚的时间获得。
13.根据权利要求12所述的计算机实施的方法,其中将所述目标点云与源点云对齐包括:
使用图形处理单元针对来自所述源点云的点选择所述目标点云中的对应的最接近点;
确定所述点与所述对应的最接近点是否具有相同类别;
响应于确定所述点与所述对应的最接近点具有相同类别,确定所述点与所述对应的最接近点之间的马氏距离;以及
基于所确定的马氏距离确定所述源点云和所述目标点云的位置参数和取向参数。
14.根据权利要求13所述的计算机实施的方法,其中将所述目标点云与源点云对齐还包括:
迭代地选择来自所述源点云的附加点和所述目标点云中的相应最接近点,直到更新的位置参数和更新的取向参数收敛;
确定每一对是否具有相同类别,所述每一对包括所述附加点中的一个附加点和所述相应最接近点中的一个相应最接近点;
对于具有相同类别的每一对:
确定附加点与所述相应最接近点之间的马氏距离;以及
基于所述附加点与所述相应最接近点之间的所确定的马氏距离以及所述点与所述对应的最接近点之间的所确定的马氏距离,确定所述源点云和所述目标点云的所述更新的位置参数和所述更新的取向参数;
确定所述更新的位置参数与紧接的前一位置参数之间的差值是否小于阈值,并确定所述更新的取向参数与紧接的前一取向参数之间的第二差值是否小于阈值;以及
响应于确定所述差值小于阈值且所述第二差值小于所述第二阈值,确定所述更新的位置参数和所述更新的取向参数收敛。
15.根据权利要求11所述的计算机实施的方法,还包括:
从IMU获得IMU数据,并且从GNSS传感器获得GNSS数据;
使用GNSS/INS后处理来融合所述GNSS数据和所述IMU数据以估计所述车辆的里程计数据,所述里程计数据包括所述车辆的位置、取向和速度;以及
基于与融合的GNSS/IMU数据相关联的约束并且基于与所确定的闭环相关联的约束,确定所述点云的所述子集中的每一个点云的位置和取向。
16.根据权利要求15所述的计算机实施的方法,其中确定所述点云的所述子集中的每一个点云的位置和取向基于所述车辆与所述点云的所述子集中的每一个点云之间的距离。
17.根据权利要求15所述的计算机实施的方法,其中与所述融合的GNSS/IMU数据相关联的约束要求所述车辆在两个不同时间处于一定距离范围内。
18.根据权利要求15所述的计算机实施的方法,还包括:
构造对应于与所确定的闭环相关联的约束以及与所述融合的GNSS/IMU数据相关联的约束中的每一个的成本函数;并且
确定所述点云的所述子集中的每一个点云的位置和取向基于对所述成本函数的优化,所述成本函数对应于与所确定的闭环相关联的约束以及与所述融合的GNSS/IMU数据相关联的约束中的每一个。
19.根据权利要求18所述的计算机实施的方法,还包括:
确定与所确定的闭环相关联的约束以及与所述融合的GNSS/IMU数据相关联的约束是否能满足;以及
响应于确定与所确定的闭环相关联的约束或与所述融合的GNSS/IMU数据相关联的约束不能满足,基于实际成本的自适应阈值、重复的迭代和欧几里德距离的差值移除被确定为不能满足的约束。
20.根据权利要求19所述的计算机实施的方法,还包括:
添加与对应于以下区域的闭环相关联的附加约束:在所述区域中,重复特征的频率或密集度超过阈值频率或密度。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/124,444 | 2020-12-16 | ||
US17/124,444 US11238643B1 (en) | 2020-12-16 | 2020-12-16 | High-definition city mapping |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114636414A true CN114636414A (zh) | 2022-06-17 |
Family
ID=80034689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111536325.8A Pending CN114636414A (zh) | 2020-12-16 | 2021-12-15 | 高清晰度城市地图绘制 |
Country Status (3)
Country | Link |
---|---|
US (3) | US11238643B1 (zh) |
CN (1) | CN114636414A (zh) |
WO (1) | WO2022132934A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116255976A (zh) * | 2023-05-15 | 2023-06-13 | 长沙智能驾驶研究院有限公司 | 地图融合方法、装置、设备及介质 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11893004B2 (en) * | 2020-08-26 | 2024-02-06 | Ford Global Technologies, Llc | Anomaly detection in multidimensional sensor data |
US11238643B1 (en) | 2020-12-16 | 2022-02-01 | Pony Ai Inc. | High-definition city mapping |
CN113111974B (zh) * | 2021-05-10 | 2021-12-14 | 清华大学 | 基于深度典型相关分析的视觉-激光雷达融合方法及系统 |
CN114638853B (zh) * | 2022-05-18 | 2022-09-02 | 广东工业大学 | 一种基于路侧固态激光雷达的背景过滤方法和系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10989542B2 (en) * | 2016-03-11 | 2021-04-27 | Kaarta, Inc. | Aligning measured signal data with slam localization data and uses thereof |
WO2019075276A1 (en) * | 2017-10-11 | 2019-04-18 | Aquifi, Inc. | SYSTEMS AND METHODS FOR IDENTIFYING OBJECT |
US10826786B2 (en) * | 2018-04-11 | 2020-11-03 | Nvidia Corporation | Fast multi-scale point cloud registration with a hierarchical gaussian mixture |
EP3935524A4 (en) * | 2019-03-05 | 2022-12-07 | Nvidia Corporation | DISTRIBUTED PROCESSING OF AUTONOMOUS VEHICLE NAVIGATION HIGH DEFINITION MAP GENERATION POSE GRAPHICS |
US11243081B2 (en) * | 2019-03-29 | 2022-02-08 | Trimble Inc. | Slam assisted INS |
US11563929B2 (en) * | 2019-06-24 | 2023-01-24 | Align Technology, Inc. | Intraoral 3D scanner employing multiple miniature cameras and multiple miniature pattern projectors |
US11774250B2 (en) * | 2019-07-05 | 2023-10-03 | Nvidia Corporation | Using high definition maps for generating synthetic sensor data for autonomous vehicles |
US11106936B2 (en) * | 2019-09-05 | 2021-08-31 | General Atomics | Object point cloud comparison and matching |
CN110515110B (zh) * | 2019-09-05 | 2021-08-10 | 北京百度网讯科技有限公司 | 数据评估的方法、装置、设备和计算机可读存储介质 |
US11688082B2 (en) * | 2019-11-22 | 2023-06-27 | Baidu Usa Llc | Coordinate gradient method for point cloud registration for autonomous vehicles |
US11966673B2 (en) * | 2020-03-13 | 2024-04-23 | Nvidia Corporation | Sensor simulation and learning sensor models with generative machine learning methods |
US11238643B1 (en) | 2020-12-16 | 2022-02-01 | Pony Ai Inc. | High-definition city mapping |
-
2020
- 2020-12-16 US US17/124,444 patent/US11238643B1/en active Active
-
2021
- 2021-12-15 WO PCT/US2021/063564 patent/WO2022132934A1/en active Application Filing
- 2021-12-15 CN CN202111536325.8A patent/CN114636414A/zh active Pending
-
2022
- 2022-01-31 US US17/588,679 patent/US11580688B2/en active Active
-
2023
- 2023-02-14 US US18/168,729 patent/US11880931B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116255976A (zh) * | 2023-05-15 | 2023-06-13 | 长沙智能驾驶研究院有限公司 | 地图融合方法、装置、设备及介质 |
CN116255976B (zh) * | 2023-05-15 | 2023-10-31 | 长沙智能驾驶研究院有限公司 | 地图融合方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022132934A1 (en) | 2022-06-23 |
US20220189102A1 (en) | 2022-06-16 |
US20230186549A1 (en) | 2023-06-15 |
US11580688B2 (en) | 2023-02-14 |
US11238643B1 (en) | 2022-02-01 |
US11880931B2 (en) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230194266A1 (en) | Vision-aided inertial navigation | |
US11238643B1 (en) | High-definition city mapping | |
CN109211241B (zh) | 基于视觉slam的无人机自主定位方法 | |
CN109887057B (zh) | 生成高精度地图的方法和装置 | |
CN113916243B (zh) | 目标场景区域的车辆定位方法、装置、设备和存储介质 | |
CN112639502A (zh) | 机器人位姿估计 | |
CN111402339B (zh) | 一种实时定位方法、装置、系统及存储介质 | |
Angelino et al. | UAV position and attitude estimation using IMU, GNSS and camera | |
JP2020067439A (ja) | 移動体位置推定システムおよび移動体位置推定方法 | |
JP7245084B2 (ja) | 自動運転システム | |
US11430182B1 (en) | Correcting or expanding an existing high-definition map | |
US20220291012A1 (en) | Vehicle and method for generating map corresponding to three-dimensional space | |
CN111986261B (zh) | 一种车辆定位方法、装置、电子设备及存储介质 | |
WO2022062480A1 (zh) | 移动设备的定位方法和定位装置 | |
CN117044194A (zh) | 同步定位与地图构建的情境化和细化 | |
CN114127738A (zh) | 自动地图制作和定位 | |
Hong et al. | Visual inertial odometry using coupled nonlinear optimization | |
CN112731503A (zh) | 一种基于前端紧耦合的位姿估计方法及系统 | |
JP2021081272A (ja) | 位置推定装置および位置推定用コンピュータプログラム | |
CN113034538B (zh) | 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备 | |
US20220292290A1 (en) | Distributed computing network to perform simultaneous localization and mapping | |
Conway et al. | Vision-based Velocimetry over Unknown Terrain with a Low-Noise IMU | |
KR102580912B1 (ko) | 보행항법 알고리즘 검증을 위한 참조 데이터 셋 구축 장치 및 방법 | |
Zhou et al. | Localization for unmanned vehicle | |
Hu et al. | Efficient Visual-Inertial navigation with point-plane map |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40074575 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |