SLAM+AR 技术与应用的一些思考

简介: 图像处理领域涉及AR的技术可以抽象为这么一类技术:通过图像和其他传感器信息计算摄像机的位置和图像内环境三维结构信息,并结合3D渲染提供更自然的人机交互能力。

一、概述

图像处理领域涉及
AR的技术可以抽象为这么一类技术:

通过图像和其他传感器信息计算摄像机的位置和图像内环境三维结构信息,并结合3D渲染提供更自然的人机交互能力。


如图1所示,位置和结构信息一般包括相机机位(Camera Pose)和点云/3D模型(Point Cloud/Mesh),不同的技术问题,侧重点不同。
Position_Structure
图1 AR相关技术关系图
Marker/Markerless Tracking只关注相机机位的跟踪,这也是AR最开始的一类技术,它的技术指标主要要求运算速度快,保障实时性,还有就是跟踪稳定且不易跟丢。Marker一般是一张2D的图片,因此处理相对简单,世界坐标系往往就以Marker所在平面为XY轴平面,以垂直于该面的法向量为Z轴。通过将摄像机图像上的特征点和Marker中的特征点进行匹配,就可以计算出摄像机相对于Marker的位置,如图2所示。
Marker_AR_
图2 Marker AR原理图
IMU(惯性传感单元)是现代智能手机几乎都配备的元件,通过IMU可以准确获取手机(相机)的旋转维度的变换,但是对于空间位移很难准确衡量,所以IMU经常作为其他技术的辅助,比如SLAM。
SLAM(同时定位并建图),顾名思义,它的目的同时包括了计算Camera Pose和扫描环境三维结构信息,和它非常类似的是SFM(Structure From Motion),二者最大的区别在于SFM常用于3D重建,一般对重建的结构细节以及精细度要求甚高,重建的后结果多是面向用户,对美观度也有一定要求,因此一般只能离线处理;而SLAM应用场景包括AR、机器人控制等等,一般要求实时性,所以扫描的环境结构信息一般相对粗糙,而环境的信息也主要为了辅助自身的定位。SLAM/SFM相比于Marker Tracking的最大区别在于事先并不知道任何三维空间的信息,需要首先从两张二维的图像(有一定的视差)中恢复三维结构(如图3所示),继而不断的跟踪并扩张地图。SLAM建立的3D地图的坐标系是随机的,而后面提到我们做了一个有趣的改进是可以通过一张Marker作为SLAM的初始地图,从而使得SLAM的坐标系可以确定。

SFM
图3 从二维图片恢复三维结构
3D Object Tracking,即三维物体跟踪,这个问题既类似于Marker的跟踪也类似于SLAM,Maker Tracking是计算2D的图片相对于的相机的位置,SLAM解决的其中一个问题是在构建好的三维点云中,准确定位到自身的位置并持续跟踪;3D Object Tracking要解决的问题是准确定位到3D物体相对于相机的位置。和Marker Tracking相比,是把跟踪2D的图片升级为跟踪3D的物体,区别在于2D的图片始终位于三维空间中的一个平面上,方便构建点云和世界坐标系。和SLAM相比,SLAM构建好的环境和自己的要定位的环境必须是相对稳定的,而3D物体识别时,背景信息往往是变化的。3D Object Tracking需要的先验知识一般是一个3D模型,这个模型有时候可以通过SLAM或者SFM得到。
Object Segmentation,即物体分割,是在摄像机图片中将指定的物体分割出来或是将前景后景分离开来。这类问题实现方法很多,其中有一类是利用物体3D模型的信息将图片中的物体找到并分离出来,同时还可以准确计算3D物体相对于Camera的位置。这类技术又和3D Object Tracking有相辅相成的作用,比如如果能够对物体先进行分离,那么跟踪就会变得简单些,反之,如果先能够追踪到物体的位置,那么对物体进行分离也相对容易。
在基于单目的摄像头的AR技术中,特征点(Feature)是最通用的一项技术手段,通过匹配不同帧图像之间特征点的对应关系,我们才能够准确计算相机的运动,从而恢复环境三维结构。特征点相关算法很多,在移动端,为了提高计算效率,倾向使用ORB和Freak,比如SLAM中我们就使用了ORB特征,Marker Tracking中我们使用了Freak特征;而类似SIFT这种,匹配精度高,但是运算效率低,一般用于SFM这类技术中。使用特征点的好处在于,特征具有良好的尺度不变形、方向不变形和光照不变形等特性,匹配结果较为鲁棒。光流法(Optical Flow)是相对于特征点的另一类跟踪相机运动的方法,它的基本原理是不去计算特征点以及特征描述子,而是直接使用像素块进行匹配,提高了运算效率,而其缺点是光流法只适合匹配相邻的两帧图像来计算运动变化,它要求光强度守恒(Brightness Consistency),所以无法用于重定位等技术实现。
每项AR技术背后都孕育着一些新型的业务形态,AR业务主要围绕营销互动和实用工具两类展开,如图5所示。最早的Marker Tracking催生了AR互动营销,AR教育等业务的发展,手淘的ARMagic互动平台就是依赖此技术建立起来;SLAM技术支撑了AR实景宝贝,让3D的商品能够更加自然地进入用户的视野;AR捉猫猫也是依靠IMU在AR中的应用才得以铺展开来。更重要的是这些技术潜力还未完全释放,在现有技术体系中我们已经规划了未来一些业务的蓝图:

AR说明书,通过AR的方式展示实际生活、生产环节中一些器械的使用方式或是工作原理。比如家电(洗衣机、电饭煲等)的3D形式的说明书(如图4所示),工厂内一些机器的虚拟操作指南等。这项业务主要依托于3D Object Tracking和SLAM技术。
AR_
图4 AR说明书示例图

AR场景互动,在一些线下场景(商场、休闲场所、博物馆等),通过AR的方式完成的更加自然、丰富的互动。比如目前规划的上海星巴克新概念旗舰店,就计划利用AR的方式展示店内的传统机器和传统工艺的历史,让用户能够用AR的方式探索星巴克的历史文化。同时,结合支付、物流等环节,完成一体化的有趣购物体验。

AR直播/AR视频,在直播的场景通过布置一些特殊的“标记”,在直播和视频中叠加更为丰富的互动特效。
AR业务的形式优势不仅仅在于新颖,而是它通过摄像头打通了虚拟和现实世界,也就有了天然的贯通线上和线下的优势,是进行“新零售”的探索一个利器。
AR_
图5 AR技术体系和业务关系图

二、SLAM技术

提到SLAM开源项目,自然先想到大名鼎鼎的ORB-SLAM。首先简单介绍下ORB-SLAM2的算法结构。如图6所示,ORB-SLAM2主要分为三个线程,Tracking用于跟踪Camera Pose,LocalMapping用于构建点云地图,Loop Closing用于闭环检测,优化点云位置。Place Recognition,即重定位,是利用BoW(Bag of Words)模型在已经构建好的地图内定位Camera。虽然ORB-SLAM2整体效果在众多开源项目中脱颖而出,但他仍然只是一个实验室产品,距离真正的实用还需要很多工作要做。将该项目移植到移动端后,其性能表现如下:

  1. iPhone7 Plus, 15FPS; Android 三星Note7 1-2FPS
  2. BoW词库大小140M,加载时间8秒,占用内存400+M
  3. 位置跟踪不稳定,存在抖动
  4. 代码存在很多Bug,尤其内存泄露非常严重

ORBSLAM2
图6 ORB-SLAM2

因此,SLAM技术在移动端的应用必须能够突破“硬件资源有限”这个障碍。

2.1 平面检测

SLAM构建出了3D点云地图,并估计出了Camera Pose,然而对于AR应用,还无法确定3D模型的摆放位置。比如我们需要在桌面上摆放一个花瓶,我们还需要知道在3D点云地图中,桌面对应的位置,这就需要上面流程图里提到的平面检测。
转换为一个数学问题描述:在空间中我们有一系列的点P,并给出一个方向向量 D ,求一个法向量平行于D 的平面并使得所有的点距离该平面的距离之和最小。
这是一个非常典型的最小二乘估计问题,因此可以利用已有的数学工具求解,如高斯牛顿,LM算法,SVD分解等等。如果是检测水平面,其中D 是根据重力传感器得到的竖直方向,即平面的法向量方向得以确定;

2.2 Marker+SLAM

SLAM初始化建立的点云世界坐标系是随机的,对于单目SLAM,scale信息是无法确定的,即无法确定点云世界坐标和真实尺寸的比例。在某些情况下,AR应用希望能够和真实的尺寸一一对应,在这种情况下我们提出了利用Marker作为SLAM的初始地图的方法。通过一个事先确定的Marker,建立一个已知scale信息的世界坐标系,在此坐标系的基础上通过SLAM跟踪并扩张地图,那么在叠加3D模型时就可以安装其真实尺寸展示。算法上的区别就在于SLAM首先要去识别Marker,而不是自己去初始化地图,识别Marker的方法也可以借鉴Marker Tracking的相关技术。

三、扩展与思考

SLAM技术是AR算法领域最核心的技术的技术之一,ARKit和ARCore的推出也验证了各大公司对其重视的程度。在SLAM基础上,去完成Marker Tracking或者Object Tracking等工作,也能够大大提高整体跟踪效果。理解AR的技术本质,更有助于理解AR应该如何应用。而在业务层面,AR缺少的不是技术,而是创意!

目录
相关文章
|
2月前
|
传感器 边缘计算 运维
AR 虚实叠加技术在工业设备运维中的实现流程方案
AR技术通过虚实信息融合,实现工业设备参数可视化、故障立体化、操作直观化,提升运维效率与精度。结合物联网与数字孪生,打造智能运维新范式。
|
2月前
|
传感器 运维 数据可视化
AR眼镜巡检系统在工业互联网的应用:AR+IoT
AR与IoT融合构建虚实闭环,IoT采集实时数据,AR直观呈现并交互,形成感知-分析-决策-行动高效闭环,提升运维效率。
|
2月前
|
传感器 人工智能 运维
AR技术电力智慧运维白皮书
AR技术正重塑电力运维模式,通过“端-边-云”协同系统,实现设备可视化、远程协作与智能预警,大幅提升效率与安全性,推动电力行业迈入智能运维新时代。
|
4月前
|
人工智能 算法 定位技术
AR 导航导览技术如何实现的?提供全场景解决方案深度解析
传统导航在复杂场景中存在定位断层、空间认知成本高及实景导航实施难等问题。AR导航导览通过“实景+虚拟融合”,结合高精度定位引擎、实时三维渲染引擎和智能路径规划引擎,实现室内外无缝衔接的沉浸式体验。如需AR导航导览解决方案欢迎私信获取,如有项目合作及技术交流欢迎私信作者哦~
383 1
|
3月前
|
安全 vr&ar
降本增效神器:AR眼镜远程协助在数字化工业的应用
AR眼镜助力工业维修,实现远程实时协助,提升效率,降低成本,推动工业智能化发展。
|
15天前
|
传感器 人工智能 安全
AR 巡检在工业的应用|阿法龙XR云平台
AR巡检技术广泛应用于电力、石化、制造、交通等行业,通过AR眼镜或平板实时叠加设备参数、历史数据及操作指引,提升巡检效率与准确性。支持远程协作、自动记录分析,并可在高危环境实现无人巡检,大幅降低安全风险,推动智能化运维升级。
|
15天前
|
机器学习/深度学习 人工智能 vr&ar
H4H:面向AR/VR应用的NPU-CIM异构系统混合卷积-Transformer架构搜索——论文阅读
H4H是一种面向AR/VR应用的混合卷积-Transformer架构,基于NPU-CIM异构系统,通过神经架构搜索实现高效模型设计。该架构结合卷积神经网络(CNN)的局部特征提取与视觉Transformer(ViT)的全局信息处理能力,提升模型性能与效率。通过两阶段增量训练策略,缓解混合模型训练中的梯度冲突问题,并利用异构计算资源优化推理延迟与能耗。实验表明,H4H在相同准确率下显著降低延迟和功耗,为AR/VR设备上的边缘AI推理提供了高效解决方案。
231 0
|
1月前
|
人工智能 监控 大数据
AR眼镜在警务安防的应用方案
针对当前社会治安防控难题,基于阿法龙XR云平台打造的云眼AI警务模块,融合AR与AI技术,构建“感知-分析-指挥-执行”一体化防控体系。通过AR智能眼镜实现人脸识别、车牌识别、人证比对、远程调度、执法记录等功能,提升执法效率与智能化水平,助力警务模式转型升级。
|
3月前
|
传感器 自然语言处理 资源调度
AR 交互与自动感应技术的博物馆智慧导览系统功能解析
本系统结合AR图像识别、自动感应与多语言资源管理,实现虚拟内容与文物精准叠加、自动讲解与智能导航,提升博物馆导览体验智能化、互动性。
301 1
|
2月前
|
运维 数据可视化 vr&ar
AR远程协作在发电领域的运维应用方案
发电厂面临设备故障频发、运维人员经验不足、远程支持困难及维护成本高昂等挑战。为提升运维效率与设备可靠性,越来越多电厂开始采用增强现实(AR)远程协作技术。通过AR设备,现场人员可与远程专家实时协作,实现快速故障诊断与修复、可视化操作指导和精准培训支持。AR技术不仅缩短停机时间,降低运维成本,还提升了应急响应能力与决策效率,助力发电行业向智能化、高效化方向发展。