-
-
Notifications
You must be signed in to change notification settings - Fork 3
Home
ZUXTUO edited this page May 21, 2026
·
4 revisions
欢迎来到 Android_ORB-SLAM2s 的官方文档。本项目是一个面向 Android 平台的高性能、轻量化同步定位与地图构建(SLAM)系统,深度整合了增强现实(AR)能力。
关键特性: 单目 6DoF 跟踪 | 稀疏地图重建 | 平面检测 | 地图持久化 | 异步重定位 | 多地图管理
项目概述、核心功能、技术规格与发展愿景。
三层系统架构详解、数据处理管道、核心状态机、多地图管理、AR 工作流、操作指南。
视觉里程计与位姿跟踪、局部建图与 BA、回环检测与 Sim3、平面检测算法。
ORB 特征提取深度优化、SIMD 加速、内存优化、编译期优化、Profiler 工具。
致谢原作者、学术引用规范、开源许可证说明。
本项目在经典的 ORB-SLAM2 框架基础上进行了深度改造与优化,从算法理论到工程落地提供了完整的移动端空间计算参考。项目始于 2025 年 8 月,历经多个大版本的迭代,当前已发展成为融合 SLAM、多地图管理、异步重定位、AR 平面检测、Web 远程访问等多项功能的综合性平台。
核心特点:
- 纯单目方案: 仅依赖手机摄像头,无需深度传感器或 LiDAR
- 移动端极致优化: 半分辨率处理、SIMD 加速、编译期优化、内存池预分配
-
地图持久化: 自定义二进制格式 (
.map) 保存与加载,支持一次建图多次定位 - 异步重定位: 后台线程持续运行全局重定位,实现坐标系无缝对齐
- 多地图支持: 加载多个独立地图,支持动态切换与增量追加
- AR 场景恢复: 平面与虚拟物体信息独立保存,重定位后自动恢复
- 远程访问: 内置 Web 服务器,支持浏览器远程使用 SLAM
请查阅 系统架构与操作 页面了解启动与初始化流程。
Android_ORB-SLAM2s/
├── app/ # 主应用模块 (Java UI + OpenGL 渲染)
│ └── src/main/java/com/orb/slam2s/
│ ├── ui/ # Activity 与相机视图
│ ├── rendering/ # OpenGL ES 2.0 渲染管线
│ ├── server/ # 内置 Web 服务器
│ ├── sensors/ # IMU/方向传感器
│ ├── utils/ # 工具类
│ └── compat/ # 设备兼容性处理
├── VtonaxAR/ # 核心算法模块 (所有 C++ 代码)
│ └── src/main/
│ ├── cpp/
│ │ ├── native-lib.cpp # JNI 桥接层
│ │ ├── include/ # SLAM 核心头文件
│ │ ├── src/ # SLAM 核心实现
│ │ ├── Thirdparty/ # g2o, DBoW2, Eigen
│ │ ├── profiler/ # 性能分析器
│ │ ├── Plane.cpp/.h # 平面检测
│ │ ├── Matrix.cpp/.h # 矩阵运算
│ │ ├── UIUtils.cpp/.h # OpenGL 绘制工具
│ │ └── 3dof.cpp # 3DoF 跟踪库
│ └── java/ # JNI 声明与传感器
└── OpenCVLibrary/ # OpenCV Android SDK