License Manager
对于每一个用Vuforia开发的AR程序来说,都有一个唯一的license key,在Unity中必须首先要在ARCamera中输入这个唯一的key之后,才能使用Vuforia进行识别。在Vuforia的开发者平台上,License Manager就是一个用来提供创建和管理App license的工具。
License类型
进入Vuforia官网,进入开发者平台下的Develop页面,就能进入License Manager。
现在Vuforia提供了两个license类型可供选择,一个是免费的Development Key,这个key是免费的,所有的功能也能毫无保留的运行,只不过在屏幕左下角会一直存在Vuforia的logo,而且一些高级功能会有一些限制,但是对于学习和测试来说足够了;另一种是收费的Deployment Key,这个是面向成熟的AR产品以及企业级产品,运行时没有水印,功能上也没有任何限制,一共有三种类型:
- Classic:用于一些简单的工程,将AR内容展示在一定数量的特定对象上;
- Cloud:用于更复杂的工程,可以将AR内容展示在数量庞大而且动态变化的对象上;
-
Pro:用于企业级的专业级产品,面向C端的普通消费者。
创建一个License Key
这里以免费的开发license为例,介绍如何获取一个App的license
-
点击License Manager下的Get Development Key,会出现添加界面,
在App Name中输入要开发的App的名字,这个在以后是可以更改的,然后点击下面的checkbox表示同意Vuforia的条款,最后点击Confirm提交,之后就能在License Manager中看见刚刚创建好的license。
如果你是选择的付费license,则还要根据App的用户类型,选择合理价格的license。
删除一个License Key
当你想要删除一个已经创建好的license时,在License Manager页面下点击这个license,进入之后点击上方的Delete License Key进行删除。
如果想更改这个license的名字,点击旁边的Edit Name就行。
将license key添加到Vuforia程序中
创建好license之后,就要将license key添加到Vuforia工程中,这样才能使用Vuforia进行识别。这里以Unity为例,在Unity中选择已经被拖入到场景中的ARCamera,在其属性面板中点击Open Vuforia configuration,将那个长串的key复制到App License Key输入框中。
Target Manager
Vuforia的Target Manager是一个创建和管理对象数据库database的网页工具,在这里可以创建数据库database,可以进入database里添加识别对象target。数据库database是一些对象target的集合,可以将包含识别对象的database下载导入到Unity中进行识别。
添加一个新的Database
在Target Manager页面下点击Add Database,
之后会弹出添加界面,在其中填入这个Database的名字和相应的类型,类型一共有三种:
- Device:是本地的Database,里面包含了存放在设备本地的用来识别的图像和物体对象;
- VuMark:是本地的Database,里面包含了存放在设备本地的用来识别的VuMark对象;
- Cloud:网络上的Database,里面包含了存放在网络云端的用来识别的图片对象。
添加完成之后,就能在Target Manager页面上看到刚刚完成的Database和相关信息。
向Database中添加识别对象
完成Database的添加后,就能在里面添加用于识别的对象了。方法是点击刚刚添加好的Database,进去之后点击上方的Add Target,弹出添加界面,
其中对象类型是根据根据你的需求来决定,这里因为之前选择的Database类型为Device,因此列出了Device类型数据库的可添加对象。可以选择四种识别对象:
- Single Image:单张的图片识别,这是最简单也最常用的识别,就是对一张图像进行识别;
- Cuboid:用来进行Multi-Target多对象识别,比如将识别图粘贴在一个四四方方的纸盒子上,通过其中某一张图片就能确定出整个盒子的形状;
- Cylinder:圆柱识别,将图片粘贴在一个圆柱体上,可以对整个圆柱体进行识别;
- 3D Object:3D物体识别,这个将识别对象不仅仅再局限于图像了,而是可以对一个真实的3D物体进行识别。
这几种类型的设置参数每个都不一样,我将会在以后的文章中对每个对象进行详细解释。
从Database中删除一个对象
想要从Database中删除一个不再需要的对象,也很简单:点击相应的Database,进去之后将会看到所有的对象列表;然后选中想要删除对象前面的checkbox,然后点击上面的Delete。
查看识别对象的细节
点击Database中的一个对象,就能看到这个对象的识别细节。每个类型的细节说明都不一样,这里以Single Image为例
- Type:对象的类型
- Status:对象状态,如果为Active则为可用状态
- Target ID:对象ID,每个对象都有唯一的ID号
- Augmentable:可识别度评级,一般来说最少需要3颗星才能保证高质量的识别;
- Added和Modified:增加和修改的时间
下面有两个链接,Update Target用来更改识别图像,Show/Hide Features可以显示/关闭图像的特征点。
下载Database中的Target对象
将Target上传到Database中之后,只要星级达到了三颗星以上,就可以下载下来进行开发了。对每一个target,Vuforia根据不同的开发平台提供了不同的SDK,有Unity、Android Studio、Xcode和Visual Studio。勾选一个或者多个target对象,然后点击上方的Download Database就可以进行下载了。
三种不同类型Database的比较
Vuforia提供了三种类型的Database,分别是Device、VuMark和Cloud。这三种类型都各有自己的优势,在开发产品时需要根据需求来选择不同的Database:
- Device Database:包含了安装在设备本地的图片以及3D模型对象的数据库,可以开发Image Target(图片识别)、Multi Targets(多对象识别)、Cylinder Targets(圆柱图像识别)以及Object Target(3D模型识别)。当你的产品需要最快速的图像识别,而且图片对象小于1000张,并且数据库中的对象不会经常更新,那么Device Database就是最好的选择。如果需要开发识别真实3D物体识别的产品,那就只能选择Device类型的。
- VuMark:这是Vuforia自家研发的条形码,被誉为下一代条形码。和目前市面上通用的条形码不一样的是,VuMark的外观可以完全自主定制,只要符合VuMark的相关规范就行,而且VuMark中还能包含诸如字符串之类的数据信息,非常适合于企业级产品的开发。
- Cloud Database:包含了存储于网络云服务器上的对象的数据库,需要通过网络进行获取。Cloud类型的数据库可以包含数量百万级别的对象,因此当识别对象超过1000个,而且对象需要经常进行更新时,Cloud Database是最好的选择。需要注意的是,Cloud Database只支持单一的图像识别,并不支持Multi target和Cylinder Target。因为是通过网络识别,因此采用Cloud进行识别的话需要根据网络情况花费一定时间。
下面这张表是关于Device和Cloud类型的对比:
Device Database | Cloud Database |
---|---|
识别对象小于1000个 | 支持百万数量级别的对象 |
允许多种不同对象类型的组合 | 由图片和metadata组成 |
下载下来的对象只能用于识别,没有metadata的支持 | 可以支持多达1M的metadata |
识别不需要网络链接 | 识别需要网络链接 |
识别需要的反应时间为2-3帧 | 识别速度根据网络通信情况来定 |
可以使用多个Database,每个Database支持1000个对象 | 最大可支持一百万数量级别的对象 |