Как получить MarkerId в Arttoolkitplus на андроиде

Я использую ARToolkitPlusBenchmark для сканирования маркера тегов AR. Я могу легко обнаружить все маркеры 4096 BCH. Но моя проблема в том, что я не могу понять, как определить каждый идентификатор маркера BCH?

Я нашел код здесь ARToolkitPlusBenchmark.

Я попытался обнаружить маркер в Markerinfo.java.

class DetectMarkerWorker extends Thread {
private byte[] curFrame;
public DetectMarkerWorker() {
 setPriority(MAX_PRIORITY);
 start();
}
@Override
public synchronized void run() {
  try {
wait();
 } catch (InterruptedException e) {
 }
 while (true) {
  if(!CurrentConfig.ONLY_CAMERA_PREVIEW){
 long tick = System.currentTimeMillis();
 if (CurrentConfig.USE_ARTOOLKITPLUS) {

  timeNativeMarkerDetection = artoolkitPlus_detectmarkers(curFrame, transMatMonitor);      
  nativeMarkerDetectionHistory.add(timeNativeMarkerDetection);
  if(nativeMarkerDetectionHistory.size()>20){
   nativeMarkerDetectionHistory.remove(0);
  }
  for(int i = 0;i<nativeMarkerDetectionHistory.size();i++){
   sumNativeMarkerDetection += nativeMarkerDetectionHistory.elementAt(i);
  }
  avgNativeMarkerDetection = sumNativeMarkerDetection/nativeMarkerDetectionHistory.size();
  sumNativeMarkerDetection = 0;
 } else {
  artoolkit_detectmarkers(curFrame, transMatMonitor);
 }
 timeJavaMarkerDetection = System.currentTimeMillis() - tick;
 javaMarkerDetectionHistory.add(timeJavaMarkerDetection);
 if(javaMarkerDetectionHistory.size()>20){
  javaMarkerDetectionHistory.remove(0);
 }
 for(int i = 0;i<javaMarkerDetectionHistory.size();i++){
  sumJavaMarkerDetection += javaMarkerDetectionHistory.elementAt(i);
 }
 avgJavaMarkerDetection = sumJavaMarkerDetection/javaMarkerDetectionHistory.size();
 sumJavaMarkerDetection = 0;
}  
DebugFps.updateFPS();
try {
 wait();
  } catch (InterruptedException e) {
  }
 }
}

iOS В iOS я использую VRToolkit для нахождения идентификатора каждого маркера. Это приложение использует ARToolKit plus для обнаружения маркеров на видеокадрах.

Я могу сканировать все маркеры 4096 BCH, а также тонкие маркеры после установки соответствующего свойства в YES и получения идентификатора каждого маркера.

В Android я столкнулся с проблемой.

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, чтобы понять эту проблему. Я буду очень благодарен за любую помощь или руководство.


person Nagendra Tripathi    schedule 18.11.2013    source источник
comment
я тоже хочу знать ответ. Очень интересный квест..   -  person iOS_DEV    schedule 20.11.2013


Ответы (1)


Любая причина, по которой вы используете ARToolkitPlusBenchmark для достижения этой цели? Вы пробовали смотреть на http://code.google.com/p/andar/

Андар также использует ARToolkit и если вы видите ARObject - он может дать вам идентификатор маркера, принадлежащего этому объекту.

person random    schedule 25.11.2013