[AR]ImageTarget(图像识别)

本文涉及的产品
视觉智能开放平台,分割抠图1万点
视觉智能开放平台,图像资源包5000点
视觉智能开放平台,视频资源包5000点
简介:



ImageTarget

前言

ImageTarget 顾名思义,就是图像识别,本文记录下作者最近学习vuforia中的imageTarget笔记与心得。

vuforia guide:https://library.vuforia.com/articles/Training/Image-Target-Guide

vuforia sample  - 选择 Core Features下载,导入ImageTarget.unitypackagehttps://developer.vuforia.com/downloads/samples

image

vuforia 基础知识:高通Vuforia Getting Started

 

开发环境

Vuforia 6.0.112

Unity 5.3.6f1 x64  (Android平台)

Windows 7 x64

 

名词说明

下面列举下本文中所列出的几个名词,可能每个人对这些英文的理解不一样,这些解释仅仅代表个人观点。

Database(数据集、图集):大体都是指多张图片组合在一起的那个东西

ImageTarget(识别图):具体的某张识别图像

 

自带Demo简单分析

1、从Demo中可以看出,当有多个ImageTarget时,每个ImageTarget之间是有间距的,可以简单理解为每个ImageTarget的坐标值不一样【(x,z)平面】,如下所示:

image

2、Demo中把需要识别的图,全部以ImageTarget的形式,放置在场景中

image

image

3、Word Center Mode默认的模式选择的是 FirstTarget

image

4、如果需要同时识别多个ImageTarget,需要设置最大识别数量

image

 

World Center Mode

FirstTarget

相机在运动,第一个Found的ImageTarget坐标不动,其它ImageTarget会轻微地运动

Camera

ImageTarget在运动,相机不动

自己搭建的简单步骤

1、上传识别图到管理后台(单张图像不超过2mb大小,如果是灰度图,建议使用jpg格式),管理后台会智能地标注出图像的识别点(如何让图像更具可识别性?有针对图像的设计指南)

2、下载识别图package,导入到Unity中,package中包括数据集(xxx.data),xml(xxx.xml),识别图(xxx_scale.jpg,xxx_scale.png)

3、根据Demo的示例创建一个新场景,里面有ARCamera,ImageTarget,在ImageTarget的属性面板选择database识别图(ImageTarget)

4、运行程序,当摄像头识别到步骤3的选定的识别图之后,就会触发OnFound事件,而当识别图移开或者被遮挡,会触发OnLost事件

具体的业务逻辑,在OnFound和OnLost中进行处理

复制代码
void OnFound(string trackableName){
//TODO 识别成功的逻辑处理,参数trackableName就是xml中的name
}


void OnLost(string trackableName){
//TODO 丢失的逻辑处理,参数trackableName就是xml中的name
}
复制代码

xml 分析

下载的package中的xml内容如下

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<QCARConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="qcar_config.xsd">
  <Tracking>
    <ImageTarget name="798_01" size="1.000000 1.434034" />
    <ImageTarget name="799_01" size="1.000000 1.434034" />
  </Tracking>
</QCARConfig>
复制代码

分析:这里面的内容就是我们上传的识别图的图片名,长宽的比例。

默认这份xml是放在 StreamAssets\database\database.xml,当然如果不需要那么多的识别图,而又不想在管理中删除多余的识别图,那么有个简单的方法,删除xml中的几行数据,就会删除相应的识别图了。

查看图像识别点

登录vuforia的管理后台 https://developer.vuforia.com/targetmanager/singleDeviceTarget/deviceSingleImageTargetDetails

选择TargetManager - 选择具体的 Database - 具体的 Image  - Show Feature 可以看到识别图的识图点

Tips

同一张识别图,彩图和灰白图的识别点是一样的,如下所示我上传的是张彩色的图,但Show Features显示的是张灰白图。

image

识别任意张图代码实现

需求说明

假设共有20张图像,当用户扫描其中任意一张图,都可以成功被识别,再比如图集中有500张图像,当扫描任意张图像时都可以被成功识别

思路分析

通过上面的操作步骤,我们知道只有在场景中存在的ImageTarget,在摄像头扫描到时,才可以触发识别成功事件

那么我们需要做的就是:把database中的识别图全部实例成ImageTarget,可能你会想,那就把ImageTarget的prefab实例化20或500个,每个实例的ImageTarget不同呗。

思想是这样的,但还有更简捷的方法。

Load Database

在ARCamera的Database Load Behaviour中勾选了需要的 database之后,运行就会把database中所有的imagetarget都生成出来,并自动已选择好了不同的ImageTarget

image

image

测试代码

通过上面的实践,我们知道既然Vuforia会自动把所有的ImageTarget都生成出来,那么我们就可以更加方便了

下面这段代码可以获取所有的识别对象

IEnumerable<TrackableBehaviour> trackableBehaviours = TrackerManager.Instance.GetStateManager().GetTrackableBehaviours();

Tips

1、经测试多图识别中,在丢失之后最好重设下ImageTarget的位置到初始值,否则可能出现奇怪现象。

2、可以获取ImagetTargetBehaviour的Size,设置每个ImageTarget的位置

测试代码:https://github.com/zhaoqingqing/blog_samplecode/tree/master/ar-vr-mr/vuforia/imagetarget

pos

本文转自赵青青博客园博客,原文链接:http://www.cnblogs.com/zhaoqingqing/p/6123860.html ,如需转载请自行联系原作者


相关实践学习
基于函数计算实现AI推理
本场景基于函数计算建立一个TensorFlow Serverless AI推理平台。
相关文章
|
算法 关系型数据库 数据库
支付宝(AR虚拟现实)红包 玩法与技术背景 - GIS(LBS)、图像识别与秒杀技术的完美结合
背景 作为搞IT的小伙伴们,对虚拟现实(AR)应该并不陌生,这次支付宝带来了一个很有趣的功能,虚拟现实与藏红包结合起来。 简单介绍一下这个业务,然后我们再来思考背后的技术。 支付宝(AR虚拟现实)藏红包、找红包 玩法介绍 想象一下,你可以把你的红包藏在世界各地的任意角落,让全世界的人来找红包
10186 0
|
9月前
|
设计模式 测试技术 vr&ar
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除(三)
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除
|
9月前
|
人工智能 机器人 区块链
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除(二)
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除
101 0
|
1月前
|
人工智能 编解码 5G
虚拟现实(VR)与增强现实(AR)的融合:开启全新交互时代
【6月更文挑战第17天】虚拟现实(VR)与增强现实(AR)融合成混合现实(MR),打造全新交互体验。MR结合VR的沉浸感和AR的现实增强,应用于教育、游戏、设计和营销,带来创新教学方式、沉浸式游戏体验和高效设计工具。尽管面临技术挑战,随着5G和AI的发展,MR有望引领未来交互的革命。
|
1月前
|
传感器 数据可视化 安全
【虚拟现实】二、主要的AR/VR硬件设备
【虚拟现实】二、主要的AR/VR硬件设备
34 3
|
2天前
|
传感器 人工智能 数据可视化
虚拟现实(VR)与增强现实(AR)的技术革新:塑造未来的沉浸式体验
【7月更文挑战第24天】VR和AR作为两种前沿的沉浸式技术,正以前所未有的速度改变着我们的世界。随着技术的不断革新和应用的不断拓展,我们有理由相信,未来的VR和AR将为我们带来更多令人惊叹的体验和技术革新。
|
1月前
|
vr&ar
AR和VR的光学结构分别是什么?
【6月更文挑战第25天】AR和VR的光学结构分别是什么?
35 5
|
1月前
|
传感器 物联网 5G
AR和VR
【6月更文挑战第25天】AR和VR
35 4
|
1月前
|
传感器 数据可视化 人机交互
虚拟现实(VR)与增强现实(AR)技术解析
【6月更文挑战第27天】 VR创造沉浸式虚拟环境,模拟真实感受,应用于旅游、医疗、教育和游戏。AR将虚拟信息叠加到现实,强调虚实结合与实时交互,常见于游戏、教育、购物和医疗。两者提供超越现实的体验,随着技术进步,将在更多领域发挥作用,开启新可能。
|
1月前
|
传感器 算法 定位技术
【虚拟现实】一、AR与VR的基本原理
【虚拟现实】一、AR与VR的基本原理
28 3