基于Vuforia的Hololens图像识别

微软官方Hololens开发文档中有关于Vuforia的内容,https://developer.microsoft.com/en-us/windows/holographic/getting_started_with_vuforia

本文只是实现了使用Hololens识别图片这一个小功能.

Vuforia简介

Vuforia使得HoloLens有了能够识别环境的能力 - 即将AR体验连接到环境中的特定图像或者对象。 可以使用此功能在机器上叠加引导逐步说明界面,或向物理产品添加UI功能。

对于企业开发人员 - 可以使用VuMark唯一标识工厂车间的每台机器 - 直到序列号。 VuMarks可以扩展到数十亿,并可以设计为看起来像一个公司的标志。 它们是为HoloLens可以看到的任何产品添加AR的理想解决方案。

为手机和平板电脑构建的现有Vuforia应用程序可以很容易地在Unity中配置运行到HoloLens上。 甚至可以使用Vuforia把你的新HoloLens应用程序部署到Windows 10平板电脑,如Surface Pro 4和Surface Book。

资源下载

(关于Vuforia的信息资源都在以下这个网站上)

Vuforia for Unity SDKvuforia-unity-6-1-17.unitypackage (48.03 MB)】 :(下载之前要求登陆该网站,注册一个就好)

https://developer.vuforia.com/downloads/sdk?d=windows-30-16-4506

Samlpes(vuforia-samples-core-unity-6-1-17.zip (128.02 MB) ):

https://developer.vuforia.com/downloads/samples

如果有VuMark需求,有VuMarkDesigner等工具

https://developer.vuforia.com/downloads/tool

Unity设置:

1.打开Unity,如果是新的项目的话,需要导入刚下载的vuforia-unity-6-1-17.unitypackagevuforia-samples-core-unity-6-1-17压缩文件下的资源包。。导入方法Assets 右键> Import Package > Custom Package.

2.在Project面板下,选择SampleScenes文件夹,找到Vuforia-3-ImageTargets场景文件,打开。

3此时场景中有如下文件

此时场景中有两个camera,一个HololensCamera,一个ARCamera。

ARCamera设置:

AR设置主要分为如下几步:

【1】首先添加APP License Key:获得注册码网站https://developer.vuforia.com/targetmanager/licenseManager/licenseListing

       获得注册码后将其粘贴在下图APP License Key属性中。

【2】在Digital eyewear Behaviour脚本组件下,将三个属性分别设为:

         Eyewear type--->Optical see-through 

        See through Config----->Hololens 

        Central Anchor Point ----->HololensCamera{将Hierarchy面板下的Hololenscamera拖入其中}  

个人数据库的创建与加载:

【1】实现在一张卡片或者照片上增强现实,首先你需要拍摄此对象,例如你拍摄一本书的封面。将照片保存在电脑中,打开网站https://developer.vuforia.com/targetmanager/project/checkDeviceProjectsCreated?dataRequestedForUserId=

【2】点击Add Database 添加你的数据文件。会要求你先为自己的数据库命名,选择device选项,构建你的数据库,我的命名为FirstDatabase。然后点击打开你的数据库文件,添加你要识别的图像文件并命名。然后你可以点击下载Download Database,会生成一个Unity包,接下来你先需要将其导入到你的Unity项目中。

【3】导入成功后,在ARCamera的Inspector面板下的database load behaviour脚本属性下,会出现你导入的数据库文件,勾选上你的数据库文件与Activate。

点击Hierarchy面板下的ImageTargetChips对象,在其Inspector面板下,进行如下设置:

在image target behaviour 脚本下的database属性里,要选择你自己添加的数据库,Image Target选择你想识别的照片,将Enable Extended Tracking 勾选上。

发布:

Unity发布于Hololens前基础设置要做好,

【1】在Edit->projectsettings->player->other settings设置下将如下内容勾选上。

【2】在Edit->projectsettings->player->publishing settings设置下将如下内容勾选上。

  • InternetClient
  • WebCam
  • SpatialPerception - if you intend to use the Surface Observer API

接下来可以发布到你的Hololens上测试其效果。

原文地址:https://www.cnblogs.com/qichun/p/6111193.html