CN117044194A - 同步定位与地图构建的情境化和细化 - Google Patents
同步定位与地图构建的情境化和细化 Download PDFInfo
- Publication number
- CN117044194A CN117044194A CN202280022471.5A CN202280022471A CN117044194A CN 117044194 A CN117044194 A CN 117044194A CN 202280022471 A CN202280022471 A CN 202280022471A CN 117044194 A CN117044194 A CN 117044194A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- computing system
- constraint
- point
- displaying
- 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
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 10
- 238000010276 construction Methods 0.000 title description 2
- 238000013507 mapping Methods 0.000 claims abstract description 8
- 230000004807 localization Effects 0.000 claims abstract description 5
- 238000000034 method Methods 0.000 claims description 42
- 230000002123 temporal effect Effects 0.000 claims description 7
- 238000012805 post-processing Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 claims description 5
- 230000008030 elimination Effects 0.000 claims description 4
- 238000003379 elimination reaction Methods 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 29
- 238000012545 processing Methods 0.000 description 17
- 238000003860 storage Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- 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
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/408—Radar; Laser, e.g. lidar
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Navigation (AREA)
Abstract
一种计算系统,该计算系统包括一个或多个处理器以及存储指令的存储器,所述指令在由所述一个或多个处理器执行时使得系统执行操作。所述操作包括:从车辆的传感器获得传感器数据,该传感器数据包括处于不同位置、方向和时间的点云帧,该传感器数据用于生成地图;根据同步定位与地图构建(SLAM)算法确定与点云帧中的每一个点云帧的捕获相对应的传感器的位置和方向;以及在界面上描绘所确定的捕获点云帧的位置的图示。
Description
相关申请的交叉引用
本申请要求2021年3月18日提交的美国申请第17/205,314号的优先权,该申请的全部内容通过引用并入本文。
背景技术
仅使用全球定位卫星(GPS)或全球导航卫星系统(GNSS)导航的高准确性地图构建可能由于信号中断和障碍物而受到阻碍。为了解决GPS的缺点,在过去的二十年期间,已经使用同步定位与地图构建(SLAM)来试图构建机器人周围的环境的地图并在地图内定位机器人。SLAM的输出可以包括进行地图构建的车辆的方位和轨迹以及方位和轨迹的概率分布。然而,在没有关于传感器数据的特定帧和用于获得输出的约束的进一步情境的情况下,输出可能难以验证或分析。
发明内容
在一些实施例中,本文描述的是根据SLAM算法生成地图同时提供关于SLAM算法的计算的附加情境的计算系统。在一些实施例中,生成地图的计算系统可以通过接口与提供关于SLAM算法的附加情境的计算系统分离。在一些实施例中,一种计算系统包括一个或多个硬件处理器以及存储指令的存储器,该指令在由一个或多个处理器执行时使得计算系统执行从车辆的传感器获得传感器数据。传感器数据包括处于不同位置、方向和时间的点云帧。传感器数据可以用于生成地图。指令进一步使得计算系统执行根据同步定位与地图构建(SLAM)算法确定与点云帧中的每一个点云帧的捕获相对应的传感器的位置和方向。指令进一步使得计算系统执行在界面上描绘所确定的捕获点云帧的位置的图示。
在一些实施例中,图示包括:指示所确定位置的轨迹点以及连接轨迹点以指示轨迹点之间的时间关系或约束的线。
在一些实施例中,在SLAM算法的不同阶段描绘轨迹点,这些阶段包括:在捕获传感器数据之后、在GNSS-IMU后处理之后以及在点云配准之后。
在一些实施例中,指令进一步使得计算系统执行:接收对轨迹点中的一个轨迹点的选择;以及显示与该轨迹点相对应的点云帧。
在一些实施例中,指令进一步使得计算系统执行:显示从根据源点云对点云帧进行配准而得出的第二点云帧。
在一些实施例中,指令进一步使得计算系统执行:接收对约束的选择;以及显示约束的数据以及该约束是软约束还是硬约束,该数据指示受到约束的第二轨迹点。
在一些实施例中,指令进一步使得计算系统执行:显示由约束连接并且与约束相关联的轨迹点的信息;显示与轨迹点相对应的点云帧;以及显示从对与轨迹点相对应的点云帧进行合并或对准操作而生成的结果点云帧。
在一些实施例中,结果点云帧是在仅部分满足约束的情况下生成的;并且指令进一步使得一个或多个处理器执行:显示在完全满足约束的第二条件下从对点云帧进行合并或对准操作而生成的第二结果点云帧。
在一些实施例中,指令进一步使得计算系统执行:接收删除约束中的一个约束的指示;根据所删除的约束来重新确定与点云帧中的每一个点云帧的捕获相对应的传感器的位置和方向;以及在界面上描绘所重新确定的捕获点云帧的位置的图示。
在一些实施例中,指令进一步使得计算系统执行:根据传感器数据和传感器的所确定的位置和方向来生成地图;以及根据传感器的所重新确定的位置和方向以及对约束的消除来变换地图。
上面的经变换的地图和/或所生成的地图可以由计算系统使用或者传输到单独的计算系统,诸如车辆上的计算系统,以在车辆上执行导航。例如,车辆可以执行导航,同时避开经变换的地图和/或所生成的地图上示出的障碍物,同时在经变换的地图和/或所生成的地图上示出的道路或可行驶路径上导航。
本公开的各个实施例还提供了由如上所述的计算系统实施的方法。本公开的各种实施例还提供存储在存储器或非暂时性存储介质中的指令,该指令使得计算系统中的处理器执行上述方法。
通过参考附图考虑以下描述和所附权利要求书,本文公开的装置、系统、方法和非暂时性计算机可读介质的这些和其他特征、以及结构的相关元件和部分的组合的操作和功能的方法以及制造的经济性将变得显而易见,所有附图形成本说明书的一部分,其中在各个附图中,相同的附图标记表示对应的部分。然而,应该明确地理解,附图仅出于说明和描述的目的,并且并不旨在作为对本发明的限制的定义。
附图说明
本技术的各种实施例的某些特征在所附权利要求中具体阐述。通过参考阐述在其中利用了本发明的原理的说明性实施例的以下详细描述以及附图,将获得对本技术的特征和优点的更好理解,并且附图中:
图1A图示了根据本公开的实施例的计算系统的示例环境,该计算系统获取传感器数据并根据诸如SLAM的算法对周围进行地图构建,同时呈现该算法的情境数据。
图1B图示了根据本公开的示例实施例的描绘获取传感器数据的计算系统的混合数据流和框图。
图2A图示了根据本公开的示例实施例的根据图1A-图1B所示的计算系统的实施方式。特别地,图2A图示了生成姿势图的示例。
图2B图示了根据本公开的示例实施例的根据图1A-图1B和图2A所示的计算系统的实施方式。特别地,图2B图示了环路闭合检测的示例。
图3A-图3B和图4-图8图示了根据图1A-图1B和图2A-图2B的提供地图构建算法的情境数据的计算系统的实施方式。
图9图示了根据本公开的示例实施例并且如根据图1A-图1B、图2A-图2B、图3A-图3B和图4-图8所示的计算系统的方法的流程图。
图10图示了可以在其上实施本文描述的任何实施例的计算机系统的框图。
具体实施方式
从SLAM获得的解决方案可以包括例如用于获得数据帧(诸如点云数据)的传感器或车辆的方位和轨迹、姿势和/或姿态,连同方位和轨迹、姿势和/或姿态的概率分布。然而,仅查看此类解决方案的数量可能无法提供确定该解决方案的有效性的必要情境。因此,关于如何获得解决方案和/或约束的改变可以如何影响解决方案的附加情境可以加强和丰富分析和/或细化解决方案的能力。为了促进对解决方案进行验证和/或评估,计算系统可以在界面上提供相关点云帧和/或文件以及相关参数,同时在SLAM中的不同阶段呈现如何获得参数的过程。不同阶段可以包括例如在执行SLAM之前、在GNSS-IMU后处理之后、在点云配准和优化之后,以及在进一步定制之后由传感器获得的参数。计算系统可以是执行SLAM计算并获得SLAM解决方案的同一计算系统,或者远离执行SLAM计算并获得SLAM解决方案的计算系统。在下面的图中,执行SLAM计算并获得SLAM解决方案的计算系统被示出为与在界面上呈现信息的计算系统相同的计算系统,但是在一些实施例中,与获得SLAM解决方案的计算系统不同的计算系统可以在界面上呈现信息。在一些实施例中,计算系统可以位于车辆上或者卸载到远离车辆的站点,同时从车辆接收光雷达传感器数据。
图1A图示了根据本公开的实施例的呈现SLAM解决方案的附加情境信息的系统的示例环境100。在图1A中,车辆101(诸如自动驾驶车辆)可以包括传感器,诸如光雷达传感器102、惯性测量单元(IMU)103、雷达传感器104、GPS或GNSS传感器(下文中“GPS传感器”)105、相机106、加速度计、陀螺仪、磁力计和FIR(远红外)传感器,以用于检测和识别周围环境中的物体。在一些实施例中,IMU可以包括加速度计和陀螺仪,并且可选地包括磁力计。传感器数据可以包括图片或图像数据(诸如图片或视频)、音频数据、视听数据、时间戳数据和/或指示实时或延时捕获的车辆101的位置和/或姿势的其他数据。例如,来自光雷达传感器102、IMU 103、GPS传感器105的数据以及时间戳数据可以用于在不同时间定位车辆101,同时执行SLAM计算和/或向用户提供SLAM计算的解决方案。车辆101还可以包括无数的致动器以基于所生成的地图在周围推进和导航车辆101。此类致动器可以包括例如任何合适的机电设备或系统,诸如包括线控驱动(DBW)致动器的致动器,以控制节气门响应、制动动作、转向动作或其他导航动作。
环境100还可以包括计算系统121可访问的一个或多个服务器112。计算系统121可以集成到车辆101中或者可以远离车辆101,但仍然从车辆101和/或其他车辆接收传感器数据。一个或多个服务器112可以存储来自车辆101的传感器的数据帧。在一些实施例中,一个或多个服务器112可以存储来自传感器的集成的或融合的数据。一个或多个服务器112可以是直接或通过通信网络110由计算系统121可访问的。在一些情况下,一个或多个服务器112可以包括联合数据存储装置、数据库或任何其他类型的数据源,例如可以从这些数据源存储和检索数据。在一些实施方式中,一个或多个服务器112可以包括可以配准的点云或经后处理的全球导航卫星系统(GNSS)-惯性导航系统(INS)数据。一般而言,操作计算设备的用户可以通过通信网络110例如通过一个或多个图形用户界面和/或应用编程接口与计算系统121交互。计算系统121可以包括一个或多个处理器,诸如图形处理单元(GPU)或中央处理单元(CPU)。计算系统121可以包括例如包含高性能微处理器或微控制器的集成电路,诸如能够执行需要例如并行处理大数据块(例如,传感器数据)的算法的图形处理单元(GPU)。在一些示例实施例中,计算系统121可以包括潜在地跨多个计算设备分布并且经由一个或多个通信总线彼此通信的多种类型的处理单元(例如,GPU、中央处理单元(CPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等)。计算系统121的功能将在后续附图中进一步描述。如下所述的引擎/程序模块可以以硬件、软件和/或固件的任意组合来实施。在某些示例实施例中,这些引擎/程序模块中的一个或多个可以至少部分地实施为包括计算机可执行指令的软件和/或固件模块,这些指令在由处理电路执行时使得执行一个或多个操作。在示例实施例中,这些引擎/程序模块可以是在定制计算机(诸如定制FPGA或ASIC)内实施的定制计算机可执行逻辑。本文描述为被配置为实施本发明的示例实施例的系统或设备可以包括一个或多个处理电路,每个处理电路可以包括一个或多个处理单元或核。计算机可执行指令可以包括计算机可执行程序代码,该计算机可执行程序代码在由处理核执行时可以使得被包含在计算机可执行程序代码中或由计算机可执行程序代码引用的输入数据被处理核访问和处理以产生输出数据。
图1B图示了根据示例实施例的混合数据流和框图,其图示了获取传感器数据、执行SLAM计算以及提供关于SLAM计算的附加情境的过程。在图1B中,计算系统121可以包括一个或多个硬件处理器122,该一个或多个硬件处理器122至少可以包括处理引擎124。计算系统121可以包括存储指令的机器可读存储介质114,该指令在被执行时使得计算系统121获取传感器数据、执行SLAM计算并且提供关于SLAM计算的附加情境。在图1B中,由车辆101的传感器捕获的传感器数据可以包括具有相应时间戳142和143并且由光雷达传感器106捕获的点云帧132和133、具有时间戳141并且由GPS传感器105捕获的GNSS数据131、具有时间戳140并且由IMU 103捕获的IMU数据130。GNSS数据131和IMU数据130可以与点云帧132和133融合或同步,以便进一步验证或细化当捕获点云帧132和133时的方位和姿势,和/或将附加约束引入到点云帧132和133中。点云帧132和133可以包括2D、3D和/或2D/3D融合的光雷达数据中的任一种。为了说明而示出了两个点云帧,但是可以生成任意数量的点云帧。在一些实施例中,点云帧132可以用来自点云帧133的特征来增强以阐明某些特征。关于点云配准的进一步细节在2020年12月16日提交的申请No.17/124,444中描述,该申请的全部内容通过引用并入本文。
例如,IMU数据130和GPS数据131可以同时获得或捕获,并且可以与点云帧132和133融合以获得车辆101的位置和姿态(例如,方向)的估计,以及指示每个估计的置信水平或准确性的协方差矩阵。所估计的位置和姿态可以在经纬度上叠加到地图上。与点云帧132和133一起使用融合的IMU数据130和GPS数据131,计算系统121可以在姿势图上构造节点,节点中的每一个指示车辆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沿着轨迹行进,计算系统121可以在不同时间构造附加节点并且将附加节点与捕获的传感器数据(诸如点云帧)相关联。节点可以与捕获的点云帧在时间上同步或相关,使得在节点中的每一个处,在与节点的时间相对应的时间捕获的对应的点云帧相关联。因为车辆101的位置和相关联的光雷达点云之间的距离是已知的,所以可以从车辆101的已知位置和姿态来确定相关联的光雷达点云的位置和姿态。如果同时捕获到多个点云,则计算系统121可以执行点云配准以组合这些点云。点云配准过程可以包括旋转和平移,以将一个点云(目标点云)与另一点云(源点云)对准。同时,在姿势图中引入附加约束,约束定义了节点中的每一个、两个节点之间、节点与地标之间的限制,以不断更新对车辆101的位置和姿态的估计,使得车辆101的位置和姿态以及地标的位置的初始估计可以被更新并最终收敛到接近车辆101的实际位置和姿态以及地标的实际位置。这些约束增加了姿势图的稳健性。
此外,计算系统121可以基于两个不同时间下的位置之间的接近度或者具有时间接近度的不同位置之间的接近度来执行潜在环路闭合的初始确定,以便进一步更新车辆101的所估计的位置和姿态。换句话说,基于融合的IMU数据130和GPS数据131,计算系统121可以推断或估计车辆101正在返回到先前经过的阈值距离内的方位,并且具有与当车辆101先前经过该方位时的姿态类似的姿态。方位和姿态可以由x和y平面坐标来定义,同时忽略z(高度)坐标。因此,如果估计车辆101返回到与车辆101先前访问的方位相同的方位但方向相反,则计算系统121可能检测不到潜在的环路闭合,因为环路闭合条件可能要求车辆以与先前方向相同或类似的方向返回到先前方位,使得方向的差异不超过阈值。环路闭合的示例性说明在图2B所图示的姿势图250中示出,其中附加节点Xk+3;Xk+4;Xk+5;和Xk+6已被包括在内。计算系统121可以推断或估计在与时间k+6相对应的节点Xk+6处,车辆101的位置和姿态在车辆101在与时间k-1相对应的节点Xk-1处的位置和姿态的阈值内。计算系统121可以例如通过确定在节点Xk+6和Xk-1处捕获的点云处是否存在共同特征来验证或确认节点Xk+6和Xk-1确实对应于环路闭合。一种示例性方法涉及使用例如反卷积网络、编码和解码步骤将在节点Xk+6和Xk-1处捕获的点云转换和表示成向量,以及应用模型(诸如词袋模型)来识别任何共同特征。环路闭合的检测通过减少否则将随时间发生的漂移误差并且并入与环路闭合相对应的附加约束来增加姿势图的准确性。因此,由节点Xk+6表示的所估计的位置和姿态连同由先前节点表示的位置和姿态可以被更新。与节点中的每一个相关联的点云的所估计的位置和姿态也可以被更新。
计算系统121可以生成解决方案,该解决方案包括进行不同测量所处的位置和姿态(如例如由节点Xk-1至Xk+6所指示的)和/或地标的位置和姿态(如例如由地标mi至ml所指示的)。如将参考图3A-图3B和图4-图8进一步描述的,计算系统121可以通过在界面上呈现解决方案的附加情境数据来丰富和阐明解决方案,该附加情境数据例如促进用户查看某些约束的改变可以如何影响解决方案的能力。在一些实施例中,为了便于说明而在图3A-图3B和图4-图8中单独示出的界面可以组合在共同界面上。例如,图7和图8中示出的特征可以组合或集成在共同界面中。例如,在从用户接收对节点中的一个的选择的输入或解决方案的一部分之后,计算系统121可以在界面上呈现点云帧,诸如与点云相关的文件和参数,以便提供所选输入或解决方案的所选部分的附加情境和可视化。在一些实施例中,计算系统121可以将参数以地图的形式呈现为轨迹点,类似于节点Xk-1至Xk+6。计算系统121可以进一步根据四种不同的设置来呈现参数:1)在SLAM之前;2)在GNSS-IMU后处理之后;3)在点云配准和约束优化之后;4)在进一步优化或定制之后。轨迹点可以通过指示轨迹点之间的时间关系的线和指示点云配准约束(例如,环路闭合约束)之间的关系的附加线来连接。
计算系统121可以例如从用户接收对轨迹点的选择。如果选择轨迹点,则计算系统121可以显示轨迹点的数据、轨迹点遵循和/或满足的约束,以及与轨迹点相关的一个或多个点云,诸如在与轨迹点相对应的时间、位置和姿态下捕获的点云。计算系统121可以进一步显示约束所涉及的轨迹点对。例如,环路闭合约束可以涉及车辆101在面对特定方向、姿态或姿势时最初经过的第一轨迹点,以及在车辆返回到先前经过的原始方位的情况下具有与第一轨迹点相同或类似的方位和/或姿态的第二轨迹点。计算系统121然后可以显示涉及该环路闭合约束的两个前述轨迹点。
计算系统121可以例如从用户接收对约束或约束对的选择,如与该约束或约束对有关或受该约束或约束对影响的轨迹点之间的线或其他连接所指示的。计算系统121可以在接收到对约束或约束对的选择后显示约束的数据。在完全满足约束或约束对的情况下,计算系统121可以进一步显示轨迹点的相对位置和姿态。在一些实施例中,使用SLAM生成的解决方案可能不完全满足所有约束,而是尝试最小化一些约束中的误差。通过移除异常值,误差可以分布在部分或全部约束中。因此,如果在解决方案下未完全满足的约束现在被完全满足,则计算系统121可以图示轨迹点的相对位置和姿态的改变。以此类方式,用户可以能够确定某些约束是否优先于其他约束,以及是否通过完全满足约束而得到更好和/或更准确的解决方案。在一些实施例中,假设完全满足所选约束,计算系统121可以显示轨迹点的相对位置和姿态,同时忽略一个或多个其他约束。计算系统121可以进一步显示约束所涉及的点云。计算系统121然后可以显示该解决方案下的对应的点云,在该解决方案中可以不完全满足所选约束和/或其他约束。
在一些实施例中,计算系统121可以例如从用户接收删除约束或约束对或者调整约束或约束对的权重的输入。计算系统121可以使用所删除的约束或经调整的约束来计算更新的解决方案并显示轨迹点和/或点云的更新的数据。因此,计算系统121促进用户能够查看删除约束或修改约束的权重对轨迹点和点云的数据的影响,从而提供SLAM解决方案的数字和视觉表示。
图3A图示了其中计算系统121在不同设置下生成轨迹点的显示的实施方式,该轨迹点的显示可以指示在车辆捕获点云帧(诸如点云帧132和133)时车辆101的方位和/或姿态。每个轨迹点可以对应于当捕获点云帧时车辆101的方位和/或姿态。具体地,轨迹点310、312、314、316和318可以指示从原始传感器数据(诸如从点云帧本身)估计的车辆101的位置。轨迹点320、322、324、326和328可以指示从与GNSS数据和IMU数据(诸如GNSS数据131和IMU数据130)融合的点云帧估计的车辆101的位置。因此,轨迹点320、322、324、326和328可以包括从GNSS数据131和IMU数据130的融合或同步得出的进一步约束。轨迹点330、332、334、336和338可以指示从与GNSS数据131、IMU数据130融合的点云帧以及随后的点云配准和SLAM解决方案的优化估计的车辆101的位置。轨迹点340、342、344、346和348可以指示从(如从轨迹点330、332、334、336和338进一步定制和优化的)点云帧估计的车辆101的位置。轨迹点310、320、330和340可以全部对应于同一点,并且表示如使用附加数据获得和细化的车辆101的方位的估计。同样,轨迹点312、322、332和342可以全部对应于同一点。轨迹点314、324、334和344可以全部对应于同一点。轨迹点316、326、336和346可以全部对应于同一点。轨迹点318、328、338和348可以全部对应于同一点。下面将简单描述点云配准和优化过程。
在一些实施例中,点云配准可以通过环路闭合的初步估计或推断来发起。对于被推断或估计的这些环路闭合,计算系统121可以尝试对在与所推断或估计的环路闭合相对应的时间捕获的点云执行点云配准。计算系统121可以例如从在重叠的经配准的点云中识别的共同特征来推断或估计附加环路闭合。例如,如果来自不同时间的两个点云已经被成功配准,则计算系统121可以推断与这两个不同时间相对应的潜在环路闭合已经发生,因为从两个点云观察到类似或相同的特征。计算系统121然后可以验证或确认环路闭合已经发生。如果环路闭合已经被确认或验证,则计算系统121可以在与不同时间相对应的两个轨迹点之间添加环路闭合约束。例如,计算系统121可以要求车辆101处于与环路闭合相关联的时间处的方位相同方位或其附近(在阈值距离内)。计算系统121可以进一步在轨迹点中的每一个中以及轨迹点之间并入约束,这些约束考虑了融合的GNSS数据131和IMU数据130。作为另一示例,来自融合的GNSS数据131和IMU数据130的其他约束可以要求车辆101在两个不同时间之间在阈值距离范围内以给定距离间隔开。例如,里程计约束可以要求车辆101在时间0秒和时间5秒间隔开500米。计算系统121可以通过将部分重叠的点云缝合在一起来进一步增强来自经配准的点云的地图数据。
点云配准过程包括迭代过程,该迭代过程重复直到收敛。对于来自较早时间获得的源点云的每个点,可以使用GPU来选择稍后时间获得的目标点云中的对应的最近点。来自源点云的点和最近点需要具有相同的类别,否则,该对将被丢弃,并选择来自源点云的另一个点和目标点云中的最近点。对于来自源点云的点和目标点云中的具有匹配类别的对应的最近点,可以基于源点云的表面法线确定两个点之间的马哈拉诺比斯距离。可以基于所确定的马哈拉诺比斯距离并且基于来自源点云和/或目标点云的点的所确定或估计的距离准确性来确定成本函数。可以通过调整源点云相对于原点的位置和姿态参数来获得最小化成本函数的解决方案。在一些示例中,原点可以是车辆的后轴,并且姿态被定义为与车辆的姿态相同。然而,原点以及轴可以以其他方式定义,诸如光雷达传感器的原点或车辆的导航盒的原点。定义不同的原点将产生源点云的不同坐标。当连续迭代之间的位置和姿态参数的调整或改变量相差小于阈值时,迭代过程收敛。
对于环路闭合、里程计和其他约束中的每一个,可以确定对应的成本函数。可以确定与相关联的点云的位置和姿态相关联的参数使得成本函数被优化并且收敛。当成本函数被优化时,可以满足对应的约束。接下来,可以执行对参数的进一步细化。例如,如果不能满足或最小化约束,则可以基于实际成本的自适应阈值、重复的迭代和欧氏距离的差来消除此类约束。此外,可以在自重复程度(重复特征的频率或数量)大于阈值的区域中添加环路闭合约束,同时避免先前已被移除的点。特别地,收紧自重复区域中的参数的先前过程可能导致点变得与姿势图分离以及点之间的未对准。对于那些分离的或未对准的点,计算系统121可以尝试添加约束。约束可以来自环路闭合或来自其他来源,诸如GNSS-IMU后处理。可以基于新消除和添加的约束来进一步细化参数。可以继续消除约束,直到无法最小化的约束的数量小于阈值,此时该过程被认为收敛。以此类方式,可以获得车辆101的位置和姿态信息,并且因此获得点云帧的位置和姿态信息。然后,点云可以通过刚体变换彼此对准并缝合在一起。
图3B图示了其中计算系统121生成经由指示轨迹点之间的时间关系和/或约束(诸如环路闭合约束)的线341、343、345、347和349连接的轨迹点340、342、344、346和348的显示的实施方式。例如,线349可以指示轨迹点340和348之间的环路闭合约束。时间关系可以指示,基于车辆101的速度,每个轨迹点应该在距另一轨迹点的一定距离内。例如,如果轨迹点340和342表示相隔一秒的两个单独的点云帧的捕获,并且车辆101正在以每小时180千米的恒定或平均速度行进,则轨迹点340和342应当隔开约50米。尽管为了便于说明,用轨迹点340、342、344、346和348示出了该实施方式,但是可以用其他或附加的轨迹点集(诸如表示原始点云帧的轨迹点310、312、314、316和318)来示出其他实施方式。
图4图示了其中计算系统121接收对一个或多个轨迹点(诸如轨迹点348)的选择的实施方式。计算系统121可以显示该轨迹点348的信息、轨迹点348的所估计的时间戳、位置、和/或姿态410、轨迹点348链接到的任何约束,以及与轨迹点348相关的一个或多个点云。可以通过调整位置和角度从不同的3维视角观看点云。例如,计算系统121可以显示轨迹点348受到约束347和349的约束。计算系统121可以进一步显示与轨迹点348相关或连接的一个或多个点云。具体地,点轨迹点可以连接到在与轨迹点348相对应的时间捕获的点云帧420。点云帧420可以进一步已经与对应于另一个轨迹点(诸如轨迹点340)的源点云帧430配准或对准。点云帧420和430可以已被识别为具有共同特征但不同地对准。因此,点云帧420可以已被变换为由环路闭合约束349投射的点云帧422。因此,计算系统121可以显示原始捕获的点云和由环路闭合约束投射的经变换的点云,以及用作参考来变换原始捕获的点云的另一个源点云。
类似于图4,图5和图6图示了其中计算系统121接收对一个或多个轨迹点(诸如轨迹点348)的选择并且显示与轨迹点348相关的点云的实施方式。在图5中,在与轨迹点348相对应的时间最初捕获的点云帧520可以与第二点云帧530合并,以便组合点云帧520和530中的每一个中图示的特征,并且创建由环路闭合约束349投射的合并的点云540。计算系统121可以显示原始点云、与原始点云合并以组合特征的任何点云以及从合并得出的点云的信息。
在图6中,计算系统121图示了在与轨迹点348相对应的时间最初捕获的点云帧620可以与第二点云帧630对准并合并,以便组合点云帧620和630中的每一个中图示的特征,并且创建由环路闭合约束349投射的合并的点云640,其中一些特征在点云帧620和630之间重叠,而合并的点云640中的其他特征可以只属于点云帧620或630之一。计算系统121可以显示原始点云、与原始点云对准和合并以组合特征的任何点云以及从对准和合并得出的点云的信息。
在一些实施例中,计算系统121可以接收对约束的选择。如图7和图8所图示的,计算系统121可以接收对约束349的选择。计算系统121可以显示受约束349影响的轨迹点,包括轨迹点340和348。计算系统121可以显示约束349的进一步信息710,该进一步信息包括该约束是否被完全满足或者该约束是软约束还是硬约束。另外,计算系统121可以显示关于约束349所隶属的约束类型的信息,诸如,例如环路闭合约束或GNSS-IMU约束。如果完全满足约束349,则计算系统121可以进一步显示轨迹点340和348的影响。例如,如果完全满足约束348,则计算系统121可以显示轨迹点340和348完全或几乎完全重叠。另外,计算系统121可以显示与受约束349影响的轨迹点340和348相关联的点云帧。例如,在图7中,计算系统121显示与轨迹点348相对应的点云帧720和与轨迹点340相对应的第二点云帧730。计算系统121可以进一步显示从点云帧720与第二点云帧730的对准和/或点云帧720和第二点云帧730的合并得出的由环路闭合约束349投射的点云帧740。在图7中,可以不完全满足约束349,但是在确定变换时可以考虑除约束349之外的其他约束以将点云帧720对准和合并到第二点云帧730。
同时,在图8中,计算系统121显示约束349的信息810,其可以是与图7中的信息710相同或类似的数据。在图8中,计算系统121可以进一步显示与轨迹点348相对应的点云帧820和与轨迹点340相对应的第二点云帧830。点云帧820可以与点云帧720类似或相同,并且点云帧830可以与点云帧730类似或相同。然而,图8中的差异在于,计算系统121可以在要完全满足约束349的条件下确定结果点云帧840。如图8中所图示的,由于在图8中完全满足约束349,因此与图7中的结果点云帧740相比,结果点云帧840可以表现出不同的或改善的对准或合并。
在一些实施例中,在图8中,计算系统121可以在以下假设下操作:一个或多个其他约束可以被至少部分地忽略,例如被忽视、降低权重,或放松,和/或可以忽略完全满足约束349对其他约束的影响。在其他实施例中,计算系统121可以进一步确定由完全满足约束349导致的对一个或多个其他约束(诸如约束341)的影响,并显示其他点云或由对一个或多个其他约束的影响导致的其他点云中的改变。例如,由于由完全满足约束349而导致的可能放松一个或多个约束(诸如约束341),经配准的其他点云帧可能不会紧密地对准。在一些实施例中,计算系统121可以接收删除一个或多个约束和/或调整一个或多个约束的权重的输入。考虑到所删除或经调整的约束,计算系统121可以生成新的优化解决方案。计算系统121还可以基于所删除的一个或多个约束和/或一个或多个约束的经调整的权重来生成或重新生成地图,或者变换现有的地图。在一些实施例中,计算系统121可以在相同界面或不同界面上显示现有地图的至少一部分和所重新生成的或经变换的地图的对应的部分。在一些实施例中,计算系统121可以显示由于删除或调整一个或多个约束的权重而更新的点云帧。
图9图示了根据本公开的示例实施例的更新现有地图的方法的流程图。来自其他附图的描述也可以适用于图9。任何或所有步骤可以由车辆的硬件处理器或远离车辆的硬件处理器来实施。在步骤902中,一个或多个硬件处理器可以从车辆的传感器获得传感器数据,该传感器数据包括处于不同位置、方向和时间的点云帧,该传感器数据用于生成地图。在步骤904中,一个或多个处理器可以根据同步定位与地图构建(SLAM)算法确定与点云帧中的每一个点云帧的捕获相对应的传感器的位置和方向。在步骤906中,一个或多个处理器可以在界面上描绘所确定的捕获点云帧的位置的图示。
例如,本文描述的技术由一个或多个专用计算设备来实施。专用计算设备可以是硬连线的以执行这些技术,或者可以包括被持久地编程为执行这些技术的电路系统或数字电子设备,诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),或者可以包括被编程为根据固件、存储器、其他存储装置或组合中的程序指令来执行这些技术的一个或多个硬件处理器。
图10图示了可以在其上实施本文描述的任何实施例的计算机系统1000的框图。计算机系统1000包括总线1002或用于传送信息的其他通信机构、与总线1002耦合以用于处理信息的一个或多个硬件处理器1004。设备执行任务的描述旨在意味着(一个或多个)硬件处理器1004中的一个或多个执行该任务。(一个或多个)硬件处理器1004可以是硬连线的以执行说明书中描述的技术;它们可以包括被持久地编程为执行这些技术的电路系统或数字电子设备,诸如一个或多个ASIC或FPGA;和/或可以包括被编程为根据固件、存储器、其他存储装置或其组合中的程序指令来执行这些技术的一个或多个硬件处理器。(一个或多个)硬件处理器1004还可以将定制硬连线逻辑、ASIC或FPGA与定制编程组合以完成这些技术。(一个或多个)硬件处理器1004可以包括能够接受数据作为输入、根据存储的计算机可执行指令处理输入数据并且生成输出数据的任何合适的处理单元。(一个或多个)硬件处理器1004可以包括任何类型的合适的处理单元,包括但不限于中央处理单元、微处理器、精简指令集计算机(RISC)微处理器、复杂指令集计算机(CISC)微处理器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上系统(SoC)、数字信号处理器(DSP)等。进一步地,(一个或多个)硬件处理器1004可以具有任何合适的微架构设计,其包括任何数量的组成部件,诸如,例如寄存器、多路复用器、算术逻辑单元、用于控制对高速缓存存储器的读/写操作的高速缓存控制器、分支预测器,等。可以使(一个或多个)硬件处理器1004的微架构设计能够支持各种指令集中的任何一种。
计算机系统1000还包括耦合到总线1002以用于存储信息和要由处理器1004执行的指令的主存储器1006,诸如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备。主存储器1006还可以用于在执行要由处理器1004执行的指令期间存储临时变量或其他中间信息。此类指令,在存储在处理器1004可访问的存储介质中时,将计算机系统1000呈现为被定制以执行指令中指定的操作的专用机器。
计算机系统1000进一步包括耦合到总线1002以用于存储用于处理器1004的静态信息和指令的只读存储器(ROM)1008或其他静态存储设备。提供存储设备1010(诸如磁盘、光盘、USB拇指驱动器(闪存驱动器)等)并将其耦合到总线1002以用于存储信息和指令。
计算机系统1000可以经由总线1002耦合到(一个或多个)输出设备1012,诸如阴极射线管(CRT)或LCD显示器(或触摸屏),以用于向计算机用户显示信息。包括字母数字键和其他键的(一个或多个)输入设备1014耦合到总线1002以用于将信息和命令选择传送到处理器1004。另一种类型的用户输入设备是光标控件1016。计算机系统1000还包括耦合到总线1002的通信接口1018。
术语“引擎”或“程序模块”应被理解为包括有形实体,该有形实体是被物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)为以某种方式操作或执行本文所述的某些操作的实体。考虑到硬件引擎被临时配置(例如,编程)的实施例,硬件引擎中的每个无需在任何时候都及时被配置或实例化。例如,在硬件引擎包括由软件被配置为专用处理器的通用处理器的情况下,该通用处理器可以在不同时间分别被配置为不同的专用处理器(例如,包括不同的硬件引擎)。软件相应地可以配置一个或多个特定处理器,例如,以在给定时间实例中构成特定硬件引擎,并在不同的时间实例中构成不同的硬件引擎。
硬件引擎可以向其他硬件引擎提供信息并从其他硬件引擎接收信息。因此,所描述的硬件引擎可以被认为是通信联接的。在同时存在多个硬件引擎的情况下,可以通过在硬件引擎中的两个或多个之间的信号传输(例如,通过适当的电路和总线)来实现通信。在以不同时间配置或实例化多个硬件引擎的实施例中,可以例如通过在多个硬件引擎可以访问的存储器结构中存储和检索信息来实现此类硬件引擎之间的通信。例如,一个硬件引擎可以执行操作并将该操作的输出存储在其通信联接的存储设备中。然后,另一硬件引擎可以在以后的时间访问该存储设备以检索和处理所存储的输出。硬件引擎还可以启动与输入或输出设备的通信,并且可以对资源(例如,信息的集合)进行操作。
本文中描述的示例方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久被配置为执行相关操作的一个或多个处理器执行。无论是临时配置还是永久配置,此类处理器都可以构成硬件引擎的实施方式。类似地,本文中描述的方法可以至少部分地由处理器实施,其中一个或多个特定处理器是硬件的示例。此外,一个或多个处理器还可以操作为在“云计算”环境中或作为“软件即服务”(SaaS)支持相关操作的性能。例如,操作中的至少一些可以由一组计算机(作为包括处理器的机器的示例)执行,其中这些操作经由网络(例如,互联网)和经由一个或多个适当的接口(例如,API)可访问。
除非情境另外要求,否则在整个说明书和权利要求书中,词语“包括”及其变体(诸如“包括”和“将……包括”)应以开放、包容的含义来解释,即为“包括但不仅限于。”在整个说明书中对值的数值范围的引用旨在用作速记符号,分别指代落入包括限定范围的值在内的范围内的每个单独的值,并且每个单独的值如本文单独记载的那样并入说明书中。另外,单数形式的“一”、“一个”和“该/所述”包括复数对象,除非情境另外明确指出。短语“……的至少一个”、“从……的组中选择的至少一个”或“从由……组成的组中选择的至少一个”等要以析取方式进行解释(例如,不要解释为A中的至少一个和B中的至少一个)。
在整个说明书中,对“一个实施例”或“实施例”的引用是指结合该实施例描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。因此,在整个说明书中各处出现的短语“在一个实施例中”或“在实施例中”不一定全部指的是相同实施例,而是在某些情况下可以指相同实施例。此外,在一个或多个实施例中,可以以任何合适的方式组合特定的特征、结构或特性。
一个部件被实施为另一部件可以被解释为该部件以与另一部件相同或类似的方式操作,和/或包括与另一部件相同或类似的特征、特性和参数。
Claims (20)
1.一种计算系统,包括:
一个或多个处理器;以及
存储指令的存储器,所述指令在由所述一个或多个处理器执行时使得所述计算系统执行:
从车辆的传感器获得传感器数据,所述传感器数据包括处于不同位置、方向和时间的点云帧,所述传感器数据用于生成地图;
根据同步定位与地图构建(SLAM)算法确定与所述点云帧中的每一个点云帧的捕获相对应的所述传感器的位置和方向;以及
在界面上描绘所确定的捕获所述点云帧的位置的图示。
2.根据权利要求1所述的计算系统,其中,所述图示包括:指示所确定位置的轨迹点以及连接所述轨迹点以指示所述轨迹点之间的时间关系或约束的线。
3.根据权利要求2所述的计算系统,其中,在所述SLAM算法的不同阶段描绘所述轨迹点,所述阶段包括:在捕获所述传感器数据之后、在GNSS-IMU后处理之后以及在点云配准之后。
4.根据权利要求2所述的计算系统,其中,所述指令进一步使得所述计算系统执行:
接收对所述轨迹点中的一个轨迹点的选择;以及
显示与该轨迹点相对应的点云帧。
5.根据权利要求4所述的计算系统,其中,所述指令进一步使得所述计算系统执行:
显示从根据源点云对所述点云帧进行配准而得出的第二点云帧。
6.根据权利要求2所述的计算系统,其中,所述指令进一步使得所述计算系统执行:
接收对约束的选择;以及
显示所述约束的数据以及所述约束是软约束还是硬约束,所述数据指示受到所述约束的第二轨迹点。
7.根据权利要求6所述的计算系统,其中,所述指令进一步使得所述计算系统执行:
显示由所述约束连接并且与所述约束相关联的所述轨迹点的信息;
显示与所述轨迹点相对应的点云帧;以及
显示从对与所述轨迹点相对应的所述点云帧进行合并或对准操作而生成的结果点云帧。
8.根据权利要求7所述的计算系统,其中,所述结果点云帧是在仅部分满足所述约束的条件下生成的,并且所述指令进一步使得所述一个或多个处理器执行:
显示在完全满足所述约束的第二条件下从对所述点云帧进行合并或对准操作而生成的第二结果点云帧。
9.根据权利要求2所述的计算系统,其中,所述指令进一步使得所述计算系统执行:
接收删除所述约束中的一个约束的指示;
根据所删除的约束来重新确定与所述点云帧中的每一个点云帧的所述捕获相对应的所述传感器的所述位置和所述方向;以及
在界面上描绘所重新确定的捕获所述点云帧的位置的图示。
10.根据权利要求9所述的计算系统,其中,所述指令进一步使得所述计算系统执行:
根据所述传感器数据和所述传感器的所确定的位置和方向来生成所述地图;以及
根据所述传感器的所重新确定的位置和所述方向以及对所述约束的消除来变换所述地图。
11.一种计算机实施的方法,包括:
从车辆的传感器获得传感器数据,所述传感器数据包括处于不同位置、方向和时间的点云帧,所述传感器数据用于生成地图;
根据同步定位与地图构建(SLAM)算法确定与所述点云帧中的每一个点云帧的捕获相对应的所述传感器的位置和方向;以及
在界面上描绘所确定的捕获所述点云帧的位置的图示。
12.根据权利要求11所述的计算机实施的方法,其中,所述图示包括:指示所确定位置的轨迹点以及连接所述轨迹点以指示所述轨迹点之间的时间关系或约束的线。
13.根据权利要求12所述的计算机实施的方法,其中,在所述SLAM算法的不同阶段描绘所述轨迹点,所述阶段包括:在捕获所述传感器数据之后、在GNSS-IMU后处理之后以及在点云配准之后。
14.根据权利要求12所述的计算机实施的方法,进一步包括:
接收对所述轨迹点中的一个轨迹点的选择;以及
显示与该轨迹点相对应的点云帧。
15.根据权利要求14所述的计算机实施的方法,进一步包括:
显示从根据源点云对所述点云帧进行配准而得出的第二点云帧。
16.根据权利要求12所述的计算机实施的方法,进一步包括:
接收对约束的选择;以及
显示所述约束的数据以及所述约束是软约束还是硬约束,所述数据指示受到所述约束的第二轨迹点。
17.根据权利要求16所述的计算机实施的方法,进一步包括:
显示由所述约束连接并且与所述约束相关联的所述轨迹点的信息;
显示与所述轨迹点相对应的点云帧;以及
显示从对与所述轨迹点相对应的所述点云帧进行合并或对准操作而生成的结果点云帧。
18.根据权利要求17所述的计算机实施的方法,其中,所述结果点云帧是在仅部分满足所述约束的条件下生成的,并且所述计算机实施的方法进一步包括:
显示在完全满足所述约束的第二条件下从对所述点云帧进行合并或对准操作而生成的第二结果点云帧。
19.根据权利要求12所述的计算机实施的方法,进一步包括:
接收删除所述约束中的一个约束的指示;
根据所删除的约束来重新确定与所述点云帧中的每一个点云帧的所述捕获相对应的所述传感器的所述位置和所述方向;以及
在界面上描绘所重新确定的捕获的所述点云帧的位置的图示。
20.根据权利要求19所述的计算机实施的方法,进一步包括:
根据所述传感器数据和所述传感器的所确定的位置和方向来生成所述地图;以及
根据所述传感器的所重新确定的位置和所述方向以及对所述约束的消除来变换所述地图。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/205,314 | 2021-03-18 | ||
US17/205,314 US11908198B2 (en) | 2021-03-18 | 2021-03-18 | Contextualization and refinement of simultaneous localization and mapping |
PCT/US2022/020619 WO2022197848A1 (en) | 2021-03-18 | 2022-03-16 | Contextualization and refinement of simultaneous localization and mapping |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117044194A true CN117044194A (zh) | 2023-11-10 |
Family
ID=83283646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280022471.5A Pending CN117044194A (zh) | 2021-03-18 | 2022-03-16 | 同步定位与地图构建的情境化和细化 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11908198B2 (zh) |
CN (1) | CN117044194A (zh) |
WO (1) | WO2022197848A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114549632A (zh) * | 2021-09-14 | 2022-05-27 | 北京小米移动软件有限公司 | 车辆定位方法及装置 |
US11977149B2 (en) | 2021-10-27 | 2024-05-07 | GM Global Technology Operations LLC | Filtering and aggregating detection points of a radar point cloud for an autonomous vehicle |
US11965978B2 (en) | 2021-10-27 | 2024-04-23 | GM Global Technology Operations LLC | Calibration pipeline for estimating six degrees of freedom (6DoF) alignment parameters for an autonomous vehicle |
US20230126333A1 (en) * | 2021-10-27 | 2023-04-27 | GM Global Technology Operations LLC | Scan matching and radar pose estimator for an autonomous vehicle based on hyper-local submaps |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106959102B (zh) * | 2014-05-05 | 2019-11-15 | 赫克斯冈技术中心 | 测量子系统和测量系统 |
US10788836B2 (en) * | 2016-02-29 | 2020-09-29 | AI Incorporated | Obstacle recognition method for autonomous robots |
US10891497B2 (en) * | 2018-03-23 | 2021-01-12 | NetraDyne, Inc. | Traffic boundary mapping |
US11243081B2 (en) * | 2019-03-29 | 2022-02-08 | Trimble Inc. | Slam assisted INS |
US11774250B2 (en) * | 2019-07-05 | 2023-10-03 | Nvidia Corporation | Using high definition maps for generating synthetic sensor data for autonomous vehicles |
US20210141093A1 (en) * | 2019-11-13 | 2021-05-13 | Nio Usa, Inc. | Precise point cloud generation using graph structure-based slam with unsynchronized data |
US10816993B1 (en) * | 2019-11-23 | 2020-10-27 | Ha Q Tran | Smart vehicle |
US11302065B2 (en) * | 2019-12-17 | 2022-04-12 | Woven Planet North America, Inc. | Systems and methods for filtering sensor data to remove data points associated with ephemeral objects |
US11287529B1 (en) * | 2021-06-16 | 2022-03-29 | Aeva, Inc. | Techniques for doppler point set registration |
-
2021
- 2021-03-18 US US17/205,314 patent/US11908198B2/en active Active
-
2022
- 2022-03-16 WO PCT/US2022/020619 patent/WO2022197848A1/en active Application Filing
- 2022-03-16 CN CN202280022471.5A patent/CN117044194A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022197848A1 (en) | 2022-09-22 |
US20220300745A1 (en) | 2022-09-22 |
US11908198B2 (en) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230194266A1 (en) | Vision-aided inertial navigation | |
US11908198B2 (en) | Contextualization and refinement of simultaneous localization and mapping | |
KR102442780B1 (ko) | 장치의 자세 추정 방법 및 그 장치 | |
Heo et al. | EKF-based visual inertial navigation using sliding window nonlinear optimization | |
US11940277B2 (en) | Vision-aided inertial navigation system for ground vehicle localization | |
CN110084832B (zh) | 相机位姿的纠正方法、装置、系统、设备和存储介质 | |
CN113916243B (zh) | 目标场景区域的车辆定位方法、装置、设备和存储介质 | |
KR102347239B1 (ko) | 라이다와 카메라를 이용하여 이미지 특징점의 깊이 정보를 향상시키는 방법 및 시스템 | |
JP2016149132A (ja) | 乗り物のドライバ支援システムにおける予測のためのシステムおよび方法 | |
CN113406682B (zh) | 一种定位方法、装置、电子设备及存储介质 | |
US11580688B2 (en) | High-definition city mapping | |
US11430182B1 (en) | Correcting or expanding an existing high-definition map | |
WO2022062480A1 (zh) | 移动设备的定位方法和定位装置 | |
CN109345015B (zh) | 用于选取路线的方法和装置 | |
CN115135963A (zh) | 用于在场景地图中生成3d参考点的方法 | |
EP4083920A1 (en) | Method and apparatus for accelerating simultaneous localization and mapping | |
Hong et al. | Visual inertial odometry using coupled nonlinear optimization | |
JP2022190173A (ja) | 位置推定装置 | |
US20230035458A1 (en) | Method and apparatus with pose estimation | |
Cappelle et al. | Localisation in urban environment using GPS and INS aided by monocular vision system and 3D geographical model | |
CN115235454A (zh) | 行人运动约束的视觉惯性融合定位与建图方法和装置 | |
US20220292290A1 (en) | Distributed computing network to perform simultaneous localization and mapping | |
CN117906624A (zh) | 一种基于异源融合的车辆定位系统及方法 | |
CN115619851A (zh) | 基于锚点的vslam后端优化方法、装置、介质、设备和车辆 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40102938 Country of ref document: HK |