在无人机应用日益广泛的当下,精准、高效的实时映射技术成为推动行业发展的关键。传统无人机映射方案往往存在数据处理滞后、对复杂地形适应性差等问题,难以满足精准农业、应急救援等场景的实时决策需求。OpenREALM 作为一款开源的无人机实时映射框架,创新性地融合了视觉 SLAM、单目稠密重建等前沿技术,实现了从 2D 图像拼接至 3D 表面重建的多模式映射功能。
原文链接:https://arxiv.org/pdf/2009.10492
代码链接:https://github.com/laxnpander/OpenREALM
沐小含持续分享前沿算法论文,欢迎关注...
一、引言:无人机映射技术的现状与挑战
1.1 应用背景与核心需求
人类对世界的勘测需求推动了映射技术的持续发展,而无人机的兴起为空中勘测提供了全新的解决方案。空中影像已广泛应用于精准农业、城市规划、灾害风险管理等关键领域,这些应用场景不仅对数据分辨率有较高要求,更在可用性、成本和映射效率方面提出了严苛标准。传统的有人机勘测存在操作复杂、成本高昂等局限,而无人机凭借轻量化设计、自主飞行能力强等优势,逐渐成为空中映射的主流平台。
随着开源自动驾驶仪技术的成熟,普通用户经过简单培训即可操控无人机执行飞行任务,这使得空中影像获取变得民主化。目前市场上已涌现出 Agisoft Metashape、DroneDeploy 等一批用于处理空中数据的商业软件,其核心技术均基于摄影测量学,通过光束法平差等算法求解相机姿态和 3D 表面信息。然而,这些软件大多采用离线处理模式,存在明显的局限性。
1.2 传统方案的痛点
传统离线处理框架的核心问题集中在三个方面:
- 任务过程中无法基于已获取数据进行实时干预,即便理论上具备数据基础;
- 从任务启动到全局地图生成往往需要数小时,在搜救等紧急场景中完全无法接受;
- 无人机自主飞行期间的宝贵时间未被用于数据处理,造成资源浪费。
1.3 OpenREALM 的核心贡献
针对上述痛点,OpenREALM 提出了一种实时映射框架,其核心优势在于:
- 支持连续图像流的实时处理,利用无人机搭载的标定朝下双轴云台稳定相机获取数据;
- 提供四种不同复杂度的操作模式,覆盖从简单 2D 拼接至复杂 3D 重建的全场景需求;
- 融合 GNSS 定位与视觉 SLAM 技术,实现地理配准与高精度映射;


二、相关工作:技术演进与现状分析
OpenREALM 的技术体系构建于视觉 SLAM、单目稠密重建和无人机实时映射三大技术领域的研究基础之上,论文对各领域的现有成果进行了系统梳理。
2.1 视觉 SLAM 技术
同时定位与地图构建(SLAM)技术旨在通过传感器获取未知环境的结构信息并估计传感器自身运动,已广泛应用于机器人自主控制、增强现实、自动驾驶等领域。针对不同传感器,SLAM 技术形成了多种解决方案,其中视觉 SLAM 因硬件部署简单、灵活性高而成为研究热点。
2.1.1 主流视觉 SLAM 框架
- ORB-SLAM2:由 Mur-Artal 等人提出,是该领域的标杆性框架。它不仅提供视觉跟踪模块,还通过闭环检测实现全局优化,并支持重定位功能。该框架基于角点、边缘等特征点进行定位(间接方法),但在无特征区域难以提取有效特征点,导致性能下降。
- 直接稀疏里程计(DSO):采用光度优化模型,通过最小化像素强度差异实现图像对齐(直接方法)。该方法无需提取特征点,在无特征区域仍能工作,但由于缺乏特征抽象,难以在不存储完整图像的情况下识别已访问位置。
- 半直接视觉里程计(SVO):融合了直接方法与间接方法的优势,对像素块进行直接图像对齐,既能够利用现有的基于坐标的全局优化技术,又在无特征区域具备较强的鲁棒性。
2.1.2 现有框架的局限
上述框架均具备实时性能且开源可用,但均未针对无人机空中映射场景中的朝下相机进行专门设计和测试,这成为 OpenREALM 需要突破的技术点之一。
2.2 单目稠密重建技术
为校正空中地图中由场景几何特性(如高大建筑物)引起的透视畸变,需要获取地表的稠密信息。单目稠密重建技术仅通过单个移动相机即可重建稠密表面信息,在计算机视觉领域被称为运动恢复结构(SfM),在大地测量学中称为摄影测量学,在机器人领域部分被称为单目 SLAM。
2.2.1 技术现状
目前商业软件已能实现离线单目稠密重建,但缺乏具备实时性能的通用产品。Skydio 等公司通过深度学习方法在该领域取得了一定突破,但由于闭源特性,其技术细节和局限性尚不明确。
2.2.2 关键开源框架
- OpenREMODE:由 Pizzoli 等人提出,通过对相机基线进行距离加权和对深度不确定性采用贝叶斯模型,有效降低了噪声影响。同时,该框架支持 GPU 并行计算,具备实时运行能力。
- 平面扫描库(PSL):由 Häne 等人开发,通过固定数量的虚拟平面在多幅图像中进行多方向扫描,识别共享同一平面的点对应关系。该框架专为城市环境的实时重建设计,利用城市环境中存在大量明显平面的特点,在无人机空中映射场景中也表现出良好的性能。
2.3 无人机实时映射框架
与视觉 SLAM 和稠密重建领域的丰富研究成果相比,针对无人机实时映射的研究相对匮乏。传统方法主要基于连续图像间的特征点检测与匹配进行 2D 全景拼接,核心依赖透视变换矩阵(单应性矩阵)描述图像平面间的运动。这种方法存在明显局限:
- 灵活性不足,无法利用摄影测量学和运动恢复结构领域的成熟技术;
- 仅适用于平面场景,无法处理 3D 数据,在低海拔和地形起伏较大的场景中映射效果差;
- 无法生成数字表面模型,难以满足多数实时空中映射场景的需求。
2.3.1 代表性改进方案
- Map2DFusion:由 Bu 等人提出的开源软件,采用先进的视觉 SLAM 替代传统拼接流水线中的图像对齐模块,通过成熟的框架实现闭环检测、全局优化和复杂视觉环境下的鲁棒跟踪。但该方案未考虑地表高程信息,仍存在视觉畸变问题。
- Hinzmann 等人的框架:首次实现了从姿态估计、稠密场景重建到正射镶嵌图生成的全流程实时处理,但未采用最先进的视觉 SLAM 进行姿态估计,也未提供集成其他稠密重建实现的接口。
2.3.2 OpenREALM 的技术定位
OpenREALM 旨在整合现有技术的优势,既支持简单的图像拼接,又能实现完整的 3D 重建,其架构具备足够的通用性和灵活性。
三、OpenREALM 框架详解
OpenREALM 的核心创新在于构建了一个模块化、可扩展的技术架构,通过三层结构实现数据传输、流程控制和核心算法的解耦,同时设计了五大处理阶段,完成从图像输入到全局地图生成的全流程处理。
3.1 整体架构设计
框架的三层结构如图 2 所示,各层职责明确、协同工作:

- 传输层(Transport Layer):基于机器人操作系统(ROS)实现,负责在无人机机载设备与地面控制站(GCS)之间传输数据。ROS 采用模块化的发布 - 订阅模式,通过 WiFi 实现数据分发,能够满足图像文件传输的高带宽需求,同时支持机载设备与地面控制站的负载分担。数据输入包括带有地理标签和相机航向信息的图像,通过适配器节点接入核心框架,图像的元信息以 Exiv2 标签的形式存储和读取。
- 阶段层(Stage Layer):包含流程控制算法,采用流水线式设计,每个阶段被封装为独立的 ROS 节点,数据仅沿单向传递(前一阶段的输出作为后一阶段的输入)。这种设计虽然缺乏阶段间的反馈循环,但保证了架构的清晰性和任务分配的严格性。
- 库层(Library Layer):包含核心算法模块,为阶段层提供技术支撑,是框架功能实现的基础。
3.2 核心处理阶段详解
OpenREALM 的处理流程分为五个关键阶段,各阶段紧密衔接,共同完成实时映射任务。
3.2.1 姿态估计阶段(Pose Estimation)
姿态估计是后续所有处理的基础,其目标是准确估计相机的位姿,并将视觉坐标系转换为全局地理坐标系。该阶段的工作流程如图 3 所示:

- 初始化与框架集成:启动时根据初始参数创建视觉 SLAM 接口,支持 ORB-SLAM2、DSO 或 SVO 等主流框架的集成。
- 位姿计算:输入图像通过接口传递给选定的 SLAM 实现,估计相机位姿矩阵 M(定义为从相机坐标系到世界坐标系的变换)。
- 地理配准:若跟踪成功,将帧数据传入地理配准器,利用视觉信息和 GNSS 位置求解从局部视觉坐标系到全局地理坐标系的变换。由于需要一定数量的初始测量数据以保证计算的鲁棒性,输入帧可能会被排队,直到估计误差低于设定阈值。
- 位姿表示:经过尺度求解和视觉轨迹与 GNSS 轨迹的对齐后,发布所有帧的位姿,其矩阵形式为:

其中, 是
旋转矩阵
的元素,
是相机全局位置的 UTM 坐标,
是相机的相对高度。
- ** fallback 机制 **:当视觉 SLAM 因水面、平原等无特征表面无法跟踪当前帧时,系统状态切换为 "丢失",此时采用 fallback 方案计算默认位姿:

其中, 是无人机的磁航向,
是无人机 GNSS 位置的 UTM 坐标,
是无人机的相对高度。该方案的前提是相机朝下、绕
轴和
轴稳定,且视觉位置与 GNSS 位置大致一致。
3.2.2 稠密化阶段(Densification)
稠密化阶段的目标是利用视觉估计的位姿重建观测表面的稠密 3D 点云,其工作流程如图 4 所示:

- 帧筛选:仅处理具有视觉估计位姿的帧,因为视觉估计位姿精度高,而基于 GNSS 和航向信息的位姿虽然计算稳定,但不确定性大且姿态固定,不适合用于稠密重建。
- 深度图生成:将选定的帧集传递给稠密化接口,该接口与姿态估计阶段的视觉 SLAM 接口类似,支持集成先进的重建框架(目前已集成 PSL)。
- 点云投影:通过稠密重建生成深度图,并将其投影为 3D 点云,覆盖之前存在的稀疏点。
3.2.3 表面生成阶段(Surface Generation)
表面生成阶段需要处理三种可能的帧类型:
- 仅含 GNSS 位置、固定姿态且无点云的帧(视觉姿态估计失败);
- 含视觉估计的精确姿态但无稠密点云的帧(稠密化失败);
- 含视觉估计的精确姿态和稠密点云的帧(前序阶段均成功)。
该阶段的核心任务是生成数字表面模型(DSM),可表示为简单平面或 2.5D 高程图,同时还能重建表面法向量和观测角度。
-
核心数据结构:采用 Grid Map 作为基础数据结构,该结构由 Peter Fankhauser 提出,适用于将特定地理位置与收集的所有信息紧密耦合。Grid Map 由感兴趣区域(ROI)和地面采样距离(GSD)定义,支持多层数据堆叠,每个网格单元包含多维信息向量。OpenREALM 对 Grid Map 进行了重构,解决了其固定大小导致的动态扩展效率低的问题,以适应映射过程中地图动态增长的需求。
-
平面表面 DSM 生成(算法 1):

-
高程表面 DSM 生成(算法 2):

3.2.4 正射校正阶段(Ortho Rectification)
正射校正的目标是利用之前估计的表面模型和相机位姿,校正由观测角度和表面结构引起的图像视觉畸变,生成高分辨率正射影像,以便快速识别感兴趣点(如人员、车辆等)。
-
校正方法选择:Hinzmann 等人提出了两种校正方法:
- 基于点云的正射镶嵌图(前向投影):计算速度最快,但对重建的稠密点云依赖性强,点云中的孔洞会导致覆盖区域减小;
- 基于网格的正射镶嵌图(后向投影):将观测场景的高程存储为 2.5D 网格地图,可视为浮点数据的单通道图像,支持灵活缩放,空间分辨率和纹理分辨率可独立设置,适用于输入图像尺寸远大于多视图重建处理能力的场景。OpenREALM 最终选择了基于网格的正射镶嵌图技术。
-
校正流程(图 5):
- 将包含高程和有效性层的输入网格地图缩放到期望的正射影像地面采样距离;
- 为每个网格单元创建 3D 点
,其中
是单元坐标,
是单元高程;
- 将 3D 点反向投影到相机图像,投影公式为:
,其中 是相机标定矩阵,
是 3D 旋转矩阵,
是相机位姿的平移向量,
是图像像素坐标(齐次坐标);
- 确定每个单元对应的观测像素位置
,并将其设置到新的 RGB 颜色层;
- 标记因高程图噪声或位姿估计精度不足导致的投影点超出图像边界的单元为无效;
- 计算每个单元的观测角度,作为实现最终镶嵌图高正交性的附加参数。

3.2.5 镶嵌阶段(Mosaicing)
镶嵌阶段是最后的处理环节,将所有之前收集的数据融合为单一的场景表示。与前序阶段不同,镶嵌阶段的计算资源需求会随时间增长,因为需要将所有顺序稠密化、重建和校正后的帧合成为高分辨率镶嵌图,其核心挑战是最小化资源消耗。
- 工作流程(图 6):
- 接收正射校正阶段的第一帧数据,初始化全局地图;
- 将后续新帧视为 "地图更新",分为无先验信息的区域和重叠区域;
- 无先验信息的区域直接写入全局地图;
- 提取重叠区域,得到两个仅描述对应数据重叠部分的子图(全局地图重叠区域和地图更新重叠区域);
- 为子图的每个网格元素计算最能描述表面的融合值;
- 将融合后的区域写回全局镶嵌图。

- 融合策略:采用概率方法解决网格单元高程的多假设选择问题,具体实现如下:
- 在全局地图中添加三个附加层:"高程方差"、"高程假设" 和 "观测次数";
- 当收到地图更新时,对重叠区域的每个单元计算新高程的浮动平均值:

其中,
是全局地图中当前的平均高程, 是
的观测次数,
是地图更新的高程。
-
采用类似方法估计浮动样本方差:

-
若方差
低于设定阈值,更新方差和平均值层,并增加该单元的观测次数;
-
若方差超过阈值,表明该单元存在两个不同的高程假设,将新假设写入 "高程假设" 层,保留现有数据;
-
当该单元收到新的更新时,将浮动平均值和样本方差与高程值和第二个假设进行比较,选择样本方差较低的作为最可能值,另一个写入假设层。该策略通过最小化高程方差来降低噪声影响。
3.3 四种操作模式总结
OpenREALM 提供四种操作模式,覆盖不同复杂度的应用场景:
- 模式 1:基于 GNSS 位置和航向,从通用图像(RGB、红外等)生成 2D 地图。适用于现成硬件(如大疆产品),仅依赖 GNSS 和航向信息对齐图像,也可用于无特征或高动态区域的全局镶嵌。
- 模式 2:基于 GNSS 位置和视觉姿态估计,从 RGB 图像生成 2D 地图。要求相机具备高帧率以支持视觉姿态估计。
- 模式 3:基于 GNSS 定位和视觉姿态估计,利用 GPU 加速立体重建,从 RGB 图像生成 2.5D 数字高程模型。输出包括相机运动估计、各视图深度图、考虑地表高程的增量更新 2D 地图(正射影像)以及顺序扩展的稠密 3D 点云。
- 全 3D 重建模式:融合上述技术,实现完整的 3D 表面重建和几何校正正射影像生成,是默认的评估模式。
四、实验评估:性能与效果验证
论文通过自定义数据集对 OpenREALM 的核心性能进行了全面评估,重点验证了姿态估计精度、表面重建质量、正射影像质量和实时性能四个关键指标。
4.1 数据集构建
由于缺乏适用于视觉 SLAM 应用的公开无人机映射基准数据集(高帧率、固定内参的高质量相机),论文构建了自定义数据集:
- 无人机平台:轴距 560mm 的四旋翼无人机,起飞重量 2kg,续航时间约 15 分钟;
- 导航系统:Pixhawk 2.1 自动驾驶仪(运行 APM),搭配 ublox NEO-7 GNSS 模块和 HMC5883L 数字罗盘;
- 机载计算:Odroid XU4 伴随计算机,通过 Mavros 和自定义相机节点采集图像,添加 Exiv2 标签(GNSS 和航向信息)并存储数据;
- 视觉系统:IDS Imaging Development Systems GmbH 的 UI-5280CP Rev.2 相机,全局快门,500 万像素(原始尺寸 2456x2054),为降低带宽和提升性能,下采样至 1228x1027 像素;
- 数据参数:图像流和全局位置更新频率均为 10Hz(不同步),共采集 3276 张图像;
- 场景信息:德国 Edemissen 的废弃机场,面积约 250x250m,无人机轨迹为蛇形,前向重叠率 99%,侧向重叠率 50%;
- 场景挑战:包含森林区域(重复纹理,难以提取独特特征)、均质表面(无明显特征)、波纹铁皮屋顶(区域混叠效应)等视觉算法难点(图 7)。

4.2 姿态估计精度评估
姿态估计的精度直接影响后续所有处理阶段的结果,论文以经典离线摄影测量软件 Agisoft Metashape 计算的轨迹作为真值,对 ORB-SLAM2 的姿态估计结果进行评估。
- 评估结果(图 8):
- 平移误差:xy 轴对齐效果极佳,几乎无可见位移;z 轴对应场景的重建深度,不确定性最高,与真值存在轻微偏差;
- 关键区域表现:在 60-100 秒期间,无人机经过第一个转折点(对应图 7 中的视觉障碍 B 区域),该区域特征点数量少,导致整体精度明显下降;
- 误差指标:相对姿态误差(RPE)在转弯前达到峰值,之后迅速下降;平均绝对姿态误差(APE)为 0.53m,表明 ORB-SLAM2 在视觉姿态估计方面表现良好。

4.3 表面重建质量评估
表面重建质量评估以 Agisoft Metashape 生成的结果为真值,将数据集的前向重叠率降至 80% 以控制计算时间(1 小时 45 分钟)。OpenREALM 采用 PSL 进行稠密化,实现的 GSD 为 0.15m / 单元。
-
评估方法:将 OpenREALM 生成的稠密点云导出至开源软件 CloudCompare,通过迭代最近点算法(ICP)与真值对齐以降低地理配准的影响,然后将实时生成的稠密点云投影到参考网格,用颜色编码表示投影距离。
-
结果分析(图 9):
- 混叠效应影响:图 7 中波纹铁皮屋顶的混叠效应对重建影响显著,该区域的建筑物在 3D 重建中几乎无法识别,原因是 PSL 尝试为每个像素计算深度值,而该区域的三角测量不确定性极高;
- 整体对齐效果:跑道的大部分区域与真值对齐良好;
- 偏差较大区域:地图左上角的平原区域(转折点前)偏差最大(-1.5 至 0.5m),该区域也是姿态估计出现明显偏移的区域,表明前序阶段的误差会传递到后续镶嵌阶段;
- 性能对比:尽管 OpenREALM 的重建结果仍有改进空间,但需注意其为实时处理,而 Agisoft Metashape 需要数小时的离线计算。

4.4 正射影像质量评估
正射影像的质量评估采用人工 inspection 方式,核心评估指标包括分辨率、均匀性、几何畸变程度、视觉伪影和全局对齐精度。
-
真值表现(图 11 左):Agisoft Metashape 生成的正射影像无明显缺陷,无重影或重叠边缘,分辨率高达 0.07m / 像素;相机曝光时间变化导致地图顶部区域略有变亮,但不影响地图完整性。
-
各模式结果对比(图 11):
- 仅基于 GNSS 和航向(左二):存在明显的错位,原因是相机假设航向与实际航向存在系统偏移,通过同步和严格对齐相机与无人机航向可进一步改进;
- 视觉 SLAM 姿态估计 + 无 3D 重建(右二):代表当前实时映射的先进水平,无需完整表面重建即可生成视觉效果良好的结果,通过改进融合策略,其效果接近真值,但缺乏表面信息导致的几何畸变是无法克服的根本问题;
- 含高程信息的 3D 重建模式(右一):计算量最大,但生成的正射影像经过校正,均匀性与 Agisoft Metashape 的结果相近,尤其是地图上部的建筑物伪影更少,更接近真值;
- 核心优势:表面数据不仅改善了全局地图的视觉效果,消除了较大的错位和几何畸变,还提供了场景的 3D 信息,这在搜救等需要协调和态势感知的场景中至关重要。
4.5 实时性能评估
实时性能的核心要求是每个阶段的处理速度略快于数据输入速度。由于框架采用多线程流水线设计,简单测量单个阶段的计算时间不足以全面评估性能,因此论文通过跟踪各阶段的输入输出消息频率来估计整体工作量。
- 性能指标定义:

其中, 是输入消息频率,
是输出消息频率。
=1.0表示阶段能够实时处理数据(输出速度与输入速度一致);
>1.0表示阶段过载(输入速度大于输出速度);
<1.0理论上不可能出现(输出数据多于输入数据),但由于频率是时间平均的,可能存在临时波动,因此仅关注稳态性能。
- 评估结果(图 10):
- 输入频率:姿态估计阶段的输入图像流频率为 10 帧 / 秒,输出关键帧频率约为 2.4Hz;
- 各阶段表现:稠密化阶段存在周期性峰值,可能与 GPU 的参与或场景重建复杂度变化有关;所有阶段最终均收敛到
=1.0,满足实时性能要求。

五、结论与未来展望
5.1 核心结论
OpenREALM 提出了一种功能强大的无人机实时映射框架,通过模块化架构整合了视觉 SLAM、单目稠密重建和正射校正等关键技术,支持从简单 2D 图像拼接至复杂 3D 表面重建的多种操作模式。实验验证表明,该框架能够在保证实时性能的前提下,生成高质量的正射影像和数字表面模型,有效解决了传统离线映射方案的滞后性问题,为精准农业、应急救援等实时决策场景提供了可靠的技术支撑。
5.2 未来改进方向
论文指出,当前的 SLAM 和 3D 重建实现并非针对空中映射场景设计和优化,未来的研究应重点关注以下方面:
- 改进 SLAM 和 3D 重建算法,使其更适应无人机空中映射的特定需求,进一步提升表面重建质量;
- 构建公开的基准数据集,为无人机映射框架的性能评估提供统一标准,推动该领域的技术进步。
5.3 开源价值
OpenREALM 的开源特性为研究社区提供了一个灵活、可扩展的实时映射平台,开发者可以基于该框架进行二次开发,集成新的 SLAM 算法、稠密重建方法或优化融合策略,加速无人机映射技术的产业化应用。
六、总结
OpenREALM 作为一款开源的无人机实时映射框架,通过巧妙的模块化架构设计和先进算法的融合,成功解决了传统离线映射方案的核心痛点。其支持的多模式操作使其能够适应从简单场景到复杂地形的多样化需求,实时性能和映射质量的平衡使其在实际应用中具备极高的价值。尽管在无特征区域重建、误差传递控制等方面仍有改进空间,但该框架为无人机实时映射技术的发展提供了重要的基础平台,其开源特性也将促进社区对相关技术的持续优化和创新。对于从事无人机测绘、计算机视觉、机器人等领域的研发人员而言,OpenREALM 不仅是一个实用的工具,更是学习和研究实时映射技术的优秀案例。