X-Git-Url: http://git.osdn.net/view?p=nyartoolkit-and%2Fnyartoolkit-and.git;a=blobdiff_plain;f=lib%2Fsrc.rpf%2Fjp%2Fnyatla%2Fnyartoolkit%2Frpf%2Ftracker%2Fnyartk%2FNyARTrackerSource.java;h=225ee2714fb81376a291b56c9693177e55c3fab3;hp=255c052a4dd57cb75ac6ac0c5847168f5b65f902;hb=01fcfa9219a4ed84155c7c51257d3d502dc7739f;hpb=ff9ebf7efe05f8cd3167983fabd4fefc28f7d62b diff --git a/lib/src.rpf/jp/nyatla/nyartoolkit/rpf/tracker/nyartk/NyARTrackerSource.java b/lib/src.rpf/jp/nyatla/nyartoolkit/rpf/tracker/nyartk/NyARTrackerSource.java index 255c052..225ee27 100644 --- a/lib/src.rpf/jp/nyatla/nyartoolkit/rpf/tracker/nyartk/NyARTrackerSource.java +++ b/lib/src.rpf/jp/nyatla/nyartoolkit/rpf/tracker/nyartk/NyARTrackerSource.java @@ -2,36 +2,47 @@ package jp.nyatla.nyartoolkit.rpf.tracker.nyartk; import jp.nyatla.nyartoolkit.NyARException; import jp.nyatla.nyartoolkit.core.raster.NyARGrayscaleRaster; -import jp.nyatla.nyartoolkit.rpf.sampler.lrlabel.LowResolutionLabelingSamplerOut; +import jp.nyatla.nyartoolkit.rpf.sampler.lrlabel.*; +import jp.nyatla.nyartoolkit.rpf.tracker.nyartk.*; /** - * LowResolutionLabelingSamplerへの入力コンテナの抽象クラスです。 - * 基本GS画像と、1/nサイズのRobertsエッジ検出画像を持ち、これらに対する同期APIとアクセサを定義します。 + * このクラスは、LowResolutionLabelingSamplerへの入力コンテナの抽象クラスです。 + * 基本GS画像と、ヒント画像(1/nサイズのRobertsエッジ画像)を持ち、これらに対する同期APIとアクセサを定義します。 *

* 継承クラスでは、_rbraster,_base_raster,_vec_readerメンバ変数の実体と、abstract関数を実装してください。 *

*/ public abstract class NyARTrackerSource { + /** ヒント画像(Roberts画像)の解像度値。1/n表記*/ protected int _rob_resolution; //継承クラスで設定されるべきオブジェクト + + /** ヒント画像を格納するオブジェクト。継承クラスで割り当てること。*/ protected NyARGrayscaleRaster _rbraster; + /** 基本GS画像を格納するオブジェクト。継承クラスで割り当てること。*/ protected NyARGrayscaleRaster _base_raster; - protected INyARVectorReader _vec_reader; + /** 基本画像に対する画素ベクトル読出しオブジェクト。継承クラスで割り当てること。*/ + protected INyARVectorReader _vec_reader; + /** サンプリングアウトを格納するオブジェクト。継承クラスで割り当てること。*/ protected LowResolutionLabelingSamplerOut _sample_out; /** - * Robertsエッジ画像の解像度を指定する。 + * コンストラクタです。 + * ヒント画像の解像度値を指定して、インスタンスを作成します。 * @param i_rob_resolution + * ヒント画像の解像度値。 */ protected NyARTrackerSource(int i_rob_resolution) { this._rob_resolution=i_rob_resolution; } /** - * 基本GS画像に対するVector読み取り機を返します。 - * このインスタンスは、基本GS画像と同期していないことがあります。 - * 基本GS画像に変更を加えた場合は、getSampleOut,またはsyncResource関数を実行して同期してから実行してください。 + * この関数は、Vector読み取りオブジェクトを返します。 + * このオブジェクトは、使用前にインスタンスの同期が必要な事があります。 + * 基本GS画像に変更を加えた後に{@link NyARTracker#progress}を実行せずに使用する場合は、 + * {@link #makeSampleOut},または{@link #syncResource}関数を実行してから使用してください。 * @return + * 基本画像、ヒント画像を元にしたVectorリーダ */ public final INyARVectorReader getBaseVectorReader() { @@ -39,46 +50,51 @@ public abstract class NyARTrackerSource } /** - * エッジ画像を返します。 - * このインスタンスは、基本GS画像と同期していないことがあります。 - * 基本GS画像に変更を加えた場合は、makeSampleOut,またはsyncResource関数を実行して同期してから実行してください。 - * 継承クラスでは、エッジ画像を返却してください。 + * この関数は、ヒント画像(エッジ画像)の参照値を返します。 + * このオブジェクトは、使用前にインスタンスの同期が必要な事があります。 + * 基本GS画像に変更を加えた後に{@link NyARTracker#progress}を実行せずに使用する場合は、 + * {@link #makeSampleOut},または{@link #syncResource}関数を実行してから使用してください。 * @return + * ヒント画像のオブジェクト。 */ public final NyARGrayscaleRaster refEdgeRaster() { return this._rbraster; } /** - * 基準画像を返します。 - * 継承クラスでは、基本画像を返却してください。 + * この関数は、基準画像の参照値を返します。 * @return + * 基本画像のオブジェクト。 */ public final NyARGrayscaleRaster refBaseRaster() { return this._base_raster; } /** - * 最後に作成した{@link LowResolutionLabelingSamplerOut}へのポインタを返します。 - * この関数は、{@link NyARTracker#progress}、または{@link #syncResource}の後に呼び出すことを想定しています。 - * それ以外のタイミングでは、返却値の内容が同期していないことがあるので注意してください。 + * この関数は、{@link LowResolutionLabelingSamplerOut}オブジェクトの参照値を返します。 + * へのポインタを返します。 + * このオブジェクトは、使用前にインスタンスの同期が必要な事があります。 + * 基本GS画像に変更を加えた後に{@link NyARTracker#progress}を実行せずに使用する場合は、 + * {@link #makeSampleOut}の戻り値を使うか、{@link #syncResource}関数を実行してから使用してください。 * @return + * 現在のSampleOutオブジェクトの参照値 */ public final LowResolutionLabelingSamplerOut refLastSamplerOut() { return this._sample_out; } /** - * 基準画像と内部状態を同期します。(通常、アプリケーションからこの関数を使用することはありません。) - * エッジ画像から{@link _sample_out}を更新する関数を実装してください。 + * この関数は、基準画像と内部状態を同期します。 + * 通常、ユーザがこの関数を使用することはありません。 + * 実装クラスでは、{@link #_sample_out}を更新する関数を実装してください。 * @throws NyARException */ public abstract void syncResource() throws NyARException; /** - * SampleOutを計算して、参照値を返します。 - * この関数は、{@link NyARTracker#progress}が呼び出します。 - * 継承クラスでは、エッジ画像{@link _rbraster}から{@link _sample_out}を更新して、返却する関数を実装してください。 + * この関数は、インスタンスのメンバを同期した後に、SampleOutを計算して、参照値を返します。 + * この関数は、{@link NyARTracker#progress}が呼び出します。通常、ユーザが使用することはありません。 + * 実装クラスでは、インスタンスの同期後に、{@link #_sample_out}を更新する関数を実装してください。 * @throws NyARException */ public abstract LowResolutionLabelingSamplerOut makeSampleOut() throws NyARException;