高通Vuforia(Unity3D)云识别初级使用教程
高通Vuforia(Unity3D)云识别初级使用教程
最近因项目开发需要,接触了高通的AR引擎Vuforia云识别,个人感觉稳定性还是很不错的,唯一不爽的地方就是免费的云识别库每个月只能识别1000次,想继续使用只能重新再建一个云识别库或者拿钱了(苦逼)。。。
正赶上现在有点时间,也把自己这段时间所学到的给大家分享一下,比较小白,打算勿喷(ha ha ha ha ...)
先上传送门:
高通Vuforia:https://developer.vuforia.com/
下面教程开始:
1、官网注册登录并且创建许可证管理器(License Manager)和目标管理器(Target Manager)------步骤略(网上教程一大堆---度娘传送门)
保存好许可证管理器里的Key值和目标管理器的Client Access Keys

2、之后下载Vuforia的Unity3D版本SDK--------传送门

导入之后的效果 ↑↑↑↑↑↑
之后把场景内主摄像机删除,把Assets\Vuforia\Prefabs\ARCamera 预制拖入Hierarchy窗口
然后相同方式拖入CloudRecognition、ImageTarget两个预制
1、点击菜单栏Vuforia->configuration 在右侧App License Key中填入可证管理器里的Key值



2、点击Hierarchy窗口中的CloudRecognition,在Inspector面板中填入目标管理器的Client Access Keys
3、点击Hierarchy窗口中的ImageTarget,在Inspector面板中ImageTargetBehaviour的参数改为

4、模型拖为ImageTarget子物体,更改位置(模型为半成品-演示所用,勿喷)

下面新建脚本,开始码脚本吧,苦逼。。。
5、任意物体上新建脚本,名称暂定为:CloudRecoManage,双击打开

记得必须要using Vuforia 并且继承ICloudRecoEventHandler并实现
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ 代码在此 ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia; //添加引用 public class CloudRecoManage : MonoBehaviour, ICloudRecoEventHandler //继承接口并实现
{
//声明两个变量
private GameObject mImageTarget; //ImageTarget的Object对象
private ObjectTracker mObjectTracker; //跟踪器变量 (个人理解)识别出的物体就靠它才能跟着图片移动 //需要保留Start方法 初始化用
void Start()
{
//把这个脚本和CloudRecoBehaviour云识别进行绑定 --不然脚本怎么知道哪个云识别模块给这个脚本提供识别信息呢~ //获取到场景中的云识别组件 因为我们只有一个云识别 所以不用担心冲突
CloudRecoBehaviour cloudRecoBehaviour = FindObjectOfType<CloudRecoBehaviour>(); //把云识别和脚本绑定
cloudRecoBehaviour.RegisterEventHandler(this);
} public void OnInitError(TargetFinder.InitState initError)
{
//初始化错误
Debug.Log("初始化错误:" + initError);
} public void OnInitialized()
{
//初始化
Debug.Log("初始化开始"); //获取ImageTarget的Object对象
mImageTarget = FindObjectOfType<ImageTargetBehaviour>().gameObject; //获取追踪管理器
mObjectTracker = TrackerManager.Instance.GetTracker<ObjectTracker>();
} public void OnNewSearchResult(TargetFinder.TargetSearchResult targetSearchResult)
{
//搜索到新的目标
Debug.Log("搜索到目标:" + targetSearchResult.TargetName);
if (targetSearchResult.TargetSize <= ) //判断targetSearchResult是否符合要求
return;
//搜索到新的目标关闭ClearTrackables
mObjectTracker.TargetFinder.ClearTrackables(false); //启动追踪 很简单 两个参数1、识别到的目标 2、生成的物体 两个同步运动
mObjectTracker.TargetFinder.EnableTracking(targetSearchResult, mImageTarget);
} public void OnStateChanged(bool scanning)
{
//云识别状态改变
Debug.Log("云识别状态:" + scanning);
//云识别开启时关闭ClearTrackables
if (scanning)
mObjectTracker.TargetFinder.ClearTrackables(false);
} public void OnUpdateError(TargetFinder.UpdateState updateError)
{
//云识别错误
Debug.Log("云识别错误:" + updateError); }
}
CloudRecoManage
接下来点击运行(截图压缩了,有点不清楚)


终于写完了,全原创,欢迎交流QQ:1107628852(加备注)
高通Vuforia(Unity3D)云识别初级使用教程的更多相关文章
- 高通vuforia+Unity3D 制作ar app
很简单就可以用Unity3D做出增强现实的一个小例子 新人第一次写博客,若出现错误望指正^_^ 需要下载de东西: unity3d 5.0 http://unity3d.com/get-unity ...
- [AR]高通Vuforia Getting Started
Vuforia Getting Started 简介 Vuforia创建增强现实应用程序是一个软件平台.开发人员可以轻松地将先进的计算机视觉功能添加到任何应用程序中,允许它识别图像和对象,或在现实 ...
- GJM : Unity3D 高通Vuforia SDK AR 开发
一.AR概念: 增强现实(Augmented Reality,简称AR),是在虚拟现实的基础上发展起来的新技术,也被称之为混合现实.是通过计算机系统提供的信息增加用户对现实世界感知的技术,将虚拟的信息 ...
- Unity+高通Vuforia SDK——AR
一.AR概念: 增强现实(Augmented Reality,简称AR),是在虚拟现实的基础上发展起来的新技术,也被称之为混合现实.是通过计算机系统提供的信息增加用户对现实世界感知的技术,将虚拟的信息 ...
- 这几天用高通VUFORIA的体会
VUFORIA 主要用来做图像识别,先把图片上至网站,然后网站分析生成数据包 在UNITY中导入VUFORIA SDK和数据包后,就可以正常使用了 对了,数据包需要勾选Load Active那个选项, ...
- 高通Vuforia
这里使用高通的Vuroria来做一个AR歌姬. 工具: Vuforia,MMD4Mecanim 模型: 初音未来pmd模型文件,极乐净土vmd动作文件. 逻辑: 当发现识别卡时:开启音乐,模型速度为1 ...
- Unity3d使用高通Vuforia发布IOS工程不支持64位的一些解决办法
1.将Unit升级至4.6.x或5.0.x,将Vuforia差距升级到最新版本(vuforia-unity-mobile-android-ios-4-0-105 ) 2.平台Other Setting ...
- [AR]高通Vuforia之Frame Markers
软件环境 SDK:FrameMarkers-6-0-112.unitypackage(从官网 -> Download -> Samples -> Core Features 下载 ) ...
- UNITY使用高通Vuforia导出XCode包编译出错
1.referenced from: in libVuforia.a 此处重新导入引用库并按http://game.ceeger.com/forum/read.php?tid=20447(三楼处理方式 ...
随机推荐
- [半翻] 设计面向DDD的微服务
这篇文章行文结构对照微软博客, 结合本人意译和多年实践的回顾思考形成此次读书笔记. Domian-driven Design 领域-驱动-设计(DDD)提倡基于(用例相关的现实业务)进行建模. 1. ...
- 干货最实用的 Python 多线程代码框架
前言 很多地方都要用到多线程,这是我经常用的多线程代码,放在博客园记录下. 代码 from multiprocessing.pool import ThreadPool thread = 10 ite ...
- 反转链表-PHP的实现
<? //节点 class Node { private $Data;//节点数据 private $Next;//下一节点 public function setData($value) { ...
- 开发一款图片压缩工具(三):使用 click 实现命令行
上一篇实现了图片的压缩函数.现在如果需要对图片进行压缩,可以调用实现的函数进行压缩: pngquant_compress('elephant.png', force=True, quality=20) ...
- 二、Go语言开发环境安装与编写第一个Hello World
本系列文章均为学习过程中记录的笔记,欢迎和我一起来学习Go语言. 全文使用环境如下: Go语言版本:1.13 操作系统:deepin 使用工具:Goland开发工具 Go语言追溯历史 Go语言2009 ...
- ansible的role(6)
roles的优点 roles能够根据层次型结构自动的装载变化量文件,task,以及handles等. 要使用肉了是只需要在playbook中使用include引入即可. 主要使用场景复制代码较高的情况 ...
- atom 之 前端必备插件
一. 语法支持 1. Language-label Ø ES2016.ESNext.JXS语法扩展 2. Language-postcss Ø Postcss语法高亮 二. 自动补全 1. Autoc ...
- ajax 技术
ajax 技术 $.ajax({ url:"", type:'GET', success:function(data){ console.log(data); }, error:f ...
- CSDN排名及积分规则
博客排行榜排名分值=个人Blog全部随笔与文章的阅读数之和+个人Blog全部评论数之和*10+个人所发表的评论数之和*50 CSDN博客积分计算规则: 1.每公布一篇原创或者翻译文章:可获得10分. ...
- 深度使用魅族16T后的评价(本人魅友,绝对客观公正,不要盲目的为手机厂商辩护,想想从当初到现在,魅族正在一步步背离自己的信仰,有问题,解决问题才能有更好的发展)
缺点: 电池电量问题 发布会上,那都是吹的,真是的体验效果掉电很快,大概只有描述的2/3的使用时间 屏幕触控失灵问题 我也看了很多评价,这个也挺多的,可能是魅族品控的问题,某宝到现在没给我退货换货 发 ...