ARToolKitの安定化 その④ ソースの公開 - EXEの使い方
Readmeの詳細説明に必要なので、ソース公開前に書いておきます。
実行ファイルの使用方法です。
--- < とりあえず実行してみる > ---
0.GULTをインストール
実行にはGLUTが必要です。
1.マーカーを印刷
\patternsフォルダ内の、マーカーを印刷します。
印刷できない場合は、ディスプレイにマーカーの画像を表示するだけでも、大丈夫です。
2.実行ファイルを起動
\binフォルダ内の"MultiRelate1.0.exe"を実行します。
設定ダイアログが出て、Webカメラから画像が表示されるはずです。
3.確認
マーカー上に色のついた立方体が表示されるはずです。
4.編集モードにする
キーボードの"E"キーを押して、編集モードにします。
操作キーは、画像が映っているウィンドウを選択していないと、実行されません。
5.関係値のリセットを行う
キーボードの"C"キーを押して、関係値をリセットします。
6.関係値を設定する
できるだけ多くのマーカーが認識されるように、カメラを移動してください。
そして表示が安定するまで、その場でカメラを動かさないようにしましょう。
立方体の線が緑や黄色で安定したら、だいたい計算ができています。
7.全てのマーカーで、6の作業を行う
6の作業を、全てのマーカーに対して行います。
2つ以上のマーカーが認識されていないと意味がありません。
8.通常モードに戻す
もう一度"E"キーを押して、通常モードに戻ります。
9.関係値の確認
関係値が正しく計算できていれば、1つのマーカーの認識に失敗しても、他の成功したマーカーから補完されます。
10.保存する。
"S"キーを押して、関係値の保存をします。
プロンプト(文字しか表示されない、もう一つの黒い画面)に、保存ができたという旨の文章が表示されれば、完了です。
再実行した時にも、保存された関係値を使用し、何度も計算する必要がなくなります。
--- < 使い方の詳細 > ---
○キー操作
・"E"キー:[編集モード]/[通常モード]への切り替えを行います。
・"C"キー:計算された関係値をリセットします。
・"S"キー:関係値を保存して、次回も使用できるようにします。
・"1~9"キー:1~9番の、マーカー上の3Dモデルの[表示]/[非表示]を切り替えます。
・"0"キー:全ての3Dモデルの[表示]/[非表示]を切り替えます。
・"R"キー:マーカー間の関係を表す線の[表示]/[非表示]を切り替えます。
・"M"キー:マーカー自体を表す、四角形の印の[表示]/[非表示]を切り替えます。
・"V"キー:現在表示されている3Dモデル間の関係値のみをリセットします。
・"T"キー:文字情報の[表示]/[非表示]を切り替えます。
○マーカー間の関係を表すファイル ”Data\MultiRelationInf.dat”
ファイルの内容は、概ね以下のようになっています。
最初に、複数のオブジェクトを記述したファイルのパスを書きます。
このファイルは既存のプロジェクト"loadMultiple"で使用されているのと、同じ形式なります。
自分で作ったマーカーを利用する場合には、この複数オブジェクトファイルの内容や、ここのパスを変更してください。
次に、マーカー間の関係値が事前に保存されているかを示すフラグが書かれています。
初期値は0になっていて、関係値を保存した後は1になります。
この値が0の場合は、後に関係値が続いていても読み込みません。
最後に、実際の関係値が書かれます。
ここに書かれる関係値は、
・全てのオブジェクトから全てのオブジェクトへの座標変換行列(サンプル数と合計値)
・その行列の誤差(サンプル数と合計値)
・誤差を合計した値
になります。見ての通り、非常に冗長です。
実際の関係は、各合計値をサンプル数で割った平均値が用いられます。
実行ファイルの使用方法です。
--- < とりあえず実行してみる > ---
0.GULTをインストール
実行にはGLUTが必要です。
1.マーカーを印刷
\patternsフォルダ内の、マーカーを印刷します。
印刷できない場合は、ディスプレイにマーカーの画像を表示するだけでも、大丈夫です。
2.実行ファイルを起動
\binフォルダ内の"MultiRelate1.0.exe"を実行します。
設定ダイアログが出て、Webカメラから画像が表示されるはずです。
3.確認
マーカー上に色のついた立方体が表示されるはずです。
4.編集モードにする
キーボードの"E"キーを押して、編集モードにします。
操作キーは、画像が映っているウィンドウを選択していないと、実行されません。
5.関係値のリセットを行う
キーボードの"C"キーを押して、関係値をリセットします。
6.関係値を設定する
できるだけ多くのマーカーが認識されるように、カメラを移動してください。
そして表示が安定するまで、その場でカメラを動かさないようにしましょう。
立方体の線が緑や黄色で安定したら、だいたい計算ができています。
7.全てのマーカーで、6の作業を行う
6の作業を、全てのマーカーに対して行います。
2つ以上のマーカーが認識されていないと意味がありません。
8.通常モードに戻す
もう一度"E"キーを押して、通常モードに戻ります。
9.関係値の確認
関係値が正しく計算できていれば、1つのマーカーの認識に失敗しても、他の成功したマーカーから補完されます。
10.保存する。
"S"キーを押して、関係値の保存をします。
プロンプト(文字しか表示されない、もう一つの黒い画面)に、保存ができたという旨の文章が表示されれば、完了です。
再実行した時にも、保存された関係値を使用し、何度も計算する必要がなくなります。
--- < 使い方の詳細 > ---
○キー操作
・"E"キー:[編集モード]/[通常モード]への切り替えを行います。
・"C"キー:計算された関係値をリセットします。
・"S"キー:関係値を保存して、次回も使用できるようにします。
・"1~9"キー:1~9番の、マーカー上の3Dモデルの[表示]/[非表示]を切り替えます。
・"0"キー:全ての3Dモデルの[表示]/[非表示]を切り替えます。
・"R"キー:マーカー間の関係を表す線の[表示]/[非表示]を切り替えます。
・"M"キー:マーカー自体を表す、四角形の印の[表示]/[非表示]を切り替えます。
・"V"キー:現在表示されている3Dモデル間の関係値のみをリセットします。
・"T"キー:文字情報の[表示]/[非表示]を切り替えます。
○マーカー間の関係を表すファイル ”Data\MultiRelationInf.dat”
ファイルの内容は、概ね以下のようになっています。
#マーカーオブジェクトデータ
Data/multi/markerColor30_01_6.arobj
#マーカーの関係データがあるかどうか
1
#################################################################
#marker 1
#to 1
0
0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
#err
0
0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
#Sum
-1.000000
#to 2
602
-601.079477 -6.103214 -29.765651 -224.731229
29.999639 -22.392234 -600.762449 -17661.005934
5.014032 -601.428488 22.542861 -21332.142015
#err
503
502.913258 -4.899541 2.086850 -469.029122
4.890394 502.880013 2.277454 -35.750323
-2.163808 -2.263550 502.959077 -328.080689
#Sum
4.299248
#to 3
・
・
・
最初に、複数のオブジェクトを記述したファイルのパスを書きます。
このファイルは既存のプロジェクト"loadMultiple"で使用されているのと、同じ形式なります。
自分で作ったマーカーを利用する場合には、この複数オブジェクトファイルの内容や、ここのパスを変更してください。
次に、マーカー間の関係値が事前に保存されているかを示すフラグが書かれています。
初期値は0になっていて、関係値を保存した後は1になります。
この値が0の場合は、後に関係値が続いていても読み込みません。
最後に、実際の関係値が書かれます。
ここに書かれる関係値は、
・全てのオブジェクトから全てのオブジェクトへの座標変換行列(サンプル数と合計値)
・その行列の誤差(サンプル数と合計値)
・誤差を合計した値
になります。見ての通り、非常に冗長です。
実際の関係は、各合計値をサンプル数で割った平均値が用いられます。
