OSDN Git Service

git-svn-id: http://svn.sourceforge.jp/svnroot/nyartoolkit/NyARToolkit/trunk@808 7cac0...
[nyartoolkit-and/nyartoolkit-and.git] / lib / src.rpf / jp / nyatla / nyartoolkit / rpf / tracker / nyartk / NyARTrackerSource.java
index 255c052..225ee27 100644 (file)
@@ -2,36 +2,47 @@ package jp.nyatla.nyartoolkit.rpf.tracker.nyartk;
 \r
 import jp.nyatla.nyartoolkit.NyARException;\r
 import jp.nyatla.nyartoolkit.core.raster.NyARGrayscaleRaster;\r
-import jp.nyatla.nyartoolkit.rpf.sampler.lrlabel.LowResolutionLabelingSamplerOut;\r
+import jp.nyatla.nyartoolkit.rpf.sampler.lrlabel.*;\r
+import jp.nyatla.nyartoolkit.rpf.tracker.nyartk.*;\r
 \r
 /**\r
- * LowResolutionLabelingSamplerへの入力コンテナの抽象クラスです。\r
- * 基本GS画像と、1/nサイズのRobertsエッジ検出画像を持ち、これらに対する同期APIとアクセサを定義します。\r
+ * このクラスは、LowResolutionLabelingSamplerへの入力コンテナの抽象クラスです。\r
+ * 基本GS画像と、ヒント画像(1/nサイズのRobertsエッジ画像)を持ち、これらに対する同期APIとアクセサを定義します。\r
  * <p>\r
  * 継承クラスでは、_rbraster,_base_raster,_vec_readerメンバ変数の実体と、abstract関数を実装してください。\r
  * </p>\r
  */\r
 public abstract class NyARTrackerSource\r
 {\r
+       /** ヒント画像(Roberts画像)の解像度値。1/n表記*/\r
        protected int _rob_resolution;\r
        //継承クラスで設定されるべきオブジェクト\r
+       \r
+       /** ヒント画像を格納するオブジェクト。継承クラスで割り当てること。*/\r
        protected NyARGrayscaleRaster _rbraster;\r
+       /** 基本GS画像を格納するオブジェクト。継承クラスで割り当てること。*/\r
        protected NyARGrayscaleRaster _base_raster;\r
-       protected INyARVectorReader _vec_reader;        \r
+       /** 基本画像に対する画素ベクトル読出しオブジェクト。継承クラスで割り当てること。*/\r
+       protected INyARVectorReader _vec_reader;\r
+       /** サンプリングアウトを格納するオブジェクト。継承クラスで割り当てること。*/\r
        protected LowResolutionLabelingSamplerOut _sample_out;\r
        /**\r
-        * Robertsエッジ画像の解像度を指定する。\r
+        * コンストラクタです。\r
+        * ヒント画像の解像度値を指定して、インスタンスを作成します。\r
         * @param i_rob_resolution\r
+        * ヒント画像の解像度値。\r
         */\r
        protected NyARTrackerSource(int i_rob_resolution)\r
        {\r
                this._rob_resolution=i_rob_resolution;\r
        }\r
        /**\r
-        * 基本GS画像に対するVector読み取り機を返します。\r
-        * このインスタンスは、基本GS画像と同期していないことがあります。\r
-        * 基本GS画像に変更を加えた場合は、getSampleOut,またはsyncResource関数を実行して同期してから実行してください。\r
+        * この関数は、Vector読み取りオブジェクトを返します。\r
+        * このオブジェクトは、使用前にインスタンスの同期が必要な事があります。\r
+        * 基本GS画像に変更を加えた後に{@link NyARTracker#progress}を実行せずに使用する場合は、\r
+        * {@link #makeSampleOut},または{@link #syncResource}関数を実行してから使用してください。\r
         * @return\r
+        * 基本画像、ヒント画像を元にしたVectorリーダ\r
         */\r
        public final INyARVectorReader getBaseVectorReader()\r
        {\r
@@ -39,46 +50,51 @@ public abstract class NyARTrackerSource
        }\r
 \r
        /**\r
-        * ã\82¨ã\83\83ã\82¸ç\94»å\83\8fを返します。\r
-        * ã\81\93ã\81®ã\82¤ã\83³ã\82¹ã\82¿ã\83³ã\82¹ã\81¯ã\80\81å\9fºæ\9c¬GSç\94»å\83\8fã\81¨å\90\8cæ\9c\9fã\81\97ã\81¦ã\81\84ã\81ªã\81\84ã\81\93ã\81¨があります。\r
-        * å\9fºæ\9c¬GSç\94»å\83\8fã\81«å¤\89æ\9b´ã\82\92å\8a ã\81\88ã\81\9få ´å\90\88ã\81¯ã\80\81makeSampleOut,ã\81¾ã\81\9fã\81¯syncResourceé\96¢æ\95°ã\82\92å®\9fè¡\8cã\81\97ã\81¦å\90\8cæ\9c\9fã\81\97ã\81¦ã\81\8bã\82\89å®\9fè¡\8cã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84ã\80\82\r
-        * 継承クラスでは、エッジ画像を返却してください。\r
+        * ã\81\93ã\81®é\96¢æ\95°ã\81¯ã\80\81ã\83\92ã\83³ã\83\88ç\94»å\83\8f\82¨ã\83\83ã\82¸ç\94»å\83\8f\81®å\8f\82ç\85§å\80¤を返します。\r
+        * ã\81\93ã\81®ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81¯ã\80\81使ç\94¨å\89\8dã\81«ã\82¤ã\83³ã\82¹ã\82¿ã\83³ã\82¹ã\81®å\90\8cæ\9c\9fã\81\8cå¿\85è¦\81ã\81ªäº\8bがあります。\r
+        * å\9fºæ\9c¬GSç\94»å\83\8fã\81«å¤\89æ\9b´ã\82\92å\8a ã\81\88ã\81\9få¾\8cã\81«{@link NyARTracker#progress}ã\82\92å®\9fè¡\8cã\81\9bã\81\9aã\81«ä½¿ç\94¨ã\81\99ã\82\8bå ´å\90\88ã\81¯ã\80\81\r
+        * {@link #makeSampleOut},または{@link #syncResource}関数を実行してから使用してください。\r
         * @return\r
+        * ヒント画像のオブジェクト。\r
         */\r
        public final NyARGrayscaleRaster refEdgeRaster()\r
        {\r
                return this._rbraster;\r
        }\r
        /**\r
-        * 基準画像を返します。\r
-        * 継承クラスでは、基本画像を返却してください。\r
+        * この関数は、基準画像の参照値を返します。\r
         * @return\r
+        * 基本画像のオブジェクト。\r
         */\r
        public final NyARGrayscaleRaster refBaseRaster()\r
        {\r
                return this._base_raster;\r
        }\r
        /**\r
-        * 最後に作成した{@link LowResolutionLabelingSamplerOut}へのポインタを返します。\r
-        * この関数は、{@link NyARTracker#progress}、または{@link #syncResource}の後に呼び出すことを想定しています。\r
-        * それ以外のタイミングでは、返却値の内容が同期していないことがあるので注意してください。\r
+        * この関数は、{@link LowResolutionLabelingSamplerOut}オブジェクトの参照値を返します。\r
+        * へのポインタを返します。\r
+        * このオブジェクトは、使用前にインスタンスの同期が必要な事があります。\r
+        * 基本GS画像に変更を加えた後に{@link NyARTracker#progress}を実行せずに使用する場合は、\r
+        * {@link #makeSampleOut}の戻り値を使うか、{@link #syncResource}関数を実行してから使用してください。\r
         * @return\r
+        * 現在のSampleOutオブジェクトの参照値\r
         */\r
        public final LowResolutionLabelingSamplerOut refLastSamplerOut()\r
        {\r
                return this._sample_out;\r
        }\r
        /**\r
-        * 基準画像と内部状態を同期します。(通常、アプリケーションからこの関数を使用することはありません。)\r
-        * エッジ画像から{@link _sample_out}を更新する関数を実装してください。\r
+        * この関数は、基準画像と内部状態を同期します。\r
+        * 通常、ユーザがこの関数を使用することはありません。\r
+        * 実装クラスでは、{@link #_sample_out}を更新する関数を実装してください。\r
         * @throws NyARException\r
         */\r
        public abstract void syncResource() throws NyARException;\r
        \r
        /**\r
-        * SampleOutを計算して、参照値を返します。\r
-        * この関数は、{@link NyARTracker#progress}が呼び出します。\r
-        * 継承クラスでは、エッジ画像{@link _rbraster}から{@link _sample_out}を更新して、返却する関数を実装してください。\r
+        * この関数は、インスタンスのメンバを同期した後に、SampleOutを計算して、参照値を返します。\r
+        * この関数は、{@link NyARTracker#progress}が呼び出します。通常、ユーザが使用することはありません。\r
+        * 実装クラスでは、インスタンスの同期後に、{@link #_sample_out}を更新する関数を実装してください。\r
         * @throws NyARException\r
         */\r
        public abstract LowResolutionLabelingSamplerOut makeSampleOut() throws NyARException;\r