特徴量
[FPM(特徴点応用マッチング)]


関数

FHANDLE FVALGAPI fnFIE_fpm_feature_alloc (FHANDLE himage, enum f_fpm_mode matching_mode, enum f_fpm_featedge method, const F_FPM_FEATURE *pfeature_param, BOOL border, INT *perr_code)
 特徴量を取得
FHANDLE FVALGAPI fnFIE_fpm_feature_window_alloc (FHANDLE himage, BOX_T window, enum f_fpm_mode matching_mode, enum f_fpm_featedge method, const F_FPM_FEATURE *pfeature_param, BOOL border, INT *perr_code)
 ウィンドウを指定して特徴量を取得
FHANDLE FVALGAPI fnFIE_fpm_feature_import_alloc (F_DEDGE *img_edges, INT num_img_edges, INT img_width, INT img_height, enum f_fpm_mode matching_mode, INT *perr_code)
 点情報から FPM特徴量オブジェクトを生成
INT FVALGAPI fnFIE_fpm_feature_mask (FHANDLE hfeature, FHANDLE hmask)
 特徴量のマスク
INT FVALGAPI fnFIE_fpm_feature_get_num (FHANDLE hfeature, INT *pfeature_num)
 特徴量数の取得
INT FVALGAPI fnFIE_fpm_feature_get_edges (FHANDLE hfeature, F_DEDGE *pedges)
 特徴量の取得(勾配方向付きエッジ)
INT FVALGAPI fnFIE_fpm_feature_get_matching_mode (FHANDLE hfeature, enum f_fpm_mode *pmatching_mode)
 特徴量取得マッチングモードの取得
INT FVALGAPI fnFIE_fpm_feature_get_method (FHANDLE hfeature, enum f_fpm_featedge *pmethod)
 特徴量抽出手法の取得

関数

FHANDLE FVALGAPI fnFIE_fpm_feature_alloc ( FHANDLE  himage,
enum f_fpm_mode  matching_mode,
enum f_fpm_featedge  method,
const F_FPM_FEATURE pfeature_param,
BOOL  border,
INT *  perr_code 
)

特徴量を取得

画像オブジェクトから特徴量を抽出し、特徴量オブジェクト(F_OBJID_FPM_FEATURE)を生成します。

引数:
[in] himage 特徴量を計測する対象となる画像オブジェクト (画像タイプ:uc8 のみ対応)
チャネル数は 1 でなければいけません。
[in] matching_mode FPMを行う際のマッチングモード
  • F_FPM_NORMAL_MODE 通常モード
  • F_FPM_SPEED_MODE 高速モード
[in] method 特徴量抽出手法
  • F_FPM_SOBEL_EDGE ソーベルによる特徴量抽出
  • F_FPM_CORR_EDGE 相関エッジによる特徴量抽出
  • F_FPM_SOBEL_MAX_EDGE 強度上限付ソーベルによる特徴量抽出
  • F_FPM_CORR_MAX_EDGE 強度上限付相関エッジによる特徴量抽出
  • F_FPM_GROOVE_EDGE 細線エッジによる特徴量抽出
[in] pfeature_param 特徴量計測パラメータ
[in] border 特徴量抽出時のボーダー処理
  • TRUE ボーダー処理を行う
  • FALSE ボーダー処理を行わない
[out] perr_code 正常終了、またはエラーコードが入力されます。エラーコードを受け取る必要の無い場合は、NULLを指定します。
  • F_ERR_NONE 正常終了
  • F_ERR_INVALID_IMAGE 引数画像オブジェクトが異常
  • F_ERR_INVALID_PARAM 引数異常
  • F_ERR_NOMEMORY メモリ不足
  • F_ERR_FPM_NOFEATURE 特徴量が見つかりません。
  • F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
戻り値:
正常終了した場合は、生成したFPM特徴量オブジェクトのハンドルを返します。 異常終了により生成できなかったときはNULLを返します。
注意:
  • FPM特徴量オブジェクトが不要になったら、必ず fnFIE_free_object() で解放してください。
  • 入力する画像オブジェクトの ステップサイズが 8で割り切れない場合には画像のコピーを行うため処理時間が余計にかかります。 特に、F_FPM_NORMAL_MODEで実行する場合, 画像オブジェクトを fnFIE_img_root_import_alloc() で確保した場合にはお気をつけください。

FHANDLE FVALGAPI fnFIE_fpm_feature_window_alloc ( FHANDLE  himage,
BOX_T  window,
enum f_fpm_mode  matching_mode,
enum f_fpm_featedge  method,
const F_FPM_FEATURE pfeature_param,
BOOL  border,
INT *  perr_code 
)

ウィンドウを指定して特徴量を取得

画像オブジェクトの特定の範囲から特徴量を抽出し、特徴量オブジェクト(F_OBJID_FPM_FEATURE)を生成します。

引数:
[in] himage 特徴量を計測する対象となる画像オブジェクト (画像タイプ:uc8 のみ対応)
チャネル数は 1 でなければいけません。
[in] window 特徴量を計測する対象画像エリアです。
[in] matching_mode FPMを行う際のマッチングモード
  • F_FPM_NORMAL_MODE 通常モード
  • F_FPM_SPEED_MODE 高速モード
[in] method 特徴量抽出手法
  • F_FPM_SOBEL_EDGE ソーベルによる特徴量抽出
  • F_FPM_CORR_EDGE 相関エッジによる特徴量抽出
  • F_FPM_SOBEL_MAX_EDGE 強度上限付ソーベルによる特徴量抽出
  • F_FPM_CORR_MAX_EDGE 強度上限付相関エッジによる特徴量抽出
  • F_FPM_GROOVE_EDGE 細線エッジによる特徴量抽出
[in] pfeature_param 特徴量計測パラメータ
[in] border 特徴量抽出時のボーダー処理
  • TRUE ボーダー処理を行う
  • FALSE ボーダー処理を行わない
[out] perr_code 正常終了、またはエラーコードが入力されます。エラーコードを受け取る必要の無い場合は、NULLを指定します。
  • F_ERR_NONE 正常終了
  • F_ERR_INVALID_IMAGE 引数画像オブジェクトが異常
  • F_ERR_INVALID_PARAM 引数異常
  • F_ERR_NOMEMORY メモリ不足
  • F_ERR_FPM_NOFEATURE 特徴量が見つかりません。
  • F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
戻り値:
正常終了した場合は、生成したFPM特徴量オブジェクトのハンドルを返します。 異常終了により生成できなかったときはNULLを返します。
注意:
  • FPM特徴量オブジェクトが不要になったら、必ず fnFIE_free_object() で解放してください。
  • 入力する画像オブジェクトの ステップサイズが 8で割り切れない場合には画像のコピーを行うため処理時間が余計にかかります。 特に、F_FPM_NORMAL_MODEで実行する場合, 画像オブジェクトを fnFIE_img_root_import_alloc() で確保した場合にはお気をつけください。

FHANDLE FVALGAPI fnFIE_fpm_feature_import_alloc ( F_DEDGE img_edges,
INT  num_img_edges,
INT  img_width,
INT  img_height,
enum f_fpm_mode  matching_mode,
INT *  perr_code 
)

点情報から FPM特徴量オブジェクトを生成

F_DEDGE 型のエッジ情報をインポートして、FPM特徴量オブジェクト(F_OBJID_FPM_FEATURE)を生成します。 自身で作成した処理によって計測したエッジ情報や、既知の幾何情報から生成した情報等を用いて、FPMを実行するためのFPM特徴量オブジェクトを生成することが可能です。

引数:
[in] img_edges F_DEDGE 型 エッジデータ
[in] num_img_edges img_edges に格納されているエッジデータ数(1≦ num_img_edges)
[in] img_width img_edges を取得した画像幅(1≦ img_width)
[in] img_height img_edges を取得した画像高さ(1≦ img_height)
[in] matching_mode FPMを行う際のマッチングモード
  • F_FPM_NORMAL_MODE 通常モード
  • F_FPM_SPEED_MODE 高速モード
[out] perr_code 正常終了、またはエラーコードが入力されます。エラーコードを受け取る必要の無い場合は、NULLを指定することも可能です。
  • F_ERR_NONE 正常終了
  • F_ERR_INVALID_PARAM 引数異常
  • F_ERR_NOMEMORY メモリ不足
  • F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
戻り値:
正常終了した場合は、生成したFPM特徴量オブジェクトのハンドルを返します。 異常終了により生成できなかったときはNULLを返します。
注意:
  • 入力情報 img_edges のメンバである 強度 mag は使用しません。値が未知であっても値を計算する必要はありません。(未知の場合には 0で初期化しておいてください)
  • FPM特徴量オブジェクトが不要になったら、必ず fnFIE_free_object() で解放してください。
  • img_edges の入力エッジ情報は、画像処理で取得したエッジを想定しています。そのため img_edges のXYの入力値として、四捨五入して負になる、または img_width, img_height 以上になる値を入力した場合には、戻り値に F_ERR_INVALID_PARAM が返ります。

INT FVALGAPI fnFIE_fpm_feature_mask ( FHANDLE  hfeature,
FHANDLE  hmask 
)

特徴量のマスク

特徴量オブジェクトに格納されている特徴量データに対してマスクを掛けた状態のデータに更新します。

引数:
[in,out] hfeature FPM特徴量オブジェクト
[in] hmask マスクパタン指定用画像オブジェクト(画像タイプ:uc8 のみ対応) マスクを指定する場合には、最下位1ビットをONに指定します。hmask にNULLを渡すとマスクをとりはずします。
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_OBJECT 引数オブジェクトの種別が異常
F_ERR_INVALID_IMAGE 引数画像オブジェクトが異常
F_ERR_FPM_NOFEATURE 特徴量がなくなります
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
注意:
本関数を呼び出すたびにマスク指定した部分の特徴量データが取り除かれます。異なったマスクで複数回呼び出した場合、いずれのマスクでも指定されなかった部分の特徴量データが残ります。 マスクが一度も掛かっていない時点での特徴量データを復帰させたい場合には、hmaskにNULLを渡してください。
参照:
fnFIE_fpm_feature_get_num()

INT FVALGAPI fnFIE_fpm_feature_get_num ( FHANDLE  hfeature,
INT *  pfeature_num 
)

特徴量数の取得

特徴量オブジェクトに格納されている特徴量の数を取得します。

引数:
[in] hfeature FPM特徴量オブジェクト
[out] pfeature_num ハンドル内に格納されている特徴量数
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_OBJECT 引数オブジェクトの種別が異常
F_ERR_INVALID_PARAM 引数異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー

INT FVALGAPI fnFIE_fpm_feature_get_edges ( FHANDLE  hfeature,
F_DEDGE pedges 
)

特徴量の取得(勾配方向付きエッジ)

特徴量オブジェクトに格納されている特徴量データを勾配方向付きエッジ情報データ型で取得します。

引数:
[in] hfeature FPM特徴量オブジェクト
[out] pedges 取得した特徴量データ 予め fnFIE_fpm_feature_get_num() によって特徴量の数を取得し、必要な領域を確保する必要があります。
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_OBJECT 引数オブジェクトの種別が異常
F_ERR_INVALID_PARAM 引数異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
注意:
  • 強度の出力値は0が入ります。
参照:
fnFIE_fpm_feature_get_num()

INT FVALGAPI fnFIE_fpm_feature_get_matching_mode ( FHANDLE  hfeature,
enum f_fpm_mode pmatching_mode 
)

特徴量取得マッチングモードの取得

特徴量オブジェクトを生成した際のマッチングモードを取得します。

引数:
[in] hfeature FPM特徴量オブジェクト
[out] pmatching_mode FPMを行う際のマッチングモード
  • F_FPM_NORMAL_MODE 通常モード
  • F_FPM_SPEED_MODE 高速モード
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_OBJECT 引数オブジェクトの種別が異常
F_ERR_INVALID_PARAM 引数異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー

INT FVALGAPI fnFIE_fpm_feature_get_method ( FHANDLE  hfeature,
enum f_fpm_featedge pmethod 
)

特徴量抽出手法の取得

特徴量オブジェクトを生成した際の特徴量抽出手法を取得します。

引数:
[in] hfeature FPM特徴量オブジェクト
[out] pmethod 特徴量抽出手法
  • F_FPM_CORR_MODE 相関エッジ
  • F_FPM_SOBEL_MODE ソーベルエッジ
  • F_FPM_CORR_MAX_MODE 強度上限付相関エッジ
  • F_FPM_SOBEL_MAX_MODE 強度上限付ソーベルエッジ
  • F_FPM_GROOVE_EDGE 細線エッジ
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_OBJECT 引数オブジェクトの種別が異常
F_ERR_INVALID_PARAM 引数異常
F_ERR_NODATA 抽出手法は存在しません( FPMオブジェクトは fnFIE_fpm_feature_import_alloc() によって生成されました )
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー


Documentation copyright © 2009-2023 FAST Corporation.
Generated on Fri Jan 13 11:09:34 2023 for FIEライブラリ by doxygen 1.5.6-FASTSP-p2