基于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 SDK【vuforia-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.unitypackage和vuforia-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上测试其效果。
基于Vuforia的Hololens图像识别的更多相关文章
- HoloLens开发手记 - Vuforia开发概述 Vuforia development overview
关于Vuforia,开发AR应用的人基本都会熟悉.之前我也写过一篇关于Vuforia开发的博客:Vuforia AR SDK入门 今天这篇博客则主要是谈谈HoloLens使用Vuforia开发混合现实 ...
- HoloLens开发手记 - 开始使用Vuforia Getting started with Vuforia
Vuforia在6.1版本的Unity SDK里实现了对HoloLens的支持. 查看 Developing for Windows 10 in Unity 这篇文章来了解如何配置Unity和Visu ...
- Vuforia开发完全指南---Vuforia概述
Vuforia概述 AR(Augmented Reality)增强现实,想必大家都已经很熟悉了.这是当下最热的技术之一,是利用计算机视觉和计算机图像学领域的相关知识将虚拟世界融入到现实生活当中.AR和 ...
- Vuforia开发完全指南(四)--- Image Target
Vuforia开发完全指南---Image Target,简单方便的AR图像识别 概述 在Vuforia提供的SDK中,最简单.也是最常见的AR功能就是Image Target---图像识别.你只需提 ...
- 将Vuforia程序发布到Windows10系统的基本流程
最新博客地址已转到: http://blog.csdn.net/zzlyw?viewmode=contents ------------------------------------------ ...
- Vuforia图像追踪,动态创建的对象隐藏显示的坑
刚做的一个项目,使用Unity3D的Vuforia插件进行图像识别,其中有动态生成的游戏对象模型,地形模型放在ImageTarget下,作为ImageTarget的子物体. 动态生成的敌人则有Pref ...
- Java基于opencv实现图像数字识别(一)
Java基于opencv实现图像数字识别(一) 最近分到了一个任务,要做数字识别,我分配到的任务是把数字一个个的分开:当时一脸懵逼,直接百度java如何分割图片中的数字,然后就百度到了用Buffere ...
- 基于DM642 RAW采集格式的视频驱动开发及应用
摘 要:为解决C64X系列数字信号处理器(DSP)视频驱动不能应用于原始数据格式(RAW)采集格式的问题,设计了DM642和电耦合元件(CCD)高清传感器的数据传输接口,并分析.修改用于标准格式的视频 ...
- AR中的SLAM(一)
写在前面 本系列打算讲讲个人对AR行业和AR中的SLAM算法的一点浅显的看法.才疏学浅,文中必然有很多疏漏和不足,还望能和大家多多讨论.今天先讲讲我对AR的一些认识. AR的一点理解 AR是什么 AR ...
随机推荐
- java的回忆录
封装的三步骤:(1)加属性(成员变量.全局变量.域field)用private来修饰(2)为对应的属性生成共有的setter.getter方法(3)在对应的setter的方法中可以根据需要加入对应的验 ...
- ajax开发模拟后端数据接口
在做前端开发的时候,特别是一些业务逻辑集中在前端的开发中.我们经常需要自己来模拟获取到后台接口的数据.为什么要模拟?可能后台接口还没有开发完成,可能后台还没有数据返回,可能...等等原因.曾经,我也尝 ...
- C# 计算文件的 Hash 值
/// <summary> /// 提供用于计算指定文件哈希值的方法 /// <example>例如计算文件的MD5值: /// <code> /// String ...
- .Net 微信开发与微信支付
.NET https://github.com/JeffreySu/WeiXinMPSDK JAVA http://git.oschina.net/pyinjava/fastweixin ...
- poi-3.11-beta2-20140822.jar操作excel方法
poi-3.11-beta2-20140822.jar操作excel方法 根据不同类型读取值的方法: // 获取单元格内不同类型的值 public String getValueByType(HSSF ...
- Cocos2d-x手机游戏开发中-组合动作
动作往往不是单一,而是复杂的组合.我们可以按照一定的次序将上述基本动作组合起来,形成连贯的一套组合动作.组合动作包括以下几类:顺序.并列.有限次数重复.无限次数重复.反动作和动画.动画我们会在下一节介 ...
- Session 的配置和特性
session的配置 对于session的配置是php.ini中配置 session数据都是保存在文本文件中 设置session文件的保存位置 说明: 默认是保存在windows/temp目录 ...
- WebGIS基础复习笔记
明天要考试了,突击一下. 1.万维网:www是world wide web的简称是在超文本基础上形成的信息网 2.互联网:即广域局域网及单机按照一定的通讯协议组成的国际计算机网络 3.WebGIS:网 ...
- SecureCRT for Linux突破30天使用限制
当然还有一种方法,就是当你试用点i agree到时候,在~/.vandyke/Config 会生成一个文件SecureCRT_eval.lic,删除以后就可以恢复30天试用
- HTTP Error 500.21解决方案
Windows 7 IIS (HTTP Error 500.21 - Internal Server Error)解决方案 今天在测试网站的时候,在浏览器中输入http://localhost/时 ...