EasyAR 表面跟踪
EasyAR 表面跟踪(Surface Tracking)实现轻量级的持续跟踪设备相对于空间中选定表面点的位置和姿态的能力,可用于小型 AR 交互游戏、AR 短视频拍摄以及产品放置展示等场景。
EasyAR 表面跟踪的原理
为了在真实空间和虚拟空间之间建立对应关系,表面跟踪利用了设备摄像头和惯性测量单元的数据。
表面跟踪首先通过摄像头图像识别环境表面(不一定是平面上)的显著特征,使用连续图像帧和传感器数据跟踪这些特征的位置。启动时虚拟物体默认被放置在屏幕中间附近的特征点表面,并将虚拟物体的位置视为世界坐标系的原点。
虚拟物体同样被放置在相应的特征点的位置并持续跟踪。在移动设备期间,相机图像中的特征深度不断更新,虚拟物体持续贴合在相应的特征点表面。如果虚拟物体所对应的特征点丢失,系统自动选择新的特征点并输出设备相对于该特征点的位置和姿态。
注意
表面跟踪的特征丢失,可能导致虚拟物体的位置发生漂移,如果持续跟踪固定位置推荐使用运动跟踪。
表面跟踪与运动跟踪对比
与运动跟踪相比, 表面跟踪无需设备标定、支持更多机型,无需初始化即可运行。但是表面跟踪并不提供真实尺度,只能放置一个虚拟物体,且虚拟物体的底部要放置在坐标系原点。
| 对比维度 | 表面跟踪 | 运动跟踪 |
|---|---|---|
| 设备标定要求 | 无需设备标定 | 需要设备标定 |
| 机型支持范围 | 支持更多机型 | 对硬件能力要求较高,支持机型相对有限 |
| 空间尺度 | 不提供真实世界尺度 | 提供真实尺度的位姿 |
| 初始化流程 | 无需初始化即可运行 | 通常需要初始化过程 |
| 虚拟物体数量 | 仅支持放置一个虚拟物体 | 可支持多个虚拟物体 |
| 虚拟物体放置约束 | 虚拟物体底部必须放置在坐标系原点 | 虚拟物体可放置在任意空间位置 |
| 适用场景 | 轻量级 AR 展示、快速体验 | 高精度 AR、空间交互、导航与测量 |
注意
表面跟踪尽量保持虚拟物体贴合在环境的表面上(可能是不平物品表面或者平坦的地面、墙面),但是并不检测环境中是否存在平面。如果需要检测环境中水平面或垂直面功能,请查阅 平面检测功能。