Categories: AR要素技術

[AR]NyARToolkitを使ってみる

概要

マーカーベースのARプログラムを作成するためのライブラリとしてARToolKitというものがあるが、
それのProcessing版であるNyARToolkitを使用して簡単なARプログラムを作成してみる。

実装

ここから
ライブラリをダウンロードして中身を一式、processingのホームディレクトリ以下のlibraries(なければ作成する)フォルダの中に移動する。
そしてディレクトリ名をnyar4psgにする。 次にプログラムを書く。
import jp.nyatla.nyar4psg.*;
import processing.video.*;

// Definition camera device interface
Capture cam;
MultiMarker ar;
// Marker ID
int id;

void setup() {
  // Set size
  size(640,480,P3D);
  // Create camera device interface
  cam = new Capture(this, width, height);
  ar = new MultiMarker(this, width, height, "camera_para.dat", NyAR4PsgConfig.CONFIG_PSG);
  // Register marker
  id = ar.addARMarker("patt.hiro", 60);
}

void draw() {
   // Check whether camera is available
  if (cam.available() == false) return;
  // Get camera image
  cam.read();
  // Draw camera image
  background(0);
  ar.drawBackground(cam);
  // Detect marker
  ar.detect(cam);
  if (ar.isExistMarker(id)) {
    // Draw box
    ar.beginTransform(id);
    fill(116,163,241,100);
    translate(0,0,15);
    box(30);
    ar.endTransform();
  }
}
プログラムを書いたら保存して。
そのディレクトリ以下に、nyar4psg/dataディレクトリをコピーする。

実行結果

印刷したマーカーをカメラにかざすと以下のような結果が得られる。
zuqqhi2

某Web系の会社でエンジニアをやっています。 学術的なことに非常に興味があります。 趣味は楽器演奏、ジョギング、読書、料理などなど手広くやっています。