2009年2月6日金曜日

ARToolkit(Plus)+DShowNET+WPFのサンプルを更新


冗長性が高く認識率に優れるらしいBchタイプのマーカに対応した。readme.txtを参照のこと。アーカイブはこちら

上に掲載したのはBchマーカを使った場合の実行画面。ただ、特に検出率が高まった感じはしなかった。画像ではパーフェクトだけど。

追記:ARToolkitPlusのラッパーコード中にこういう記述がある。
Id-based markers directly encode the marker id in the image.
Simple markers use 3-times redundancy to increase robustness,

Id-based markers directly encode the marker id in the image.
while BCH markers use an advanced CRC algorithm to detect and repair marker damages.

ちょっと意味がとり難いが、おそらく、Simpleマーカは冗長化した上で2Dバーコードにエンコードするアプローチなのに対し、Bchは冗長化をしない代わりにCRCチェックサムを埋め込んで成功例が少なくて良いからIDが確実に読み取れたマーカのみを許容するアルゴリズムを使っているということだろう。Simpleが512種類に対してBchが4096種類なのだから、後者の方が冗長化の度合いが高いはずがない。

configファイルを使って見つからなかったマーカの位置を推定する機能をARToolkitPlusは持っていて、たとえば剛体の姿勢測定が用途として想定されているようだが、この場合マーカの冗長性よりも使えるマーカの数を増やした上で少なくて良いからIDが正しく読み取れるマーカを見つける事の方が重要になる。なにしろ四点で剛体の姿勢は決まる!Bchはそういう用途のためのマーカシステムで、IDはどうでも良くてマーカの姿勢の検出精度だけを問題にするのならばSimpleマーカシステムの方が優れているのだろう。

というわけで、単純な遊び用途ならばBchマーカの出番はなさそうだ。剛体の姿勢検出なんて遊びじゃやらないし、第一Configファイルを用意するための準備がかなり大変だ。

0 件のコメント: