CN113557548A - 生成位姿图的系统和方法 - Google Patents

生成位姿图的系统和方法 Download PDF

Info

Publication number
CN113557548A
CN113557548A CN201980093911.4A CN201980093911A CN113557548A CN 113557548 A CN113557548 A CN 113557548A CN 201980093911 A CN201980093911 A CN 201980093911A CN 113557548 A CN113557548 A CN 113557548A
Authority
CN
China
Prior art keywords
nodes
node
target
candidate
redundant
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
Application number
CN201980093911.4A
Other languages
English (en)
Inventor
朱晓玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Voyager Technology Co Ltd
Original Assignee
Beijing Voyager Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Voyager Technology Co Ltd filed Critical Beijing Voyager Technology Co Ltd
Publication of CN113557548A publication Critical patent/CN113557548A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)

Abstract

用于生成位姿图的系统和方法。该系统可以获得多个节点,每个节点都包含由一个或多个传感器在一段时间内获取的点云数据。系统可以基于与每个节点相关联的位姿从多个节点中确定一组或以上候选节点,其中该位姿包括对象的位置和方向。该系统可以基于与每个候选节点相关联的特征信息来确定一个或以上冗余节点。系统可以通过从多个节点中消除一个或以上冗余节点来确定多个目标节点。系统可以基于多个目标节点生成目标位姿图。

Description

生成位姿图的系统和方法
技术领域
本申请一般涉及生成位姿图的系统和方法,尤其涉及基于运动对象获取的点云数据生成位姿图的系统和方法。
背景技术
随着城市化的快速发展和交通拥堵的加剧,导航地图服务在现代社会中发挥着越来越重要的作用。用于导航地图构建的传统系统(例如,用于高清地图)可能依赖于沿路线行驶的移动车辆收集的传感器数据(例如,点云数据)并集成传感器数据以生成导航地图。在此过程中,可以从传感器数据构建用于生成导航地图的位姿图,并且位姿图中的每个节点都可以包括在地理区域中获取的点云数据。为了提高导航地图的准确性,可能需要多个点云数据集合。然而,由于多个点云数据集合造成位姿图中的节点数量通常相当大,因此使用传统系统通常难以有效地构建导航地图。因此,期望提供用于减少冗余节点的系统和方法,以便更有效地生成位姿图。
发明内容
根据本申请的一方面,提供了一种用于生成位姿图的系统。该系统可以包括至少一个包括一组指令的存储介质,以及与所述至少一个存储设备通信的至少一个处理器。当执行所述指令时,所述至少一个处理器可以执行包括以下操作中一个或以上步骤的方法。至少一个处理器可以获得多个节点,其中每个节点包括一个或以上传感器在一个时间段内获取的点云数据。所述至少一个处理器可以基于与每个节点相关联的位姿从所述多个节点确定一组或以上候选节点。所述位姿可以包括对象的位置和方向。所述至少一个处理器可以基于与每个所述候选节点相关联的特征信息来确定一个或以上冗余节点。所述至少一个处理器可以通过从所述多个节点中消除所述一个或以上冗余节点来确定多个所述目标节点。所述至少一个处理器可以基于多个目标节点生成目标位姿图。
在一些实施例中,同一组所述候选节点中每两个所述候选节点之间的距离可以小于一个距离阈值,并且同一组中所有所述候选节点的朝向可以基本相似,所述候选节点的方向为对象的移动方向。
在一些实施例中,对于每组所述候选节点中的每个所述候选节点,所述至少一个处理器可以确定所述候选节点所包括的特征信息是否充足,并响应于所述候选节点所包括的特征信息不充足,将所述包括不充足的特征信息的所述候选节点作为冗余节点。
在一些实施例中,所述特征信息是根据基于特征值的特征进行比较。
在一些实施例中,对于每个所述候选节点,所述至少一个处理器可以基于所述候选节点的至少一个所述基于特征值的特征来确定候选节点的至少一个所述特征值。所述至少一个处理器可以将每一个所述至少一个特征值与对应的特征阈值进行比较,每个所述特征阈值对应于一个所述基于特征值的特征。所述至少一个处理器可以响应于所述至少一个特征值中的每一个小于都对应的特征阈值,以将候选节点确定为特征信息不充足的候选节点。
在一些实施例中,所述基于特征值的特征可以包括线性、平面或发散中的至少一种。
在一些实施例中,对于所述一个或以上所述冗余节点中的每一个,所述至少一个处理器可以将所述冗余节点的所述点云数据添加到与冗余节点相同组的目标节点。
在一些实施例中,所述至少一个处理器可以获得初始位姿图,其中所述初始位姿图包括多个初始节点和多个初始边。所述至少一个处理器可以基于所述多个初始节点来确定所述多个节点。
在一些实施例中,所述至少一个处理器可以通过从所述初始位姿图中消除一个或以上所述冗余节点以及与一个或以上所述冗余节点相关的所述初始边,来生成中间位姿图。
在一些实施例中,对于消除了初始边的每个所述目标节点,所述至少一个处理器可以确定所述消除了初始边的目标节点和附近的所述目标节点之间的约束。所述至少一个处理器可以基于所述约束来生成目标边,所述目标边与消除了其初始边的所述目标节点以及附近的所述目标节点关联。所述至少一个处理器可以基于所述中间位姿图和消除了初始边的每个目标节点的目标边来生成目标位姿图。
在一些实施例中,可以基于与候选节点组有关的道路的宽度来确定距离阈值。
根据本申请的另一方面,提供一种方法。所述方法可以包括一个或以上下述操作。至少一个处理器可执行包括以下操作的一个或以上的方法。所述至少一个处理器可以获得多个节点,其中每个节点包括由一个或以上传感器在一个时间段内获取的点云数据。所述至少一个处理器可以基于与每个节点相关联的位姿从所述多个节点确定一组或以上候选节点。所述位姿可以包括对象的位置和方向。所述至少一个处理器可以基于与每个所述候选节点相关联的特征信息来确定一个或以上冗余节点。所述至少一个处理器可以通过从所述多个节点中消除所述一个或以上冗余节点来确定多个所述目标节点。所述至少一个处理器可以基于所述多个目标节点生成目标位姿图。
根据本申请的另一方面,提供了一种非暂时性计算机微观介质。所述非暂时性计算机重构介质可以包括使至少一个处理器实现一种方法的可执行指令。所述方法可以包括一个或以上下述操作。所述至少一个处理器可执行包括以下操作的一个或以上的方法。所述至少一个处理器可以获得多个节点,其中每个节点包括在一个时间段内由与对象相关联的一个或以上传感器获取的点云数据。所述至少一个处理器可以基于与每个节点相关联的位姿从所述多个节点确定一组或以上候选节点。所述位姿可以包括对象的位置和方向。所述至少一个处理器可以基于与每个所述候选节点相关联的特征信息来确定一个或以上冗余节点。所述至少一个处理器可以通过从至少所述多个节点中消除一个或以上冗余节点来确定多个所述目标节点。所述至少一个处理器可以基于所述多个目标节点生成目标位姿图。
本申请的一部分附加特性可以在下面的描述中进行说明。通过对以下描述和相应附图的研究或者对实施例的生产或操作的了解,本申请的一部分附加特性对于本领域技术人员是明显的。本申请的特征可以通过对以下描述的具体实施例的各种方面的方法、手段和组合的实践或使用得以实现和达到。
附图说明
本申请将通过示例性实施例进行进一步描述。这些示例性实施例将通过附图进行详细描述。这些实施例是非限制性的示例性实施例,在这些实施例中,各图中相同的编号表示相似的结构,其中:
图1是根据本申请的一些实施例所示的示例性导航地图系统的示意图;
图2是根据本申请的一些实施例所示的示例性计算设备的示例性硬件和/或软件组件的示意图;
图3是根据本申请的一些实施例所示的可以在其上实现终端设备的示例性移动设备的示例性硬件和/或软件组件的示意图;
图4是根据本申请的一些实施例所示的示例性处理引擎的框图;
图5是根据本申请的一些实施例所示的用于生成目标位姿图的示例性过程的流程图;
图6是根据本申请的一些实施例所示的用于生成目标位姿图的示例性过程的流程图;以及
图7是根据本申请的一些实施例所示的用于确定一个或以上冗余节点的示例性过程的流程图。
具体实施方式
以下描述是为了使本领域的普通技术人员能够实施和利用本申请,并且该描述是在特定的应用场景及其要求的环境下提供的。对于本领域的普通技术人员来讲,显然可以对所披露的实施例作出各种改变,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请并不限于所描述的实施例,而应该被给予与权利要求一致的最广泛的范围。
本申请中所使用的术语仅用于描述特定的示例性实施例,并不限制本申请的范围。如本申请使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请中,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、组件、部件和/或其组合的情况。
根据以下对附图的描述,本申请的这些和其他的特征、特点以及相关结构元件的功能和操作方法,以及部件组合和制造经济性,可以变得更加显而易见,这些附图都构成本申请说明书的一部分。然而,应当理解的是,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。
本申请中使用了流程图用来说明根据本申请的一些实施例的系统所执行的操作。应当理解的是,流程图中的操作可以不按顺序执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或以上其他操作添加到这些流程图中。也可以从流程图中删除一个或以上操作。
而且,尽管本申请中披露的系统和方法主要是关于将对象(例如,自动驾驶车辆)放置在自动驾驶系统中来描述的,但是应该理解,这仅仅是一种示例性实施例。本申请的系统和方法可以是任何其他种类的运输系统。例如,本申请的系统和方法可以是不同环境的运输系统,包括陆地、海洋、航空航天等或其任何组合。运输系统的自动驾驶汽车可以包括出租车、私家车、顺风车、公共汽车、火车、动车、高铁、地铁、轮船、飞机、宇宙飞船、热气球等,或其任何组合。
本申请的一个方面涉及用于位姿图确定的系统和方法。为此,所述系统和方法可以获得多个节点,每个节点包括由与对象(例如,车辆)相关联的一个或以上传感器在一个时间段内获取的点云数据。该系统和方法可以基于与每个节点相关联的位姿从多个节点确定一组或以上候选节点,其中该位姿包括对象的位置和方向。该系统和方法可以基于与每个候选节点相关联的特征信息来确定一个或以上冗余节点。该系统和方法可以通过从多个节点中消除一个或以上冗余节点来确定多个目标节点。该系统和方法可以基于多个目标节点生成目标位姿图。
图1是根据本申请的一些实施例所示的示例性导航地图系统的示意图。在一些实施例中,导航地图系统100可以包括车辆110、服务器120、终端设备130、存储设备140、网络150以及定位导航系统160。
车辆110可以行驶到目的地。车辆110可以包括多个车辆110-1、110-2…110-n。在一些实施例中,车辆110可以是任何类型的自动驾驶车辆。自动驾驶车辆可以感知周围环境,并在没有人为操纵的情况下进行导航。在一些实施例中,车辆110包括常规车辆的结构,例如底盘、悬架、转向装置(例如,方向盘)、制动装置(例如,制动踏板)、加速器等。在一些实施例中,(一个或以上)车辆110可以是配置成用于获取用于构高清地图(例如,在本发明的其他地方描述的姿态图)或3-D城市建模的数据的调查车辆。可以预期的是,车辆110可以是电动车辆、燃料电池车辆、混合动力车辆、传统的内燃机车辆等。车辆110可以具有车身和至少一个车轮。车身可以是任何风格,例如跑车、轿跑车、轿车、皮卡车、旅行车、越野车(SUV)、小型货车或改装旅行车。在一些实施例中,车辆110可包括一对前轮和一对后轮。然而,可以预期的是,车辆110可以是具有使车辆110能够四处移动的更多或更少的车轮或等效结构。车辆110可以被配置为全轮驱动(AWD)、前轮驱动(FWR)或后轮驱动(RWD)。在一些实施例中,车辆110可以被配置为由占用车辆的操作者进行远程控制和/或自主操作。
如图1所示,车辆110可配备有通过安装结构安装至车辆110的主体的一个或以上传感器112。安装结构可以是安装或以其他方式附接到车辆110的主体的机电装置。在一些实施例中,安装结构可以使用螺钉、粘合剂或其他安装机构。车辆110可使用任何合适的安装机构在车身内部或外部另外配备一个或以上传感器112。
传感器112可以包括GPS设备、光检测和测距(LiDAR)、相机、惯性测量单元(IMU)传感器等,或其任意组合。可以将LiDAR配置为扫描周围环境并生成点云数据。LiDAR可以通过用脉冲激光照射物体并用传感器测量反射脉冲来测量到物体的距离。然后可以使用激光返回时间和波长的差异来制作物体的数字3-D表示。用于LiDAR扫描的光可以是紫外线、可见光、近红外光等。由于窄激光束可以以很高的分辨率绘制物理特征,因此LiDAR可能特别适合于高清地图测量。相机可以被配置为获取一个或以上与相机范围内的物体(例如,人、动物、树、路障、建筑物或车辆)有关的图像。GPS设备可以是指能够从GPS卫星接收地理位置和时间信息,然后计算该设备的地理位置的设备。IMU传感器可以是指使用各种惯性传感器(例如加速度计和陀螺仪,有时也包括磁力计)测量并提供车辆的比力、角速度以及有时围绕车辆的磁场的电子设备。通过组合GPS设备和IMU传感器,传感器112可以提供车辆110行驶时的实时姿态信息,包括每个时间点车辆110的位置和方向(例如,欧拉角)。与本申请一致,传感器112可以在传感器112捕获点云数据的相同时间点进行位姿信息的测量。因此,位姿信息可以与相应的点云数据相关联。在一些实施例中,点云数据及其相关的位姿信息的组合可用于定位车辆110。
在一些实施例中,服务器120可以是单个服务器,也可以是服务器组。所述服务器组可以是集中式的,也可以是分布式的(例如,服务器120可以是分布式的系统)。在一些实施例中,服务器120可以是本地的,也可以是远程的。例如,服务器120可以经由网络150访问存储在终端设备130、传感器112、车辆110、存储设备140和/或定位导航系统160中的信息和/或数据。又例如,服务器120可以直接连接到终端设备130、传感器112、车辆110和/或存储设备140以访问存储的信息和/或数据。在某些实施例中,服务器120可以在云平台或车载计算机上实现。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器120可以在本申请中的图2描述的包含了一个或以上组件的计算设备200上执行。
在一些实施例中,服务器120可以包括处理引擎122。处理引擎122可以处理与车辆110相关联的信息和/或数据以执行本申请中描述的一个或以上功能。例如,处理引擎122可以获得多个节点,每个节点包括在一段时间内与车辆110相关联的一个或以上传感器获取的点云数据。又例如,处理引擎122可以基于与每个节点相关联的位姿从多个节点确定一组或以上候选节点。作为又一个示例,处理引擎122可以基于与每个候选节点相关联的特征信息来确定一个或以上冗余节点。作为又一个示例,处理引擎122可以通过从多个节点中消除一个或以上冗余节点来确定多个目标节点。作为又一个示例,处理引擎122可以基于多个目标节点生成目标位姿图。在一些实施例中,所述处理引擎122可包括一个或以上处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。仅作为示例,处理引擎122可以包括中央处理单元(CPU)、专用集成电路(ASIC)、专用指令集处理器(ASIP)、图像处理单元(GPU)、物理运算处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等或其任意组合。
在一些实施例中,服务器120可以连接到网络150以与导航地图系统100的一个或以上组件(例如,终端设备130、传感器112、车辆110、存储设备140和/或定位导航系统160)通信。在一些实施例中,服务器120可以直接连接到导航地图系统100的一个或以上组件(例如,终端设备130、传感器112、车辆110、存储设备140和/或定位导航系统160)或与之通信。在一些实施例中,服务器120可以集成到车辆110中。例如,服务器120可以是安装在车辆110中的计算设备(例如,计算机)。
在一些实施例中,终端设备130可以包括移动设备130-1、平板计算机130-2、笔记本电脑130-3、车辆130-4中的内置设备、智能手表130-5等,或其任意组合。在一些实施例中,移动设备130-1可以包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、增强现实设备等,或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,可穿戴设备可以包括智能手环、智能鞋类、智能眼镜、智能头盔、智能手表、智能服装、智能背包、智能配件等,或其任意组合。在一些实施例中,智能移动设备可以包括智能电话、个人数字助理(PDA)、游戏设备、导航设备、销售点(POS)等,或其任意组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等,或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括GoogleTM Glass、Oculus Rift、HoloLens、Gear VR等。在一些实施例中,车载设备130-4可以包括车载计算机、车载电视等。在一些实施例中,服务器120可以集成到终端设备130中。
存储设备140可以存储数据和/或指令。在一些实施例中,存储设备140可以存储从终端设备130、传感器112、车辆110、定位导航系统160、处理引擎122和/或外部存储设备获得的数据。例如,存储设备140可以存储从传感器112(例如,GPS设备、IMU传感器)接收的点云数据。又例如,存储设备140可以存储从传感器112(例如,LiDAR)接收的点云数据。作为又一示例,存储设备140可以存储由处理引擎122生成的目标位姿图。作为又一示例,存储设备140可以存储从外部存储设备获得的初始位姿图。在一些实施例中,存储设备140可以存储服务器120用来执行或使用来完成本申请中描述的示例性方法的数据和/或指令。例如,存储设备140可以存储处理引擎122可以执行或用于通过从包括从传感器112接收到的点云数据的多个节点中消除一个或以上冗余节点来确定多个目标节点的指令。又例如,存储设备140可以存储处理引擎122可以基于多个目标节点,目标位姿图执行或用来生成的指令。
在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、易失性读写内存、只读内存(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、内存卡、压缩盘、磁带等。示例性易失性读写内存可以包括随机存取内存(RAM)。示例性RAM可包括动态随机存取内存(DRAM)、双倍数据速率同步动态随机存取内存(DDR SDRAM)、静态随机存取内存(SRAM)、晶闸管随机存取内存(T-RAM)和零电容随机存取内存(Z-RAM)等。示例性ROM可以包括掩模型只读内存(MROM)、可编程只读内存(PROM)、可擦除可编程只读内存(EPROM)、电可擦除可编程只读内存(EEPROM)、光盘只读内存(CD-ROM)和数字多功能磁盘只读内存等。在一些实施例中,所述存储设备140可在云端平台上执行。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,存储设备140可以连接到网络150以与导航地图系统100的一个或以上组件(例如,服务器120、终端设备130、传感器112、车辆110和/或定位导航系统160)通信。导航地图系统100的一个或以上组件可以通过网络150访问存储在存储设备140中的数据或指令。在一些实施例中,存储设备140可以直接连接到导航地图系统100的一个或以上组件(例如,服务器120、终端设备130、传感器112、车辆110和/或定位导航系统160)或与之通信。在一些实施例中,存储设备140可以是服务器120的一部分。在一些实施例中,存储设备140可以集成到车辆110中。
网络150可以促进信息和/或数据的交换。在一些实施例中,导航地图系统100的一个或以上组件(例如,服务器120、终端设备130、传感器112、车辆110、存储设备140或定位导航系统160)可以通过网络150向导航地图系统100的其他组件发送信息和/或数据。例如,服务器120可以经由网络150从传感器112和/或定位导航系统160获得/获取点云数据。又例如,服务器120可以经由网络150从传感器112获得/获取点云数据。作为又一示例,服务器120可以经由网络150从存储设备140获得/获取初始位姿图。在一些实施例中,网络150可以是有线网络或无线网络等或其任意组合。仅作为示例,网络150可以包括电缆网络、有线网络、光纤网络、电信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共交换电话网络(PSTN)、蓝牙网络、紫蜂网络、近场通信(NFC)网络等或其任意组合。在一些实施例中,网络150可以包括一个或以上网络接入点。例如,网络150可以包括有线或无线网络接入点(例如150-1、150-2),通过这些接入点,导航地图系统100的一个或以上组件可以连接到网络150以交换数据和/或信息。
定位导航系统160可以确定与对象相关的信息,例如,终端设备130、车辆110等的一个或以上。在一些实施例中,定位导航系统160可以是全球定位系统(GPS)、全球导航卫星系统(GLONASS)、罗盘导航系统(COMPASS)、北斗导航卫星系统、伽利略定位系统、准天顶卫星系统(QZSS)等。该信息可以包括物体的位置、高度、速度或加速度或当前时间。定位导航系统160可以包括一个或以上卫星,例如,卫星160-1、卫星160-2和卫星160-3。所述卫星160-1至160-3可以独立地或共同地确定上述所述信息。卫星定位导航系统160可以经由无线连接将上述信息发送到网络150、终端设备130或车辆110。
值得注意的是,导航地图系统100仅出于说明目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。例如,导航地图系统100还可以包括数据库、信息源等。又例如,导航地图系统100可以在其他设备上实现以实现相似或不同的功能。在一些实施例中,GPS设备也可以被北斗等其他定位设备取代。然而,这些变化和修改不会背离本申请的范围。
图2是根据本申请的一些实施例所示的示例性计算设备的示例性硬件和/或软件组件的示意图。在一些实施例中,服务器120可以在计算设备200上实现。例如,所述处理引擎122可以在所述计算设备200上实施并执行本申请所显示的所述处理引擎122的功能。
计算设备200可以用于实现本申请的导航地图系统100的任何组件。例如,导航地图系统100的处理引擎122可以通过其硬件、软件程序、固件或其组合在计算设备200上实现。尽管为了方便起见仅示出一台这样的计算机,但是可以在多个相似平台上以分布式方式来实现与本文所述的导航地图系统100有关的计算机功能,以分布处理负荷。
例如,计算设备200可以包括与连接到网络(例如,网络150)或从其连接的网络(例如,网络150)连接的通信(COMM)端口250,以促进数据通信。计算设备200还可以包括处理器(例如,处理器220),其形式为一个或以上处理器(例如,逻辑电路),用于执行程序指令。例如,处理器包括其中的接口电路和处理电路。接口电路可以被配置为从总线210接收电信号,其中电信号编码用于处理电路的结构化数据和/或指令。处理电路可以进行逻辑计算,然后将结论、结果和/或指令编码确定为电信号。然后,接口电路可以经由总线210从处理电路发出电信号。
示例性计算设备200还可以包括不同形式的程序存储和数据存储,例如磁盘270、只读内存(ROM)230或随机存取内存(RAM)240,用于存储由计算设备200处理和/或传输的各种数据文件。示例性计算设备200还可以包括存储在ROM 230、RAM 240和/或其他类型的非暂时性存储介质中的程序指令,以由处理器220执行。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200还包括I/O组件260,其支持计算设备200与其中的其他组件之间的输入/输出。计算设备200也可以通过网络通信接收编程和数据。
仅仅为了说明,在计算设备200中仅描述了一个处理器。然而,应注意,本申请中的计算设备200还可包括多个处理器,因此,如本申请中所述由一个处理器执行的操作也可由多个处理器联合或分别执行。例如,计算设备200的处理器同时执行操作A和操作B。如在另一个示例中,操作A和操作B也可以由两个不同的处理器在计算设备200中联合或分别执行(例如,第一处理器执行操作A,第二处理器执行操作B,或者第一处理器和第二处理器共同执行操作A和B)。
图3是根据本申请的一些实施例所示的可以在其上实现终端设备的示例性移动设备的示例性硬件和/或软件组件的示意图。如图3所示,移动设备300可以包括通信平台310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、I/O 350、内存360和存储器390。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未示出),也可包括在移动设备300内。在一些实施例中,移动操作系统370(如,iOSTM、AndroidTM、Windows PhoneTM)和一个或以上应用程序380可以从存储器390加载到内存360中以便由CPU340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于从处理引擎122接收和呈现与位置有关的信息或其他信息。与信息流的用户交互可以通过I/O 350来实现,并通过网络150提供给处理引擎122和/或导航地图系统100的其他组件。
为了实施本申请描述的各种模块、单元及其功能,计算机硬件平台可用作本文中描述的一个或以上组件的硬件平台。具有用户接口组件的计算机可用于实施个人计算机(PC)或任何其他类型的工作站或终端设备。若程控得当,计算机亦可用作服务器。
图4是根据本申请的一些实施例所示的示例性处理引擎的框图。处理引擎122可以包括获取模块410,候选节点确定模块420、冗余节点确定模块430、冗余节点消除模块440、位姿图确定模块450和存储模块460。
获取模块410可以被配置为获取与导航地图系统100相关联的数据和/或信息。例如,获取模块410可以获取多个节点,每个节点包括在一段时间内与对象(例如,自动驾驶车辆)相关联的一个或以上传感器获取的点云数据。又例如,获取模块410可以获取与处于不同位置的对象(例如,车辆110)相关联的位姿数据。作为又一示例,获取模块410可以获取初始位姿图。
候选节点确定模块420可以被配置为基于与每个节点相关联的位姿从多个节点中确定一组或以上候选节点。例如,候选节点确定模块420可以基于与多个节点中的每个节点相对应的主体的地理位置和方位来确定一组或以上候选节点。关于本地导航地图的生成的更多描述可以在本申请的其他地方找到(例如,图5及其描述)。
冗余节点确定模块430可以基于与每个候选节点相关联的特征信息被配置为确定一个或以上冗余节点。在一些实施例中,对于每组候选节点中的每个候选节点,冗余节点确定模块430可以确定候选节点所包括的特征信息是否充足。例如,冗余节点确定模块430可以根据基于特征值的特征来确定候选节点所包括的特征信息是否充足。响应于候选节点所包括特征信息不充足,冗余节点确定模块430可以将候选节点包括不充足的特征信息确定为冗余节点。可以在本申请的其他地方找到关于确定一个或以上冗余节点的更多描述(例如,图7及其描述)。
冗余节点消除模块440可以被配置为通过从多个节点中消除一个或以上冗余节点来确定多个目标节点。在一些实施例中,在从多个节点中删除一个或以上冗余节点之前,冗余节点消除模块440可以将一个或以上冗余节点中的每一个的点云数据添加到与冗余节点相同的候选节点组中的非冗余节点中。
位姿图确定模块450可以被配置为基于多个目标节点生成目标位姿图。目标位姿图可以是图形形式的对象轨迹的表示。目标位姿图可以包括多个目标节点和多个目标边,每个边连接两个目标节点。对于多个目标节点中的每一个,位姿图确定模块450可以确定连接目标节点和另一目标节点的至少一个目标边。位姿图确定模块450可以确定目标节点和另一目标节点之间是否存在约束。响应于目标节点和另一个目标节点之间存在约束,位姿图确定模块450可以确定两个目标节点之间存在目标边。
存储模块460可以被配置为存储与导航地图系统100相关联的数据和/或信息。例如,存储模块460可以存储多个节点。又例如,存储模块460可以存储与多个节点相关联的点云数据。作为又一个示例,存储模块460可以存储与多个节点相关联的初始位姿图。作为又一个示例,存储模块460可以存储与多个节点相关联的多个目标节点。作为又一个示例,存储模块460可以存储基于多个目标节点确定的目标位姿图。
处理引擎122中的模块可以经由有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合电缆等或其任意组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙、紫蜂网络、近场通信(NFC)等或其任意组合。两个或以上的模块可以合并为一个模块,任何模块都可以分为两个或以上的单元。在一些实施例中,一个或以上模块可以省略。例如,可以省略存储模块460。在一些实施例中,一个或以上模块可以组合成一个模块。例如,冗余节点确定模块430和冗余节点消除模块440可以被组合成单个模块。
图5是根据本申请的一些实施例所示的用于生成目标位姿图的示例性过程的流程图。处理500可以由导航地图系统100执行。例如,过程500可以被实现为存储在存储ROM 230或RAM 240中的一组指令。处理器220和/或图4中的模块可以执行该指令,并且在执行指令时,处理器220和/或模块可以被配置为执行过程500。以下所示过程的操作仅出于说明的目的。在一些实施例中,过程500可以利用未描述的一个或以上附加操作和/或没有所讨论的一个或以上操作来完成。另外,图5中示出的和下面描述的过程500的操作的顺序不是限制性的。
在510中,处理引擎122(例如,获取模块410)可以获得多个节点,每个节点包括一个或以上传感器(例如,传感器112)在一个时间段内与对象(例如,车辆110)相关联的点云数据。在一些实施例中,节点是与定义的地质区域(例如,路段)关联的数据(例如,点云数据)的主体。一个或以上传感器可以包括LiDAR、相机、雷达等,如本申请的其他地方所述(例如,图1及其描述)。在一些实施例中,该时间段可以是一个或以上传感器(例如,LiDAR)完成多个扫描的持续时间,例如20次、30次等。例如,时间段可以是1秒、2秒、3秒等。
在一些实施例中,每个节点可以包括对象收集的几个连续的点云帧(例如10个连续帧、20个连续帧等)。点云帧(也称为点云数据的一组)可以包括一个或以上传感器(例如,LiDAR)以一定角度步进生成的部分或全部点云数据。每个点云帧可以标记有特定的时间戳(也称为“第一时间戳”),其指示点云帧是在与特定时间戳相对应的特定时间点或时间段捕获的。在一些实施例中,该时间段可以是一个或以上传感器(例如,LiDAR)完成一次扫描的持续时间。例如,时间段可以是0.1秒、0.05秒等以0.1秒为例,一个或以上传感器(例如,LiDAR)可以每秒扫描对象(例如,车辆110)周围的环境10次(即,每100毫秒一次)。每次单次扫描可以对应于360度的总扫描度。角度分辨率可以是0.9度。一个或以上传感器(例如,LiDAR)通过一次扫描获取的点云数据可以对应于400个点云帧。
点云数据可以是由一个或以上传感器(例如,LiDAR)通过以下方式扫描到对象初始位置周围的空间而生成的:例如,根据一个或以上扫描参数发出激光脉冲,并使用一个或以上传感器测量反射光。示例性扫描参数可以包括测量范围、扫描频率、角度分辨率等。传感器的扫描频率(例如,LiDAR)可以表示传感器每秒钟的扫描次数(或次数)。在一些实施例中,传感器的扫描频率可以是10Hz、15Hz等,这意味着传感器每秒可以扫描10次、15次等。例如,如果时间段为2秒,则一个或以上传感器扫描20次可能会生成点云数据。传感器的角度分辨率可以指的是传感器扫描期间的角度步长。例如,传感器的角度分辨率可以是0.9度、0.45度等。传感器的测量范围可以由传感器完成一次扫描的最大扫描距离和/或总扫描度来定义。例如,传感器的最大扫描距离可以是5米、10米、15米、20米等。传感器完成一次扫描的总扫描度可以是360度、180度、120度等。
点云数据可以指的是与对象(例如,车辆110)的当前位置周围的空间中的一个或以上对象相关联的一组数据点。数据点可以对应于对象的点或区域。一个或以上对象周围的物体可以包括车道标记、建筑物、行人、动物、植物、车辆等。在一些实施例中,点云数据可以具有多个属性(也称为特征数据)。点云数据的多个属性可以包括每个数据点的点云坐标(例如X、Y和Z坐标)、与每个数据点关联的海拔信息、与每个数据点关联的强度信息、返回数、返回总数、每个数据点的分类、扫描方向等或其任意组合。
每个节点可以包括位姿。节点的位姿可以包括与每个点云数据组相对应的对象(例如,车辆110)的位姿数据。如本文所用,与所述点云数据的特定组相对应的所述受试者的姿态数据可以指所述受试者的姿态数据与所述点云数据的相应特定组在相同或相似的时间点或时间段内生成。
受试者(例如,车辆110)的位姿数据可以包括与每个点云数据组相对应的受试者(例如,车辆110)的地理位置信息和/或IMU信息。地理位置信息可以包括与每个点云数据组相对应的对象(例如,车辆110)的地理位置。在一些实施例中,对象(例如,车辆110)的地理位置可以由坐标系(例如,地理坐标系)中的2D或3D坐标表示。IMU信息可以包括由当对象位于地理位置时获得的方位(也称为移动方向)、音高角、侧倾角等定义的对象(例如,车辆110)的姿态。与点云数据的特定组相对应的对象的地理位置信息和IMU信息可以与与点云数据的特定组的第一时间戳相同或相似的时间戳相对应。
在一些实施例中,处理引擎122可以通过基于时间戳将位姿数据的一部分与点云数据的对应部分进行匹配来确定节点。处理引擎122可以基于与点云数据的特定组相对应的第一时间戳来确定与点云数据的特定组相对应的姿态数据。例如,处理引擎122可以获得在一个时间段内由一个或以上传感器(例如,GPS设备和/或IMU单元)获取的多个位姿数据组。位姿数据的多个组中的每一个可以包括地理位置和与第二时间戳相对应的位姿。通过比较第一时间戳和第二时间戳,处理引擎122可以使点云数据的特定组与位姿数据的多个组中的一个匹配。如果第一时间戳和第二时间戳之间的差小于阈值,处理引擎122可以确定点云数据的特定组与多个位姿数据组之一匹配,并基于点云数据的特定组和匹配的位姿数据组确定节点。阈值可以由用户或根据汽车驱动系统100的默认设置来设置。例如阈值可以是0、0.1毫秒等。
在一些实施例中,处理引擎122可以实时或周期性地从与对象相关联的一个或以上传感器(例如,传感器112)、存储器(例如,存储设备140)等获得多个节点。例如,一旦一个或以上传感器完成一次扫描,则一个或以上传感器可以将由一个或以上传感器生成的点云数据和/或位姿数据发送到处理引擎122。又例如,一个或以上传感器可以将每次扫描中生成的点云数据和/或位姿数据发送到存储器(例如,存储设备140)。处理引擎122可以例如在该时间段之后周期性地从存储器获得多个节点。在一些实施例中,当受试者静止时,多个节点可以由一个或以上传感器(例如,LiDAR)生成。在一些实施例中,当对象移动时,可能会生成多个节点。
在一些实施例中,处理引擎122可以从初始位姿图获得多个节点。初始位姿图可以包含多个初始节点和多个初始边、初始位姿图中的每个初始节点对应于导航地图过程中对象的姿态、两个初始节点之间的每个初始边对应于两个初始节点之间的约束。处理引擎122可以将多个初始节点确定为多个节点。有关初始位姿图的更多描述可以在本申请的其他地方找到。参见例如图6及其描述。
在520中,处理引擎122(例如,候选节点确定模块420)可以基于与每个节点相关联的位姿从多个节点中确定一组或以上候选节点。处理引擎122可以基于与多个节点中的每个节点相对应的主体的地理位置和方向来确定一组或以上候选节点。
在一些实施例中,在同一组候选节点中,每两个候选节点之间的距离小于一个距离阈值,并且同一组中所有候选节点的方向基本相似,候选节点的方向为被主体的运动方向。如本文所使用的,“基本上平行”可以指示对应于候选节点的对象的运动方向与对应于同一组中的另一候选节点的对象的运动方向之间的角度接近于零,例如,小于30度、小于20度、小于10度、小于5度、小于2度或小于1度。
可以基于候选节点组的地理位置来确定与候选节点组相对应的距离阈值。例如,可以基于与对应的候选节点组有关的道路的宽度来确定距离阈值。处理引擎122可以基于候选节点组的地理位置来确定道路,并从例如导航地图获得道路的宽度。距离阈值可以与道路的宽度成反比。示例性距离阈值可以包括3米、5米、7米等。
在一些实施例中,处理引擎122可以为多个节点中的至少一个确定一组候选节点。处理引擎122可以基于与节点相关的道路的宽度来确定与所选节点相对应的距离阈值。处理引擎122可以确定所选节点与多个其他节点中至少一个节点之间的距离是否小于对应于所选节点的距离阈值,以及与所述至少一个节点相关联的取向是否实质上类似于与所选节点相关联的取向。响应于所选节点与至少一个其他节点之间的距离小于与所选节点对应的距离阈值,并且与至少一个节点相关联的方向基本上类似于与所选节点相关联的方向,处理引擎122可以将所选节点和至少一个节点确定为一组候选节点。
在530中,处理引擎122(例如,冗余节点确定模块430)可以基于与每个候选节点相关联的特征信息来确定一个或以上冗余节点。
在一些实施例中,对于每组候选节点中的每个候选节点,处理引擎122可以确定候选节点所包括的特征信息是否充足。例如,处理引擎122可以根据基于特征值的特征来确定候选节点所包括的特征信息是否充足。响应于候选节点所包括的特征信息不充足,处理引擎122可以将候选节点包括不充足的特征信息确定为冗余节点。可以在本申请的其他地方找到关于确定一个或以上冗余节点的详细描述(例如,图7及其描述)。
在540中,处理引擎122(例如,冗余节点消除模块440)可以通过从多个节点中消除一个或以上冗余节点来确定多个目标节点。
在一些实施例中,处理引擎122可以从多个节点中消除一个或以上冗余节点,并将多个节点中的其余节点确定为多个目标节点。在一些实施例中,在从多个节点中删除一个或以上冗余节点之前,处理引擎122可以将一个或以上冗余节点中的每一个的点云数据添加到与冗余节点相同的候选节点组中的非冗余节点中。如本文所使用的,非冗余节点可以指未被确定为冗余节点的候选节点。然后,处理引擎122可以从多个节点中消除一个或以上冗余节点,并确定多个节点中的其余节点,其中一些带有来自一个或以上冗余节点的新添加的点云数据,作为多个目标节点。
在550中,处理引擎122(例如,位姿图确定模块450)可以基于多个目标节点生成目标位姿图。目标位姿图可以是图形形式的对象轨迹的表示。目标位姿图可以包括多个目标节点和多个目标边,每个边连接两个目标节点。目标边可以表示将关联的两个目标节点与当前未完成的目标位姿图对齐的变换(例如,平移、旋转)。如本文中所使用的,未完成的目标位姿图可以指具有至少一个目标节点通过目标边不与其他目标节点连接的位姿图。目标边可以是有向边,表示从一个目标节点到另一个目标转换。可以基于对象位姿的相对不确定性进一步加权目标边。
对于多个目标节点中的每一个,处理引擎122可以确定连接目标节点和另一目标节点的至少一个目标边。处理引擎122可以确定目标节点和另一个目标节点之间是否存在约束。响应于目标节点和另一个目标节点之间存在约束,处理引擎122可以确定两个目标节点之间存在目标边。两个目标节点之间的约束可以包括测距约束、虚拟约束等,或其任意组合。当与两个目标节点相对应的主体的轨迹从一个目标节点传递到另一个目标节点时,测距约束可以存在于两个目标节点之间。例如,对于两个目标节点xi和xi+1,可以在两个目标节点xi和xi+1之间建立目标边,如果在获取两个目标节点xi和xi+1中包含的点云数据时,对象从目标节点xi移至目标节点xi+1,则目标边表示测距测量。虚拟约束等或其任何组合。当与受试者相关联的一个或以上传感器从两个目标节点两者观察到环境的相同部分时,虚拟约束可以存在于两个目标节点之间。例如,对于两个目标节点xi和xj,可以在两个目标节点xi和xj之间建立目标边,如果两个目标节点xi和xj中包含的点云数据是环境的同一部分,则目标边代表从目标节点xj看到的关于目标节点xi位置的虚拟度量,反之亦然,取决于目标边的方向。如果目标边从目标节点xi指向目标节点xj,则目标边代表基于观察结果从目标节点xi看到的目标节点xj的位置。如果目标边从目标节点xj指向目标节点xi,则目标边表示基于观察值从目标节点xj看到的目标节点xi的位置。
处理引擎122可以使用边缘匹配算法来确定目标边。示例性边缘匹配算法可以包括迭代最近点配准算法(ICP)、点到线迭代最近点配准算法(PLICP)、迭代对偶对应算法(IDC)、基于度量的迭代最近点注册算法(MBICP)、广义迭代最近点注册算法(GICP)等或其任意组合。
需要注意的是,以上描述仅为描述方便,并不能把本申请限制在所举实施例范围之内。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不会背离本申请的范围。在一些实施例中,一个或以上其他可选操作(例如存储操作)可以在示例性过程500中的其他位置添加。在存储操作中,处理引擎122可以将多个节点、一组或以上候选节点、一个或以上冗余节点和/或目标位姿图存储在本申请其他地方披露的存储器(例如,存储设备140)中。
图6是根据本申请的一些实施例所示的用于生成目标位姿图的示例性过程的流程图。处理600可以由导航地图系统100执行。例如,过程600可以被实现为存储在存储ROM 230或RAM 240中的一组指令。处理器220和/或图4中的模块可以执行该指令,并且在执行指令时,处理器220和/或模块可以被配置为执行过程600。以下所示过程的操作仅出于说明的目的。在一些实施例中,过程600可以利用未描述的一个或以上附加操作和/或没有所讨论的一个或以上操作来完成。另外,如图6所示和以下描述的过程600的操作的顺序并非旨在限制。
在610中,处理引擎122(例如,获取模块410)可以获得初始位姿图,其中,初始位姿图包括多个初始节点和多个初始边。类似于目标位姿图,初始位姿图可以以图的形式表示主体轨迹。多个初始节点中的每个节点可以包括由受试者收集的几个连续的点云帧,如本申请中其他地方所述(例如,图5及其描述)。每个初始边都可以连接两个初始节点,表示一个转换,该转换将关联的两个初始节点与初始位姿图对齐。处理引擎122可以从存储介质(例如,存储设备140或处理引擎122的ROM 230或RAM 240)和/或终端设备130获得初始位姿图。
与目标位姿图不同,初始位姿图中的多个初始节点可以包括一个或以上冗余节点。如本文所用,冗余节点可以指特征信息相对于至少一个第二初始节点相对不足的初始节点,所述初始节点与所述至少一个第二初始节点中的每一个之间的距离小于距离阈值,所述初始节点的方向与所述至少一个第二初始节点的朝向基本相似,所述初始节点的朝向为所述对象的运动方向。
在620中,处理引擎122(例如,候选节点确定模块420)可以根据与每个初始节点相关联的位姿,从多个初始节点中确定一组或以上候选节点,其中该位姿包括对象的位置和方向。在同一组候选节点中,每两个候选节点之间的距离小于一个距离阈值,并且同一组中所有候选节点的方向基本相似。对一组或以上候选节点的确定可以类似于图5中对一组或以上候选节点的确定,并且在此不进行描述。
在630中,处理引擎122(例如,冗余节点确定模块430)可以基于与每个候选节点相关联的特征信息来确定一个或以上冗余节点。
在一些实施例中,对于每一组候选节点中的每个候选节点,处理引擎122可以确定候选节点所包括的特征信息是否充足。例如,处理引擎122可以根据基于特征值的特征来确定候选节点所述包括的特征信息是否充足。响应于候选节点所述包括的特征信息不充足,处理引擎122可以将候选节点包括不充足的特征信息确定为冗余节点。可以在本申请的其他地方找到关于确定一个或以上冗余节点的详细描述(例如,图7及其描述)。
在640中,处理引擎122(例如,冗余节点消除模块440)可以通过从初始位姿图中消除一个或以上冗余节点以及一个或以上的冗余节点相关联的初始边,生成一个中间位姿图。对于一个或以上冗余节点中的每一个,处理引擎122可以从初始位姿图中消除冗余节点和连接冗余节点和其他初始节点的初始边。
在一些实施例中,在从初始位姿图中删除一个或以上冗余节点之前,处理引擎122可以将一个或以上冗余节点中的每一个的点云数据添加到初始位姿图中的非冗余节点,该非冗余来自与冗余节点相同的候选节点组。此外,代替消除连接冗余节点和其他初始节点的初始边,处理引擎122可以通过改变初始边连接到的节点来生成对应的新初始边。对于连接冗余节点和另一个初始节点的每个初始边,处理引擎112可以确定连接冗余节点和另一个初始节点的对应的非冗余节点的新初始边。
在650中,处理引擎122(例如,位姿图确定模块450)可以基于中间位姿图和多个目标边生成目标位姿图,其中,多个目标边中的每一个在中间位姿图中消除了初始边的初始节点和附近的初始节点连接。
对于在中间位姿图中消除了初始边的每个初始节点,处理引擎122可以确定连接初始节点和另一初始节点的至少一个目标边。处理引擎122可以确定初始节点和另一个初始节点之间是否存在约束。响应于初始节点和另一个初始节点之间存在约束,处理引擎122可以确定两个初始节点之间存在目标边。两个初始节点之间的约束可以包括测距约束,虚拟约束等或其任意组合。
处理引擎122可以使用边缘匹配算法来确定目标边。示例性边缘匹配算法可以包括迭代最近点配准算法(ICP)、点到线迭代最近点配准算法(PLICP)、迭代对偶对应算法(IDC)、基于度量的迭代最近点注册算法(MBICP)、广义迭代最近点注册算法(GICP)等或其任意组合。
需要注意的是,以上描述仅为描述方便,并不能把本申请限制在所举实施例范围之内。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不会背离本申请的范围。在一些实施例中,一个或以上其他可选操作(例如,存储操作)可以在示例性过程600中的其他位置添加。在存储操作中,处理引擎122可以将初始位姿图、一组或以上候选节点、特征信息和/或一个或以上冗余节点存储在本申请中其他地方披露的存储器(例如,存储设备140)中。在一些实施例中,一个或以上过程600中的操作可以被改变。例如,如果在操作640中确定了新的初始边,则可以省略操作650。
图7是根据本申请的一些实施例所示的用于确定一个或以上冗余节点的示例性过程的流程图。处理700可以由导航地图系统100执行。例如,过程700可以被实现为存储在存储ROM 230或RAM 240中的一组指令。处理器220和/或图4中的模块可以执行该指令,并且在执行指令时,处理器220和/或模块可以被配置为执行过程700。以下所示过程的操作仅出于说明的目的。在一些实施例中,过程700可以利用未描述的一个或以上附加操作和/或没有所讨论的一个或以上操作来完成。另外,如图7所示和以下描述的过程700的操作的顺序并非旨在限制。在一些实施例中,过程600可以对应于过程500的操作530。
在710,处理引擎122(例如,获取模块410)可以从一组候选节点中获取候选节点,其中,同一组候选节点中的每两个候选节点之间的距离小于距离阈值,且同一组中所有候选节点的方向基本相似。
处理引擎122可以从多个节点获得一个节点,并从多个节点确定是否存在至少另一个节点,该节点与至少另一个节点中的每个节点之间的距离小于距离阈值,节点与至少另一个节点的方向基本相似。响应于多个节点中至少有另一个节点,该节点与至少另一个节点中的每个节点之间的距离小于距离阈值,并且该节点和至少另一个节点的方向基本相似,处理引擎122可以将该节点确定为候选节点,并将该节点和至少另一个节点确定为候选节点组。关于确定候选节点组的更多描述可以在本申请的其他地方找到。参见例如图5及其描述。
在720中,处理引擎122(例如,冗余节点确定模块430)可以基于候选节点的至少一个基于特征值的特征来确定候选节点的至少一个特征值。
至少一个基于特征值的特征可以是候选节点的可测量的特征或特性。例如,至少一个基于特征值的特征可以是局部特征,即与候选节点相关联的局部邻域的几何表示。示例性的局部特征可以包括维数(例如,线性、平面、球形)和其他度量,例如无变化、发散、各向异性和本征熵等。平面可以表示为等式(1):
Figure BDA0003255881150000271
其中,Pλ是指候选节点x0的平面。λ1,λ2和λ3是指从候选节点x0附近的所有点的3D坐标导出的3D协方差矩阵的归一化特征值,其中λ1≥λ2≥λ3≥0且λ123=1。
线性可以表示为方程式(2):
Figure BDA0003255881150000272
其中,Lλ是指候选节点x0的线性。
发散可以表示为等式(3):
Figure BDA0003255881150000273
其中,Sλ是指候选节点x0的发散。
处理引擎122可以通过考虑与候选节点相关联的相邻点的空间布置来提取候选节点的至少一个基于特征值的特征。处理引擎122可以使用特征提取算法来提取候选节点的至少一个基于特征值的特征。示例性特征提取算法可以包括局部二进制模式(LBP)算法、定向梯度(HOG)算法的直方图、尺度不变特征变换(SIFT)算法、加速的鲁棒特征(SURF)算法、高斯(DG)算法之差等,或其组合。
在一些实施例中,特征向量可用于以数字方式描述至少一个基于特征值的特征。处理引擎122可以基于描述至少一个基于特征值的特征的特征向量的值来确定候选节点的至少一个特征值。在一些实施例中,特征向量可以被表示为具有一行或者一列的向量。例如,特征向量可以为一行向量,表示为1×N的行列式(例如,1×108的行列式)。在一些实施例中,特征向量可以对应于N维坐标系。N维坐标系可以与候选节点的N项或基于特征值的特征相关联。
在一些实施例中,可以根据各种方法或算法来确定特征向量。例如,处理引擎122可以基于词袋(BoW)模型、尺度不变特征变换(SIFT)方法、加速鲁棒特征(SURF)方法等或其任意组合,确定特征向量。
在730中,处理引擎122(例如,冗余节点确定模块430)可以将至少一个特征值中的每一个与对应的特征阈值进行比较,每个特征阈值对应于基于特征值的特征。通过将至少一个特征值中的每一个与对应的特征阈值进行比较,处理引擎122可以确定候选节点所包括的特征信息是否充足。
在一些实施例中,可以对线性,平面和发散进行比较。处理引擎122可以将线性的特征值(也称为线性值)/平面的特征值(也称为一个平面值)以及发散(也称为发散值)的特征值与对应的特征值进行比较。处理引擎122可以将线性值与线性特征阈值进行比较。处理引擎122可以将平面值与平面特征阈值进行比较。处理引擎122可以将发散值与发散特征阈值进行比较。每个特征阈值(例如,线性特征阈值、平面特征阈值、发散特征阈值)可以是导航地图系统100的默认设置,或者可以在不同情况下进行调整。
为了说明的目的,本申请以线性、平面和发散的组合为例,应注意,可以使用其他基于特征值的功能进行比较,例如,球形度、线性、平面和发散的组合。
在740中,响应于至少一个特征值中的每一个小于对应特征阈值,处理引擎122(例如,冗余节点确定模块430)可以将候选节点确定为包括特征信息不充足的候选节点。
在一些实施例中,关于线性、平面和发散的比较可以被配置为确定与候选节点相关联的相邻点的结构。例如,不小于线性特征阈值的线性值可以表示线性结构(例如,路灯的灯杆)。又例如,不小于平面特征阈值的平面值可以指示平面结构(例如,墙壁)。作为又一个示例,不小于发散特征阈值的发散值可以指示散乱的结构(例如,树的树冠)。
响应于线性值小于线性特征阈值,平面值小于平面特征阈值,并且发散值小于发散特征阈值,处理引擎112可以基于候选节点确定未检测到线性结构、平面结构或散射结构,指示候选节点所包括的特征信息不充足。
在750中,处理引擎122(例如,冗余节点确定模块430)可以将包括不足特征信息的候选节点确定为冗余节点。
在一些实施例中,处理引擎112可以首先基于比较对候选节点组进行分类,并基于该分类从候选节点组中确定至少一个非冗余节点。例如,响应于线性值不小于线性特征阈值,处理引擎112可以确定相同候选节点组中的每个候选节点与线性结构有关。响应于同一组候选节点中的每个候选节点都与线性结构有关,处理引擎112可以将与非冗余节点相同的候选节点组中具有较高特征值的候选节点确定为一个或以上候选节点,并将候选节点组中特征值较低的其他节点确定为冗余节点。处理设备112可以将候选节点组中的每个候选节点的线性值排序(例如,以升序或降序)。处理设备112可以基于排名确定冗余节点。例如,处理设备112可以将候选节点组中具有最高特征值的候选节点确定为非冗余节点,而候选节点组中的其他节点确定为冗余节点。
需要注意的是,以上描述仅为描述方便,并不能把本申请限制在所举实施例范围之内。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不会背离本申请的范围。在一些实施例中,一个或以上其他可选操作(例如,存储操作)可以在示例性过程700中的其他位置添加。在存储操作中,处理引擎122可以将至少一个基于特征值的线性值、线性特征阈值、平面值、平面特征阈值、发散值、的特征和/或发散特征阈值存储在本申请中其他地方披露的存储器(例如,存储设备140)中。
上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述发明披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域的普通技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或以上提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质的组合,或对其任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括韧体、常驻软件、微代码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“单元”、“模块”或“系统”。此外,本申请的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
计算机可读信号介质可能包含一个内含有计算机程序代码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一组指令执行系统、装置或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF等,或任何上述介质的组合。
本申请各部分操作所需的计算机程序代码可以用任意一种或以上程序设计语言编写,包括面向对象程序设计语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化程序设计语言如C程序设计语言、Visual Basic、Fortran2103、Perl、COBOL 2102、PHP、ABAP,动态程序设计语言如Python、Ruby和Groovy,或其他程序设计语言等。该程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,尽管上述各种组件的实现可以体现在硬件设备中,但是它也可以实现为纯软件解决方案,例如,在现有服务器或移动设备上的安装。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请的实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,本申请的该方法不应被解释为反映所声称的待扫描对象物质需要比每个权利要求中明确记载的更多特征的意图。相反,发明的主体应具备比上述单一实施例更少的特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
本文中提及的所有专利、专利申请、专利申请公布和其他材料(如论文、书籍、说明书、出版物、记录、事物和/或类似的东西)均在此通过引用的方式全部并入本文以达到所有目的,与上述文件相关的任何起诉文档记录、与本文件不一致或冲突的任何上述文件或对迟早与本文件相关的权利要求书的广泛范畴有限定作用的任何上述文件除外。举例来说,如果在描述、定义和/或与任何所结合的材料相关联的术语的使用和与本文件相关联的术语之间存在任何不一致或冲突,则描述、定义和/或在本文件中使用的术语以本文件为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可以属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。

Claims (23)

1.一种生成位姿图的系统,所述系统包括:
至少一个包括一组指令的存储介质;以及
与所述至少一个存储介质通信的至少一个处理器,其中,当执行所述指令时,所述至少一个处理器被配置为使所述系统执行以下操作:
获得多个节点,每个节点包括由与一个对象关联的一个或以上传感器在一段时间内获取的点云数据;
基于与每个节点相关联的位姿,从所述多个节点确定一组或以上候选节点,其中所述位姿包括所述对象的位置和方向;
基于与每个所述候选节点相关的特征信息,确定一个或以上冗余节点;
通过从所述多个节点中消除所述一个或以上冗余节点来确定多个目标节点;以及
基于所述多个目标节点生成目标位姿图。
2.根据权利要求1所述的系统,其特征在于,同一组所述候选节点中的每两个所述候选节点之间的距离小于一个距离阈值,并且所述同一组中所有所述候选节点的所述方向基本相似,所述候选节点的所述方向是所述对象的移动方向。
3.根据权利要求1或2所述的系统,其特征在于,为了基于与每个所述候选节点相关的特征信息确定所述一个或以上冗余节点,所述至少一个处理器进一步被配置为使所述系统执行以下操作:
对于每一组所述候选节点中的每个所述候选节点:
确定所述候选节点是否包括不足的特征信息;以及
响应于所述候选节点包括所述不足的特征信息,
将所述包括所述不足的特征信息的所述候选节点确定为冗余节点。
4.根据权利要求3所述的系统,其特征在于,所述特征信息根据基于特征值的特征进行比较。
5.根据权利要求4所述的系统,其特征在于,为了确定所述候选节点是否包括所述不足的特征信息,所述至少一个处理器进一步被配置为使所述系统执行以下操作:
对于所述每个候选节点:
基于所述候选节点的至少一个所述基于特征值的特征确定所述候选节点的至少一个特征值;
将所述至少一个特征值中的每一个与对应的特征阈值进行比较,每个所述特征阈值对应于一个所述基于特征值的特征;以及
响应于所述至少一个特征值中的每一个都小于对应的所述特征阈值,
确定所述候选节点为包括所述不足的特征信息的所述候选节点。
6.根据权利要求4或5所述的系统,其特征在于,所述基于特征值的特征包括线性、平面或发散中的至少一个。
7.根据权利要求1至6中的任意一个所述的系统,其特征在于,为了通过从所述多个节点中消除所述一个或以上冗余节点来生成多个所述目标节点,所述至少一个处理器进一步被配置为使所述系统执行以下操作:
对于所述一个或以上冗余节点中的每一个,将所述冗余节点的点云数据添加到与所述冗余节点相同组的所述目标节点。
8.根据权利要求1或2所述的系统,其特征在于,为了获得所述多个节点,所述至少一个处理器进一步被配置为使所述系统执行以下操作:
获得初始位姿图,其中所述初始位姿图包括多个初始节点和多个初始边;以及
基于所述多个初始节点确定所述多个节点。
9.根据权利要求8所述的系统,其特征在于,为了通过从所述多个节点中消除所述一个或以上冗余节点来生成所述多个目标节点,所述至少一个处理器进一步被配置为使所述系统执行以下操作:
通过从所述初始位姿图中消除所述一个或以上冗余节点以及与所述一个或以上冗余节点相关联的初始边,生成一个中间位姿图。
10.根据权利要求9所述的系统,其特征在于,为了基于所述多个目标节点生成所述目标位姿图,所述至少一个处理器进一步被配置为使所述系统执行以下操作:
对于每个消除了所述初始边的所述目标节点,
确定消除了所述初始边的所述目标节点与附近的所述目标节点之间的约束;以及
基于所述约束生成目标边,所述目标边连接消除了所述初始边的所述目标节点和附近的所述目标节点;以及
基于所述中间位姿图和消除了所述初始边的所述目标节点中的每一个的所述目标边,生成所述目标位姿图。
11.根据权利要求2至10任一项所述的系统,其特征在于,所述距离阈值是基于与候选节点组有关的道路的宽度确定的。
12.一种生成位姿图的方法,所述方法包括:
获得多个节点,每个节点包括由与一个对象关联的一个或以上传感器在一段时间内获取的点云数据;
基于与每个节点相关联的位姿,从所述多个节点确定一组或以上候选节点,其中所述位姿包括所述对象的位置和方向;
基于与每个所述候选节点相关的特征信息,确定一个或以上冗余节点;
通过从所述多个节点中消除所述一个或以上冗余节点来确定多个目标节点;以及
基于所述多个目标节点生成目标位姿图。
13.根据权利要求12所述的方法,其特征在于,同一组所述候选节点中的每两个所述候选节点之间的距离小于一个距离阈值,并且所述同一组中所有所述候选节点的所述方向基本相似,所述候选节点的所述方向是所述对象的移动方向。
14.根据权利要求12或13所述的方法,其特征在于,所述基于与每个所述候选节点相关联的特征信息,确定一个或以上冗余节点包括:
对于每一组所述候选节点中的每个所述候选节点:
确定所述候选节点是否包括不足的特征信息;以及
响应于所述候选节点包括所述不足的特征信息,
将所述包括所述不足的特征信息的所述候选节点确定为冗余节点。
15.根据权利要求14所述的方法,其特征在于,所述特征信息根据基于特征值的特征进行比较。
16.根据权利要求15所述的方法,其特征在于,所述确定所述候选节点是否包括不足的特征信息包括:
对于所述每个候选节点:
基于所述候选节点的至少一个所述基于特征值的特征确定所述候选节点的至少一个特征值;
将所述至少一个特征值中的每一个与对应的特征阈值进行比较,每个所述特征阈值对应于一个所述基于特征值的特征;以及
响应于所述至少一个特征值中的每一个都小于对应的所述特征阈值,
确定所述候选节点为包括所述不足的特征信息的所述候选节点。
17.根据权利要求15或16所述的方法,其特征在于,所述基于特征值的特征包括线性、平面或发散中的至少一个。
18.根据权利要求12至17中任意一个所述的方法,其特征在于,所述通过从所述多个节点中消除所述一个或以上冗余节点来生成多个目标节点包括:
对于所述一个或以上冗余节点中的每一个,将所述冗余节点的点云数据添加到与所述冗余节点相同组的所述目标节点。
19.根据权利要求12或13所述的方法,其特征在于,所述获得多个节点包括:
获得初始位姿图,其中所述初始位姿图包括多个初始节点和多个初始边;以及
基于所述多个初始节点确定所述多个节点。
20.根据权利要求19所述的方法,其特征在于,所述通过从所述多个节点中消除所述一个或以上冗余节点来生成多个目标节点包括:
通过从所述初始位姿图中消除所述一个或以上冗余节点以及与所述一个或以上冗余节点相关联的初始边,生成一个中间位姿图。
21.根据权利要求20所述的方法,其特征在于,所述基于所述多个目标节点生成目标位姿图包括:
对于每个消除了所述初始边的所述目标节点,
确定消除了所述初始边的所述目标节点与附近的所述目标节点之间的约束;以及
基于所述约束生成目标边,所述目标边连接消除了所述初始边的所述目标节点和附近的所述目标节点;以及
基于所述中间位姿图和消除了所述初始边的所述目标节点中的每一个的所述目标边,生成所述目标位姿图。
22.根据权利要求13至21中任意一个所述的方法,其特征在于,所述距离阈值是基于与候选节点组有关的道路的宽度确定的。
23.一种非暂时性计算机可读存储介质,其中包含计算机程序产品,所述计算机程序产品包含用于生成位姿图的指令,其特征在于,所述指令被配置为使计算设备执行以下操作:
获得多个节点,每个节点包括由与一个对象关联的一个或以上传感器在一段时间内获取的点云数据;
基于与每个节点相关联的位姿,从所述多个节点确定一组或以上候选节点,其中所述位姿包括所述对象的位置和方向;
基于与每个所述候选节点相关的特征信息,确定一个或以上冗余节点;
通过从所述多个节点中消除所述一个或以上冗余节点来确定多个目标节点;以及
基于所述多个目标节点生成目标位姿图。
CN201980093911.4A 2019-09-19 2019-09-19 生成位姿图的系统和方法 Pending CN113557548A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/106786 WO2021051358A1 (en) 2019-09-19 2019-09-19 Systems and methods for generating pose graph

Publications (1)

Publication Number Publication Date
CN113557548A true CN113557548A (zh) 2021-10-26

Family

ID=74883051

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980093911.4A Pending CN113557548A (zh) 2019-09-19 2019-09-19 生成位姿图的系统和方法

Country Status (2)

Country Link
CN (1) CN113557548A (zh)
WO (1) WO2021051358A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108830191A (zh) * 2018-05-30 2018-11-16 上海电力学院 基于改进emm及orb算法的移动机器人slam方法
CN108876828A (zh) * 2018-04-12 2018-11-23 南安市创培电子科技有限公司 一种无人机图像批处理三维重建方法
CN109766758A (zh) * 2018-12-12 2019-05-17 北京计算机技术及应用研究所 一种基于orb特征的视觉slam方法
CN110060332A (zh) * 2019-04-09 2019-07-26 上海科技大学 基于机载采集设备的高精度三维建图与建模系统
WO2019161813A1 (zh) * 2018-02-23 2019-08-29 清华-伯克利深圳学院筹备办公室 动态场景的三维重建方法以及装置和系统、服务器、介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019161813A1 (zh) * 2018-02-23 2019-08-29 清华-伯克利深圳学院筹备办公室 动态场景的三维重建方法以及装置和系统、服务器、介质
CN108876828A (zh) * 2018-04-12 2018-11-23 南安市创培电子科技有限公司 一种无人机图像批处理三维重建方法
CN108830191A (zh) * 2018-05-30 2018-11-16 上海电力学院 基于改进emm及orb算法的移动机器人slam方法
CN109766758A (zh) * 2018-12-12 2019-05-17 北京计算机技术及应用研究所 一种基于orb特征的视觉slam方法
CN110060332A (zh) * 2019-04-09 2019-07-26 上海科技大学 基于机载采集设备的高精度三维建图与建模系统

Also Published As

Publication number Publication date
WO2021051358A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
US20220138896A1 (en) Systems and methods for positioning
US10732004B2 (en) Method and apparatus for displaying virtual route
US10534091B2 (en) Method and apparatus for generating road surface, method and apparatus for processing point cloud data, computer program, and computer readable recording medium
US11781863B2 (en) Systems and methods for pose determination
WO2019007263A1 (zh) 车载传感器的外部参数标定的方法和设备
US20210354718A1 (en) Lidar localization using rnn and lstm for temporal smoothness in autonomous driving vehicles
WO2021056128A1 (en) Systems and methods for calibrating an inertial measurement unit and a camera
US11573084B2 (en) Method and system for heading determination
CN108847121A (zh) 构建高精度地图的方法和装置
WO2019237319A1 (en) Incremental segmentation of point cloud
CN112889041A (zh) 一种确定二维地图的系统和方法
JP2024056032A (ja) データ構造、記憶媒体及び記憶装置
CN111854748B (zh) 一种定位系统和方法
CN112041210B (zh) 用于自动驾驶的系统和方法
WO2021077315A1 (en) Systems and methods for autonomous driving
US11940279B2 (en) Systems and methods for positioning
US20240151855A1 (en) Lidar-based object tracking
CN113557548A (zh) 生成位姿图的系统和方法
CN113826145A (zh) 距离测量的系统和方法
WO2021012243A1 (en) Positioning systems and methods
US20220270288A1 (en) Systems and methods for pose determination
EP3580523A1 (en) Method and apparatus for uncertainty modeling of point cloud
CN112400122A (zh) 定位目标对象的系统和方法
CN112805534B (zh) 定位目标对象的系统和方法
CN112840232B (zh) 用于标定相机和激光雷达的系统和方法

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