CN108875804B - 一种基于激光点云数据的数据处理方法和相关装置 - Google Patents
一种基于激光点云数据的数据处理方法和相关装置 Download PDFInfo
- Publication number
- CN108875804B CN108875804B CN201810547804.1A CN201810547804A CN108875804B CN 108875804 B CN108875804 B CN 108875804B CN 201810547804 A CN201810547804 A CN 201810547804A CN 108875804 B CN108875804 B CN 108875804B
- Authority
- CN
- China
- Prior art keywords
- point
- laser
- dimensional
- target
- points
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明实施例公开了一种基于激光点云数据的数据处理方法和相关装置,所述方法包括:获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。采用本发明,可以快速进行邻近点的查找,以提高点云法向量的计算效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于激光点云数据的数据处理方法和相关装置。
背景技术
激光点云是利用激光在同一空间参考系下,获取目标物体表面每个采样点的空间坐标,以得到一系列表达目标空间分布和目标表面特性的海量点集合。目前,计算这些海量点集合中每个激光点的法向量可以通过以下方式:
直接从点云数据集中近似推断表面法线,即通过将表面某一个求法线的问题近似于估计表面的一个相切面法线的问题,进而转变成最小二乘法平面拟合问题。其中,估计表面法线主要是通过计算协方差矩阵的特征矢量和特征值,且该协方差矩阵是由中心点的近邻元素所构建。因此,在进行近邻元素的查询过程中,需要建立三维空间的k-d树结构,再通过该k-d树结构对目标点进行邻近搜索。然而,三维空间中的k-d树的构建本身需要一定的耗时,且从树的根部到目标点所在的子节点所在的区域的搜索仍需消耗一定的时间,因此,该方法会降低对该点云数据集合中各激光点的法向量的计算效率。
发明内容
本发明实施例提供一种基于激光点云数据的数据处理方法和相关装置,可以提高激光点云法向量的计算效率。
本发明一方面提供了一种基于激光点云数据的数据处理方法,包括:
获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;
基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
其中,所述激光点信息包含每个激光点分别对应的激光标识,水平角度以及水平分辨率,所述激光标识用于区分每一帧中所有激光点分别对应的激光线束。
其中,所述基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息,包括:
在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率;
将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息。
其中,所述基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量,包括:
在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量;
当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
其中,所述基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量,包括:
基于所述中心点对应的所述邻近点,构建邻近点集;
获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据确定目标平面;
计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量。
其中,所述计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量,包括:
在所述目标平面上,选取与中心点相邻的两个邻近点,构建一个三角区域;其中,所述三角区域为所述目标平面的局部区域;
基于所述三角区域中三个激光点分别对应的三维坐标值,计算所述三角区域中任意两个激光点所构成的相交线段的方向向量,并基于所述方向向量,确定所述三角区域的法向量;
将所述三角区域的法向量作为位于所述目标平面上的所述中心点对应的法向量。
其中,所述基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量,包括:
基于所述中心点对应的所述邻近点,构建邻近点集;
获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据构建协方差矩阵;
计算所述协方差矩阵的特征值和特征向量,在所述特征值中,筛选出最小特征值所对应的特征向量,作为所述目标点的法向量。
其中,所述激光点信息还包括每个激光点分别对应的深度信息,所述方法还包括:
基于所述深度信息计算各激光点的灰度值,并将所述二维平面中的各激光点作为像素点,为各像素点设置相对应的灰度值,生成所述激光点云数据对应的前视图。
本发明一方面提供了一种基于激光点云数据的数据处理装置,包括:
点云数据获取模块,用于获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
位置信息确定模块,用于基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;
法向量确定模块,用于基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
其中,所述激光点信息包含每个激光点分别对应的激光标识,水平角度以及水平分辨率,所述激光标识用于区分每一帧中所有激光点分别对应的激光线束。
其中,所述位置信息确定模块包括:
目标点选择单元,在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率;
目标位置确定单元,用于将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
位置信息确定单元,用于当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息。
其中,所述法向量确定模块包括:
中心点选择单元,用于在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
欧式距离计算单元,用于基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
邻近点确定单元,用于将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
邻近点集构建单元,用于基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量;
法向量确定单元,用于当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
其中,所述邻近点集构建单元包括:
第一构建子单元,基于所述中心点对应的所述邻近点,构建邻近点集;
目标平面确定子单元,获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据确定目标平面;
第一计算子单元,用于计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量。
其中,所述法向量计算子单元,具体用于在所述目标平面上,选取与中心点相邻的两个邻近点,构建一个三角区域,并基于所述三角区域中三个激光点分别对应的三维坐标值,计算所述三角区域中任意两个激光点所构成的相交线段的方向向量,并基于所述方向向量,确定所述三角区域的法向量,并将所述三角区域的法向量作为位于所述目标平面上的所述中心点对应的法向量;其中,所述三角区域为所述目标平面的局部区域;
其中,所述邻近点集构建单元包括:
第二构建子单元,用于基于所述中心点对应的所述邻近点,构建邻近点集;
协方差矩阵构建单元,用于获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据构建协方差矩阵;
第二计算子单元,用于计算所述协方差矩阵的特征值和特征向量,在所述特征值中,筛选出最小特征值所对应的特征向量,作为所述目标点的法向量。
其中,所述激光点信息还包括每个激光点分别对应的深度信息,所述装置还包括:
前视图生成模块,用于基于所述深度信息计算各激光点的灰度值,并将所述二维平面中的各激光点作为像素点,为各像素点设置相对应的灰度值,生成所述激光点云数据对应的前视图。
本发明一方面提供了基于激光点云数据的数据处理装置,包括:处理器、存储器以及网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供网络通讯功能,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行本发明实施例中上述一方面中的方法。
本发明一方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述处理器执行所述程序指令时执行本发明实施例中上述一方面中的方法。
本发明实施例通过获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。由此可见,通过所述激光点云数据的激光点信息,可以确定各激光点在二维平面中的位置关系,从而可以在所述二维平面上快速查找到各个激光点分别对应的邻近点集,即通过在所述二维平面中进行近邻查找,可以有效地提高邻近点的查找效率,从而可以提高所述激光点云数据中各激光法向量的计算效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种系统架构的结构示意图;
图2是本发明实施例提供的一种基于激光点云数据的数据处理方法的流程示意图;
图3是本发明实施例提供的一种查找邻近点的示意图;
图4是本发明实施例提供的另一种基于激光点云数据的数据处理方法的流程示意图;
图5是本发明实施例提供的又一种基于激光点云数据的数据处理方法的流程示意图;
图6a是本发明实施例提供的一种局部激光点在二维平面上的位置信息的示意图;
图6b是本发明实施例提供的一种生成局部前视图的示意图;
图7是本发明实施例提供的一种基于激光点云数据的数据处理装置的结构示意图;
图8是本发明实施例提供的另一种基于激光点云数据的数据处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的一种系统架构的示意图,如图1所示,所述系统架构可以包括数据处理装置2000,车载终端3000,如图1所示,所述数据处理装置2000可以安装在所述车载终端3000的顶端,且数据处理装置2000可以与所述车载终端3000进行网络连接,即所述数据处理装置2000可以通过有线或无线连接方式连接该车载终端3000。
其中,所述车载终端3000可以为具备数据运算能力的计算机、平板电脑等终端,即所述车载终端3000可用于接收所述数据处理装置2000通过数据处理后的数据。
其中,所述数据处理装置2000可以为激光雷达、立体摄像机等具有三维(即3D)测量特性的设备。其中,所述激光雷达可以为能发出64线激光束的激光雷达,也可以为能发出32线激光束的激光雷达,这里将不对激光雷达的线束进行限制。
如图1所示,在所述车载终端3000进行自动行驶的过程中,可以通过所述数据处理装置2000(例如,64线激光雷达)向目标物体发射探测信号(即激光束),并实时地接收到从目标物体(如图1所示的树)反射回来的回波信号,以得到描述所述目标物体表面特性的海量点集合(即如图1所示的激光点云数据4000,所述激光点云数据4000中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据)。
因此,当所述数据处理装置2000将获取到的所述激光点云数据4000传输至所述车载终端3000时,所述车载终端3000可以进一步根据这些扫描到的激光点信息(例如,距离信息),生成相应的自动驾驶指令,并可以进一步向车辆底盘的执行机构下达该自动驾驶指令(例如,前方100米处有颗树,请减速行驶),从而可以控制车辆进行减速,以实现自动驾驶。
鉴于此,所述数据处理装置2000在对所述目标对象(如图1所示的树)进行感知和识别的过程中,需要对采集到的激光点云数据4000进行数据处理,即需要计算这些激光点云数据4000的法向量,以提高后续车辆行驶过程中对周围环境(例如,车辆、行人)的快速探测、定位以及跟踪,从而提高了自动驾驶的感知能力。为便于理解,本发明将通过图2-图5的实施例对法向量的具体计算过程进行详细说明。
进一步地,请参见图2,是本发明实施例提供的一种基于激光点云数据的数据处理方法的流程示意图。如图2所示,所述方法可以包括:
步骤S101,获取目标物体对应的激光点云数据;
具体的,数据处理装置通过对目标物体进行三维(即3D)扫描,可以获取反映目标物体表面特性的海量点的集合(即激光点云数据),其中,所述激光点云数据中可以包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
其中,所述激光点信息可以包含每个激光点分别对应的激光标识,水平角度以及水平分辨率,所述激光标识用于区分每一帧中所有激光点分别对应的激光线束。
其中,所述数据处理装置可以为上述图1所对应实施例中的数据处理装置2000,即所述数据处理装置可以为激光雷达、立体摄像机等具有3D扫描特性的设备。
例如,以64线激光雷达为例,它可以通过向目标物体发射探测信号(即激光束),然后可以接收到从该目标物体反射回来的回波信号,于是,所述64线激光雷达可进一步将发射的探测信号和接收到的回波信号进行处理,得到所述目标物体的相关信息,例如,目标距离,目标方位,高度、速度、姿态、甚至形状等信息,从而可对所述目标物体进行探测、跟踪和识别。
此外,对于安装在车辆顶端的该64线激光雷达而言,它的64个激光器均可以通过环扫周围360度,来获得周围物体的激光信息。其中,每个激光器均对应一个激光标识,所述激光标识可以用于区分每一帧中所有激光点分别对应的激光线束(比如,可以用数字0-63来逐一标识该64线激光雷达中的各个激光器),因此,对于打在目标物体上的每个激光点而言,可以快速确定它是由第几条激光线束所返回的。
步骤S102,基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;
具体地,所述数据处理装置在执行完上述步骤S101之后,可以获取到目标物体上的所有激光点(即激光点云)分别对应的激光点信息(即每个激光点分别对应的激光标识,水平角度以及水平分辨率)。因此,所述数据处理装置可以进一步根据所述激光点云数据中的所述激光点信息,即将各激光点分别对应的激光标识作为二维矩阵的行值,并对应的将各激光点分别对应的水平角度和水平分辨率之商作为该二维矩阵的行值,随后,所述数据处理装置可将各激光点的行值和列值作为各激光点在二维平面上的二维坐标,从而可以确定出每个激光点在所述二维平面上的位置信息。
比如,以所述数据处理装置为64线激光雷达为例,当该64线激光雷达用于对周围环境进行360度扫描时,会在同一时刻向周围物体发射出64束激光线,以使周围物体上显示出64个激光点(为便于理解,本发明实施例仅以纵向分布的64个激光器为例,故而这64个激光器所产生的64个激光点将会纵向分布)。此时,每个激光点均会对应一个激光标识。此时,当该64线激光雷达以水平角度(1度)对周围环境进行水平扫视时,该激光雷达可实时将环视过程中打在目标物体上的激光点投影在一个圆柱上,且在该圆柱上,借助于激光线束与激光线束之间的关系,可快速确定出在同一水平高度上的激光点将具有相同激光标识(例如,同一水平高度上的360个激光点的激光标识可以为1)。以此类推,将会在该圆柱面上形成64圈激光点,且每圈均有360个激光点。
鉴于此,本发明实施例在将该圆柱面上的这些激光点进行摊开时,可以利用空间中这些点的先验位置信息(即在3维空间中汇总邻近的激光点,其近邻在二维平面上也必然是近邻的),使这些激光点按照一定的位置排布方式分布在二维平面上。因此,所述数据处理装置可以将各激光点分别对应的激光标识作为二维矩阵的行值,并对应的将各激光点分别对应的水平角度和水平分辨率之商作为该二维矩阵的行值,随后,所述数据处理装置可进一步将各激光点的行值和列值作为各激光点在二维平面上的二维坐标,从而可以快速确定出每个激光点在所述二维平面上的位置信息。
其中,每个激光点在二维平面上的二维坐标可以表示为:(x,y)=(激光标识,水平角度/水平分辨率)。因此,对于该圆柱上的一个激光点A(即目标点)而言,可以将该激光点A对应的激光标识(例如,1)作为该激光点A在二维矩阵中的行值(即第一行),并将该激光点A对应的水平角度和水平分辨率之商(例如1),确定为该激光点A在二维矩阵中的列值(即第一列)。于是,所述数据处理装置可以将该激光点A的行值(1)和列值(1)作为其二维坐标(即该激光点A的二维坐标可表示为(1,1)),从而可以确定出该激光点A在二维平面上的位置信息。以此类推,可以快速确定出每个激光点在该二维平面上的位置信息。
可见,通过计算各激光点在二维平面上的行值和列值的方式,可以快速建立起各激光点在二维平面上的拓扑关系,从而可以快速的在该二维平面上定位出与各激光点相邻的各激光点的位置信息,以便于所述数据处理装置可以进一步执行步骤S103,即可以基于各激光点在二维平面上的位置关系快速地进行领域搜索。
当然,本发明实施例也适用于其它分布方式的激光器,即在二维矩阵上,具有相同激光标识的激光点仍会分布在同一行,这里将不对其激光雷达中各激光器的具体分布形式进行限制。
步骤S103,基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
具体的,所述数据处理装置在执行完上述步骤S102之后,可以进一步在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的位置关系(即二维平面中的二维坐标),将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点,并基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离,并将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点,并基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量;当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
进一步的,请参见图3,是本发明实施例提供的一种查找邻近点的示意图。图3所示的激光点为目标物体B所映射在二维平面上的局部激光点。如图3所示,在该二维平面上,选择一个激光点(即激光点B)作为邻近查找的中心点,并基于所述中心点在所述二维平面中的二维坐标(例如,(15,15)),将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点(即可以将如图3所示的邻近查找范围区域100a内的所有激光点作为待处理点)。
应当理解,该二维平面上的这些激光点的二维坐标仅用于描述各激光点之间的位置关系,是一个虚拟存在的平面,对于机器而言,其在对激光点B进行邻近点搜索的时候,则只需在该二维矩阵中的找到激光点B的位置,即明确该激光点B作为中心点时,处于该二维矩阵中的哪一行和哪一列,例如,激光点B处于该二维矩阵中的第15行和第15列,并以该点为中心点,将间隔4行1列(即选择范围阈值)内的所有激光点确定为待处理点,进一步地,请参见图3所示选择范围阈值内所圈出的邻近查找范围区域100a中的激光点。
随后,所述数据处理装置可以基于如图3所示的局部激光点云数据中的三维数据,进一步计算如图3所示的各个待处理点与所述中心点之间的三维欧式距离,并将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点,从而所述数据处理装置可以根据所确定的邻近点,构建该中心点所对应的邻近点集,并可进一步基于所述邻近点集确定所述中心点(即激光点B)对应的法向量。
其中,所述中心点所对应的法向量的计算有两种方式,一种为通过曲面重建技术,即此时,所述数据处理装置将会通过确定的邻近点集来构建一个目标平面,从而使得该目标平面的法线即为该中心点对应的法向量。另一种为通过该邻近点集近似推断表面法线。即此时,估算表面法线就演变成了分析该邻近点集所对应的协方差矩阵的特征值和特征向量。其中,协方差矩阵的最小特征值所对应的特征向量即为该中心点所对应的法向量。
应当理解,本发明中其它激光点的法向量的计算也可参见图3所对应实施例中对激光点B的法向量的计算,这里将不再进行赘述。
可见,所述数据处理装置通过在二维平面上进行近邻搜索,可以快速实现基于二维位置关系的邻近查找,从而可以更为快速的查找到各激光点分别对应的邻近点集,进而可有效提高所述各激光点分别对应的法向量的计算效率。
本发明实施例通过获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。由此可见,通过所述激光点云数据的激光点信息,可以确定各激光点在二维平面中的位置关系,从而可以在所述二维平面上快速查找到各个激光点分别对应的邻近点集,即通过在所述二维平面中进行近邻查找,可以有效地提高邻近点的查找效率,从而可以提高所述激光点云数据中各激光法向量的计算效率。
进一步的,请参见图4,是本发明实施例提供的另一种基于激光点云数据的数据处理方法的流程示意图。如图4所示,所述方法可以包括:
步骤S201,获取目标物体对应的激光点云数据;
其中,所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据。其中,步骤S201的具体实现方式可参见上述图2所对应实施例中对步骤S101的描述,这里将不再进行赘述。
步骤S202,在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率。
步骤S203,将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
步骤S204,当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息。
比如,以所述数据处理装置为32线激光雷达为例,当该32线激光雷达用于对周围环境进行360度扫描时,会向周围物体发射出32束激光线,以使周围物体上显示出32个激光点。此时,每个激光点均会对应一个激光标识。此时,当该32线激光雷达以水平角度为1度对周围环境进行水平扫视时,可将环视过程中打在目标物体上的激光点投影在一个圆柱上,且在该圆柱上,借助于激光线束与激光线束之间的关系,可快速确定形成32圈激光点,所以,该32线激光雷达扫视一周可得到32*360个激光点。
因此,为了将该圆柱面摊开成一个矩形,所述数据处理装置(即32线激光雷达)可进一步在采集到的所有激光点中,选择一个激光点C作为目标点,并将该激光点C所对应的激光标识(例如,10)作为该激光点C在二维矩阵中的行值(即第10行),并将该激光点C对应的水平角度和水平分辨率之商(例如10),确定为该激光点C在二维矩阵中的列值(即第10列)。于是,所述数据处理装置可以将该激光点C的行值(10)和列值(10)作为其二维坐标(即该激光点C的二维坐标可表示为(10,10)),从而可以确定出该激光点C在二维平面上的位置信息。
因此,对于该32线激光雷达所采集到的其他激光点而言,仍可参见激光点C在二维平面中确定位置关系的具体过程,这里将不再赘述。因此,当所有激光点均作为所述目标点时,可以进一步获得所述各激光点(即32*360个激光点)在二维平面上的位置信息。
步骤S205,在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
比如,在二维平面中,以激光点a1作为中心点为例,该中心点在二维平面上的位置坐标为(6,6),即该中心点位于二维矩阵的第六行、第六列。因此,当选择范围阈值为间隔2行2列时,所述数据处理装置可在二维矩阵中将距离该中心点2行、2列的4个激光点(例如,激光点a2,a3,a4,a5)作为待处理点。
步骤S206,基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
其中,所述待处理点与所述中心点之间的三维欧式距离D满足:
D=sqrt((x1-x2)^2+(y1-y2)^2+(z1-z2)^2),
其中,x1,y1,z1为中心点在三维空间中的三维坐标值;x2,y2,z2为上述步骤S205中所述选择范围阈值内的待处理点的三维坐标值。
步骤S207,将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
比如,仍以中心点为激光点a1为例,其对应的待处理点为激光点a2,激光点a3,激光点a4和激光点a5,其中,由上述步骤S206所定义的三维欧式距离D计算公式,可得激光点a1与激光点a2的三维欧式距离D1为5,激光点a1与激光点a3的三维欧式距离D2为4,激光点a1与激光点a4的三维欧式距离D3为5,激光点a1与激光点a5的三维欧式距离D4为7;若所述距离阈值为6,则所述数据处理装置可进一步确定激光点a2,激光点a3和激光点a4为所述中心点(即激光点a1)的邻近点。
可见,通过在二维平面上进行邻近点的搜索,可以快速确定出与所述中心点对应的邻近点,相比于在三维空间中进行邻近点的查找,极大的提高了查找效率,从而可进一步执行步骤S208,以快速计算出所述中心点对应的法向量。
应当理解,在二维平面中进行邻近点的搜索,主要是基于各激光点之间位置关系的先验性,即认为相邻的点之间具有一定的关系,换言之,在3D空间中汇总近邻的点必定也会在二维平面(该二维平面也可以称之为前视图)相邻。
步骤S208,基于所述中心点的所述邻近点,构建邻近点集;
步骤S209,获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据确定目标平面;
步骤S210,计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量。
具体地,所述数据处理装置可在所述目标平面上,选取与中心点相邻的两个邻近点,构建一个三角区域,并基于所述三角区域中三个激光点分别对应的三维坐标值,计算所述三角区域中任意两个激光点所构成的相交线段的方向向量,并基于所述方向向量,确定所述三角区域的法向量,并将所述三角区域的法向量作为位于所述目标平面上的所述中心点对应的法向量。
其中,所述三角区域为所述目标平面的局部区域,于是,在该邻近点集所构成的目标平面上,可以通过求取该三角区域的法向量作为位于所述目标平面上的所述中心点对应的法向量,从而有效提高中心点法向量的计算效率。
应当理解,对于所述二维平面上中的每个激光点,本发明实施例均会按照步骤S205-步骤S208进行邻近点集的查找,从而可以计算得到每个激光点的法向量。
步骤S211,当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
本发明实施例通过获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。由此可见,通过所述激光点云数据的激光点信息,可以确定各激光点在二维平面中的位置关系,从而可以在所述二维平面上快速查找到各个激光点分别对应的邻近点集,即通过在所述二维平面中进行近邻查找,可以有效地提高邻近点的查找效率,从而可以提高所述激光点云数据中各激光法向量的计算效率。
进一步地,请参见进一步的,请参见图5,是本发明实施例提供的又一种基于激光点云数据的数据处理方法的流程示意图。如图5所示,所述方法可以包括:
步骤S301,获取目标物体对应的激光点云数据;
其中,步骤S301的具体实现方式可参见上述图2所对应实施例中对步骤S101的描述,这里将不再进行赘述。其中,所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据。
步骤S302,在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率。
步骤S303,将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
步骤S304,当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息。
步骤S305,在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
步骤S306,基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
步骤S307,将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
步骤S308,基于所述中心点的所述邻近点,构建邻近点集;
其中,所述步骤S301-步骤S308的具体实现方式可参见上述图4所对应实施例中对步骤S201-步骤S208的描述,这里将不再继续赘述。
步骤S309,获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据构建协方差矩阵;
其中,所述协方差矩阵可用于计算不同维度之间的协方差,比如,对于三维的数据集而言,可将该协方差矩阵C定义为:
可见,该协方差矩阵C是一个对称的矩阵,而且其对角线是各个维度上的方差,其中,cov代表协方差运算。对于三维空间中的每个激光点而言,(x,y,z)为各激光点在三维空间中的三维坐标(即每个激光点分别对应的三维数据)。因此,在查找到所述中心点的邻近点集之后,可以将各邻近点的三维数据作为求取协方差矩阵的元素(即样本),其中,每行是一个样本,每列为一个维度,所以需要按列计算均值。
步骤S310,计算所述协方差矩阵的特征值和特征向量,在所述特征值中,筛选出最小特征值所对应的特征向量,作为所述目标点的法向量;
其中,在三维空间中,所述协方差矩阵的元素为所述中心点所对应的邻近点集中各激光点的三维数据(即三维坐标值),在三维空间中,可以得到三个特征值(比如,λ1,λ2,λ3)以及三个特征值分别对应的特征矢量(比如,特征值λ1对应特征矢量v1,特征值λ2对应特征矢量v2,特征值λ3对应特征矢量v3)。其中,特征值λ1的值大于特征值λ2的值,特征值λ2的值大于特征值λ3的值(即三个特征值满足:λ1>λ2>λ3),于是,所述数据处理装置可以在这三个特征值中,将筛选出的最小特征值(λ3)所对应的特征向量v3作为所述目标点的法向量。其中,最大特征值λ1,用于描述三维空间中这些激光点的传播方向。
应当理解,对于所述二维平面上中的每个激光点,本发明实施例均会按照步骤S305-步骤S308进行邻近点集的查找,从而可以通过协方差矩阵计算得到每个激光点的法向量。
步骤S311,当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
可选的,所述数据处理装置还可以基于所述深度信息计算各激光点的灰度值,并将所述二维平面中的各激光点作为像素点,为各像素点设置相对应的灰度值,生成所述激光点云数据对应的前视图。
其中,所述深度信息可以为每个激光点在所述二维矩阵中的元素,可选的,所述深度信息还可以与每个激光点在所述二维矩阵中的元素具有一一映射关系。由于二维矩阵的行值和列值用于描述各激光点在二维平面上的位置信息,当引入每个激光点的深度信息后,所述数据处理装置可以计算各激光点的灰度值,并在将所述二维平面中的各激光点作为像素点时,可以进一步为各像素点设置相对应的灰度值,从而生成所述激光点云数据对应的前视图。鉴于此,在该前视图中,可以进一步看到各激光点所呈现出的一种远近关系。比如,在车辆自动行驶的过程中,可以将扫描到的周围环境信息(比如,马路边一排排的护栏)呈现在该前视图中,以提供一种可视化的界面。
进一步地,请参见图6a和图6b,是本发明实施例提供的一种前视图的示意图。其中,图6a为局部激光点在二维平面上的位置信息的示意图。所述数据处理装置在获取到所述目标物体(其中,所述目标物体可以为如图6b所示的目标显示区域200a内的目标对象)对应的激光点云数据之后,可以进一步基于所述激光点云数据中的激光点信息(即每个激光点分别对应的激光标识,水平角度以及水平分辨率),确定所述各激光点在二维平面上的位置信息,并可以根据所述激光点信息中的所述深度信息,计算各激光点的灰度值(例如,可以计算出图6a所示的局部区域中各激光点的灰度值),并在将所述二维平面中的各激光点作为像素点(即将图6a所述的局部区域中各激光点)时,可以进一步为各像素点设置相对应的灰度值,从而生成如图6a所示的局部激光点云数据对应的局部区域的前视图(即如图6b所示的前视图)。
可见,对于所述数据处理装置所扫描到的所有激光点而言,均可以通过各激光点分别对应的深度信息,计算出每个激光点的灰度值,从而在将每个激光点作为像素点时,可以对应的为每个激光点设置灰度值,从而可以得到一个完整的前视图(即可以生成所述激光点云数据对应的前视图)。其中,所述完整的前视图的具体生成方法可参见图6a和6b所示的由局部区域内各激光点生成前视图的具体生成方法。
本发明实施例通过获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。由此可见,通过所述激光点云数据的激光点信息,可以确定各激光点在二维平面中的位置关系,从而可以在所述二维平面上快速查找到各个激光点分别对应的邻近点集,即通过在所述二维平面中进行近邻查找,可以有效地提高邻近点的查找效率,从而可以提高所述激光点云数据中各激光法向量的计算效率。
进一步地,请参见图7,是本发明实施例提供的一种基于激光点云数据的数据处理装置的结构示意图,如图7所示,所述数据处理装1可以为上述图1所对应实施例中的数据处理装置2000,所述数据处理装1可以包括:点云数据获取模块10,位置信息确定模块20和法向量确定模块30;进一步地,所述数据处理装置还可以包括:前视图生成模块40;
所述点云数据获取模块10,用于获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
所述位置信息确定模块20,用于基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;
其中,所述激光点信息包含每个激光点分别对应的激光标识,水平角度以及水平分辨率,所述激光标识用于区分每一帧中所有激光点分别对应的激光线束。
其中,所述位置信息确定模块20包括:目标点选择单元201,目标位置确定单元202和位置信息确定单元203;
目标点选择单元,在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率;
目标位置确定单元,用于将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
位置信息确定单元,用于当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息。
其中,所述目标点选择单元201,目标位置确定单元202和位置信息确定单元203的具体实现方式可参见上述图2所对应实施例中的对步骤S102的描述,这里将不再继续进行赘述。
所述法向量确定模块30,用于基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
其中,所述法向量确定模块30包括:中心点选择单元301,欧式距离计算单元302,邻近点确定单元303,邻近点集构建单元304和法向量确定单元305;
所述中心点选择单元301,用于在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
所述欧式距离计算单元302,用于基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
所述邻近点确定单元303,用于将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
所述邻近点集构建单元304,用于基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量;
其中,所述邻近点集构建单元304包括:第一构建子单元3041,目标平面确定子单元3042和第一计算子单元3043;
所述第一构建子单元3041,基于所述中心点对应的所述邻近点,构建邻近点集;
所述目标平面确定子单元3042,获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据确定目标平面;
所述第一计算子单元3043,用于计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量。
其中,所述第一计算子单元3043,具体用于在所述目标平面上,选取与中心点相邻的两个邻近点,构建一个三角区域,并基于所述三角区域中三个激光点分别对应的三维坐标值,计算所述三角区域中任意两个激光点所构成的相交线段的方向向量,并基于所述方向向量,确定所述三角区域的法向量,并将所述三角区域的法向量作为位于所述目标平面上的所述中心点对应的法向量;其中,所述三角区域为所述目标平面的局部区域;
其中,所述第一构建子单元3041,目标平面确定子单元3042和第一计算子单元3043的具体实现方式可参见上述图4所对应实施例中的对步骤S208-步骤S210的描述,这里将不再继续进行赘述。
可选地,所述邻近点集构建单元304还可以包括:第二构建子单元3044,协方差矩阵构建子单元3045,第二计算子单元3046;
所述第二构建子单元3044,用于基于所述中心点对应的所述邻近点,构建邻近点集;
所述协方差矩阵构建子单元3045,用于获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据构建协方差矩阵;
所述第二计算子单元3046,用于计算所述协方差矩阵的特征值和特征向量,在所述特征值中,筛选出最小特征值所对应的特征向量,作为所述目标点的法向量。
其中,所述第二构建子单元3044,协方差矩阵构建子单元3045,第二计算子单元3046的具体实现方式可参见上述图5所对应实施例中的对步骤S308-步骤S310的描述,这里将不再继续进行赘述。
应当理解,当所述数据处理装置1采用所述第二构建子单元3044,协方差矩阵构建子单元3045,第二计算子单元3046计算所述目标点的法向量时,所述第一构建子单元3041,目标平面确定子单元3042和第一计算子单元3043将不用于计算所述目标点的法向量,反之也可成立,即当所述第一构建子单元3041,目标平面确定子单元3042和第一计算子单元3043用于计算所述目标点的法向量时,所述第二构建子单元3044,协方差矩阵构建子单元3045,第二计算子单元3046将不用于计算所述目标点的法向量。
所述法向量确定单元305,用于当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
其中,所述中心点选择单元301,欧式距离计算单元302,邻近点确定单元303,邻近点集构建单元304和法向量确定单元305的具体实现方式可参见上述图4所对应实施例中的对步骤S205-步骤S211的描述,这里将不再继续进行赘述。
其中,所述点云数据获取模块10,位置信息确定模块20,法向量确定模块30的具体实现方式可参见上述图2所对应实施例中的对步骤S101-步骤S103的描述,这里将不再继续进行赘述。
可选地,所述激光点信息还包括每个激光点分别对应的深度信息,所述前视图生成模块40,用于基于所述深度信息计算各激光点的灰度值,并将所述二维平面中的各激光点作为像素点,为各像素点设置相对应的灰度值,生成所述激光点云数据对应的前视图。
其中,所述前视图生成模块40的具体实现方式可参见上述图5所对应实施例中对所述前视图的描述,这里将不再继续进行赘述。
本发明实施例通过获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。由此可见,通过所述激光点云数据的激光点信息,可以确定各激光点在二维平面中的位置关系,从而可以在所述二维平面上快速查找到各个激光点分别对应的邻近点集,即通过在所述二维平面中进行近邻查找,可以有效地提高邻近点的查找效率,从而可以提高所述激光点云数据中各激光法向量的计算效率。
进一步地,请参见图8,是本发明实施例提供的另一种基于激光点云数据的数据处理装置的结构示意图。如图8所示,所述数据处理装置1000可以为上述图1对应实施例中的数据处理装置2000,所述数据处理装置1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述数据处理装置1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选的,用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图8所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图8所示的数据处理装置1000中,网络接口1004用于提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
基于所述激光点云数据中的激光点信息,确定所述各激光点在二维平面上的位置信息;
基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
应当理解,本发明实施例中所描述的数据处理装置1000可执行前文图2、图4或图5所对应实施例中对所述数据处理方法的描述,也可执行前文图7所对应实施例中对所述数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的数据处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2、图4或图5所对应实施例中对所述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (13)
1.一种基于激光点云数据的数据处理方法,其特征在于,包括:
获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
基于所述激光点云数据中的激光点信息,确定各激光点在二维平面上的位置信息,包括:
在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率;
将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息;
基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
2.根据权利要求1所述的方法,其特征在于,所述激光点信息包含每个激光点分别对应的激光标识,水平角度以及水平分辨率,所述激光标识用于区分每一帧中所有激光点分别对应的激光线束。
3.根据权利要求1所述的方法,其特征在于,所述基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找所述每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量,包括:
在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量;
当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
4.根据权利要求3所述的方法,其特征在于,所述基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量,包括:
基于所述中心点对应的所述邻近点,构建邻近点集;
获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据确定目标平面;
计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量。
5.根据权利要求4所述的方法,其特征在于,所述计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量,包括:
在所述目标平面上,选取与中心点相邻的两个邻近点,构建一个三角区域;其中,所述三角区域为所述目标平面的局部区域;
基于所述三角区域中三个激光点分别对应的三维坐标值,计算所述三角区域中任意两个激光点所构成的相交线段的方向向量,并基于所述方向向量,确定所述三角区域的法向量;
将所述三角区域的法向量作为位于所述目标平面上的所述中心点对应的法向量。
6.根据权利要求3所述的方法,其特征在于,所述基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量,包括:
基于所述中心点对应的所述邻近点,构建邻近点集;
获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据构建协方差矩阵;
计算所述协方差矩阵的特征值和特征向量,在所述特征值中,筛选出最小特征值所对应的特征向量,作为所述目标点的法向量。
7.根据权利要求2所述的方法,其特征在于,所述激光点信息还包括每个激光点分别对应的深度信息,还包括:
基于所述深度信息计算各激光点的灰度值,并将所述二维平面中的各激光点作为像素点,为各像素点设置相对应的灰度值,生成所述激光点云数据对应的前视图。
8.一种基于激光点云数据的数据处理装置,其特征在于,包括:
点云数据获取模块,用于获取目标物体对应的激光点云数据;所述激光点云数据中包含扫描在所述目标物体上的所有激光点分别对应的激光点信息和三维数据;
位置信息确定模块,用于基于所述激光点云数据中的激光点信息,确定各激光点在二维平面上的位置信息;
所述位置信息确定模块包括:
目标点选择单元,在所有激光点中,选择一个激光点作为目标点,获取所述目标点对应的激光标识,水平角度以及水平分辨率;
目标位置确定单元,用于将所述目标点对应的激光标识作为所述目标点在二维矩阵中的行值,并根据所述目标点对应的水平角度和水平分辨率,确定所述目标点在二维矩阵中的列值,并将所述目标点的行值和列值作为所述目标点的二维坐标,并将所述二维坐标确定为所述目标点在二维平面上的位置信息;
位置信息确定单元,用于当所有激光点均作为所述目标点时,获得所述各激光点在二维平面上的位置信息;
法向量确定模块,用于基于所述各激光点在所述二维平面中的位置关系、所述激光点云数据中的三维数据,查找每个激光点分别对应的邻近点集,并基于所述邻近点集确定所述各激光点分别对应的法向量。
9.根据权利要求8所述的装置,其特征在于,所述激光点信息包含每个激光点分别对应的激光标识,水平角度以及水平分辨率,所述激光标识用于区分每一帧中所有激光点分别对应的激光线束。
10.根据权利要求8所述的装置,其特征在于,所述法向量确定模块包括:
中心点选择单元,用于在所述二维平面中,选择一个激光点作为中心点,并基于所述中心点在所述二维平面中的所述二维坐标,将与所述中心点之间的二维距离处于选择范围阈值内的激光点确定为待处理点;
欧式距离计算单元,用于基于所述激光点云数据中的三维数据,计算所述待处理点与所述中心点之间的三维欧式距离;
邻近点确定单元,用于将所述三维欧式距离小于距离阈值的待处理点,确定为所述中心点的邻近点;
邻近点集构建单元,用于基于所述中心点的所述邻近点,构建邻近点集,并基于所述邻近点集确定所述中心点对应的法向量;
法向量确定单元,用于当所有激光点均被确定为中心点时,获得所述各激光点分别对应的法向量。
11.根据权利要求10所述的装置,其特征在于,所述邻近点集构建单元包括:
第一构建子单元,基于所述中心点对应的所述邻近点,构建邻近点集;
目标平面确定子单元,获取所述邻近点集中各激光点的三维数据,并基于所述各激光点的三维数据确定目标平面;
第一计算子单元,用于计算所述目标平面的法向量,并将所述目标平面的法向量作为位于所述目标平面上的所述中心点对应的法向量。
12.一种基于激光点云数据的数据处理装置,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供网络通讯功能,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-7任一项所述的方法。
13.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当处理器执行所述程序指令时执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810547804.1A CN108875804B (zh) | 2018-05-31 | 2018-05-31 | 一种基于激光点云数据的数据处理方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810547804.1A CN108875804B (zh) | 2018-05-31 | 2018-05-31 | 一种基于激光点云数据的数据处理方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108875804A CN108875804A (zh) | 2018-11-23 |
CN108875804B true CN108875804B (zh) | 2019-12-20 |
Family
ID=64335969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810547804.1A Active CN108875804B (zh) | 2018-05-31 | 2018-05-31 | 一种基于激光点云数据的数据处理方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108875804B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111489386B (zh) * | 2019-01-25 | 2024-04-16 | 北京京东乾石科技有限公司 | 点云特征点提取方法、装置、存储介质、设备及系统 |
WO2020206639A1 (zh) * | 2019-04-10 | 2020-10-15 | 深圳市大疆创新科技有限公司 | 目标物体的拟合方法、点云传感器和移动平台 |
CN111986299B (zh) * | 2019-05-24 | 2024-03-01 | 北京京东乾石科技有限公司 | 点云数据处理方法、装置、设备及存储介质 |
CN110471074B (zh) * | 2019-08-15 | 2021-04-27 | 岭纬科技(厦门)有限公司 | 一种提高平面激光点云测距精度的方法 |
CN110796707B (zh) * | 2019-09-10 | 2022-05-06 | 腾讯科技(深圳)有限公司 | 标定参数计算方法、装置以及存储介质 |
CN110782531A (zh) * | 2019-09-16 | 2020-02-11 | 华为技术有限公司 | 处理三维点云数据的方法和计算设备 |
CN111223101B (zh) * | 2020-01-17 | 2023-08-11 | 湖南视比特机器人有限公司 | 点云处理方法、点云处理系统和存储介质 |
CN112069899A (zh) * | 2020-08-05 | 2020-12-11 | 深兰科技(上海)有限公司 | 一种路肩检测方法、装置及存储介质 |
CN112179353B (zh) * | 2020-09-30 | 2023-07-18 | 深圳银星智能集团股份有限公司 | 自移动机器人的定位方法、装置、机器人及可读存储介质 |
CN112539756B (zh) * | 2020-11-30 | 2023-06-20 | 深圳银星智能集团股份有限公司 | 一种长通道识别方法及机器人 |
CN112816993B (zh) * | 2020-12-25 | 2022-11-08 | 北京一径科技有限公司 | 激光雷达点云处理方法和装置 |
CN112767309A (zh) * | 2020-12-30 | 2021-05-07 | 无锡祥生医疗科技股份有限公司 | 超声扫查方法、超声设备及系统 |
CN116433881B (zh) * | 2023-06-12 | 2023-10-13 | 合肥联宝信息技术有限公司 | 二维图像的获得方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544728A (zh) * | 2013-08-23 | 2014-01-29 | 武汉海达数云技术有限公司 | 一种在实景地图中基于法向量的被探面过滤方法 |
CN105716581A (zh) * | 2016-02-15 | 2016-06-29 | 中测新图(北京)遥感技术有限责任公司 | 基于双介质摄影技术的水下物点坐标确定方法和装置 |
CN106023312A (zh) * | 2016-05-13 | 2016-10-12 | 南京大学 | 基于航空LiDAR数据的三维建筑物模型自动重建方法 |
CN106097311A (zh) * | 2016-05-31 | 2016-11-09 | 中国科学院遥感与数字地球研究所 | 机载激光雷达数据的建筑物三维重建方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100485662C (zh) * | 2006-07-10 | 2009-05-06 | 山东理工大学 | 基于数据动态存取模型的产品点云型面特征分析方法 |
CN101650835B (zh) * | 2009-09-09 | 2011-09-28 | 哈尔滨工业大学 | 基于局部线性嵌入法构建狗左心室传导系统三维几何结构 |
CN102136155B (zh) * | 2010-01-27 | 2012-10-03 | 首都师范大学 | 基于三维激光扫描数据的物体立面矢量化方法和系统 |
-
2018
- 2018-05-31 CN CN201810547804.1A patent/CN108875804B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544728A (zh) * | 2013-08-23 | 2014-01-29 | 武汉海达数云技术有限公司 | 一种在实景地图中基于法向量的被探面过滤方法 |
CN105716581A (zh) * | 2016-02-15 | 2016-06-29 | 中测新图(北京)遥感技术有限责任公司 | 基于双介质摄影技术的水下物点坐标确定方法和装置 |
CN106023312A (zh) * | 2016-05-13 | 2016-10-12 | 南京大学 | 基于航空LiDAR数据的三维建筑物模型自动重建方法 |
CN106097311A (zh) * | 2016-05-31 | 2016-11-09 | 中国科学院遥感与数字地球研究所 | 机载激光雷达数据的建筑物三维重建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108875804A (zh) | 2018-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108875804B (zh) | 一种基于激光点云数据的数据处理方法和相关装置 | |
US7777761B2 (en) | Method and apparatus for specifying and displaying measurements within a 3D rangefinder data set | |
JP5822255B2 (ja) | 対象物識別装置及びプログラム | |
EP3252657A1 (en) | Information processing device and information processing method | |
CN112513679B (zh) | 一种目标识别的方法和装置 | |
CN111045000A (zh) | 监测系统和方法 | |
WO2022160790A1 (zh) | 一种三维地图的构建方法及装置 | |
CN112904369B (zh) | 机器人重定位方法、装置、机器人和计算机可读存储介质 | |
CN112106111A (zh) | 一种标定方法、设备、可移动平台及存储介质 | |
WO2022217988A1 (zh) | 传感器配置方案确定方法、装置、计算机设备、存储介质及程序 | |
CN110470308B (zh) | 一种避障系统及方法 | |
CN111380510A (zh) | 重定位方法及装置、机器人 | |
CN114494075A (zh) | 基于三维点云的障碍物识别方法、电子设备和存储介质 | |
JP2019144210A (ja) | 物体検出システム | |
CN114676789A (zh) | 一种点云融合方法、装置、计算机设备和存储介质 | |
CN112381873B (zh) | 一种数据标注方法及装置 | |
CN114488178A (zh) | 定位方法及设备 | |
CN114102577A (zh) | 一种机器人及应用于机器人的定位方法 | |
CN113763308B (zh) | 一种地面检测方法、装置、服务器及介质 | |
JP7020418B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN115909253A (zh) | 一种目标检测、模型训练方法、装置、设备及存储介质 | |
CN115248443A (zh) | 基于激光雷达的地图构建方法、系统、设备及存储介质 | |
TWI687706B (zh) | 移動裝置之定位系統 | |
CN111260781A (zh) | 一种生成图像信息的方法、装置和电子设备 | |
CN113433566A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230706 Address after: 518057 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 floors Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. Patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd. Address before: 518057 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 floors Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |
|
TR01 | Transfer of patent right |