From 221b8322b7c33ff351b91a7b5d35b22504c98efc Mon Sep 17 00:00:00 2001 From: nyatla Date: Mon, 31 Jan 2011 10:43:39 +0000 Subject: [PATCH] git-svn-id: http://svn.sourceforge.jp/svnroot/nyartoolkit/NyARToolkit/trunk@809 7cac0a50-4618-4814-88d0-24b83990f816 --- lib/test/jp/nyatla/nyartoolkit/test/NyIdTest.java | 9 ++- .../jp/nyatla/nyartoolkit/test/RawFileTest.java | 25 ++++++++- lib/test/jp/nyatla/nyartoolkit/test/RpfTest.java | 19 ++++++- .../nyartoolkit/test/SingleARMarkerTest.java | 64 ++++++++++++++++++++-- 4 files changed, 106 insertions(+), 11 deletions(-) diff --git a/lib/test/jp/nyatla/nyartoolkit/test/NyIdTest.java b/lib/test/jp/nyatla/nyartoolkit/test/NyIdTest.java index 16e3507..bb04f1e 100644 --- a/lib/test/jp/nyatla/nyartoolkit/test/NyIdTest.java +++ b/lib/test/jp/nyatla/nyartoolkit/test/NyIdTest.java @@ -45,7 +45,14 @@ import jp.nyatla.nyartoolkit.processor.*; * 静止画から1個のIDマーカを読み取り、その数値を得る動作を確認できます。 * * このプログラムには結果を表示する機能がありません。 - * 数値の確認は、ブレークポイントを仕掛けるなどして行ってください。 + * 数値の確認は、ブレークポイントを仕掛けるなどしてください。 + *

必要なファイル - + * このプログラムの実行には、以下の外部ファイルが必要です。 + *

+ *

*/ public class NyIdTest { diff --git a/lib/test/jp/nyatla/nyartoolkit/test/RawFileTest.java b/lib/test/jp/nyatla/nyartoolkit/test/RawFileTest.java index c2aad09..9c846ca 100644 --- a/lib/test/jp/nyatla/nyartoolkit/test/RawFileTest.java +++ b/lib/test/jp/nyatla/nyartoolkit/test/RawFileTest.java @@ -45,6 +45,13 @@ import jp.nyatla.nyartoolkit.core.types.*; * 静止画から1個のHiroマーカを認識して、その姿勢変換行列、パターン一致率を得る動作を確認できます。 * 同時に、この処理を1000回実行して、処理時間を計測します。この数値は、NyARToolkitの基本性能の * 指標として使うことができます。 + *

必要なファイル - + * このプログラムの実行には、以下の外部ファイルが必要です。 + *

*/ public class RawFileTest { @@ -54,11 +61,20 @@ public class RawFileTest private final String camera_file = "../Data/camera_para.dat"; + /** + * コンストラクタです。 + * ここでは処理を行いません。 + */ public RawFileTest() { } - + /** + * この関数は、テスト関数の本体です。 + * カメラ設定ファイル、ARマーカのパターン読出しを読み込み、試験イメージに対してマーカ検出を実行します。 + * マーカ検出を1000回繰り返して、経過した時間をms単位で表示します。 + * @throws Exception + */ public void Test_arDetectMarkerLite() throws Exception { // AR用カメラパラメタファイルをロード @@ -100,7 +116,12 @@ public class RawFileTest System.out.println(d.getTime() - d2.getTime()); System.out.print( ar.getConfidence()); } - + /** + * プログラムのエントリーポイントです。 + * サンプルプログラム{@link RawFileTest}を実行します。 + * @param args + * 引数はありません。 + */ public static void main(String[] args) { diff --git a/lib/test/jp/nyatla/nyartoolkit/test/RpfTest.java b/lib/test/jp/nyatla/nyartoolkit/test/RpfTest.java index 45793d5..d8c7d9e 100644 --- a/lib/test/jp/nyatla/nyartoolkit/test/RpfTest.java +++ b/lib/test/jp/nyatla/nyartoolkit/test/RpfTest.java @@ -1,14 +1,11 @@ package jp.nyatla.nyartoolkit.test; -import java.io.File; import java.io.FileInputStream; import java.util.Date; import jp.nyatla.nyartoolkit.core.param.NyARParam; import jp.nyatla.nyartoolkit.core.types.NyARBufferType; -import jp.nyatla.nyartoolkit.core.types.NyARDoublePoint3d; -import jp.nyatla.nyartoolkit.detector.NyARSingleDetectMarker; import jp.nyatla.nyartoolkit.rpf.reality.nyartk.NyARReality; import jp.nyatla.nyartoolkit.rpf.reality.nyartk.NyARRealityTarget; import jp.nyatla.nyartoolkit.rpf.realitysource.nyartk.NyARRealitySource; @@ -25,6 +22,13 @@ import jp.nyatla.nyartoolkit.rpf.realitysource.nyartk.NyARRealitySource_Referenc * {@link NyARReality}が正常に動作するかを確認できます。 * また、{@link NyARReality#progress}を1000回実行して、処理時間を計測します。 * この数値は、{@link NyARReality}の基本性能の指標として使うことができます。 + *

必要なファイル - + * このプログラムの実行には、以下の外部ファイルが必要です。 + *

+ *

*/ public class RpfTest { @@ -35,7 +39,16 @@ public class RpfTest /** * メイン関数です。 * 次のフローで処理を実行します。 + *
    + *
  1. {@link NyARParam}にカメラパラメタを読み込み。QVGAサイズに再設定。 + *
  2. {@link NyARReality}オブジェクトの生成。歪み補正はなし。 + *
  3. {@link NyARRealitySource_Reference}オブジェクトの生成。フォーマットは、{@link NyARBufferType#BYTE1D_B8G8R8X8_32} + *
  4. {@link NyARRealitySource_Reference}オブジェクトに、{@link #DATA_FILE}の内容を書き込み。 + *
  5. {@link NyARReality#progress}を1000回実行。処理時間を出力。 + *
  6. 0番目のUnknowntargetをKnownターゲットにして、姿勢行列を計算して表示。 + *
* @param args + * 引数は必要ありません。 */ public static void main(String[] args) { diff --git a/lib/test/jp/nyatla/nyartoolkit/test/SingleARMarkerTest.java b/lib/test/jp/nyatla/nyartoolkit/test/SingleARMarkerTest.java index fdd4fa7..8411486 100644 --- a/lib/test/jp/nyatla/nyartoolkit/test/SingleARMarkerTest.java +++ b/lib/test/jp/nyatla/nyartoolkit/test/SingleARMarkerTest.java @@ -40,7 +40,21 @@ import jp.nyatla.nyartoolkit.core.squaredetect.NyARSquare; import jp.nyatla.nyartoolkit.core.transmat.*; import jp.nyatla.nyartoolkit.core.*; import jp.nyatla.nyartoolkit.processor.*; - +/** + * このプログラムは、NyIdマーカ検出クラス{@link SingleARMarkerProcesser}の動作チェックプログラムです。 + * 静止画から1個のhiroマーカを認識する動作を確認できます。 + * + * このプログラムには結果を表示する機能がありません。 + * 数値の確認は、ブレークポイントを仕掛けるなどして行ってください。 + *

必要なファイル - + * このプログラムの実行には、以下の外部ファイルが必要です。 + *

+ *

+ */ public class SingleARMarkerTest { class MarkerProcessor extends SingleARMarkerProcesser @@ -48,7 +62,16 @@ public class SingleARMarkerTest private Object _sync_object=new Object(); public NyARTransMatResult transmat=null; public int current_code=-1; - + /** + * コンストラクタです。 + * パラメータを{@link #initInstance}へセットして初期化します。 + * ここでは、{@link #initInstance}へ値を引き渡すだけです。 + * @param i_cparam + * カメラパラメータ。 + * @param i_raster_format + * 入力ラスタのフォーマット。 + * @throws Exception + */ public MarkerProcessor(NyARParam i_cparam,int i_raster_format) throws NyARException { //アプリケーションフレームワークの初期化 @@ -56,6 +79,11 @@ public class SingleARMarkerTest initInstance(i_cparam,i_raster_format); return; } + /** + * この関数は、{@link #detectMarker}から呼び出される自己コールバック関数です。 + * 画像にマーカが現われたときに呼び出されます。 + * ここでは、例として、マーカのインデクス番号を保存する処理をしています。 + */ protected void onEnterHandler(int i_code) { synchronized(this._sync_object){ @@ -63,6 +91,12 @@ public class SingleARMarkerTest } System.out.println("Marker Number:"+i_code); } + /** + * この関数は、{@link #detectMarker}から呼び出される自己コールバック関数です。 + * 画像からマーカが消え去った時に呼び出されます。 + * ここでは、マーカが消えた場合の後始末処理をします。 + * このサンプルでは、メンバ変数をリセットしています。 + */ protected void onLeaveHandler() { synchronized(this._sync_object){ @@ -71,7 +105,13 @@ public class SingleARMarkerTest } return; } - + /** + * この関数は、{@link #detectMarker}から呼び出される自己コールバック関数です。 + * 画像中のマーカの位置が変化したときに呼び出されます。 + * この関数は、{@link #onEnterHandler}直後に呼び出されることもあります。 + * + * このサンプルでは、引数で通知されたマーカの姿勢を、メンバ変数に保存しています。 + */ protected void onUpdateHandler(NyARSquare i_square, NyARTransMatResult result) { synchronized(this._sync_object){ @@ -82,10 +122,19 @@ public class SingleARMarkerTest private final static String CARCODE_FILE = "../Data/patt.hiro"; private final static String PARAM_FILE = "../Data/camera_para.dat"; private final String data_file = "../Data/320x240ABGR.raw"; - + /** + * コンストラクタです。 + * ここで行う処理はありません。 + */ public SingleARMarkerTest() { } + /** + * テスト関数の本体です。 + * 設定ファイル、サンプル画像の読み込んだのちに、1種類のマーカを登録した{@link MarkerProcessor}を生成し、 + * 1回だけ画像を入力して、マーカ検出を試行します。 + * @throws Exception + */ public void Test() throws Exception { //AR用カメラパラメタファイルをロード @@ -110,9 +159,14 @@ public class SingleARMarkerTest pr.detectMarker(ra); return; } + /** + * プログラムのエントリーポイントです。 + * サンプルプログラム{@link NyIdTest}を実行します。 + * @param args + * 引数はありません。 + */ public static void main(String[] args) { - try { SingleARMarkerTest t = new SingleARMarkerTest(); // t.Test_arGetVersion(); -- 2.11.0