玩各种各样的AR库,调研下MAXST的能力

AR测量箱子体积

这段时间都在研究测量箱子体积的项目,通过手机摄像头对准箱子进行拍照,箱子体积就出来了。

很多这方面的研究都使用参考物像证件、A4纸、人民币等。我们不使用任何参考物,使用SLAM的技术,市面上很多AR库都自称有SLAM功能,其中ARCore和ARKit最受追捧。

我们使用ARCore已经实现了测试箱子体积的功能,效果挺好,可惜只能在支持ARCore的设备上运行,中低端手机都不支持。

为了在中低端手机上测量,我们测试了网上能找到的AR库。

我们测试设备是MSM8953和MT6763,测试结果如下:

能用:

  • MAXST:设备能运行、效果还可以、文档简单、有待研究
  • Wikitude:设备能运行,很卡顿
  • 百度AR:开放力度太小,取不到坐标,有待研究

不能用:

  • Vuforia:设备不支持,貌似需要调用arcore
  • EasyAR: 设备能运行demo,有slam,效果很不稳定,demo没显示相机图像
  • 太虚AR 有slam,但无法注册
  • 华为AR:仅支持华为手机
  • 商汤:人脸识别为主
  • 幻视AR:仅提供图像识别功能
  • Xzimg:仅提供图像识别功能
  • 天眼AR、RAVVAR:仅提供图像识别功能
  • Kudan:看视频效果不错,需要联系
  • 网易洞见AR:需要联系

最终选择了MAXST,这是韩国公司出的AR库。
网站地址:http://maxst.com/

下面分享一些使用这个库的经验,我使用的是刚发布的SDK4.0:

  • MAXST构建的坐标系,坐标原点位置可以选择相机或者Target
  • MAXST的SLAM是基于视觉的,在初始化的时候就确定下来图片上的特征点,相机离开这些特征点会导致SLAM丢失,此时需要重新初始化
  • 通过MAXST的接口获取特征点,返回的特征点数据是二维信息,不具备深度信息,不像ARCore返回的是三维坐标
  • VisualSLAM Demo定位效果还不错,想用来测距,后来发现每次初始化的位置不一样,建立坐标系大小不同,所以没有绝对的距离信息,不能用于直接测量距离
  • InstantTracker Demo不需要初始化即可找到平面了,有点神奇,不过不是很准,而且放置的物体不是很稳定

研究到这里,基本可以弃坑了,MAXST不能用于测距,更不用说用来测量体积了

发表评论

电子邮件地址不会被公开。