vuforia6.2 在unity中图片识别教程

vuforia6.2 在unity中图片识别模型流程(一)

最近公司将向AR转向,因此对vuforia进行了一些浅显的了解。未免遗忘,将vuforia的图片识别流程进行一个简单的整理。本人水平不高,若有遗落错处欢迎评论指正。(本文使用的是vuforia6.2版本,以及unity5.3.5)


账号注册

vuforia官网

  • 账号注册很简单,跟着流程注册登陆即可。

  • 登陆后点击Downloads进入下载界面并选择SDK。

    vuforia6.2 在unity中图片识别教程_第1张图片

    vuforia6.2 在unity中图片识别教程_第2张图片

    下载后直接导入unity中即可。


  • 在官网进入Develop界面,选择License Manager

    vuforia6.2 在unity中图片识别教程_第3张图片

    此为证书管理界面,注意与Target Manager界面区分。 
    一个App只有一个证书 但可以有多个Target。 
    证书和Target之间并无对应关系。 
    Target Manager主要管理识别图等。


  • 创建一个新证书 点击创建新证书 
    vuforia6.2 在unity中图片识别教程_第4张图片

    之后根据提示填好信息创建即可,注意Name需要与你的App名字保持一致,包括大小写(这里是指在unity中BuildSetting中填写的App名字一致),否则会出现无法识别的情况


  • 创建好证书后点击即可进入证书管理界面,如下图

    vuforia6.2 在unity中图片识别教程_第5张图片

    在此界面点击Edit Name即可修改名字。 
    选中部分为证书部分,需将其复制,之后需要填入指定位置。


  • 之后就可以进入Target Manager界面管理识别图

    vuforia6.2 在unity中图片识别教程_第6张图片


  • 进入创建界面 
    vuforia6.2 在unity中图片识别教程_第7张图片

    这里的名字可以任取,方便自己使用即可。 
    类型中Device为图案,Cloud为云识别,VuMark为 VuMark是Vuforia 6.0版本新增的一个功能。它是一个可定制的可视化代码,可以贴在任何产品或机器上面,有兴趣可自行了解。 
    这里我们使用的Device。

  • 创建成功后,同样点击名字即可进入管理界面

    vuforia6.2 在unity中图片识别教程_第8张图片

    点击Add Target创建新识别图,界面如下:

    vuforia6.2 在unity中图片识别教程_第9张图片

    这里的选项均可自己按需选择,此处我们使用图片,选择Single Image。 
    width代表图片的宽度,建议根据识别图的宽度填写。

    创建成功后,选择要下载的识别图,点击Download Datebase 
    下载完成会得到一个unity资源包,将其导入Unity中。


Unity操作

  • 拖入Prefab

    vuforia6.2 在unity中图片识别教程_第10张图片

    进入Unity后 先将MainCamera删除 
    再按图片路径将ARCamera及ImageTarget拖入场景中

  • ARCamera设置

    找到ARCamera,找到其上的VuforiaBehaviour组件,并点击OpenVuforiaConfiguration进入编辑界面。


    进入编辑界面后,首先将之前官网上的证书复制到AppLicenseKey框中。 
    注意需将Datasets中的Loadc6Database勾选。 
    其余的选项可以按照项目要求设置。

    vuforia6.2 在unity中图片识别教程_第11张图片


  • ImageTarget设置

    vuforia6.2 在unity中图片识别教程_第12张图片

    在ImageTarget上找到ImageTargetBehaviour组件。 
    DataBase选择你刚才下载导入的识别图,点击下拉选择即可。 
    选择DateBase后ImageTarget会自动选择,width和height会根据你上传时填写的大小自动设置(此大小是可以更改的,只是比例不会变)。 
    其余选项可按照自己的需求设置。



  • 模型及摄像头位置设置

    设置好参数过后,此时可以将你需要显示的模型放到ImageTarget的子物体,Active不需要设置,内置脚本自己会检测,当然也可以自己按需要调整,后面会介绍。

    vuforia6.2 在unity中图片识别教程_第13张图片

    关于模型和图片的距离,距离最好不要太远到超出摄像机的摄像范围,具体大小和位置可根据需要调整。 
    ARCamera则需要将摄像范围调整到能将识别图和模型全部纳入范围(选中ARCamera会出现摄像范围)。

    vuforia6.2 在unity中图片识别教程_第14张图片

    通过代码自行操作模型

    • vuforia代码浅析

      在ImageTarget物体上找到DefaultTrackableEventHandler组件,并打开。


      此脚本主要是对识别后的操作进行控制的。 
      如果对识别后对模型有操作可在此脚本里添加。


      我们同样可以自行编写脚本进行操作,只需继承ITrackableEventHandler即可。

      在此脚本中,我们可以发现最重要的是以下三个方法:

      vuforia6.2 在unity中图片识别教程_第15张图片

      vuforia6.2 在unity中图片识别教程_第16张图片

      vuforia6.2 在unity中图片识别教程_第17张图片


    从方法名中可以看出,OnTrackableStateChanged即为当识别状态发生改变时调用的方法。 
    OnTrackingFound即为当识别成功后调用的方法。 
    OnTrackingLost即为当识别图离开镜头后调用的方法。

    那我们不难看出要对模型进行操作即可从这三个方法入手。 
    比如我们如果想在模型出现后能够通过手指来操作模型旋转,放缩等操作时,即可通过手势插件FingerGesture或EasyTouch来进行操作。 
    又如我们如果想通过UGUI添加按钮,通过按钮来是模型实现对应的功能的话,我们也可以在此脚本中控制按钮的出现和消失等。 
    具体的功能的话可以根据需求来开发。

    发布设置

    • 设置需要注意的地方

      vuforia6.2 在unity中图片识别教程_第18张图片 
      vuforia6.2 在unity中图片识别教程_第19张图片

    发布时其他设置按照vuforia的要求来即可,需要注意的是图中框中的部分,这里的CompanyName和ProductName一定要和在官网申请时的名字是要一样的,包括大小写。

    BundleIdentifier里面也是一样的。

    如果出现不一致,可以在官网账号信息或证书申请处进行修改即可。

    不一致会导致无法识别的情况,一定要注意。

    最后,发布安装后大家会发现使用过程中左下角有vuforia的商标, 
    这个商标是需要付费才能够去除的,但是可以被UI遮挡,有需要的朋友可以根据自己经济情况解决。


  • 转载:http://blog.csdn.net/qq_25831023/article/details/54799219

你可能感兴趣的:(Unity)