GNSS拒止环境下基于Puzzle描述符的无人机点云匹配自主定位

陈璐瑜,康国华,武俊峰,左健宏

(南京航空航天大学,南京 211100)

摘要:针对GNSS拒止环境下无人机基于点云匹配自主定位中存在的搜索时间长、误配率高等问题,提出了一种基于Puzzle描述符的二视点云全局配准算法。该算法采用改进的ScanContext点云描述符,对点云进行分割与编码,设计出新的Puzzle描述符。通过SIFT匹配和模板匹配确定预搜索区域,并利用ICP匹配实现无人机的精确定位。仿真结果表明,算法有效降低了搜索时间和误配率,且具备良好的噪声抑制能力,三维定位误差控制在±20 cm以内,单次匹配耗时小于1 s。挂飞实测数据进一步验证了算法的性能,无人机自主定位的平均误差为19.94 cm,单次匹配平均耗时0.59 s,充分满足了精度和实时性要求。

关键词:GNSS拒止;无人机定位;点云匹配;点云描述符;模板匹配

0 引言

在全球定位卫星系统(global navigation satellite system,GNSS)拒止环境下,无人机的高精度自主定位收到了挑战[1-2]。因为目前不管是固定翼无人机还是旋翼无人机多采用GNSS定位,进而使用实时动态定位(real-time kinematic,RTK)获得厘米级精度的定位[3-4]。然而GNSS系统容易受到环境和敌对信号的干扰,如俄乌战争期间交战双方通过电磁干扰的方式,限制了敌方一部分无人机和巡飞弹的使用。因此有必要通过其他技术手段实现拒止环境下的无人机长航时自主定位。目前除了常用的GNSS/惯性测量单元(inertial measurement unit,IMU)组合外,随着旋翼无人机的续航以及挂载能力不断提高,激光雷达(light detection and ranging,LiDAR)系统也逐渐在无人机上得到了广泛应用,如农林测绘、事故救援、矿场勘探、电力巡检等领域[5]。LiDAR能够直接获取地表目标的高密度、高精度点云数据,除了避障等应用场景外,基于连续点云数据的地图匹配为无人机高精度自主导航提供了一条技术路径[6-7]

无人机通实时采集点云数据与携带的全局地图进行匹配,实现自主位姿确定。因此点云匹配定位精度是其中关键技术。目前大多数匹配算法[8]采用迭代最近点(iterative closest point,ICP)算法,但ICP匹配对于初值较为敏感,当初值较差往往无法得到好的配准结果。文献[9]提出正态分布变换(normal distributions transform,NDT)算法,该算法通过对空间区域划分网格并对每个格点中的点云进行正态分布函数拟合,从而将点云匹配问题转换为概率密度函数估计问题,通过最大似然估计方法实现点云配准。该方法对于噪声和初值的容忍度更高。ICP算法与NDT算法本质上是局部搜索,所以无法规避初值要求高的问题。

为解决上述问题,基于全局优化的配准算法获得了重视。文献[10]不仅考虑了ICP算法中点云之间的最近邻关系还引入了全局约束,相对于传统ICP算法具有更好的配准效果和更高的鲁棒性。但随着全局点云地图规模的增大解空间规模也急剧增大,这导致大场景下单次匹配定位耗时过长,无人机自主定位出现滞后。为了加速这一过程,一些方法通过点云自身的固有属性如距离、强度、法线等生成特征描述子进行特征空间的初始匹配,利用初始匹配得出的搜索结果进行点云配准。文献[11]通过计算每个点多个近邻点的距离和角度差得出每个点的快速点特征直方图(fast point feature histogram,FPFH),文献[12]提出快速全局配准(fast global registration,FGR)算法同样采用FPFH描述子,文献[13]通过采样一致性初始配准算法(sample consensus initial alignment,SAC-IA)筛选出可靠特征子进行粗匹配,使用粗匹配结果进行点云配准。该方法在应对大场景的点云配准时耗时显著下降,但依旧无法满足无人机自主定位对于实时性的要求,且定位精度有所降低。

通过对上述算法进行分析发现,影响定位精度和实时性的关键在于用于匹配的描述符的选取。因此本文中针对实时定位与建图(simultaneous localization and mapping,SLAM)中经典的回环检测描述符:ScanContext描述符,通过改进分割和编码方式,并将其应用于全局点云配准中,实现GNSS拒止环境下无人机通过自身传感器获取的点云数据实现自身定位。

1 Puzzle描述符的提出及其特性

点云描述符多从直方图或高斯分布等概率角度来描述点云的特征[14],通过建立点集与与数学模型之间的关系将点云映射到数学表达之中,这种方式可以适配绝大多数场景但耗时较长精度不高。从图1中可以看出,城市环境中,点云本身具有非常丰富且稳定的三维结构特征,直接使用这些信息可以快速地定位全局点云中某个局部的位置。

图1 无人机获取城市点云进行定位示意图

Fig.1 The drone obtains a schematic diagram of the city point cloud for positioning

这一思路与SLAM中的回环检测类似,其中Scan Context算法的应用非常广泛[15]。该算法由韩国KAIST大学的Giseop Kim、Ayoung Kim发表在IROS上[16],主要应用于激光 SLAM的回环检测和位置识别。它将每一帧点云编码为一张图像,通过分割后的最小单元中,传感器坐标系下点云z轴的最大值来描述周围点云的形状。通过Scan Context这个非直方图的全局Puzzle描述符我们可以快速、高效地搜索历史数据,确定当前数据在历史数据中的位置[17]

1.1 Puzzle描述符的定义

用点云分割编码快速地将点云信息映射到一个矩阵中,从而将大规模三维点云降维、分解、匹配为多个二维图像加小范围三维点云的组合;这里的点云分割码类似拼图游戏里的小块拼图,因此将其命名为:Puzzle描述符,最终拼成的图像为全局Puzzle描述符,部分拼图为局部Puzzle描述符,Puzzle描述符在全局点云搜索的结果即为其应所处的位置。

在生成Puzzle描述符之前,首先需要对原始点云进行预处理。点云下采样是对点云以一定规则重新进行采样,目的是在保证点云整体几何特征不变的情况下,降低点云的密度,进而降低相关处理的数据量和算法复杂度。本文中使用网格平均采样法,减少点云数据处理量并且一定程度上抑制了噪声等分干扰。

将全局点云集合P划分为尺寸相同且互相不堆叠的方块,单位为米。沿全局点云坐标系x轴将点云空间按照最小单位米,划分为Nc个矩形区域,向下取整;沿全局点云坐标系y轴将点云空间按照最小单位米,划分为Nr个矩形区域,向下取整。

点云一共被划分为Nc×Nr个最小分割单元,将点云划分为均匀方块后得到一个个柱状空间作为最小单元Pij(i=1,2,…,Nc; j=1,2,…,Nr),划分方式如图2所示,图2中的每一个小方块表示全局点云中分割出来的一小块点云。分割后,全局点云集合P可重新表示为

(1)

图2 Puzzle描述符分割示意图

Fig.2 Puzzle descriptor segmentation diagram

把分割后的点云对应到Nc×Nr的矩阵 (Puzzle描述符)中,描述符矩阵I的定义如下:

(2)

式(2)中: Pij为分割后的最小单元中所有点云;Pij(z)为该单元中所有点云的z轴坐标;eij为矩阵I中元素的值,代表该分割单元Pij中所有三维点的最高值与最低值之差的绝对值;此时矩阵I即为这片点云的Puzzle描述符矩阵,如图2所示。

本文中使用DALES数据集[18]作为仿真实验素材,生成局部Puzzle描述符如图3所示,图像中的每一个像素点代表该小块点云的eij值。

图3 Puzzle描述符示意图

Fig.3 Puzzle descriptor diagram

由于全局Puzzle描述符和局部Puzzle描述符的尺寸单位为米,因此,无论局部点云如何变化,其对应的局部Puzzle描述符像素点(最小单元)的大小与全局Puzzle描述符完全一致。本文中设定传感器为激光雷达,激光雷达自身视场角固定且中轴线始终垂直于水平面。因此,传感器在垂直高度上的变化不会导致Puzzle描述符的失真,传感器垂直方向的移动只会改变Puzzle描述符的尺寸,其携带的信息始终是完整的。这使得Puzzle描述符天生具备了尺度不变性,可以很好的应对传感器垂直方向上的运动。

点云描述符的尺度不变性是指:描述符对点云的缩放变换具有不变性,即当点云被放大或缩小时,描述符的值不会发生改变。尺度不变性是一种重要的性质,因为它可以使描述符适应不同分辨率和采样密度的点云数据,提高匹配的准确性和鲁棒性。

Puzzle描述符将点云的三维结构信息压缩成一个二维的矩阵,每个矩阵元素表示一个平面区域的点云的厚度。由于点云的厚度只与点云在z轴方向上的分布有关,而与传感器的垂直高度无关,因此,当传感器在垂直方向上移动时,Puzzle描述符只会添加或者减少像素点,其携带的信息始终是完整的,不会丢失或扭曲。这就赋予了Puzzle描述符一种天然的尺度不变性,使其能够适应传感器在垂直方向上的运动,提高了该描述符的鲁棒性。

1.2 Puzzle描述符的旋转不变性

根据上文的描述,可以使用模板匹配算法来需寻找局部Puzzle描述符在全局Puzzle描述符中的位置。然而Puzzle描述符虽然可以高效地表示出点云的空间结构信息,但还不具备旋转不变性,这意味着局部Puzzle描述符旋转任意一个角度对最终模板匹配的结果影响巨大,极易产生误匹配。与回环检测中的旋转不变性问题不同,本文中的旋转不变性主要指:求解传感器自身本体坐标系下的局部点云x轴和y轴相对于全局点云x轴和y轴的旋转角度。

本文中通过上文生成的全局Puzzle描述符和局部Puzzle描述符,使用SIFT匹配算法解算出2张描述符之间的相对旋转角度,解决了旋转不变性问题。SIFT匹配的关键在于找到待匹配的2张图片中的特征点。SIFT特征点由“关键点”和 “描述子”组成[19]

将图像I(x,y)在不同尺度上与拥有不同卷积核σ的高斯核函数G(x,y,σ)卷积得到高斯金字塔L(x,y,σ),将高斯金字塔中相邻尺度的高斯图像进行差分处理,k为相邻2个尺度因子的比值,得到差分图像。如下:

(3)

计算像素点的梯度方向以及梯度幅值,取梯度直方图峰值的方向作为关键点的主方向。如下:

(4)

每个像素有8个方向的梯度,计算这8个方向的加权梯度直方图为每个关键点形成了一个4×4×8=128维的描述向量。携带描述向量的关键点图像I(x,y)的SIFT特征点。最后,将全局Puzzle描述符和局部Puzzle描述符进行特征点相对应形成特征点对,使用特征点对解算两者之间的相对旋转角度,如图4所示。

图4 SIFT匹配解算相对旋转角度

Fig.4 SIFT matching solves the relative rotation angle

概括来说,构建Puzzle描述符的本质是希望需构建一个二维图像描述符代替三维点云描述符,用图像的模板匹配代替点云的概率搜索,并以此降低粗匹配耗时为后续精匹配提供一个良好的初值。而本文中采用的图像匹配算法为模板匹配算法,其对于旋转较为敏感。因此本文中采用了SIFT匹配优先解算出全局Puzzle描述符和局部Puzzle描述符之间的相对旋转角度,在进行模板匹配之前对局部Puzzle描述符进行角度补偿,极大地降低了旋转角度对于模板匹配的影响,使Puzzle描述符具备了旋转不变性。

2 匹配算法框架和流程

2.1 匹配算法框架和流程

基于Puzzle描述符的匹配定位算法流程如图5所示。 我们认为传感器(激光雷达、深度相机)位置可代表无人机位置, 且视角中轴始终垂直于地面[17]。二视点云的全局配准是本场景中无人机定位的关键, 算法输入端存在2种不同源的点云数据: 先验全局点云地图(W)和实时局部点云帧(T), 2种数据分属于不同坐标系。匹配定位的关键在于实现2个不同坐标系的点云的配准,即找到一个最优的变换矩阵使得两帧点云数据尽可能对齐[18]。在实现全局点云配准后,可以确定传感器坐标系原点在全局点云坐标系下的坐标。

图5 算法流程

Fig.5 Algorithm flow block diagram

图5中这2个阈值都是在仿真过程中反复调参得到一个适用于场景的数值,都偏经验。

2.2 基于Puzzle描述符的点云预搜索

本文中采用SIFT匹配算法对Puzzle描述符进行处理,目的是通过二维图像匹配快速搜索出局部点云。假设将全局Puzzle描述符为源图像,局部Puzzle描述符为模板图像,源图像SM×M的二维矩阵,模板图像TN×N的二维矩阵,M>N,TS上平移搜索,搜索窗口所覆盖的子图为 f(m,n)。i, j表示模板图像右下角顶点在源图像中的坐标,m,n表示源图像中各个点自身的坐标, f是图像矩阵。

本文中通过归一化二维互相关性方法(normalized cross correlation,NCC)来实现模板匹配。首先计算空间域或频域中的互相关性;接着通过预先计算运行总和来计算局部总和;最后使用局部综合来归一化互相关性以获得相关系数[19]。相关系数计算公式如下,相关系数最大处即为匹配结果。其中是模板均值,是模板范围内区域中的均值:

通过上文的SIFT匹配,可以得到局部Puzzle描述符相对于全局Puzzle描述符的相对旋转角度,利用解算出的角度对局部Puzzle描述符进行角度补偿。接着将补偿后的局部Puzzle描述符作为模板图像,将全局Puzzle描述符作为源图像,通过模板匹配算法计算出相关系数最大的位置,如图6所示。

图6 模板匹配效果

Fig.6 Template matching effect

由于Puzzle描述符中的像素点与点云地图有着一一对应的映射关系,因此可以将模板匹配的匹配结果映射到点云地图中的局部区域,如图7所示。

图7 局部Puzzle描述符与点云之间的映射

Fig.7 Mapping between Puzzle descriptors and point clouds

映射结果对应着全局点云中的一部分点云,至此实现了基于Puzzle描述符的点云预搜索,传感器实时获取的局部点云在全局点云中搜索出三维结构最为相似的部分作为后续ICP匹配的初值[20-21]

2.3 基于Puzzle描述符的定位

通过上文的SIFT模板匹配,可以在全局点云中搜索出与当前局部点云最相似的部分作为迭代最近点匹配算法(ICP)的初值,从而解算出当前局部点云原点(传感器位置)在全局点云坐标系下的坐标[22],如图8所示。

图8 ICP匹配示意图

Fig.8 ICP matching diagram

相似部分点云和传感器拍摄部分的表面特性不变。假设搜索得到的部分全局点云为P,传感器实时获得的局部点云帧为P′。

(6)

其中,RSO(3)表示旋转矩阵;t∈R3表示平移向量。构建最小二乘问题,定义误差函数为

(7)

计算2组点云的质心并计算去质心坐标:

(8)

对误差函数化简:

(9)

其中在求和之后为零,因此优化目标函数可以简化为

(10)

根据优化问题计算旋转矩阵:

(11)

对该式进行二范数展开:

(12)

第一项与R无关,第二项RTR=IR无关。因此优化目标函数可变为

(13)

根据柯西-施瓦茨不等式,只要找到正定矩阵AAT,就有有tr(RH)≤tr(AAT)。因此,对H进行SVD分解:

(14)

根据计算出的R*可得t*:

t*=p-R*p

(15)

至此,计算出了无人机在全局点云地图中的坐标为t*。全局点云和全局Puzzle描述符作为先验输入,传感器获取的局部点云作为实时输入。由于该匹配定位过程始终以先验作为基准,因此匹配定位过程不会积累误差。

3 仿真校验

3.1 纯数字仿真环境搭建

由于无人机载点云匹配定位目前没有统一的数据集,因此必须首先构建起一个仿真环境:一是世界坐标系下先验的全局点云地图,二是无人机飞行轨迹及轨迹中每个采样点处传感器本体系下的局部点云帧。本文中使用DALES数据集[18]中的全局点云的地图作为基准,并在Matlab中构建仿真环境,仿真的软硬件环境如表1所示。本文中通过以下方式对算法进行仿真分析:

表1 仿真环境

Table 1 Simulation environment

软硬件环境参数MatlabR2023aCPUAMD Ryzen 5 5600X 6-Core Processor内存32 GB操作系统Win10

1) 将无人机建立的先验地图导入Matlab仿真环境中,如图9所示。

图9 无人机圆形轨迹仿真场景

Fig.9 UAV circular trajectory simulation scene

2) 生成一个圆形轨迹,并在该轨迹上间隔5 m选取采样点。共生成252个采样点,称之为轨迹点。

3) 设定传感器固定视场角并设定高度200 m(添加±1 m的随机数)作为航迹点高度值。

4) 根据视场角和高度值为每个航迹点分割一块正下方的全局点云作为传感器实时的点云帧,且该点云帧x轴为圆形轨迹的切线。

5) 将航迹点对应点云帧坐标归一化到传感器本体系下(传感器正中心为坐标系原点),同时在此基础上为局部点云中所有三维点添加 的高斯噪声。

6) 将生成的局部地图与全局点云图使用本文中算法进行匹配,将解算结果与真值及FGR算法结果进行比较。

3.2 基于数值仿真的无人机定位算法仿真

本文中在相同的仿真条件下,对基于Puzzle的定位算法(下文统称为Puzzle-ICP)与FGR算法的定位精度和耗时进行对比评估,包括三维误差、点定位误差(绝对轨迹误差,ATE)、单次匹配算法耗时以及误匹配次数;其中误匹配次数通过均方根误差(root mean square error,RMSE)的大小来判断,误匹配处的定位误差值通过插值算法进行平滑处理。仿真结果如下:

从图10—图12可以看出:① Puzzle-ICP的三轴误差要明显小于FGR,且三轴误差基本控制在正负20 cm;② 从图13可以看出Puzzle-ICP的的鲁棒性更高且定位给精度更高,平均定位偏离真值小于30 cm;③ 从图14可以看出Puzzle-ICP的耗时明显小于FGR,维持在1 s以下,能够满足实时性要求。

图10 仿真X轴误差

Fig.10 Simulation X-axis error

图11 仿真Y轴误差

Fig.11 Simulation Y-axis error

图12 仿真Z轴误差

Fig.12 Simulation Z-axis error

图13 仿真定位误差

Fig.13 Simulation positioning error

图14 仿真单次定位耗时

Fig.14 Simulation time consumption per target

上述仿真结果具体数值如表2所示。本文一共统计了5个量:x轴误差、y轴误差、z轴误差、定位误差(仿真位置与真实位置之间的距离)以及耗时,表2中统计值为这5个量252次仿真结果的均值。结果表明在全部252个航迹点的匹配定位结果中,Puzzle-ICP的整体效果要优于FGR算法,证明了Puzzle-ICP的有效性。

表2 仿真结果

Table 2 Simulation results

均值Puzzle-ICPFGRX轴误差/cm0.682.37Y轴误差/cm2.261.25Z轴误差/cm0.041.87定位误差/cm12.7057.92耗时/s0.693.71

3.3 基于真实采集数据的无人机自主定位分析

本文中选择采样场地为南京航空航天大学东区校园,如图15所示。图15(a)为大疆精灵4 RTK无人机,图15(b)为高精度相机。

图15 大疆精灵4 RTK

Fig.15 DJI Phantom 4 RTK

大疆精灵4 RTK无人机自带云台和高精度相机,使用无人机自带的高精度成像相机,可以构建精度达到厘米级的精细点云地图,满足GB/T 7930—2008 1∶500 地形图航空摄影测量内业规范(简称“1∶500 规范”)的精度要求,相机的相关参数如表3所示。

表3 云台相机参数

Table 3 Gimbal camera parameters

参数名称参数数值CMOS尺寸1英寸镜头视场角FOV 84°像素有效像素2 000万,总像素2 048万可控转动范围俯仰:-90°~+30°照片最大分辨率4 864×3 648(4∶3); 5 472×3 648(3∶2)工作环境温度0~40 ℃角度抖动量±0.02°

首先通过大疆精灵4RTK无人机对试验场地绕飞场景如东区卫星图所示,如图16(b);构建场地的先验点云地图,如图16(a);生成全局Puzzle描述符,如图16(c)。在进行定位算法验证时,假设无人机沿着图16所示的矩形轨迹飞行,在设定的航迹点处,对下探测此时拍摄到的局部点云图像,将采集数据离线处理并分析定位精度及算法耗时。本文中将实采数据进行离线处理,数据处理环境与纯数字仿真环境一致。

图16 真实数据采样场景

Fig.16 Real data sampling scene diagram

图17中一共有180个采样点,每个采样点机载RTK的坐标值作为仿真算法真值。以上述扫描条带图像作为输入,2种算法获得定位轨迹如图17所示,图中红色线为无人机真值轨迹;蓝色线为使用Puzzle-ICP算法解算得到的无人机位置轨迹;黄色线为使用FGR算法解算得到的无人机位置轨迹。

图17 无人机飞行轨迹

Fig.17 Drone flight trajectory diagram

图18 基于不同算法的无人机自主定位轨迹对比

Fig.18 Comparison chart of UAV autonomous positioning trajectory based on different algorithms

通过对图表进行分析,可以得到如下结论:① Puzzle-ICP算法定位误差均值为19.94 cm, FGR算法定位误差均值为71.87 cm,如图19所示;② Puzzle-ICP算法耗时均值为0.593 3 s,FGR算法耗时均值为4.169 4 s,如图20所示。结果表明,本文中算法在全部180个航迹点的匹配定位结果中, Puzzle-ICP的定位误差和算法耗时要明显优于FGR算法。通过定位误差的尖峰可以看出,Puzzle-ICP算法和FGR算法在实际环境数据中都存在误匹配的情况。但是Puzzle-ICP算法误匹配次数明显少于FGR算法且误匹配误差较小,这表明Puzzle-ICP算法有更好的鲁棒性。

图19 实验定位误差

Fig.19 Experiment positioning error

图20 实验单次定位耗时

Fig.20 Experiment time consumption per target

通过对图表进行分析,可以得到如下结论:

1) Puzzle-ICP算法定位误差均值为19.94 cm, FGR算法定位误差均值为71.87 cm,如图19所示。同时由图20可以看出,FGR算法在70 s以及130 s之后有较大的跳变。这是因为FGR算法是通过计算点特征直方图来实现配准的,所以当传感器获取的点云特征稀疏时,FGR算法极易产生误匹配。而Puzzle-ICP算法首先通过描述符的预搜索,因此其筛除了绝大多是错误区域,极大地提升了匹配精度。

2) Puzzle-ICP算法耗时均值为0.593 3 s,FGR算法耗时均值为4.169 4 s,如图19所示。Puzzle-ICP通过描述符预搜索的方式,将原本大范围的点云匹配转换为了小范围的点云匹配,极大地降低了匹配耗时。结果表明,本文中算法在全部180个航迹点的匹配定位结果中, Puzzle-ICP的定位误差和算法耗时要明显优于FGR算法。为了更直观地展现2种算法在正确匹配时的定位精度,不让误匹配点影响图例的直观性,在图18中通过插值的方式将误匹配点结果剔除。通过定位误差的尖峰可以看出,Puzzle-ICP算法和FGR算法在实际环境数据中都存在误匹配的情况。但是Puzzle-ICP算法误匹配次数明显少于FGR算法且误匹配误差较小,这表明Puzzle-ICP算法有更好的鲁棒性。

4 结论

本文中提出了一种GNSS拒止环境下在城市中利用先验点云地图和传感器拍摄的局部点云进行匹配定位的算法。仿真结果表明:本文中设计的算法在大范围的二视点云匹配定位场景中,单次匹配耗时控制在0.6 s内,定位误差控制在±20 cm内。解决了GNSS拒止环境下无人机进行点云匹配定位时,传统全局点云配准算法由于特征点提取困难造成的匹配定位精度较低、耗时较长的问题。未来将通过更高效的分割存储算法进一步优化Puzzle描述符的生成步骤,以此减少描述符误匹配概率,提高算法整体的效率和定位精度。

参考文献:

[1] SCARAMUZZA D,et al.Vision-controlled micro flying robots:From system design to autonomous navigation and mapping in GPS-denied environments[J].IEEE Robotics &Automation Magazine,2014,21(3):26-40.

[2] QIN H.Autonomous exploration and mapping system using heterogeneous UAVs and UGVs in GPS-denied environments[J].IEEE Transactions on Vehicular Technology,2019,68(2):1339-1350.

[3] BORIO D,DOVIS F,et al.Impact and detection of gnss jammers on consumer grade satellite navigation receivers[J].Proceedings of the IEEE,2016,104(6):1233-1245.

[4] JORDAN S,JULIAN M,SIERRA E,et al.State-of-the-art technologies for UAV inspections[J].Iet Radar Sonar and Navigation,2018(12):151-164.

[5] CANDIAGO S,FABIO R,MICHAELA D,et al.Evaluating multispectral images and vegetation indices for precision farming applications from UAV Images[J].Remote,2015(7):4026-4047.

[6] 李楠,向文豪.城市环境中无人机作战导航定位研究现状综述[J].无人系统技术,2022,5(4):75-87.LI Nan,XIANG Wenhao.A review of theresearch status of UAV combat navigation and positioning in urban environments[J].Unmanned Systems,2022,5(4):75-87.

[7] 谭龙玉.基于飞行器群独立动态组网的北斗伪卫星系统研究[D].南京:南京航空航天大学,2014.TAN Longyu.Research on Beidou pseudo-satellite system based on independent dynamic networking of aircraft swarms[D].Nanjing:Nanjing University of Aeronautics and Astronautics,2014.

[8] BESL P,MCKAY N,et al.A method for registration of 3-D shapes[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1992,14(2):239-256.

[9] BIBER P,STRASSER W,et al.The normal distributions transform:a new approach to laser scan matching[J].Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat.No.03CH37453),Las Vegas,NV,USA,2003(3):743-2748.

[10] YANG J,LI H,CAMPBELL D,et al,Go-ICP:A globally optimal solution to 3D ICP point-set registration[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2016,38(11):2241-2254.

[11] RUSU R,BLODOW N,BEETZ M,et al.Fast point feature histograms (FPFH) for 3D registration[C]//2009 IEEE International Conference on Robotics and Automation.Kobe,Japan,2009:3212-3217.

[12] ZHOU Y,PARK J,KOLTUN V,et al.Fast Global Registration[C]//LEIBE B,MATAS J,SEBE N,et al.Computer Vision-ECCV 2016.ECCV 2016.Lecture Notes in Computer Science(),vol 9906.Springer,Cham.

[13] 张晗,康国华,张琪,等.基于改进SAC-IA算法的激光点云粗配准[J].航天控制,2019,37(5):67-74.ZHANG Han,KANG Guohua,ZHANG Qi,et al.Coarse registration of laser point cloud based on improved SAC-IA algorithm[J].Aerospace Control,2019,37(5):67-74.

[14] 田应仲,刘超.基于激光里程计和点云描述符匹配的自动驾驶车辆定位方法研究[J].计量与测试技术,2022,49(1):92-96.TIAN Yingzhong,LIU Chao.Research on autonomous vehicle positioning method based on laser odometer and point cloud descriptor matching[J].Metrology and Testing Technology,2022,49(1):92-96.

[15] 周治国,曹江微,邸顺帆.3D激光雷达SLAM算法综述[J].仪器仪表学报,2021,42(9):13-27.ZHOU Zhiguo,CAO Jiangfan,DI Shunfan.A review of SLAM algorithms for 3D lidar[J].Chinese Journal of Scientific Instrument,2021,42(9):13-27.

[16] KIM G,KIM A.Scan context:Egocentric spatial descriptor for place recognition within 3D point cloud map[C]// 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).Madrid,Spain,2018:4802-4809.

[17] 常耀辉,陈年生,饶蕾,等.动态环境下具有旋转和平移不变性的激光雷达点云描述子[J].光学学报,2022,42(24):63-73.CHANG Yaohui,CHEN Niansheng,RAO Lei,et al.LiDAR point cloud descriptor with rotation and translational invariance in dynamic environments[J].Acta Optica Sinica,2022,42(24):63-73.

[18] SINGER N,ASARI V,et al.DALES objects:A large scale benchmark dataset for instance segmentation in aerial lidar[J].IEEE Access,2021(9):97495-97504.

[19] YOO J,HAN T,et al.Fast normalized cross-correlation[J].Circuits Syst Signal Process,2009(28):819-843.

[20] 郝运,孟子阳,艾嘉文,等.基于语义分割的城市航拍图像匹配定位方法[J].华中科技大学学报(自然科学版),2022,50(11):79-84.HAO Yun,MENG Ziyang,AI Jiawen,et al.Urban aerial image matching and positioning method based on semantic segmentation[J].Journal of Huazhong University of Science and Technology(Nature Science Edition),2022,50(11):79-84.

[21] GURGU M,QUERALTA J,WESTERLUND T,et al.Vision-based gnss-free localization for UAVs in the wild[C]//2022 7th International Conference on Mechanical Engineering and Robotics Research (ICMERR),Krakow,Poland,2022:7-12.

[22] 张琪.基于点云状态估计的空间机械臂柔顺捕获方法研究[D].南京:南京航空航天大学,2023.ZHANG Qi.Research on the compliant capture method of space manipulator based on point cloud state estimation[D].Nanjing:Nanjing University of Aeronautics and Astronautics,2023.

Autonomous positioning of UAV based on puzzle descriptor in denial environment

CHEN Luyu, KANG Guohua, WU Junfeng, ZUO Jianhong

(Nanjing University of Aeronautics and Astronautics, Nanjing 211100, China)

AbstractIn order to address the issues of long search time and high mismatch rates in UAV autonomous positioning based on point cloud matching under GNSS-denied environments, this paper proposes a two-view global point cloud registration algorithm based on Puzzle descriptors. The algorithm employs an improved ScanContext point cloud descriptor for segmenting and encoding the point cloud, leading to the design of a novel Puzzle descriptor. SIFT matching and template matching are applied to determine the pre-search area, followed by precise localization using ICP matching. The algorithm effectively reduces search time and mismatch rates, while also offering strong noise suppression capabilities. Simulation results show that the 3D positioning error is controlled within ±20 cm, and the time for a single matching process is less than 1 second. Real-world flight test data further validate the algorithm’s performance, with an average UAV positioning error of 19.94 cm and an average single matching time of 0.59 seconds, meeting the requirements for both accuracy and real-time UAV positioning.

Key wordsGNSS denial; UAV positioning; point cloud matching; point cloud descriptor; template matching

收稿日期:2023-09-29;修回日期:2023-12-17;录用日期:2024-02-07

基金项目:国家自然科学基金项目(JSSCBS20210181);江苏省双创人才项目(12272168)

作者简介:陈璐瑜(1997—),男,硕士研究生,E-mail:clycly1997@163.com。

通信作者:康国华(1978—),男,教授,博士生导师,E-mail:kanggh@nuaa.edu.cn。

doi:10.11809/bqzbgcxb2024.10.035

本文引用格式:陈璐瑜,康国华,武俊峰,等.GNSS拒止环境下基于Puzzle描述符的无人机点云匹配自主定位[J].兵器装备工程学报,2024,45(10):277-286.

Citation format:CHEN Luyu, KANG Guohua, WU Junfeng, et al.Autonomous positioning of UAV based on puzzle descriptor in denial environment[J].Journal of Ordnance Equipment Engineering,2024,45(10):277-286.

中图分类号:V19;V448

文献标识码:A

文章编号:2096-2304(2024)10-0277-10

科学编辑 王飞 博士(安徽理工大学 硕导)责任编辑 胡君德