Vuforia开发基础(二):官方demo解析
前面一篇文章《官方Demo编译运行》,介绍了一些编译运行的操作。由于Vuforia的demo比较多,有如下这些:
核心案例(Core Samples):
· Object Recognition
· Image Targets
· Cylinder Targets
· Multi Targets
· User Defined Targets
· Smart Terrain(Unity only)
· Cloud Recognition
· Text Recognition
· Frame Makers
· Virtual Buttons
高级案例(Advanced Topics):
· Occlusion Management
· Background Texture Access
· Video Playback
· Dominoes
· Image Targets in C++
最佳实践(Best Practices):
· Books:主要使用云服务,识别Target,通过网络获取对应的附加信息。
· Penguin:Smart terrain(智能地形)案例,这个未来在游戏领域会有很多想象空间。
云服务(Vuforia Web Services Samples):Vuforia网络一般是云服务。
PS:这些资源都可以通过这个页面进行下载:
https://developer.vuforia.com/downloads/sdk
而这些demo的编译操作,在Unity3D上面来说,大同小异,而在Android和iOS上,基本都是一样的。
PS:在Unity3D版本中,没有以下这两个demo:
· Dominoes
· Image Targets in C++
而Smart Terrain只有Unity3D中有,同理,Penguin也只有在Unity中支持。
下面对每个案例进行分析,就从官网给的顺序来吧:
Object Recognition:
额,还是把Object Recognition放到最后来讲吧,因为这个是最新,也是比较复杂的。
1、Image Targets
这个是使用频率最高的。前面《官方Demo编译运行》就是以这个案例为例来介绍的,可以去看那篇文章。特点:没有特点
2、Cylinder Targets
通过这些demo的名称一般都能看出他们的功能。这个主要是圆柱体的Target。而Image Targets是以2D图片作为识别Target。特点:识别圆柱、虚实遮挡
3、Multi Targets
这个就是立方体的盒子。这个功能和之前的Cylinder Targets功能,一个是立方体,例如物体的包装盒,比如乐高玩具;一个是圆柱体,例如罐头,例如可乐罐。说到这里,应该又有很多想象的空间了。
特点:识别立方体,虚实遮挡
4、Frame Markers
这个功能在需要单独识别相类似的图片,并且这个图片很小的时候,或者当其中几个图需要被同时识别出的时候。
对于同时被识别这个定义,其实就是在一个摄像头画面中,能同时识别出几个Target,如果是普通的2Dimage,同时最多5个,还要受硬件设备的限制。但是Frame Markers可以同时识别0-511个Target,也就是最大的识别数量是512。
特点:灵活,是不是跟二维码有的一拼呢?
总结:以上四个功能都是需要事先制作Target(Object
Recognition也需要)。关于怎么去制作,将在后面专门介绍。
5、User Defined Targets 用户自定义
根据字面意思,这个是用户自定义标识。怎么理解这个呢?当用户拍摄一幅图像时,可以实时将这幅图作为Target使用,然后就会显示Augmented(一个茶壶)。当然目前这个功能只适合于2D Image。
特点:用户自定义,自由灵活(相对的)
6、Text Recognition 文本识别
看字面意思,应该就能知道这个功能的用途。对,没错,就是文字识别。目前只支持英文,可惜。不过对于文字识别,国内有家公司做的很好,他们的产品有名片全能王(注:这里绝对不是广告)。
特点:没有特点,用的比较少
7、Virtual Buttons虚拟按钮
这个功能还是很好用的,我比较喜欢。官方demo两个,一个手指踢足球,一个是触碰改变茶壶材质,有了这两个demo,在一般的项目中应该就够用了。关于虚拟按钮功能开发,后面也会有专门的文章介绍。
特点:新颖,有趣,可扩展性强
8、Cloud Recognition 云识别
未来可能是个趋势。主要是将Target和其他数据放在云端,或者将相关数据放到自家的服务器端。然后客户端进行获取图像在云端匹配并获取json数据在客户端解析之后,展示出来,整个流程就完了。目前这个结合VWS API来开发会比较好,但是局限性也挺多,需慎重使用。后面的“最佳实践”中的Books案例展示的。但是这个demo中,只做到获取云端的camera的矩阵数据,然后显示的茶壶。那能不能把模型放到后台服务器呢,当然可以!
特点:前景大,可扩展性强
9、Smart Terrain(Unity only)智能地形
类似三维重建,但是区别又挺大,可以叫做重建三维吧。根据标识,重建出三维场景,这个demo比较简单,可以看“最佳实践”的Penguin案例。目前除了Vuforia官方出的视频,暂时没看到用这个功能的有趣的应用和案例。
特点:游戏,趋势,趣味,想象空间

好了,终于到了最后了,讲讲Object Recognition.
10、Object Recognition
姑且叫做对象识别吧。这个功能是4.x版本出的,算是让人耳目一新的。但是想实现这样的一个功能,其实还是满费劲的,看我之前写的文章:
http://blog.****.net/ggtaas/article/details/42132043
http://blog.****.net/ggtaas/article/details/42168575
http://blog.****.net/ggtaas/article/details/42192667
高级案例:
1、Occlusion Management
Target使用的是Multi Targets一样的立方体标志。但是前面的是3D物体在立方体标志外面旋转,这里茶壶是在立方体里面,并且半透明。使用了一些特殊的处理,后面文章再仔细分析,如果有必要的话。因为这个功能我也很少会用到。
特点:好奇特,暂时想不到什么用处,只是为了好玩吗?
2、Background Texture Access
乍一看和ImageTarget没什么区别,但是却暗藏玄机。他可以获取并修改背景。但是我发现其他案例中,我也可以获取并修改,这个后面再说。
运行之后会发现背景图像好可怕。到底怎么可怕呢?童鞋们自己实践一下吧。
特点:背景背景
3、Video Playback
视频播放。这个功能也算是明星功能,用的频率不是一般高,在我的使用过程中,仅次于ImageTargets(似乎哪都有他)。可见这个功能是多么受欢迎,在电影海报,广告等营销案例中,应用尤为多。另外,与云识别结合,也是很好的。
特点:视频视频
最佳实践:
1、Books
云识别+数据。其实这个就是我之前写过的文章,未来AR趋势介绍的:未来AR应该有云+大数据,那样才能好玩呢。期待中,当然,我也希望能够参与其中。
特点:云啊云
2、Penguin(企鹅)
核心案例(Core Samples):
· Object Recognition
· Image Targets
· Cylinder Targets
· Multi Targets
· User Defined Targets
· Smart Terrain(Unity only)
· Cloud Recognition
· Text Recognition
· Frame Makers
· Virtual Buttons
高级案例(Advanced Topics):
· Occlusion Management
· Background Texture Access
· Video Playback
· Dominoes
· Image Targets in C++
最佳实践(Best Practices):
· Books:主要使用云服务,识别Target,通过网络获取对应的附加信息。
· Penguin:Smart terrain(智能地形)案例,这个未来在游戏领域会有很多想象空间。
云服务(Vuforia Web Services Samples):Vuforia网络一般是云服务。
PS:这些资源都可以通过这个页面进行下载:
https://developer.vuforia.com/downloads/sdk
而这些demo的编译操作,在Unity3D上面来说,大同小异,而在Android和iOS上,基本都是一样的。
PS:在Unity3D版本中,没有以下这两个demo:
· Dominoes
· Image Targets in C++
而Smart Terrain只有Unity3D中有,同理,Penguin也只有在Unity中支持。
下面对每个案例进行分析,就从官网给的顺序来吧:
Object Recognition:
额,还是把Object Recognition放到最后来讲吧,因为这个是最新,也是比较复杂的。
1、Image Targets
这个是使用频率最高的。前面《官方Demo编译运行》就是以这个案例为例来介绍的,可以去看那篇文章。特点:没有特点
2、Cylinder Targets
通过这些demo的名称一般都能看出他们的功能。这个主要是圆柱体的Target。而Image Targets是以2D图片作为识别Target。特点:识别圆柱、虚实遮挡
3、Multi Targets
这个就是立方体的盒子。这个功能和之前的Cylinder Targets功能,一个是立方体,例如物体的包装盒,比如乐高玩具;一个是圆柱体,例如罐头,例如可乐罐。说到这里,应该又有很多想象的空间了。
特点:识别立方体,虚实遮挡
4、Frame Markers
这个功能在需要单独识别相类似的图片,并且这个图片很小的时候,或者当其中几个图需要被同时识别出的时候。
对于同时被识别这个定义,其实就是在一个摄像头画面中,能同时识别出几个Target,如果是普通的2Dimage,同时最多5个,还要受硬件设备的限制。但是Frame Markers可以同时识别0-511个Target,也就是最大的识别数量是512。
特点:灵活,是不是跟二维码有的一拼呢?
5、User Defined Targets 用户自定义
根据字面意思,这个是用户自定义标识。怎么理解这个呢?当用户拍摄一幅图像时,可以实时将这幅图作为Target使用,然后就会显示Augmented(一个茶壶)。当然目前这个功能只适合于2D Image。
特点:用户自定义,自由灵活(相对的)
6、Text Recognition 文本识别
看字面意思,应该就能知道这个功能的用途。对,没错,就是文字识别。目前只支持英文,可惜。不过对于文字识别,国内有家公司做的很好,他们的产品有名片全能王(注:这里绝对不是广告)。
特点:没有特点,用的比较少
7、Virtual Buttons虚拟按钮
这个功能还是很好用的,我比较喜欢。官方demo两个,一个手指踢足球,一个是触碰改变茶壶材质,有了这两个demo,在一般的项目中应该就够用了。关于虚拟按钮功能开发,后面也会有专门的文章介绍。
8、Cloud Recognition 云识别
未来可能是个趋势。主要是将Target和其他数据放在云端,或者将相关数据放到自家的服务器端。然后客户端进行获取图像在云端匹配并获取json数据在客户端解析之后,展示出来,整个流程就完了。目前这个结合VWS API来开发会比较好,但是局限性也挺多,需慎重使用。后面的“最佳实践”中的Books案例展示的。但是这个demo中,只做到获取云端的camera的矩阵数据,然后显示的茶壶。那能不能把模型放到后台服务器呢,当然可以!
特点:前景大,可扩展性强
9、Smart Terrain(Unity only)智能地形
类似三维重建,但是区别又挺大,可以叫做重建三维吧。根据标识,重建出三维场景,这个demo比较简单,可以看“最佳实践”的Penguin案例。目前除了Vuforia官方出的视频,暂时没看到用这个功能的有趣的应用和案例。
特点:游戏,趋势,趣味,想象空间
好了,终于到了最后了,讲讲Object Recognition.
10、Object Recognition
姑且叫做对象识别吧。这个功能是4.x版本出的,算是让人耳目一新的。但是想实现这样的一个功能,其实还是满费劲的,看我之前写的文章:
http://blog.****.net/ggtaas/article/details/42132043
http://blog.****.net/ggtaas/article/details/42168575
http://blog.****.net/ggtaas/article/details/42192667
高级案例:
1、Occlusion Management
Target使用的是Multi Targets一样的立方体标志。但是前面的是3D物体在立方体标志外面旋转,这里茶壶是在立方体里面,并且半透明。使用了一些特殊的处理,后面文章再仔细分析,如果有必要的话。因为这个功能我也很少会用到。
特点:好奇特,暂时想不到什么用处,只是为了好玩吗?
2、Background Texture Access
乍一看和ImageTarget没什么区别,但是却暗藏玄机。他可以获取并修改背景。但是我发现其他案例中,我也可以获取并修改,这个后面再说。
运行之后会发现背景图像好可怕。到底怎么可怕呢?童鞋们自己实践一下吧。
特点:背景背景
3、Video Playback
视频播放。这个功能也算是明星功能,用的频率不是一般高,在我的使用过程中,仅次于ImageTargets(似乎哪都有他)。可见这个功能是多么受欢迎,在电影海报,广告等营销案例中,应用尤为多。另外,与云识别结合,也是很好的。
特点:视频视频
1、Books
云识别+数据。其实这个就是我之前写过的文章,未来AR趋势介绍的:未来AR应该有云+大数据,那样才能好玩呢。期待中,当然,我也希望能够参与其中。
特点:云啊云
图中绿色部分是啥?运行一下,你就知道。
2、Penguin(企鹅)
这个在前面Smart Terrain中介绍了。
请尊重所有作者的劳动,转载请注明原帖来自 AR学院 !