您的位置:首页 > 移动开发 > Android开发

Android | Vuforia 多图同时识别

2015-02-20 00:04 183 查看
  网上查阅了各种有关多图同时识别的教程,发现很多教程包括官网的dev-guide都是基于JNI中直接对cpp源码进行的修改。

  而在新版本中,Vuforia已经不再公开源码,我们看不到老版本中的cpp文件,而是直接使用封装好的so文件进行编译。通过分析jar包中的源代码以及参考官网老版本源码实现等,下面就关于新版本中如何启动多图同时识别进行分析。

  本人目前使用的版本是vuforia-sdk-android-3-0-9。

  首先我们看到HINT.class,不难发现,代码中的HINT_MAX_SIMULTANEOUS_IMAGE_TARGETS就是我们需要修改的关键参数;

public final class HINT
{
public static final int HINT_MAX_SIMULTANEOUS_IMAGE_TARGETS = 0;
}


  接下来我们要寻找程序中如何调用修改该参数,我们在VuforiaJNI.class中发现一个setHint方法,正是通过该方法从而修改上面那个关键参数的值进行实现的。

public static final native boolean setHint(long paramLong, int paramInt);


下面就让我们在程序中实现该方法:

在ImageTargets.java中,

1.添加类文件

import com.qualcomm.vuforia.HINT;


2.在onQCARUpdate()方法中添加代码

Vuforia.setHint(HINT.HINT_MAX_SIMULTANEOUS_IMAGE_TARGETS, 2);


Build&Run!

效果图:



技术参考(有关老版本技术的实现):

1. JNI实现 2. 官网教程 3. 参考博文
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android Vuforia AR