AR插件Vuforia入门

一、AR常用插件

链接:Unity工具之常用插件分类汇总

二、Vuforia介绍

Vuforia的SDK支持很多平台,包括iOS、Android、UWP,能够适配市面上大部分的移动终端。Vuforia SDK封装了底层用来图像识别的计算机视觉模块,而且不用你操心摄像头的开启以及图像的读取,这些Vuforia都为你提供好了一系列的参数设置,开发者需要做的只是按照需要配置这些参数,然后基于底层的识别算法开发出自己想要的AR程序。

1.特性

Vuforia的AR识别类型有以下几种:

  • Image Targets
    图像目标,这是最常用、也是最简单的识别对象,即单一静态的平面图像,比如打印的图片或者产品包装;
    在这里插入图片描述
  • VuMark
    这是Vuforia自己研发的一种新型条形码,并且被称为下一代条形码,你能够自己随意设计这种条形码的样式,并且在其中融入相关的数据信息;

在这里插入图片描述

  • Multi-Targets
    多对象识别,可以同时识别多张Image Targets,并且可以把它们和几何立体物体结合起来,比如一个纸盒子,或者任意形状的平面;
    在这里插入图片描述

  • Cylinder Targets
    圆柱追踪,是形状类似于圆柱形的图片,可以将这些图片贴到一些圆柱形物体上比如瓶子、杯子等进行识别;
    在这里插入图片描述

  • Text Recognization (Native only)
    文字识别,可以识别大约10万个英文单词,对于一些英语教育产品很是实用。但是不支持中文汉字识别,只支持英文;
    在这里插入图片描述

  • Frame Markers
    帧标记,提供了512个数字编码的标记,任何图片都可以使用这些标记。这些标记可能会很小,但是你可以识别到它们,并同时追踪其中几个。

  • Object Recognization
    实物识别,对象识别保证了我们能够扫描真实物体并创建虚拟对象。创建应用来识别并追踪复杂的刚性物体。
    在这里插入图片描述

  • Smart Terrain
    智能地形,可以基于用户的真实物理环境重新建造虚拟的3D环境,可以打造出新型种类的游戏以及很真实的视觉效果,这种产品中的元素可以和真实世界中的物理实体以及平面进行互动,非常酷炫,真正做到了虚拟和现实相互融合。
    绿色的线是地形的三角形组成,单击地图之外的敌方机器人是走不过去的

  • Cloud Recognition
    云识别,识别图可以不用封存在应用中,而是保存在高通的云端,也为自己的应用节省了图片的容量了,也能方便自己增加识别图而不用随时更改应用。

  • Virtual Button
    虚拟按钮,AR虚拟按键为真实识别图上的按键,通过按键可以实现真实与虚拟之间的按键交流。虚拟按钮在Vuforia的所有功能中,虚拟按钮是唯一一个交互的功能。

2.平台组件

Vuforia平台主要包括三个组件。

  • Vuforia引擎
    Vuforia引擎是一个客户端类库,可以静态集成进你的应用。它可以在Vuforia SDK中获取到,并支持iOS和Android平台。你可能需要用到Android Studio、Xcode或者Unity来构建你的应用。

  • 工具集
    Vuforia还提供了一些工具来创建对象、管理对象数据和确保应用正确授权。
    Vuforia Object Scanner (目前安卓可用) 帮助你扫描3D模型并转换为Vuforia引擎兼容的格式。
    Target Manager 是一个开发者控制台的web应用,它允许你创建数据库来存储用户在设备上或云服务上使用的target(这里是指上节提到的各种target)数据。
    为眼镜构建应用的开发者们可以使使用 Calibration Assistant 助手来生成适合用户面部独一无二几何形状的配置文件,Vuforia可以使用这些配置文件来将虚拟内容渲染在正确的位置上。
    所有的应用都需要授权key,License Manager用来创建你的授权码和相应的服务付费计划。

  • 云识别服务
    当你需要识别大量图片或者数据库需要频繁更新时,Vuforia提供了云识别服务(Cloud Recognition Service)给开发者。Vuforia的web service API允许你有效地管理云端大量的图片数据库,并能通过直接将它们集成到你的CMS(内容管理系统)来自动化工作流程。

3.对智能眼镜的支持

Vuforia目前支持主流的智能眼镜设备,以下是两种支持的设备类型:

  • 视频透视设备: Samsung Gear VR,Google Cardboard
  • 光学透视设备:Epson BT-200, ODG R-6 and R-7

三、Unity+Vuforia开发

链接:unity2021.3.2+vuforia10.6.3开发第一个AR程序
链接:Vuforia官网

1.License Manager和Target Manager详解

  • License Manager
    对于每一个用Vuforia开发的AR程序来说,都有一个唯一的License Key,在Unity中必须首先要在ARCamera中输入这个唯一的Key之后,才能使用Vuforia进行识别。在Vuforia开发者平台上,License Manager就是一个用来提供创建和管理App License的工具。
    (1)License类型
    进入Vuforia官网,进入开发者平台下的Develop页面,就能进入License Manager。
    在这里插入图片描述
    (2)创建一个License Key
    以免费的开发License为例,介绍如何获取一个App的License。
    步骤如下:点击Get Basic会出现添加界面。在License Name中输入要开发的许可证名字,一般为App的名字,这个在以后是可以更改的。然后勾选选择框同意Vuforia的条款,最后点击Comfirm提交,之后就能在License Manager中看见刚刚创建好的License。
    在这里插入图片描述
    在这里插入图片描述
    (3)删除一个License Key
    当想要删除一个已经创建好的License时,在License Manager页面下点击这个License,进入之后点击上方的Delete License Key进行删除。
    若想更改此License名字时,点击Edit Name。
    在这里插入图片描述

(4)将License Key添加到Vuforia工程中
创建好License之后,就要将License Key添加到Vuforia工程中,这样才能使用Vuforia识别。以Unity为例,在Unity中选择ARCamera,在其属性面板中点击Open Vuforia Engine configuration,将长串的Key复制到App License Key输入框中。
在这里插入图片描述
在这里插入图片描述

  • Target Manager
    Vuforia的Target Manager是一个创建和管理对象数据库Database的网页工具,在这里可以创建数据库Database,可以进入Database里添加识别对象target。数据库Database是一些对象Target的集合,可以将包含识别对象的Database下载导入到Unity中进行识别。
    (1)添加一个新的Database
    在Target Manager页面下点击Add Database,弹出添加界面,输入Database的名字和相应类型。添加完成之后就能在Target Manager页面看到刚添加的Database的相关信息。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)向Database添加识别对象
Database创建后,就能在里面添加用于识别的对象了。步骤为点击刚创建好的Database,进去之后点击上方的Add Target,弹出添加界面。其中对对象类型是根据你的需求来决定的,由于之前选择的Database类型为Device,因此列出了Device类型数据库的可添加对象。可以选择4中识别对象:
1)Image:单张的图片识别,这是最简单也是最常用的识别,就是对一张图像进行识别;
2)Multi:多对象识别,比如讲识别图粘贴在一个四方的纸盒上,通过其中某一张图片就能确定出整个盒子的形状;
3)Cylinder:圆柱识别,将图片粘贴在一个圆柱上,可以对整个圆柱体进行识别;
4)Object:3D物体识别,这个识别对象不仅仅在局限于图像,而是可以对一个真实的3D物体进行识别;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
星号表示图片的识别度,星越多图片的识别度也就越高。理论上来说,图片越复杂,其识别率也就会越高。
(3)从Database中删除一个对象
点击相应的Database,会看到所有的对象列表;然后选中想要删除对象前面的选择框,点击上面的Delete。
在这里插入图片描述
(4)下载Database中的Target对象
将Target上传到Database中,只要星级达到了三个星以上,就可以下载下来进行开发。对于每个Target,Vuforia根据不同的开发平台提供了不同的SDK,有Unity、Android Studio、Xcode和Visual Studio。勾选一个或者多个Target对象,然后点击上方的Download Database就可以进行下载。下载完成后,将起导入当前的Unity项目中。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.打包运行

打开Other Settings,根据下图进行选择。将安卓手机连接电脑的USB插口,并且开启开发者选项。最后点击Build And Run发布。
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐