パッケージ | クラス | 使用 | 非推奨 API
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## jp.nyatla.nyar4psg
クラス SingleARTKMarker

    java.lang.Object
      jp.nyatla.nyar4psg.NyARPsgBaseClass
          jp.nyatla.nyar4psg.SingleMarkerBaseClass
              jp.nyatla.nyar4psg.SingleARTKMarker

    public class SingleARTKMarker

extends SingleMarkerBaseClass

このクラスは、登録した複数のマーカのうち、同時に1個を認識するクラスです。 NyARToolKitの`SingleARMarkerProcesser`を使用したクラスです。 入力画像から、事前に登録したパターンに最も一致するマーカ1個を認識して、その座標と認識したマーカの番号を出力します。

フィールドの概要
`int` | `markerid` 推奨されていません。
`static int` | `ST_NEWMARKER` detectの返すステータス値です。
`static int` | `ST_NOMARKER` detectの返すステータス値です。
`static int` | `ST_REMOVEMARKER` detectの返すステータス値です。
`static int` | `ST_UPDATEMARKER` detectの返すステータス値です。

クラス jp.nyatla.nyar4psg.SingleMarkerBaseClass から継承されたフィールド
`_ar_param, _config, _frustum, _ps_projection, _src_raster, angle, pos2d, projection, trans, transmat`

クラス jp.nyatla.nyar4psg.NyARPsgBaseClass から継承されたフィールド
`_ps_background_mv, _ref_papplet, FRUSTUM_DEFAULT_FAR_CLIP, FRUSTUM_DEFAULT_NEAR_CLIP, VERSION`

コンストラクタの概要
`SingleARTKMarker(PApplet parent, int i_width, int i_height, String i_cparam)`
`SingleARTKMarker(PApplet parent, int i_width, int i_height, String i_cparam, NyAR4PsgConfig i_config)` コンストラクタです。

メソッドの概要
`int` | `detect(PImage i_image)` 画像から、マーカの認識処理を行い、プロパティを更新します。
`int` | `detectWithoutLoadPixels(PImage i_image)` `PImage.loadPixels()`を伴わない`detect()`です。
`int` | `getMarkerId()` 検出したマーカのIDを示します。
`void` | `setARCodes(String[] i_patt_names, int i_marker_size)` この関数は、マーカリストをテーブルに登録します。
`void` | `setARCodes(String i_patt_name, int i_patt_size)` この関数は、1個のARマーカをテーブルに登録します。
`void` | `setConfidenceThreshold(double i_new_cf, double i_exist_cf)` この関数は、マーカパターンの一致度敷居値を指定します。

クラス jp.nyatla.nyar4psg.SingleMarkerBaseClass から継承されたメソッド
`beginTransform, beginTransform, endTransform, getMarkerMatrix, getMarkerVertex2D, getProjectionMatrix, getProjectionMatrix, initInstance, pickupMarkerImage, pickupMarkerImage, pickupRectMarkerImage, screen2MarkerCoordSystem, setARClipping, updateTransmat`

クラス jp.nyatla.nyar4psg.NyARPsgBaseClass から継承されたメソッド
`drawBackground, initInstance, matResult2GLArray, matResult2PMatrix3D, nyarMat2PsMat, PMatrix2GLProjection, PMatrix2GLProjection, setARPerspective, setBackgroundOrtho, setPerspective`

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

フィールドの詳細

### ST_NOMARKER

    public static final int ST_NOMARKER

  detectの返すステータス値です。

  関連項目:
    定数フィールド値

### ST_NEWMARKER

    public static final int ST_NEWMARKER

  detectの返すステータス値です。

  関連項目:
    定数フィールド値

### ST_UPDATEMARKER

    public static final int ST_UPDATEMARKER

  detectの返すステータス値です。

  関連項目:
    定数フィールド値

### ST_REMOVEMARKER

    public static final int ST_REMOVEMARKER

  detectの返すステータス値です。

  関連項目:
    定数フィールド値

### markerid

    public int markerid

  推奨されていません。
  [readonly] この変数は互換性の為に残されています。`getMarkerId()`を使用してください。

コンストラクタの詳細

### SingleARTKMarker

    public SingleARTKMarker(PApplet parent,
                            int i_width,
                            int i_height,
                            String i_cparam,
                            NyAR4PsgConfig i_config)

  コンストラクタです。

  パラメータ:
    `parent` -
    `i_width` -
    `i_height` -
    `i_cparam` -
    `i_config` - コンフィギュレーションオブジェクトを指定します。 このクラスは、`NyAR4PsgConfig.env_transmat_mode`の値を無視します。（常に`NyAR4PsgConfig.TM_NYARTK`を使います。 ）

### SingleARTKMarker

    public SingleARTKMarker(PApplet parent,
                            int i_width,
                            int i_height,
                            String i_cparam)

メソッドの詳細

### getMarkerId

    public int getMarkerId()

  検出したマーカのIDを示します。この値は、setARCodesで登録したマーカの0からはじまる 順番を返します。たとえば、マーカを1個しか登録しなかった場合、常に0となります。

### setARCodes

    public void setARCodes(String i_patt_name,
                           int i_patt_size)

  この関数は、1個のARマーカをテーブルに登録します。 コンストラクタの後で1度だけ呼び出してください。

  パラメータ:
    `i_patt_name` - マーカパターンの名前配列を指定します。配列の先頭から、マーカーのIDは、0,1,2...の順になります。 登録できるマーカの種類は、エッジサイズ25%、解像度16x16のみです。
    `i_patt_size` - マーカの物理サイズを[mm]で指定します。

### setARCodes

    public void setARCodes(String[] i_patt_names,
                           int i_marker_size)

  この関数は、マーカリストをテーブルに登録します。 コンストラクタの後で1度だけ呼び出してください。

  パラメータ:
    `i_patt_names` - マーカパターンの名前配列を指定します。配列の先頭から、マーカーのIDは、0,1,2...の順になります。 登録できるマーカの種類は、エッジサイズ25%、解像度16x16のみです。
    `i_marker_size` - マーカの物理サイズを[mm]で指定します。このサイズは、全てのマーカで共通です。

### setConfidenceThreshold

    public void setConfidenceThreshold(double i_new_cf,
                                       double i_exist_cf)

  この関数は、マーカパターンの一致度敷居値を指定します。 この敷居値よりも低いマーカは、認識しません。

  パラメータ:
    `i_new_cf` - 新しくマーカを認識するために必要なマーカノ一致度です。値範囲は、0<<n<100です。
    `i_exist_cf` - 継続してマーカを認識するために必要なマーカノ一致度です。値範囲は、0<<n<100です。 i_new_cfより低い値を指定してください。

### detect

    public int detect(PImage i_image)

  画像から、マーカの認識処理を行い、プロパティを更新します。 認識処理の結果は、戻り値にステータスコードで格納します。 二値化敷居値はPTail法により、自動的に決定します。 関数は、i_imageに対して1度だけ`PImage.loadPixels()`を実行します。 `PImage.loadPixels()`のタイミングをコントロールしたい場合は、`detectWithoutLoadPixels(processing.core.PImage)`を使用してください。

  パラメータ:
    `i_image` - 検出処理を行う画像を指定します。
  戻り値:
    ステータスコードを返します。
    - `ST_NOMARKER` - マーカが認識されていない事を示します。 マーカパラメータのメンバ変数は使用不可能です。
    - `ST_NEWMARKER` - マーカが発見された事を示します。 transmat,angle,trans,markeridメンバ変数が利用可能です。
    - `ST_UPDATEMARKER` - マーカ座標が更新されたことを示します。 transmat,angle,trans,markeridメンバ変数が利用可能です。
    - `ST_REMOVEMARKER` - マーカが消失したことを示します。 マーカパラメータのメンバ変数は使用不可能です。

### detectWithoutLoadPixels

    public int detectWithoutLoadPixels(PImage i_image)

  `PImage.loadPixels()`を伴わない`detect()`です。 引数と戻り値の詳細は、`detect(PImage)`を参照してください。

  パラメータ:
    `i_image` -
  関連項目:
    `detect(PImage)`

パッケージ | クラス | 使用 | 非推奨 API
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

NyAR4psgは、NyARToolkit projectで開発している、NyARToolKitのProcessingフロントエンドです。ソースコードは、sorceforge.jpNyARToolkitからダウンロードできます。
Copyright 2011 NyARToolkit project. All rights reserved.