1. 引言
随着无人机在智慧城市巡检、灾害救援、农业监测等领域的广泛应用,实时、精准的自主定位能力成为其核心需求。无人机在复杂动态环境中(如高楼林立的城市峡谷、光照多变的农田)常面临GPS信号缺失或漂移问题,亟需基于视觉的鲁棒重定位技术实现位姿恢复。
相机重定位技术[1]主要分为传统方法与深度学习方法。传统方法通过特征匹配(如SIFT、ORB)结合几何约束(如PnP [2]算法)求解位姿,虽计算高效但对动态干扰与光照变化敏感。深度学习方法中,混合位姿学习依赖图像检索(如NetVLAD [3]、CamNet [4])或场景坐标回归间接推算位姿,而端到端方法(如PoseNet、AtLoc)直接回归6DoF位姿。然而,无人机在未知区域飞行时面临两大挑战:其一,无规则运动导致先验场景信息(如3D地图)难以获取,场景坐标回归方法[5]因依赖离线建模且计算资源消耗指数级增长而失效;其二,动态环境与大规模地理范围下,现有算法因无法有效利用轻量级先验知识导致定位鲁棒性不足。为此,本文提出一种基于图像检索的无人机重定位算法,通过构建动态感知的层级检索框架与轻量化特征匹配模型,在不依赖3D重建的前提下,利用图像数据库实现高效位姿估计,突破传统方法与深度学习在未知场景中的局限性。
2. 基础知识
2.1. 相机位姿估计理论
2.1.1. 三维几何变换
三维几何变换通过刚体运动描述物体在空间中的旋转与平移,数学上由旋转矩阵
和平移向量
组成,表示为齐次坐标下的变换矩阵
。其中
是三维旋转群,满足
,且
,而
是包含旋转和平移的特殊欧氏群。通过齐次坐标可将三维点
转换为相机坐标系下的坐标:
。这一变换是视觉定位的基石,例如无人机通过自身位姿
将环境点从全局坐标系映射到相机视角。
2.1.2. 投影几何
投影几何基于针孔相机模型,将三维点
映射到二维像素平面。首先通过外参矩阵
将世界坐标转换为相机坐标
,再经内参矩阵
投影到归一化平面
,最终得到像素坐标
:
。实际应用中还需校正镜头畸变,例如径向畸变模型
,确保投影精度。无人机在动态环境中需实时求解逆投影问题(即从像素反推位姿),依赖PnP算法或深度学习模型克服遮挡与噪声干扰。
2.2. 卷积神经网络
卷积神经网络(Convolutional Neural Network, CNN)是一种专为处理图像等网格化数据设计的深度学习模型,其核心通过卷积层的局部感知和参数共享机制高效提取空间特征:卷积核在输入数据上滑动计算局部区域特征(如边缘、纹理),生成特征图并通过ReLU激活函数引入非线性,池化层(如最大池化)逐步降维并增强平移不变性,最终由全连接层完成分类或回归任务。这种结构以少量参数保留平移不变性,在图像分类、目标检测等领域表现卓越,例如PoseNet直接通过CNN回归相机6DoF位姿,而轻量化设计(如MobileNet)可适配无人机等资源受限平台,实现实时视觉定位。
3. 基于图像检索的无人机相机重定位算法
本文提出一种三阶段图像检索无人机相机重定位模型,其原理图如图1所示,针对无人机动态未知场景实现高效相机位姿估计:全局检索模块通过共享骨干网络提取查询图像全局特征,经全连接层压缩后与数据库图像计算相似度,筛选Top-K候选图像;局部匹配模块复用骨干网络提取候选图像局部特征,结合SuperPoint [6]关键点解码器与描述子解码器生成像素级关键点及描述子,通过匹配网络回归查询–候选图像对的几何一致性匹配矩阵;位姿回归模块融合候选图像的匹配矩阵权重及其真实位姿,基于加权优化策略恢复查询图像的绝对6DoF相机位姿。该方法通过全局粗筛、局部精配、位姿回归的三阶段设计,在避免3D重建资源消耗的同时,利用共享骨干网络降低计算冗余,结合SuperPoint的动态关键点检测增强对遮挡与光照变化的鲁棒性,为无人机无先验地图环境提供实时精准的视觉定位解决方案。
3.1. 全局检索
本文提出的全局检索模块基于改进的MobileNetV2 [7]轻量化网络构建,如图2所示,其骨干网络包含三部分:标准卷积层用于提取初始图像特征;反向残差模块通过扩展层(逐点卷积扩展通道数)、深度可分离卷积(逐通道卷积提取空间特征+逐点卷积融合跨通道信息)及投影层(线性压缩通道维度)的级联结构,平衡特征多样性与计算效率;全局平均池化层将多维特征图压缩为一维向量。传统全连接层被移除,替换为NetVLAD层以增强全局特征表达能力,最终输出固定维度的紧凑特征向量。
Figure 1. Model structure diagram
图1. 模型结构图
Figure 2. Global search module
图2. 全局检索模块图
为降低计算量与参数量,全局分支采用深度可分离卷积替代标准卷积。其核心步骤为:1) 逐通道卷积独立提取各通道空间特征;2) 逐点卷积跨通道融合信息。对于输入特征图(尺寸
,卷积核
),标准卷积计算量为
,而深度可分离卷积计算量仅为
,参数量减少至标准卷积的
。尽管其可能因通道压缩损失部分特征表达能力,但通过反向残差模块中扩展层的通道升维与投影层的线性降维,可在保留关键信息的同时抑制噪声与过拟合。
全局特征提取器采用改进的NetVLAD层,基于可微分视觉词典对局部特征动态聚类:预设K个视觉词(如64个),计算各词簇内特征残差的加权和,拼接形成高维全局描述符。相比传统VLAD [8],NetVLAD通过端到端训练自适应优化视觉词典权重,使其适配无人机航拍图像的尺度与视角变化特性。为进一步压缩存储开销,NetVLAD输出后接入全连接层,将特征维度从16,384降至4096,并结合弱监督策略,以自监督方式学习场景专属的视觉词典与特征分布,避免人工标注成本。此设计在保证检索精度的前提下,使特征向量内存占用降低,支持汉明距离或余弦相似度的快速匹配,满足无人机端实时重定位需求。
3.2. 局部匹配
局部匹配分支旨在提取图像关键点及其局部描述子,实现跨图像的精准特征匹配。该分支由共享骨干网、关键点解码器、描述子解码器及匹配网络构成[6],如图3所示。
Figure 3. Local matching module
图3. 局部匹配模块图
其中,共享骨干网复用全局分支改进的MobileNetV2前7层作为编码器,输入图像经其处理后输出
特征张量(
,
),在保留高分辨率空间信息的同时降低后续计算负荷。
关键点解码器通过卷积解码结构对编码器输出进行上采样与分类,生成
概率张量。其中64个通道对应输入图像8 × 8网格划分后的局部区域关键点分布,另设垃圾箱(Dustbin)通道过滤无关键点区域,减少误检。为实现原始分辨率重建,采用子像素卷积将每个通道值映射至8 × 8像素,得到
概率图,并通过非极大值抑制筛选置信度最高的关键点。此设计在提升空间分辨率的同时,确保关键点定位精度与稀疏性。
描述子解码器通过双三次插值对编码特征进行上采样,恢复至原始图像尺寸(
),再经L2归一化生成单位长度描述子向量。双三次插值基于16邻域像素加权计算插值点,虽增加计算开销,但相比双线性或最近邻插值,可避免锯齿伪影并保持描述子空间连续性,显著提升特征匹配鲁棒性。描述子解码器与关键点解码器共享编码器特征,形成端到端联合训练框架,使关键点检测与描述子学习相互促进,增强局部特征对视角、光照变化的适应性。
3.3. 相对位姿回归网络
相对位姿回归模块基于图神经网络(GNN) [9]与最优匹配层构建,旨在通过稀疏特征匹配实现跨图像的几何一致性建模,其结构如图4所示。
Figure 4. Relative positional regression network
图4. 相对位姿回归网络
其核心流程分为三阶段:1) 关键点编码:输入两组图像的关键点坐标与描述子,通过多层感知机(MLP)编码为高维特征向量,MLP采用ReLU激活函数逐层传递,融合空间坐标
与描述子(256维)的几何与语义信息;2) 注意力图神经网络:将编码后的特征向量构建为图结构(节点为关键点,边为潜在匹配关系),利用双向消息传递机制聚合上下文信息——通过注意力权重动态计算节点间相似度(内积 + Softmax归一化),更新节点特征以增强匹配判别性;3) 最优匹配层:基于Sinkhorn算法[10]对两组节点特征计算软匹配矩阵(相似度内积→Softmax归一化→迭代行列归一化),再通过自适应阈值
二值化生成稀疏匹配矩阵,剔除低置信度匹配对,输出最终特征对应关系用于后续位姿解算。
相对位姿回归网络通过注意力机制实现自适应的特征交互:通过三层MLP编码器将几何坐标与语义描述融合,生成128维联合特征
和
。在注意力网络阶段,首先通过自注意力机制(输入/输出维度均为
)对同源特征进行上下文增强,采用
的投影计算(本文设
),通过
实现特征重校准,保持输出维度
不变。
继而通过交叉注意力机制建立跨图像特征交互通道:以
作为Query源,通过可学习权重矩阵
生成
;以
作为Key/Value源,分别通过
和
生成
和
。计算跨注意力权重矩阵
:
(1)
最终输出增强特征
和
,计算式为:
(2)
最优匹配层采用可微分的Sinkhorn算法求解,将相似度矩阵迭代优化为双随机矩阵(每行/列和为1),生成连续值的软匹配矩阵。为平衡匹配数量与精度,设定阈值
进行二值化,仅保留置信度高于阈值的关键点对。相比传统最近邻匹配,此方法通过全局优化避免局部次优解,同时稀疏化策略减少误匹配对位姿估计的干扰。
3.4. 损失函数设计
本文采用两阶段训练策略优化无人机相机重定位模型。第一阶段聚焦全局特征与局部关键点学习,第二阶段优化关键点匹配网络。
3.4.1. 一阶段损失函数设计
在一阶段中全局分支引入改进的HardTriplet Loss [11],其定义为:
(3)
为锚点图像特征,
和
分别表示正样本(高重叠度且相对姿态角小)和负样本(低重叠度且姿态角大)特征,
为欧氏距离,
控制正负样本间距。
局部分支采用知识蒸馏策略,以预训练SuperPoint为教师模型生成关键点真值,学生模型通过MSE损失和交叉熵损失对齐教师输出。MSE损失约束局部描述子相似性:
(4)
其中
为学生模型预测描述子,
为教师输出。交叉熵损失优化关键点概率分布:
(5)
保留Dustbin通道过滤背景噪声,总损失为:
(6)
3.4.2. 二阶段损失函数设计
第二阶段优化关键点匹配网络,定义软分配损失[12]:
(7)
其中
为由相机绝对位姿几何验证的真实匹配集合,
和
分别为未匹配的查询与检索关键点集,
为Sinkhorn算法生成的软匹配概率。该损失最大化正确匹配置信度,抑制误匹配噪声,适配无人机动态场景下的鲁棒位姿回归需求。
4. 实验
4.1. 数据集
为了训练和评估我们基于图像检索的无人机相机重定位算法,我们选择了两个具有代表性的数据集:University-1652和7-Scenes。University-1652数据集由全球72所大学的1652座建筑物图像组成,涵盖三个视角平台:无人机视角、卫星视角和地面视角[13]。其中,无人机视角图像是基于谷歌地球上的3D模型模拟生成的,每个目标点包含54张无人机图像和一张卫星图像。该数据集被划分为训练集和测试集,训练集包含33所大学的701座建筑物,共计50,218张图像;测试集包含39所大学的951座建筑物,包括查询和库图像。这种多视角、多源的数据集为训练无人机相机重定位算法提供了丰富的资源,有助于模型学习视角不变的特征,并在复杂的现实场景中提升泛化能力。
在评估阶段,我们采用了微软研究院发布的7-Scenes数据集[14]。该数据集包含七个不同的室内场景:Chess (棋盘)、Fire (火焰)、Heads (头部)、Office (办公室)、Pumpkin (南瓜)、Red Kitchen (红色厨房)和Stairs (楼梯)。所有场景均由手持式Kinect RGB-D相机以640 × 480分辨率录制,利用KinectFusion系统获取了精确的相机轨迹和密集的3D模型。每个场景包含多个由不同用户录制的序列,每个序列由500至1000帧组成,数据采用PNG格式存储,每帧提供RGB彩色图像(24位深度)、深度图(16位,以毫米为单位)以及摄像头相对于世界坐标系的位姿(4 × 4齐次变换矩阵)。该数据集的高精度位姿信息使其成为评估相机重定位算法性能的可靠基准。
通过在University-1652数据集上训练模型,使其学习多视角下的特征表示,然后在7-Scenes数据集上进行评估,我们能够全面验证算法在不同场景和视角下的性能表现。
4.2. 实验细节
4.2.1. 实验设备
实验使用的计算机的GPU是Tesla K80 (11 GB)*12。CPU是40 vCPU Intel(R) Xeon(R) Silver 4210 CPU @ 2.20GHz。PyTorch版本为1.8.1,Python版本为3.8.0,CUDA版本为10.1。
4.2.2. 训练策略
本文提出两阶段联合训练框架,基于University-1652无人机航拍数据集训练模型,并在7-Scenes室内数据集测试性能,验证模型对异构环境的泛化能力。训练仅依赖图像与相机位姿真值(无需3D点云或深度),通过端到端梯度回传机制将关键点检测后处理整合至张量运算中,确保参数可学习性。核心训练策略包括:1) 全局–局部联合优化:全局分支采用改进的HardTriplet Loss,按重叠度(SuperGlue特征匹配率)与相对姿态角划分样本为正样本(重叠度 > 40%、姿态角 < 20˚)、中等样本(重叠度 > 10%、姿态角 < 30˚)、负样本(重叠度 < 5%),通过随机采样平衡三类样本比例为1:1:1;2) 局部特征蒸馏:以Aachen预训练SuperPoint为教师模型,通过MSE损失约束描述子相似性,交叉熵损失对齐关键点分布,结合Dustbin通道抑制背景噪声。输入图像经随机缩放(0.5~1.5倍)及随机仿射变换增强,模拟无人机高度变化引起的尺度与透视形变,推理时统一缩至512 × 342像素(保持3:2长宽比)。
初始学习率1e−4,Batch Size 16,训练100轮。相对位姿回归网络通过Sinkhorn算法生成软匹配矩阵。为避免梯度爆炸,训练初期启用全精度浮点(FP32),后期切换为混合精度(FP16)。真实匹配标签由本质矩阵几何验证生成(重投影误差 < 3像素),冻结全局分支参数以专注局部匹配优化。
4.3. 实验结果
4.3.1. 跨场景定位精度与动态鲁棒性验证
本文提出的基于图像检索的无人机相机重定位算法在7-Scenes数据集上展现出显著的跨场景重定位能力。如表1所示。
Table 1. Localization performance of different methods on seven scenarios of the 7-Scenes dataset
表1. 不同方法在7-Scenes数据集7个场景上的定位性能
场景 |
CamNet |
PoseNet |
NN-Net |
Ours |
Chess |
0.16 m, 7.61˚ |
0.32 m, 8.12˚ |
0.13 m, 6.46˚ |
0.12 m, 5.41˚ |
Fire |
0.11 m, 6.32˚ |
0.47 m, 14.4˚ |
0.26 m, 12.72˚ |
0.10 m, 9.88˚ |
Heads |
0.25 m, 8.71˚ |
0.29 m, 12.0˚ |
0.14 m, 12.34˚ |
0.12 m, 11.74˚ |
Office |
0.19 m, 11.95˚ |
0.48 m, 7.68˚ |
0.21 m, 7.35˚ |
0.16 m, 8.42˚ |
Pumpkin |
0.25 m, 9.35˚ |
0.47 m, 8.42˚ |
0.24 m, 6.35˚ |
0.23 m, 6.21˚ |
RedKitchen |
0.19 m, 7.45˚ |
0.59 m, 8.64˚ |
0.24 m, 8.03˚ |
0.20 m, 7.13˚ |
Stairs |
0.23 m, 8.56˚ |
0.47 m, 13.8˚ |
0.27 m, 11.82˚ |
0.21 m, 7.22˚ |
如图5所示,在长达12.6米的厨房场景遍历中,本文方法(红色轨迹)与真值轨迹(绿色)保持高度吻合。其他传统方法出现均轨迹漂移现象,而本方法维持了定位稳定性。
Figure 5. Visualization of the positioning accuracy of the Redkitchen-seq-12 scene (the green path represents the actual camera motion trajectory, and the red path presents the algorithm’s output of the 6-DOF position estimation results)
图5. Redkitchen-seq-12场景的定位精度可视化(绿色路径代表实际相机运动轨迹,红色路径呈现算法输出的6-DOF位姿估计结果)
在小尺度结构化场景中,我们的方法以0.12 m/5.41˚ (Chess)和0.12 m/11.74˚ (Heads)的位姿误差显著优于其他对比算法,较CamNet误差降低25%~52%,其核心优势源于层次化特征融合策略:通过MobileNetV2提取的全局描述符引导SuperPoint局部关键点检测,有效解决狭窄空间中纹理重复导致的误匹配问题。在高动态干扰场景中,本文提出的方法表现尤为突出,Fire场景误差仅为0.10 m/9.88˚ (对比NN-Net的0.26 m/12.72˚),验证了其对烟雾、运动模糊的鲁棒性,这得益于动态关键点筛选模块对噪声匹配的抑制能力。
4.3.2. 轻量化模型性能评估
为验证无人机场景下的实用性,本实验在7-Scenes上对比了CamNet、PoseNet及NN-Net算法。所有模型统一输入分辨率(224 × 224)且在相同训练集University-1652上训练,实测结果如表2所示。
Table 2. Comparison of the number of model parameters and inference speed of different methods
表2. 不同方法的模型参数量与推理速度对比
方法 |
参数量(M) |
推理速度(ms) |
CamNet |
7.21 |
48 |
PoseNet |
64.28 |
103 |
NN-Net |
33.29 |
62 |
Ours |
7.01 |
35 |
本方法以7.01 M参数量与35 ms推理速度实现精度–效率的协同优化,其性能优势源于算法架构的针对性设计。在全局检索模块中,改进的MobileNetV2通过深度可分离卷积(Depthwise Separable Convolution)替代标准卷积,使特征提取阶段的参数量减少,同时保留反向残差结构的通道扩展能力,避免轻量化导致的特征表达退化。NetVLAD层的自监督视觉词典优化进一步强化了全局特征判别性。
相对位姿回归网络的注意力GNN是关键的速度–精度平衡器:通过动态稀疏连接与轻量化MLP (3层128维),在保持几何一致性建模能力的同时,降低匹配耗时。
此实验表明在无人机相机重定位场景中,本文轻量化设计通过深度可分离卷积与模块参数共享显著降低计算负载,使算法可直接部署于机载嵌入式平台,在保障实时性的同时,适应动态飞行环境中的资源约束与复杂干扰。
5. 结论
本文提出的一种基于图像检索的无人机相机重定位算法通过全局特征引导的层次化检索与动态局部匹配机制,在跨场景相机重定位任务中实现了鲁棒性与泛化能力的显著提升,在7-Scenes数据集上以7.01 M参数量与35 ms端到端推理速度实现了精度–效率的平衡。其深度融合全局上下文感知与局部几何约束的策略,有效解决了复杂环境下因纹理缺失、动态干扰及尺度变化导致的定位退化问题。
实验表明,该算法在弱纹理区域(如Stairs场景楼梯墙面)、动态物体遮挡(如Fire场景烟雾干扰)及多尺度视角切换(如Pumpkin场景长距离运动)等复杂条件下,仍能维持稳定定位精度,较传统方法显著降低因环境异质性引发的性能衰减。其通过全局检索与局部几何约束的协同优化,有效克服了传统算法在低纹理、动态噪声及运动尺度突变场景下的局限性。