CN112950708B - 一种定位方法、定位装置及机器人 - Google Patents
一种定位方法、定位装置及机器人 Download PDFInfo
- Publication number
- CN112950708B CN112950708B CN202110160341.5A CN202110160341A CN112950708B CN 112950708 B CN112950708 B CN 112950708B CN 202110160341 A CN202110160341 A CN 202110160341A CN 112950708 B CN112950708 B CN 112950708B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- cloud data
- ground
- target point
- grid
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004590 computer program Methods 0.000 claims description 19
- 238000000605 extraction Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000009826 distribution Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- 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
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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/24—Classification techniques
-
- 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
- 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/10—Image acquisition modality
- G06T2207/10032—Satellite or aerial image; Remote sensing
- G06T2207/10044—Radar image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请公开了一种定位方法、定位装置及机器人。该方法应用于机器人,包括:对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,所述原始点云数据通过所述机器人的激光雷达进行采集;对所述地上点云数据进行特征提取,得到地上目标点云数据,其中,所述地上目标点云数据的数量少于所述地上点云数据的数量;对所述地面点云数据进行降采样,得到地面目标点云数据;基于目标点云数据及预设的环境点云地图进行点云配准,以实现对所述机器人的定位,其中,所述目标点云数据包括所述地上目标点云数据及所述地面目标点云数据。通过本申请方案,可在定位时降低资源消耗,减少对CPU的占用。
Description
技术领域
本申请属于导航技术领域,尤其涉及一种定位方法、定位装置、机器人及计算机可读存储介质。
背景技术
通常情况下,基于激光雷达的机器人需要在给定的环境地图中进行定位。一般室内环境下,由于数据总量较少,对计算性能要求不高,因此大多使用2D的占用栅格地图进行定位。而室外环境下,由于场景本身尺度大,占用栅格地图会十分消耗机器人的存储与计算性能,因此,更常用点云来表示地图。
在给定的环境点云地图中,机器人会以配备的3D激光雷达作为观测传感器,利用扫描匹配的方式进行计算。由于3D激光雷达在每个时刻的观测数据点多,并且环境点云地图较大,这使得定位算法对中央处理器(Central Processing Unit,CPU)的性能消耗较高,从而导致在低性能计算平台上运行定位算法时可能会出现延迟、计算出错或影响其它模块等问题。
发明内容
本申请提供了一种定位方法、定位装置、机器人及计算机可读存储介质,可在定位时降低资源消耗,减少对CPU的占用。
第一方面,本申请提供了一种定位方法,上述定位方法应用于机器人,包括:
对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,上述原始点云数据通过上述机器人的激光雷达进行采集;
对上述地上点云数据进行特征提取,得到地上目标点云数据,其中,上述地上目标点云数据的数量少于上述地上点云数据的数量;
对上述地面点云数据进行降采样,得到地面目标点云数据;
基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位,其中,上述目标点云数据包括上述地上目标点云数据及上述地面目标点云数据。
第二方面,本申请提供了一种定位装置,上述定位装置应用于机器人,包括:
分类单元,用于对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,上述原始点云数据通过上述机器人的激光雷达进行采集;
提取单元,用于对上述地上点云数据进行特征提取,得到地上目标点云数据,其中,上述地上目标点云数据的数量少于上述地上点云数据的数量;
降采样单元,用于对上述地面点云数据进行降采样,得到地面目标点云数据;
配准单元,用于基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位,其中,上述目标点云数据包括上述地上目标点云数据及上述地面目标点云数据。
第三方面,本申请提供了一种机器人,上述机器人包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。
第四方面,本申请提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
第五方面,本申请提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
本申请与现有技术相比存在的有益效果是:首先对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,上述原始点云数据通过上述机器人的激光雷达进行采集,然后对上述地上点云数据进行特征提取,得到地上目标点云数据,其中,上述地上目标点云数据的数量少于上述地上点云数据的数量,并对上述地面点云数据进行降采样,得到地面目标点云数据,最后基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位,其中,上述目标点云数据包括上述地上目标点云数据及上述地面目标点云数据。上述过程中,将原始点云数据分为了两类:对于地上点云数据来说,通过特征提取获得地上目标点云数据,且地上目标点云数据的数量少于上述地上点云数据的数量;而对于地面点云数据来说,通过降采样获得地面点云数据,地面目标点云数据的数量必然也少于地面点云数据的数量。而最终机器人是通过地上目标点云数据、地面目标点云数据及预设的环境点云地图来进行点云配准以实现定位,由于地上目标点云数据及地面目标点云数据的数量较少,可使得点云配准的运算量大幅减少,提高点云配准的运算效率,不仅降低了机器人的资源消耗,而且减少了对机器人的CPU的占用。可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的定位方法的实现流程示意图;
图2是本申请实施例提供的定位装置的结构框图;
图3是本申请实施例提供的机器人的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所提出的技术方案,下面通过具体实施例来进行说明。
下面对本申请实施例提供的一种定位方法进行描述。该定位方法应用于设置有激光雷达的机器人。请参阅图1,该定位方法包括:
步骤101,对原始点云数据进行分类,得到地面点云数据及地上点云数据。
在本申请实施例中,机器人可以通过激光雷达所发出的激光来采集获得原始点云数据。由于机器人所处的环境是一个三维环境,且机器人进行定位时,主要是对地面上的障碍物进行考虑,因而,可预先在机器人中设定一指定偏转角度范围,则只需将激光雷达在该指定偏转角度范围内所采集的点云数据作为原始点云数据即可。示例性地,该指定偏转角度范围指的是水平向下的范围。也即,只要机器人的激光雷达所射出的激光为相对于水平面向下,则基于该激光所采集到的点云数据即可被确定为一原始点云数据。
在获得原始点云数据后,机器人可对这些原始点云数据进行分类。本申请实施例中,提出了两种类型的点云数据;一种是地面点云数据,另一种是地上点云数据。机器人可以在获取到原始点云数据后,针对相邻的任意两个原始点云数据,先获取这两个原始点云数据的高度差值绝对值,然后再基于该高度差值绝对值,对这两个原始点云数据进行分类,具体为:若该高度差值绝对值小于预设的高度差值阈值,则将这两个原始点云数据均确定为地面点云数据;反之,若该高度差值绝对值不小于该高度差值阈值,则将该这个原始点云数据中,高度低的原始点云数据确定为地面点云数据,高度高的原始点云数据确定为地上点云数据。其中,原始点云数据的高度,指的是原始点云数据中的z轴方向的数据,该z轴方向指的是竖直向上的方向;高度差值阈值为正数。由于激光雷达是一排一排的激光发射出去进行扫描来获取对应的点云数据,因而,本申请实施例所说的相邻的任意两个原始点云数据,指的是这两个原始点云数据所对应的激光为相邻的激光。
举例来说,若原始点云数据T1及原始点云数据T2为相邻的两个原始点云数据,则可获得原始点云数据T1中的z轴方向的数据Z1作为其高度,还可获得原始点云数据T2中的z轴方向的数据Z2作为其高度;机器人由此可计算得到高度差值绝对值|Z2-Z1|。假定高度差值阈值为Z0,则在|Z2-Z1|<Z0时,认为原始点云数据T1及原始点云数据T2均为地面点云数据;在|Z2-Z1|≥Z0时,可通过Z1及Z2判断原始点云数据T1及原始点云数据T2中,哪一个的高度更高,例如,若Z2>Z1,则原始点云数据T2被确定为地上点云数据,原始点云数据T1被确定为地面点云数据。
除此之外,机器人也还可基于原始点云数据的高度来进行分类,例如,若一原始点云数据的高度大于预设的高度阈值,则认为该原始点云数据为地上点云数据;反之,若一原始点云数据的高度不大于预设的高度阈值,则认为该原始点云数据为地面点云数据。实际应用中,机器人可基于原始点云数据的高度及该原始点云数据与相邻的原始点云数据的高度差值绝对值来对原始点云数据的类型进行综合判断。
步骤102,对上述地上点云数据进行特征提取,得到地上目标点云数据。
在本申请实施例中,机器人可对地上点云数据及地面点云数据分开进行处理。具体地,对于地上点云数据来说,机器人可进行特征提取,得到地上目标点云数据,其中,特征提取具体指的是基于线特征及面特征对地上点云数据进行特征提取,以获得线特征点及面特征点,这些线特征点及面特征点即为目标地上点云数据。举例来说,在实际场景下,激光雷达在扫描到墙角时所获得的点云数据(也即墙角对应的点云数据)就属于线特征点,激光雷达在扫描到墙面时所获得的点云数据(也即墙面对应的点云数据)就属于面特征点。换句话说,线特征点指的是边缘点所对应的点云数据,面特征点指的是平面点所对应的点云数据。
可以理解的是,特征提取的过程其实相当于对地上点云数据的采样,最终将使得地上目标点云数据的数量少于地上点云数据的数量。基于此,在基于线特征及面特征进行提取时,机器人还会限定线特征及面特征的数量。实际应用中,基于机器人的俯视图(也即从上往下看机器人时),机器人会以自身为原点,在其所处环境内划定若干个不重合的扇区,则每个地上点云数据将会唯一的落入一个扇区内;接着,针对每个扇区,可获取为线特征所设定的第一预设数量M,以及为面特征所设定的第二预设数量N,则机器人可在落入该扇区的地上点云数据中,基于M个线特征及N个面特征进行提取,以得到有限数量的地上目标点云数据。仅作为示例,M可以为2,N可以为5。
步骤103,对上述地面点云数据进行降采样,得到地面目标点云数据。
在本申请实施例中,可以每隔L个地面点云数据就进行采样得到一地面目标点云数据,其中,L为正整数,以实现对地面点云数据的降采样。显然,地面目标点云数据的数量也必然少于地面点云数据的数量。
步骤104,基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位。
在本申请实施例中,目标点云数据包括所有的地上目标点云数据及所有的地面目标点云数据。显然,地上目标点云数据及地面目标点云数据的数据量相对于原始点云数据的数据量来说已经大大减小。该环境点云地图,可预先通过基于激光类的同步定位与建图(simultaneous localization and mapping,SLAM)方法而得到,且该环境点云地图通常表现为PCD格式的文件。
基于各个目标点云数据,机器人可将其与环境点云地图进行点云匹配,完成对自身的定位操作。具体地,上述点云匹配可以基于正态分布变换(Normal DistributionsTransform,NDT)算法而实现,其过程具体为:首先,机器人会将环境点云地图划分为K个网格;然后针对每个目标点云数据,分别计算上述目标点云数据与各个网格的距离;最后通过每个目标点云数据与各个网格的距离进行点云配准,以实现对上述机器人的定位。其中,一个目标点云数据与一个网格的距离,可通过如下方式计算而得:
机器人会将该网格在第一预设方向、第二预设方向、第三预设方向及第四预设方向上相邻的网格确定为该网格的相邻网格,然后基于该目标点云数据、该网格及该网格的相邻网格,计算该目标点云数据与该网格的距离。其中,通常情况下,一个网格实际上会有六个网格与之相邻,这六个网格分别在该网格的上、下、左、右、前、后这六个方向;考虑到机器人在地面运动时,极少出现z轴方向的移动,因而,本申请实施例实际只考虑左、右、前、后这四个方向;也即,上述第一预设方向、第二预设方向、第三预设方向及第四预设方向,分别指代的是左、右、前及后这四个方向。由此可知,本申请实施例中,一个网格的相邻网格,指的是该网格的左、右、前、后方向上与该网格相邻的网格。
需要指出的是,一个目标点云数据与一个网格的距离,具体指的是该目标点云数据与基于该网格计算而得的高斯分布的距离;因而,结合前文所提出“基于该目标点云数据、该网格及该网格的相邻网格,计算该目标点云数据与该网格的距离”这一步骤可知,机器人实际应用中,可先将环境点云地图中落入该网格及该网格的相邻网格中的点云数据作为一个点群,然后计算该点群的均值与协方差,由此构建得到一高斯分布,该高斯分布即为基于该网格计算而得到的高斯分布,最后计算该目标点云数据到该高斯分布的距离,作为该目标点云数据与该网格的距离。
由上可见,通过本申请实施例,机器人将原始点云数据分为了两类:对于地上点云数据来说,通过特征提取获得地上目标点云数据,且地上目标点云数据的数量少于上述地上点云数据的数量;而对于地面点云数据来说,通过降采样获得地面点云数据,地面目标点云数据的数量必然也少于地面点云数据的数量。而最终机器人是通过地上目标点云数据、地面目标点云数据及预设的环境点云地图来进行点云配准以实现定位,由于地上目标点云数据及地面目标点云数据的数量较少,可使得点云配准的运算量大幅减少,提高点云配准的运算效率,不仅降低了机器人的资源消耗,而且减少了对机器人的CPU的占用。
对应于前文所提出的定位方法,本申请实施例提供了一种定位装置,上述定位装置应用于设置有激光雷达的机器人。请参阅图2,本申请实施例中的定位装置200包括:
分类单元201,用于对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,上述原始点云数据通过上述机器人的激光雷达进行采集;
提取单元202,用于对上述地上点云数据进行特征提取,得到地上目标点云数据,其中,上述地上目标点云数据的数量少于上述地上点云数据的数量;
降采样单元203,用于对上述地面点云数据进行降采样,得到地面目标点云数据;
配准单元204,用于基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位,其中,上述目标点云数据包括上述地上目标点云数据及上述地面目标点云数据。
可选地,上述分类单元201,包括:
绝对值获取子单元,用于针对相邻的任意两个原始点云数据,获取上述两个原始点云数据的高度差值绝对值;
数据分类子单元,用于基于上述高度差值绝对值,对上述两个原始点云数据进行分类,以得到地面点云数据及地上点云数据。
可选地,上述数据分类子单元,包括:
地面点云数据确定子单元,用于若上述高度差值绝对值小于预设的高度差值阈值,则将上述两个原始点云数据均确定为地面点云数据;
地上点云数据确定子单元,用于若上述高度差值绝对值不小于上述高度差值阈值,则将上述两个原始点云数据中,高度低的原始点云数据确定为地面点云数据,高度高的原始点云数据确定为地上点云数据。
可选地,上述提取单元202,包括:
扇区确定子单元,用于确定各个地上点云数据所落入的扇区;
特征提取子单元,用于针对每个扇区,在上述扇区中的地上点云数据中,基于第一预设数量的线特征及第二预设数量的面特征进行提取,得到地上目标点云数据。
可选地,上述配准单元204,包括:
划分子单元,用于将上述环境点云地图划分为第三预设数量的网格;
计算子单元,用于针对每个目标点云数据,分别计算上述目标点云数据与各个网格的距离,其中,上述距离指的是:上述目标点云数据与基于网格计算而得的高斯分布的距离;
配准子单元,用于通过每个目标点云数据与各个网格的距离进行点云配准,以实现对上述机器人的定位。
可选地,上述计算子单元,包括:
相邻网格确定子单元,用于针对每个网格,将上述网格在第一预设方向、第二预设方向、第三预设方向及第四预设方向上相邻的网格确定为上述网格的相邻网格;
距离计算子单元,用于基于上述目标点云数据、上述网格及上述网格的相邻网格,计算上述目标点云数据与上述网格的距离。
可选地,上述定位装置200还包括:
获取单元,用于获取上述激光雷达在指定偏转角度范围内所采集的点云数据作为上述原始点云数据。
由上可见,通过本申请实施例,机器人将原始点云数据分为了两类:对于地上点云数据来说,通过特征提取获得地上目标点云数据,且地上目标点云数据的数量少于上述地上点云数据的数量;而对于地面点云数据来说,通过降采样获得地面点云数据,地面目标点云数据的数量必然也少于地面点云数据的数量。而最终机器人是通过地上目标点云数据、地面目标点云数据及预设的环境点云地图来进行点云配准以实现定位,由于地上目标点云数据及地面目标点云数据的数量较少,可使得点云配准的运算量大幅减少,提高点云配准的运算效率,不仅降低了机器人的资源消耗,而且减少了对机器人的CPU的占用。
本申请实施例还提供了一种机器人,请参阅图3,本申请实施例中的机器人3包括:存储器301,一个或多个处理器302(图3中仅示出一个)及存储在存储器301上并可在处理器上运行的计算机程序。其中,存储器301用于存储软件程序以及单元,处理器302通过运行存储在存储器301的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器302通过运行存储在存储器301的上述计算机程序时实现以下步骤:
对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,上述原始点云数据通过上述机器人的激光雷达进行采集;
对上述地上点云数据进行特征提取,得到地上目标点云数据,其中,上述地上目标点云数据的数量少于上述地上点云数据的数量;
对上述地面点云数据进行降采样,得到地面目标点云数据;
基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位,其中,上述目标点云数据包括上述地上目标点云数据及上述地面目标点云数据。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述对原始点云数据进行分类,得到地面点云数据及地上点云数据,包括:
针对相邻的任意两个原始点云数据,获取上述两个原始点云数据的高度差值绝对值;
基于上述高度差值绝对值,对上述两个原始点云数据进行分类,以得到地面点云数据及地上点云数据。
在上述第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述基于上述高度差值绝对值,对上述两个原始点云数据进行分类,以得到地面点云数据及地上点云数据,包括:
若上述高度差值绝对值小于预设的高度差值阈值,则将上述两个原始点云数据均确定为地面点云数据;
若上述高度差值绝对值不小于上述高度差值阈值,则将上述两个原始点云数据中,高度低的原始点云数据确定为地面点云数据,高度高的原始点云数据确定为地上点云数据。
在上述第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,上述对上述地上点云数据进行特征提取,得到地上目标点云数据,包括:
确定各个地上点云数据所落入的扇区;
针对每个扇区,在上述扇区中的地上点云数据中,基于第一预设数量的线特征及第二预设数量的面特征进行提取,得到地上目标点云数据。
在上述第一种可能的实施方式作为基础而提供的第五种可能的实施方式中,上述基于目标点云数据及预设的环境点云地图进行点云配准,以实现对上述机器人的定位,包括:
将上述环境点云地图划分为第三预设数量的网格;
针对每个目标点云数据,分别计算上述目标点云数据与各个网格的距离,其中,上述距离指的是:上述目标点云数据与基于网格计算而得的高斯分布的距离;
通过每个目标点云数据与各个网格的距离进行点云配准,以实现对上述机器人的定位。
在上述第五种可能的实施方式作为基础而提供的第六种可能的实施方式中,上述分别计算上述目标点云数据与各个网格的距离,包括:
针对每个网格,将上述网格在第一预设方向、第二预设方向、第三预设方向及第四预设方向上相邻的网格确定为上述网格的相邻网格;
基于上述目标点云数据、上述网格及上述网格的相邻网格,计算上述目标点云数据与上述网格的距离。
在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础,或者上述第五种可能的实施方式作为基础,或者上述第六种可能的实施方式作为基础而提供的第七种可能的实施方式中,在上述对原始点云数据进行分类,得到地面点云数据及地上点云数据之前,处理器302通过运行存储在存储器301的上述计算机程序时实现以下步骤:
获取上述激光雷达在指定偏转角度范围内所采集的点云数据作为上述原始点云数据。
应当理解,在本申请实施例中,所称处理器302可以是CPU,该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器301可以包括只读存储器和随机存取存储器,并向处理器302提供指令和数据。存储器301的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器301还可以存储设备类别的信息。
由上可见,通过本申请实施例,机器人将原始点云数据分为了两类:对于地上点云数据来说,通过特征提取获得地上目标点云数据,且地上目标点云数据的数量少于上述地上点云数据的数量;而对于地面点云数据来说,通过降采样获得地面点云数据,地面目标点云数据的数量必然也少于地面点云数据的数量。而最终机器人是通过地上目标点云数据、地面目标点云数据及预设的环境点云地图来进行点云配准以实现定位,由于地上目标点云数据及地面目标点云数据的数量较少,可使得点云配准的运算量大幅减少,提高点云配准的运算效率,不仅降低了机器人的资源消耗,而且减少了对机器人的CPU的占用。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种定位方法,其特征在于,所述定位方法应用于机器人,包括:
对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,所述原始点云数据通过所述机器人的激光雷达进行采集;
对所述地上点云数据进行特征提取,得到地上目标点云数据,其中,所述地上目标点云数据的数量少于所述地上点云数据的数量;
对所述地面点云数据进行降采样,得到地面目标点云数据;
将所述环境点云地图划分为第三预设数量的网格;
针对每个目标点云数据,基于各个网格及各个网格的相邻网格,分别计算所述目标点云数据与各个网格的距离,其中,所述目标点云数据包括所述地上目标点云数据及所述地面目标点云数据,网格的相邻网格为在预设方向上与该网格相邻的网格,所述距离指的是:所述目标点云数据与基于网格计算而得的高斯分布的距离;
通过每个目标点云数据与各个网格的距离进行点云配准,以实现对所述机器人的定位。
2.如权利要求1所述的定位方法,其特征在于,所述对原始点云数据进行分类,得到地面点云数据及地上点云数据,包括:
针对相邻的任意两个原始点云数据,获取所述两个原始点云数据的高度差值绝对值;
基于所述高度差值绝对值,对所述两个原始点云数据进行分类,以得到地面点云数据及地上点云数据。
3.如权利要求2所述的定位方法,其特征在于,所述基于所述高度差值绝对值,对所述两个原始点云数据进行分类,以得到地面点云数据及地上点云数据,包括:
若所述高度差值绝对值小于预设的高度差值阈值,则将所述两个原始点云数据均确定为地面点云数据;
若所述高度差值绝对值不小于所述高度差值阈值,则将所述两个原始点云数据中,高度低的原始点云数据确定为地面点云数据,高度高的原始点云数据确定为地上点云数据。
4.如权利要求1所述的定位方法,其特征在于,所述对所述地上点云数据进行特征提取,得到地上目标点云数据,包括:
确定各个地上点云数据所落入的扇区;
针对每个扇区,在所述扇区中的地上点云数据中,基于第一预设数量的线特征及第二预设数量的面特征进行提取,得到地上目标点云数据。
5.如权利要求1所述的定位方法,其特征在于,所述分别计算所述目标点云数据与各个网格的距离,包括:
针对每个网格,将所述网格在第一预设方向、第二预设方向、第三预设方向及第四预设方向上相邻的网格确定为所述网格的相邻网格;
基于所述目标点云数据、所述网格及所述网格的相邻网格,计算所述目标点云数据与所述网格的距离。
6.如权利要求1至5任一项所述的定位方法,其特征在于,在所述对原始点云数据进行分类,得到地面点云数据及地上点云数据之前,所述定位方法还包括:
获取所述激光雷达在指定偏转角度范围内所采集的点云数据作为所述原始点云数据。
7.一种定位装置,其特征在于,所述定位装置应用于机器人,包括:
分类单元,用于对原始点云数据进行分类,得到地面点云数据及地上点云数据,其中,所述原始点云数据通过所述机器人的激光雷达进行采集;
提取单元,用于对所述地上点云数据进行特征提取,得到地上目标点云数据,其中,所述地上目标点云数据的数量少于所述地上点云数据的数量;
降采样单元,用于对所述地面点云数据进行降采样,得到地面目标点云数据;
配准单元,用于基于目标点云数据及预设的环境点云地图进行点云配准,以实现对所述机器人的定位,其中,所述目标点云数据包括所述地上目标点云数据及所述地面目标点云数据;
其中,所述配准单元,包括:
划分子单元,用于将所述环境点云地图划分为第三预设数量的网格;
计算子单元,用于针对每个目标点云数据,基于各个网格及各个网格的相邻网格,分别计算所述目标点云数据与各个网格的距离,其中,网格的相邻网格为在预设方向上与该网格相邻的网格,所述距离指的是:所述目标点云数据与基于网格计算而得的高斯分布的距离;
配准子单元,用于通过每个目标点云数据与各个网格的距离进行点云配准,以实现对所述机器人的定位。
8.一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的方法。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110160341.5A CN112950708B (zh) | 2021-02-05 | 2021-02-05 | 一种定位方法、定位装置及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110160341.5A CN112950708B (zh) | 2021-02-05 | 2021-02-05 | 一种定位方法、定位装置及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112950708A CN112950708A (zh) | 2021-06-11 |
CN112950708B true CN112950708B (zh) | 2023-12-15 |
Family
ID=76242469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110160341.5A Active CN112950708B (zh) | 2021-02-05 | 2021-02-05 | 一种定位方法、定位装置及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112950708B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114509785A (zh) * | 2022-02-16 | 2022-05-17 | 中国第一汽车股份有限公司 | 三维物体检测方法、装置、存储介质、处理器及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111175775A (zh) * | 2018-11-09 | 2020-05-19 | 阿里巴巴集团控股有限公司 | 定位数据生成方法、装置以及电子设备 |
CN111179274A (zh) * | 2019-12-30 | 2020-05-19 | 深圳一清创新科技有限公司 | 地图地面分割方法、装置、计算机设备和存储介质 |
CN111813120A (zh) * | 2020-07-10 | 2020-10-23 | 北京林业大学 | 机器人的移动目标的识别方法、装置和电子设备 |
CN111949943A (zh) * | 2020-07-24 | 2020-11-17 | 北京航空航天大学 | 一种面向高级自动驾驶的v2x和激光点云配准的车辆融合定位方法 |
CN112154303A (zh) * | 2019-07-29 | 2020-12-29 | 深圳市大疆创新科技有限公司 | 高精度地图定位方法、系统、平台及计算机可读存储介质 |
CN112219225A (zh) * | 2019-09-26 | 2021-01-12 | 深圳市大疆创新科技有限公司 | 定位方法、系统及可移动平台 |
CN112241010A (zh) * | 2019-09-17 | 2021-01-19 | 北京新能源汽车技术创新中心有限公司 | 定位方法、装置、计算机设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109064506B (zh) * | 2018-07-04 | 2020-03-13 | 百度在线网络技术(北京)有限公司 | 高精度地图生成方法、装置及存储介质 |
-
2021
- 2021-02-05 CN CN202110160341.5A patent/CN112950708B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111175775A (zh) * | 2018-11-09 | 2020-05-19 | 阿里巴巴集团控股有限公司 | 定位数据生成方法、装置以及电子设备 |
CN112154303A (zh) * | 2019-07-29 | 2020-12-29 | 深圳市大疆创新科技有限公司 | 高精度地图定位方法、系统、平台及计算机可读存储介质 |
CN112241010A (zh) * | 2019-09-17 | 2021-01-19 | 北京新能源汽车技术创新中心有限公司 | 定位方法、装置、计算机设备和存储介质 |
CN112219225A (zh) * | 2019-09-26 | 2021-01-12 | 深圳市大疆创新科技有限公司 | 定位方法、系统及可移动平台 |
CN111179274A (zh) * | 2019-12-30 | 2020-05-19 | 深圳一清创新科技有限公司 | 地图地面分割方法、装置、计算机设备和存储介质 |
CN111813120A (zh) * | 2020-07-10 | 2020-10-23 | 北京林业大学 | 机器人的移动目标的识别方法、装置和电子设备 |
CN111949943A (zh) * | 2020-07-24 | 2020-11-17 | 北京航空航天大学 | 一种面向高级自动驾驶的v2x和激光点云配准的车辆融合定位方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112950708A (zh) | 2021-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021097618A1 (zh) | 点云分割方法、系统及计算机存储介质 | |
Mongus et al. | Parameter-free ground filtering of LiDAR data for automatic DTM generation | |
CN104977584B (zh) | 一种对流天气的临近预报方法及系统 | |
US9817107B2 (en) | Above-ground building recognition method and navigation method combining laser and infrared | |
CN109977466B (zh) | 一种三维扫描视点规划方法、装置及计算机可读存储介质 | |
CN109241978B (zh) | 地基三维激光点云中平面片的快速提取方法 | |
CN111209828B (zh) | 从机载激光雷达点云中提取建筑物屋顶点的方法和系统 | |
CN111915657B (zh) | 一种点云配准方法、装置、电子设备及存储介质 | |
CN114332134B (zh) | 一种基于密集点云的建筑物立面提取方法和装置 | |
CN113569958B (zh) | 激光点云数据聚类方法、装置、设备及介质 | |
CN112950708B (zh) | 一种定位方法、定位装置及机器人 | |
CN114299318A (zh) | 一种快速点云数据处理和目标图像匹配的方法及系统 | |
CN113096181B (zh) | 设备位姿的确定方法、装置、存储介质及电子装置 | |
Li et al. | Feature extraction and modeling of urban building from vehicle-borne laser scanning data | |
CN107765257A (zh) | 一种基于反射强度辅助外部校准的激光探测与测量方法 | |
Awadallah et al. | A two-stage algorithm for extraction of ground and top of canopy in photon-counting profiling-LiDAR data in preparation for the ICESat-2 mission | |
CN114966630B (zh) | 一种基于目标球体的多激光雷达校准方法及系统 | |
Pérez-García et al. | Progressive densification and region growing methods for LIDAR data classification | |
CN116994029A (zh) | 一种用于多源数据的融合分类方法及系统 | |
CN110969650A (zh) | 一种基于中心投影的强度图像与纹理序列间的配准方法 | |
CN115932883A (zh) | 基于激光雷达的导线舞动边界识别方法 | |
CN115861626A (zh) | 目标检测方法、装置、终端设备及计算机可读存储介质 | |
CN113762310B (zh) | 一种点云数据分类方法、装置、计算机存储介质及系统 | |
CN111932574B (zh) | 基于多层次语义特征的建筑立面点云提取系统及方法 | |
CN116863325A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |