FLARToolKitのIDマーカー解説

このエントリをはてなブックマークに追加このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加このエントリをkwoutに追加
2010年6月14日 月曜日0:51:23

ふと気が向いたので、FLARToolKit用のIDマーカーについて解説する。

入手方法

FLARToolKitの最新版をSubversionを使って手に入れる。

org.libspark.flartoolkit.detector.idmarker.FLARSingleIdMarkerDetector

が混じってたら成功。

使い方

全コードについてはこちらを参照。

使い方は、普通のDetectorと変わらない。

this._detector = new FLARSingleIdMarkerDetector(param, 80);
this._detector.setContinueMode(true);

こんな感じ。引数は、カメラパラメータFLARParamと、幅。

で、認識の時はこんな感じ。

var detected:Boolean = false;
try {
    detected = _detector.detectMarkerLite(_raster, 80);
} catch (e:Error) { trace(e); }

普通の単一マーカ認識と一緒です。

で、見つかった場合はこう。getIdMarkerDataメソッドで、
見つかったIDマーカーの情報が取れる。
で、FLARIdMarkerData #getPacketDataで、パケット番号に対応するパケット値が取れる。
それを連結して数値にしている所。

var id:FLARIdMarkerData = _detector.getIdMarkerData();
currId=0;
//最大4バイト繋げて1個のint値に変換
for (var i:int = 0; i <id.packetLength; i++ ) {
    currId = (currId <<8) | id.getPacketData(i); trace("id[", i, "]=", id.getPacketData(i));
}
_textdata.text = "" + currId;

FLARIdMarkerDataには、他にも色々情報があるので、使っていくと便利。
例えば、modelプロパティで、IDマーカーのモデルが取れる。
2か3になるはず。
こんな感じ。これで、IDの値によって出すモデルを変えたり、色々出来るようになる。
試しに、公開していたIDマーカーのサンプルを改造してみた。
モデル3の場合、テキストの色がパケットをそれぞれ
パケット1→赤、パケット2→緑、パケット3→青
で、RGBを作るようにしてみた。
マーカーはここで作れる。
バグもなくなって、モデル3もばっちりです。

Trackbacks (1)

  1. Tweets that mention タロタローグ ブログ | FLARToolKitのIDマーカー解説 -- Topsy.com
    [...] This post was mentioned on Twitter by Yukihiro Kondo, 六望 風 and ARToolKit日本販売担当, 太郎. 太郎 said: IDマーカーについて解説を更新。 http://blog.tarotaro.org/archives/739 [...]

TrackBack URL :

コメントする

HTML convert time: 0.853 sec.