本发明涉及激光雷达测量技术领域,尤其是涉及一种航带匹配方法、装置、电子设备和可读存储介质。
背景技术:
机载激光雷达测量系统集成有全球定位系统gps、惯性导航系统ins、激光雷达扫描仪等多个部件,其在应用过程中会受到多种误差源(系统误差和随机误差)的影响,具体体现为,当惯性导航系统ins姿态测定时,安装激光雷达测量系统的过程中,并不能保证激光扫描参考坐标系和惯性平台参考坐标系的坐标轴之间相互平行,此时,会产生系统安置误差。所以,多条激光扫描条带覆盖同一扫描区域时不同航带测定的同一点的坐标和高程彼此会有差异。
人工量测检校需要相关专业知识以及对软件的熟练操作,而自动计算能够极大减轻操作员的工作量。在特征明显的数据中,自动计算完全能够替代手工计算,达到相同甚至更高的精度。
技术实现要素:
有鉴于此,本发明的目的在于提供航带匹配方法、装置、电子设备和可读存储介质,自动估算航带匹配参数,提高航带匹配效率,将不同航带的重叠部分联系起来,实现不同航带数据的拼接。
第一方面,本发明实施例提供了一种航带匹配方法,包括:
获取并加载点云数据和与所述点云数据相对应的航迹文件,通过所述航迹文件从多边形区域航线中得到每条航带的点云数据;
识别所述每条航带的重叠区域,从相邻航带的所述重叠区域点云数据中选取特征点,并将所述特征点匹配形成相关点对;
通过预先设置的误差模型和最小二乘法,计算得到修正角和最小空间距离值,其中,从各个所述相关点对中选取,所述特征点间的所述最小空间距离值;
根据所述最小空间距离值和修正角对所述点云数据的空间位置进行修正,以使所述相邻航带的所述空间位置相匹配。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述识别所述每条航带的重叠区域,从相邻航带的所述重叠区域点云数据中选取特征点,并将所述特征点匹配形成相关点对包括:
对所述每条航带的点云数据进行格网化处理,判断网格中是否存储有所述点云数据,识别所述网格是否为重叠区域;
将相邻航带的所述重叠区域中的点云数据进行矩阵计算,得到第一数值,根据所述第一数值从所述点云数据中选取特征点;
对各个所述特征点选取邻域,得到各个所述特征点和各个所述邻域的平面法向量,选取所述平面法向量方向相同且所述特征点的空间距离最短的两个所述特征点,作为一个相关点对。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,一个所述点云数据为一个三维坐标,所述将相邻航带的所述重叠区域中的点云数据进行矩阵计算,得到第一数值,根据所述第一数值从所述点云数据中选取特征点包括:
通过所述重叠区域中的点云数据计算协方差矩阵,其中,每个所述点云数据作为所述协方差矩阵中的一个行矩阵;
将所述协方差矩阵的每个行矩阵进行计算,计算得出与所述每个行矩阵相应的第一数值;
从所述各个所述第一数值中查找最小的第一数值,将与所述最小的第一数值相对应的所述行矩阵从所述协方差矩阵中进行删除,直至余下的所述行矩阵的数目达到预设个数,将余下的所述行矩阵对应的所述点云数据作为特征点。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述通过预先设置的误差模型和最小二乘法,计算得到修正角和最小空间距离值包括:
通过预先设置的误差模型,得到各个所述相关点对中特征点间的空间距离值;
通过最小二乘法计算得到最小空间距离值和侧滚角、俯仰角、航向角三个角的修正值。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述获取并加载点云数据和与所述点云数据相对应的航迹文件,通过所述航迹文件从多边形区域航线中得到每条航带的点云数据包括:
获取并加载点云数据和与所述点云数据相对应的航迹文件,得到多边形区域航线,所述航迹文件包括gps时间;
根据航带起止的所述gps时间裁剪所述点云数据,从所述多边形区域航线中得到每条航带的点云数据。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述获取并加载点云数据和与所述点云数据相对应的航迹文件,得到多边形区域航线包括:
将原始数据进行预处理,获取点云数据和与所述点云数据相对应的航迹文件;
加载所述点云数据和所述航迹文件,得到多边形区域航线。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述修正角包括侧滚角修正值、俯仰角修正值和航向角修正值。
第二方面,本发明实施例还提供一种航带匹配装置,应用于电子设备,所述装置包括:
获取模块,获取并加载点云数据和与所述点云数据相对应的航迹文件,通过所述航迹文件从多边形区域航线中得到每条航带的点云数据;
匹配模块,识别所述每条航带的重叠区域,从相邻航带的所述重叠区域点云数据中选取特征点,并将所述特征点匹配形成相关点对;
计算模块,通过预先设置的误差模型和最小二乘法,计算得到修正角和最小空间距离值,其中,从各个所述相关点对中选取,所述特征点间的所述最小空间距离值;
修正模块,根据所述最小空间距离值和修正角对所述点云数据的空间位置进行修正,以使所述相邻航带的所述空间位置相匹配。
第三方面,本发明实施例还提供一种电子设备,所述电子设备包括:
存储介质;
处理器;以及
航带匹配装置,所述装置存储于所述存储介质中,并包括由所述处理器执行的软件功能模块,所述装置包括:
获取模块,获取并加载点云数据和与所述点云数据相对应的航迹文件,通过所述航迹文件从多边形区域航线中得到每条航带的点云数据;
匹配模块,识别所述每条航带的重叠区域,从相邻航带的所述重叠区域点云数据中选取特征点,并将所述特征点匹配形成相关点对;
计算模块,通过预先设置的误差模型和最小二乘法,计算得到修正角和最小空间距离值,其中,从各个所述相关点对中选取,所述特征点间的所述最小空间距离值;
修正模块,根据所述最小空间距离值和修正角对所述点云数据的空间位置进行修正,以使所述相邻航带的所述空间位置相匹配。
第三方面,本发明实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被执行时实现如上所述的航带匹配方法。
本发明实施例提供了一种航带匹配方法、装置、电子设备和可读存储介质,包括区分出单条航带的点云数据,从相邻航带的重叠区域的点云数据中选取特征点,再将特征点进行匹配形成相关点对,通过误差模型和最小二乘法计算得到修正角和相关点对中特征点间的最小空间距离值,并根据最小空间距离值和修正角对点云数据的空间位置进行修正,以使相邻航带的空间位置相匹配,使处于不同平面的点云数据贴合在一起,本发明实施例可以自动估算航带匹配参数,提高航带匹配效率,将不同航带的重叠部分联系起来,实现不同航带数据的拼接。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的航带匹配方法流程图;
图2为本发明实施例提供的用于实现上述航带匹配方法的电子设备的方框示意图。
图标:100-电子设备;110-存储介质;120-处理器;200-航带匹配装置;210-获取模块;220-匹配模块;230-计算模块;240-修正模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,当惯性导航系统ins姿态测定时,安装激光雷达测量系统的过程中,并不能保证激光扫描参考坐标系和惯性平台参考坐标系的坐标轴之间相互平行,此时,会产生系统安置误差。所以,多条激光扫描条带覆盖同一扫描区域时不同航带测定的同一点的坐标和高程彼此会有差异。人工量测检校需要相关专业知识以及对软件的熟练操作,而自动计算能够极大减轻操作员的工作量。在特征明显的数据中,自动计算完全能够替代手工计算,达到相同甚至更高的精度。
基于此,本发明实施例提供的一种航带匹配方法、装置、电子设备和可读存储介质,可以自动估算航带匹配参数,提高航带匹配效率,将不同航带的重叠部分联系起来,实现不同航带数据的拼接。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种航带匹配方法进行详细介绍;
图1为本发明实施例提供的航带匹配方法流程图。
参照图1,航带匹配方法包括以下步骤:
步骤s110,获取并加载点云数据和与点云数据相对应的航迹文件,通过航迹文件从多边形区域航线中得到每条航带的点云数据;
步骤s120,识别每条航带的重叠区域,从相邻航带的重叠区域点云数据中选取特征点,并将特征点匹配形成相关点对;
步骤s130,通过预先设置的误差模型和最小二乘法,计算得到修正角和最小空间距离值,其中,从各个相关点对中选取,特征点间的最小空间距离值;
步骤s140,根据最小空间距离值和修正角对点云数据的空间位置进行修正,以使相邻航带的空间位置相匹配;
具体地,区分出单条航带的点云数据,从相邻航带的重叠区域的点云数据中选取特征点,再将特征点进行匹配形成相关点对,通过误差模型和最小二乘法计算得到修正角和相关点对中特征点间的最小空间距离值,并根据最小空间距离值和修正角对点云数据的空间位置进行修正,以使相邻航带的空间位置相匹配,使处于不同平面的点云数据贴合在一起,本发明实施例可以自动估算航带匹配参数,提高航带匹配效率,将不同航带的重叠部分联系起来,实现不同航带数据的拼接;
其中,本发明实施例应用于特征明显的点云数据区域,效果更加显著,通过自动匹配计算,达到与人工计算相同甚至更高的精度,提高航带拼接效率,减少对作业人员的要求;
进一步的,为了从相邻航带的重叠区域中选取特征点,步骤s120还包括以下步骤:
步骤s210,对每条航带的点云数据进行格网化处理,判断网格中是否存储有点云数据,识别网格是否为重叠区域;
这里,例如,若a航带的第2行3列的网格中有点云数据,与a相邻的b航带的第2行3列的网格中也有点云数据,则重叠区域包括第2行3列的单位网格;
其中,重叠区域为多个存储有点云数据的单位网格;
步骤s220,将相邻航带的重叠区域中的点云数据进行矩阵计算,得到第一数值,根据第一数值从点云数据中选取特征点;
需要说明的是,一个点云数据为一个三维坐标,包括xyz三轴,步骤s220还可用以下步骤实现:
步骤s310,通过重叠区域中的点云数据来计算协方差矩阵,其中,每个点云数据作为协方差矩阵中的一个行矩阵;
这里,重叠区域中的点云数据为多个,点云数据的个数决定协方差矩阵的行数;
具体地,点云数据集为p={p1,p2,p3,…,pn},根据各个点云数据得到各自的法向量,法向量集合为n={n1,n2,n3,…,nn},并初始化一个存放向量特征点的id号i={1,2,3,…,n},id号分别和每个点云数据与其法向量相对应,即id号1,对应点云数据p1、法向量n1和协方差矩阵的第一行矩阵;
此时,根据所有点云数据计算出协方差矩阵a;
步骤s320,将协方差矩阵的每个行矩阵进行计算,计算得出与每个行矩阵相应的第一数值;
具体地,将将协方差矩阵的每个行矩阵按照以下公式进行计算:
hii=aiqait(1≤i≤n)
其中,q=(ata)-1,i为行数,ai为第i行的行矩阵,h为第一数值,hii为第i行的第一数值;
步骤s330,从各个第一数值中查找最小的第一数值,将与最小的第一数值相对应的行矩阵从协方差矩阵中进行删除,直至余下的行矩阵的数目达到预设个数,将余下的行矩阵对应的点云数据作为特征点。
具体地,查找最小的第一数值,将该最小的第一数值所对应的id号从id号集合中进行删除,并从协方差矩阵a中删除该行矩阵,再从n-1个第一数值中再查找最小的第一数值,再将此时最小的第一数值所对应的id号和行矩阵进行删除,以此类推进行循环,每次删除一个对应的点云数据,直至id号的个数达到预设个数要求,即余下的这些id号所对应的点云数据为特征点;
步骤s230,对各个特征点选取邻域,得到各个特征点和各个邻域的平面法向量,选取平面法向量方向相同且特征点的空间距离最短的两个特征点,作为一个相关点对。
进一步的,步骤s130包括:
步骤s410,通过预先设置的误差模型,计算得到各个相关点对中特征点间的空间距离值;
步骤s420,通过最小二乘法计算得到最小空间距离值和侧滚角、俯仰角、航向角三个角的修正值。
这里,将多个空间距离值通过最小二乘法计算出最小空间距离值和修正角;
进一步的,修正角包括侧滚角修正值、俯仰角修正值和航向角修正值。
需要说明的是,现有技术采用人工量测检校的方法获取检校参数,分别对侧滚角、俯仰角、航向角进行估算误差,较为繁琐;
其中,估算侧滚角(roll)误差的方法为:在往返飞行的两条航带数据中在垂直于飞行方向量,测近似同名地物高差△h,以及近似同名地物与两条航带中心线的水平距离r,侧滚角误差的计算公式如下:
估算俯仰角(pitch)误差的方法为:在往返飞行的两条航带数据中平行于飞行方向量测同一地物中心位置沿飞行方向的距离差d,结合平均飞行高度h,俯仰角误差的计算公式如下:
估算航向角(heading)误差的方法为:在前向与后向飞行的两条航带数据中量测两次地物激光脚点平均中心位置之间的距离s和两条航带之间的距离d,航向角误差的计算公式如下:
进一步的,步骤s110包括:
步骤s510,获取并加载点云数据和与点云数据相对应的航迹文件,得到多边形区域航线,航迹文件包括gps时间;
步骤s520,根据航带起止的gps时间裁剪点云数据,从多边形区域航线中得到每条航带的点云数据。
进一步的,步骤s510还可用以下步骤实现,包括:
步骤s610,将激光雷达获取的原始数据进行预处理,获取点云数据和与点云数据相对应的航迹文件;
步骤s620,加载点云数据和航迹文件,得到多边形区域航线。
进一步地,如图2所示,是本发明实施例提供的用于实现所述航带匹配方法的电子设备100的示意图。本实施例中,所述电子设备100可以是,但不限于,个人电脑(personalcomputer,pc)、笔记本电脑、监控设备、服务器等具备航带匹配及处理能力的计算机设备。
所述电子设备100还包括航带匹配装置200、存储介质110以及处理器120。本发明较佳实施例中,航带匹配装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储介质110中或固化在所述电子设备100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器120用于执行所述存储介质110中存储的可执行软件模块,例如,所述航带匹配装置200所包括的软件功能模块及计算机程序等。本实施例中,所述航带匹配装置200也可以集成于所述操作系统中,作为所述操作系统的一部分。具体地,所述航带匹配装置200包括:
获取模块210,获取并加载点云数据和与所述点云数据相对应的航迹文件,通过所述航迹文件从多边形区域航线中得到每条航带的点云数据;
匹配模块220,识别所述每条航带的重叠区域,从相邻航带的所述重叠区域点云数据中选取特征点,并将所述特征点匹配形成相关点对;
计算模块230,通过预先设置的误差模型和最小二乘法,计算得到修正角和最小空间距离值,其中,从各个所述相关点对中选取,所述特征点间的所述最小空间距离值;
修正模块240,根据所述最小空间距离值和修正角对所述点云数据的空间位置进行修正,以使所述相邻航带的所述空间位置相匹配。
可以理解的是,本实施例中的各功能模块的具体操作方法可参照上述方法实施例中相应步骤的详细描述,在此不再重复赘述。
综上所述,本发明实施例提供一种航带匹配方法、装置、电子设备及可读存储介质,区分出单条航带的点云数据,从相邻航带的重叠区域的点云数据中选取特征点,再将特征点进行匹配形成相关点对,通过误差模型和最小二乘法计算得到修正角和相关点对中特征点间的最小空间距离值,并根据最小空间距离值和修正角对点云数据的空间位置进行修正,以使相邻航带的空间位置相匹配,使处于不同平面的点云数据贴合在一起,本发明实施例可以自动估算航带匹配参数,提高航带匹配效率,将不同航带的重叠部分联系起来,实现不同航带数据的拼接。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,在本文中,术语"包括"、"包含"或者其任何其它变体意在涵盖非排它性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其它的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。