AR实景导航

背后的技术:

  • 融合了图像定位和 GPS 定位,结合 AR 第一视角进行 POI (导航路径)导览,辅助决策、指引导航
  • 最核心的技术
    • 高精度地图
    • 视觉定位
    • 增强现实算法
  • 成熟的市场产品-高德AR导航
    • 借助智能的图像识别技术以及专业的交通大数据和车道级导航引擎,可直接在拍摄的现实道路画面中,实时呈现直观的3D导航指引

定位

  • 通常会涉及多类传感器的使用。
    • 室外场景下常使用的GNSS(Global Navigation Satellite Syste, 全球导航卫星系统),
    • 室内环境下使用的WiFi定位、超宽带定位、蓝牙定位等
    • 水下场景中常使用的USBL(Ultra Short Base Line,超短基线)等声学基线定位。

视觉定位

  • 由于成本低、感知信息丰富,摄像头已经成为众多智能设备的标配
  • 成熟的市场产品
    • 微软的混合现实头戴式显示器Hololens 2
    • 特斯拉具有Autopilot智能辅助驾驶功能的Model Y系列汽车
    • 高效全景导航的Roomba i7+系列扫地机器人
    • 贝壳如视的VR看房系统
  • 定位分类
    • 基于视觉地图的定位
      • 能够构建先验的视觉地图、然后基于先验视觉地图进行视觉定位
      • 该方法得到的定位结果与先验视觉地图在相同的坐标系、属于绝对定位,能较好地保证全局一致性
    • 无先验地图的定位
      • 无法依赖先验视觉地图,需要估计本体位姿与周围环境结构、属于相对定位
      • 机器人使用较多
  • 定位步骤
    • 构建视觉地图
      • 方案核心
    • 图像检索
      • 根据二维图像信息判断出最相似的场景,试图寻找当前帧与历史帧最像的候选帧
    • 精确定位
      • 得到当前帧的历史候选帧后,进行相应的特征匹配
      • 可利用P3P、EPnP、DLT等方法求取初值,然后再利用BA(Bundle Adjustment,捆绑调整)进行优化求解。

增强现实算法

  • 现实世界中所有对象具有三维属性,可以将事物抽象为一个物点,具有空间属性坐标,
  • 将三维空间目标与二维平面图形连接的纽带就是坐标
  • 在经历投影变换等降维操作后,虚拟信息由初始的三维坐标形式最终转换为用户屏幕上二维坐标形式
  • 综合来说分为以下几个步骤:
    • 数据预处理
    • 内参数标定
    • 位姿信息求解
    • 虚拟信息叠加
### 使用Vue开发AR室内实景导航系统的方法 #### 1. 技术栈的选择 为了构建高效的AR室内实景导航系统,建议采用以下技术栈组合[^2]: - **前端框架**: Vue.js 提供响应式的UI组件库。 - **三维渲染引擎**: Three.js 负责处理复杂的3D图形渲染工作。 - **增强现实(AR)**: AR.js 或者WebXR API 实现浏览器内的增强现实效果。 #### 2. 初始化项目结构 创建一个新的Vue CLI项目作为基础架构,并安装必要的依赖包: ```bash vue create ar-indoor-navigation cd ar-indoor-navigation npm install three @ar-js/core webxr ``` #### 3. 配置Three.js环境 引入Three.js并设置基本场景、摄像机以及灯光源。可以参考three.js中文网上关于VR全景图的做法来建立初步的空间感知能力[^3]: ```javascript import * as THREE from 'three'; // 创建场景对象Scene const scene = new THREE.Scene(); // 添加光源Light到场景中 const light = new THREE.DirectionalLight(0xffffff); light.position.set(-1, 2, 4).normalize(); scene.add(light); export default { data() { ... }, mounted(){ this.initRenderer() } } ``` #### 4. 整合AR功能模块 通过`@ar-js/core`集成AR特性,在HTML文件头部加入如下脚本标签以加载AR.js: ```html <script src="https://aframe.io/releases/1.2.0/aframe.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/@ar-js-org/ar.js@3.2.0/build/augmented-reality.min.js"></script> ``` 接着修改main.js入口文件配置AR视窗参数: ```javascript AFRAME.registerComponent('gps-camera', { init () { const camEl = document.querySelector('[gps-entity-place]'); AFRAME.scenes[0].camera = camEl.camera; } }); ``` #### 5. 开发路径规划算法 对于室内的定位与导航逻辑部分,则可以根据具体需求选用合适的地图服务API(如高德地图SDK),结合A*寻路等经典算法完成最短路径计算。 #### 6. 测试优化体验 最后阶段需反复测试不同设备上的表现情况,调整性能瓶颈处直至达到流畅交互的标准为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值