天天看点

《AR与VR开发实战》——2.6 立方体识别

vuforia sdk提供了立方体识别功能,该功能可以识别被图案包裹的立方体,常用于产品包装盒等物体的ar展示效果,本节我们将介绍通过unity以及vuforia sdk制作立方体识别的步骤和方法。

1.下载并导入插件

登录官网,点击下载如下插件并解压。

《AR与VR开发实战》——2.6 立方体识别

在解压完成后找到multi targets包并导入unity工程。

《AR与VR开发实战》——2.6 立方体识别

在工程视图project中的vuforia目录下找到arcamera和multitargets两个预制件,将其拖到层级视图hierarchy中,同时删除场景中的main camera。

《AR与VR开发实战》——2.6 立方体识别

2.创建数据库

在官网的develop页面下选择target manager并创建一个新的database,命名为multitarget。点击新建的multitarget数据库,在弹出的文件选项面板中选择cuboid。

《AR与VR开发实战》——2.6 立方体识别

上图中,dimension中的属性是为了确定立方体的尺寸,分别为宽、高、长三个维度的尺寸。相应的,物体的长度对应front、bottom、top和back识别图的长度,宽度对应left、top、right和bottom识别图的宽度,高度则对应front、left、right和back识别图的宽度。遵循上述步骤,各识别图上传时相对应位置的尺寸必须一致,否则会出现识别图无法上传的问题。

《AR与VR开发实战》——2.6 立方体识别

3.实现立方体识别功能

这里我们使用官方自带的multitarget,选中multitarget,调节下图所示属性。

《AR与VR开发实战》——2.6 立方体识别

在multitarget下创建一个扫描后要显示的模型,我们可以创建一个unity自带的cube来显示识别之后的物体,调整好对应关系后点击运行即可实现立方体识别效果。