関数 | |
| INT FVALGAPI | fnFIE_region_geotrans_shift (FHANDLE hSrcReg, FHANDLE *hDstReg, INT iDx, INT iDy) |
| リージョンの平行移動 | |
| INT FVALGAPI | fnFIE_region_geotrans_perspective (FHANDLE hSrcReg, FHANDLE *hDstReg, const FMATRIX *vpMat) |
リージョンの射影変換 | |
| INT FVALGAPI fnFIE_region_geotrans_shift | ( | FHANDLE | hSrcReg, | |
| FHANDLE * | hDstReg, | |||
| INT | iDx, | |||
| INT | iDy | |||
| ) |
リージョンの平行移動
本関数はリージョンの各ランの座標に入力移動量を加算して、リージョン全体を平行移動します。 本関数実行後 *hDstReg の計算済み特徴量はすべてクリアされます。 *hDstReg の値がNULLの場合 *hDstReg には自動的にREGIONオブジェクトが割り当てられます。 ユーザ側で fnFIE_free_object() によってオブジェクトの解放を行って下さい。 hSrcReg と *hDstReg が同一ハンドルでも問題はありません。 また、入力リージョンがランを含まないときは同じ空き出力リージョンを生成します。 エラー終了時には *hDstReg の内容は本関数実行前の状態を保持します。 ( *hDstReg がNULLだった場合はNULLのまま。)
| [in] | hSrcReg | 入力リージョン |
| [out] | hDstReg | 出力リージョン |
| [in] | iDx | 横方向の移動量 |
| [in] | iDy | 縦方向の移動量 |
| F_ERR_NONE | 正常終了 | |
| F_ERR_NOMEMORY | メモリ不足で異常終了した | |
| F_ERR_INVALID_PARAM | 不正パラメータ
| |
| F_ERR_INVALID_OBJECT | 入力ハンドルはリージョンオブジェクトのハンドルではない | |
| F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
| INT FVALGAPI fnFIE_region_geotrans_perspective | ( | FHANDLE | hSrcReg, | |
| FHANDLE * | hDstReg, | |||
| const FMATRIX * | vpMat | |||
| ) |
リージョンの射影変換
処理対象リージョンを、幾何変換の同次変換行列 vpMat に従って射影変換します。
vpMat は座標変換に使用する同次変換行列で、3x3の正方行列を指定します。 vpMat は逆行列を計算できる必要があります。 vpMat の意味や作成法については 同次変換行列 を併せてご参照ください。
*hDstReg の値がNULLの場合 *hDstReg には自動的にREGIONオブジェクトが割り当てられます。 ユーザ側で fnFIE_free_object() によってオブジェクトの解放を行って下さい。 hSrcReg と *hDstReg が同一ハンドルでも問題はありません。 エラー終了時には *hDstReg の内容は本関数実行前の状態を保持します。
| [in] | hSrcReg | 入力リージョン |
| [out] | hDstReg | 出力リージョン |
| [in] | vpMat | 射影変換行列 |
| F_ERR_NONE | 正常終了 | |
| F_ERR_NOMEMORY | メモリ不足で異常終了した | |
| F_ERR_INVALID_PARAM | 不正パラメータ
| |
| F_ERR_INVALID_OBJECT | 不正なリージョンオブジェクトが入力された | |
| F_ERR_CALC_IMPOSSIBLE | 変換行列の逆行列が計算不可能 | |
| F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |