Vuforia(高通)识别3D物体

先纠正上一篇博客中的一个错误

Vuforia(高通)识别3D物体_第1张图片

上一篇中说道Database可以修改,但不能删除,这个是错误的,因为自己也是第一次做,网上也搜了很多资料,有一个说不能删除,只能修改,自己上传的也很少就没有考虑去做删除的操作,项目中需求用到了这。所以删除的操作如下:

Vuforia(高通)识别3D物体_第2张图片

点击其中一个Target(例如:AR1)

Vuforia(高通)识别3D物体_第3张图片

选择需要删除的Target

Vuforia(高通)识别3D物体_第4张图片

点击Remove即可移除

Vuforia(高通)识别3D物体_第5张图片

Vuforia(高通)识别3D物体_第6张图片

即可看到Img1已经被移除

好了,开始进行识别3D物体

这篇主要讲利用高通插件识别3D物体

就是下面这个盒子

Vuforia(高通)识别3D物体_第7张图片

高通默认识别这种物体,识别后的标识是一个绿色的长方体标识物体的原点

准备工作:

首先要在手机上装一个扫描程序,扫描现实中的三维物体,然后上传高通官网,在下载成UnityPackage类型让Unity能够使用

这个扫描程序可以从高通官网上进行下载,是一个安卓程序

Vuforia(高通)识别3D物体_第8张图片

点到Tools往下滑,找到Vuforia Object Scanner

Vuforia(高通)识别3D物体_第9张图片

下载后解压

Vuforia(高通)识别3D物体_第10张图片

数据线连接手机,将apk文件拷入手机安装

Vuforia(高通)识别3D物体_第11张图片

然后刚才解压文件中的Media文件夹打开,两个PDF图

打印第一张A4-ObjectScanningTarget.pdf,主要是用来辅助扫描的。

Vuforia(高通)识别3D物体_第12张图片

好了,接下来就是扫描三维物体。

将盒子放到纸上的灰色部分,它上面有个坐标系,盒子大致位置放好就可以,

Vuforia(高通)识别3D物体_第13张图片

点击手机上安装好的Scanner

Vuforia(高通)识别3D物体_第14张图片

对准盒子会出现

Vuforia(高通)识别3D物体_第15张图片

三条线就是高通做的一个坐标系,点击红色录像按钮

即可看到盒子上有很多绿色的识别点,识别点越多,越容易比识别,还有一个有线框的遮罩,转动纸,使手机能够一圈扫描盒子,扫描识别到后,遮罩就会编程绿色,尽可能多识别点。

Vuforia(高通)识别3D物体_第16张图片

注意:识别的目标尽可能大点,我之前用笔测试,虽然识别点很多,但是测试还是很难识别,还有就是转动纸,尽可能从各个方向识别,做多个识别点

另外,物体的识别难易程度和颜色深浅没有关系,但和物体上的简易程度有关系,越复杂就越容易被识别

例如:我用一张写满字的纸张比一个有几个对比鲜明色彩的纸张更容易识别。

还有就是不要用圆形的东西,例如杯子,我测试了好几个圆形的东西,都不太容易识别

识别完成之后,点击对勾,取个名字Cube

Vuforia(高通)识别3D物体_第17张图片

保存之后

Vuforia(高通)识别3D物体_第18张图片

点击Test,将盒子从A4纸上拿下来,扫描盒子,即可看到盒子的原点Vuforia(高通)识别3D物体_第19张图片

我是刚才测试截图用了两次扫描,绿色立方体有点歪,正常是直立在原点的

好了,测试成功,点击上传到电脑上

Vuforia(高通)识别3D物体_第20张图片

导入电脑后是一个.od文件


好了,此处扫描三维物体的步骤就完成了,接下来和之前的上传图片类似,将该.od文件上传到高通官网

Vuforia(高通)识别3D物体_第21张图片

这次选择的3Dobject

Vuforia(高通)识别3D物体_第22张图片

将刚才上传的Cube.od文件上传即可创建完成

创建好下载就是UnityPackage文件

Vuforia(高通)识别3D物体_第23张图片

导入Unity中

Vuforia(高通)识别3D物体_第24张图片

正式开始

Unity中新建场景将Vuforia高通插件中的ARCamera,ObjectTarget拖入场景中

Vuforia(高通)识别3D物体_第25张图片

选择ObjectTarget,Inspector界面进行设置

Vuforia(高通)识别3D物体_第26张图片

因为这次识别的就是三维物体,所以就不用修改导入的物体的Texture Shape,如果是图片就需要修改为2D

Vuforia(高通)识别3D物体_第27张图片

注意:ARCamera预制体中设置

Vuforia(高通)识别3D物体_第28张图片

和上一篇一样,在ObjectTarget下面创建一个子物体,球体

Vuforia(高通)识别3D物体_第29张图片

好了保存场景运行就可以,运行结果,识别到盒子之后在原点出现球体

Vuforia(高通)识别3D物体_第30张图片




你可能感兴趣的:(AR/VR)