メインコンテンツ

fitgeotrans

(非推奨) 幾何学的変換のコントロール ポイントのペアへの近似

fitgeotrans は推奨されません。代わりに関数 fitgeotform2d を使用してください。詳細については、バージョン履歴を参照してください。

説明

tform = fitgeotrans(movingPoints,fixedPoints,tformType) は、タイプ tformType の線形幾何学的変換をコントロール ポイントのペア movingPoints および fixedPoints に近似します。

tform = fitgeotrans(movingPoints,fixedPoints,"polynomial",degree) は、PolynomialTransformation2D オブジェクトをコントロール ポイントのペア movingPoints および fixedPoints に近似します。多項式変換の次数を指定します。2、3 または 4 を使用できます。

tform = fitgeotrans(movingPoints,fixedPoints,"pwl") は、PiecewiseLinearTransformation2D オブジェクトをコントロール ポイントのペア movingPoints および fixedPoints に近似します。この変換は、固定コントロール ポイントの Delaunay 三角形分割を作成し、移動コントロール ポイントを対応する固定コントロール ポイントにマッピングします。局所領域ごとに異なるアフィン変換でコントロール ポイントがマッピングされます。このマッピングはコントロール ポイント間で連続的ですが、連続的に微分可能ではありません。

tform = fitgeotrans(movingPoints,fixedPoints,"lwm",n) は、LocalWeightedMeanTransformation2D オブジェクトをコントロール ポイントのペア movingPoints および fixedPoints に近似します。局所重み付き平均変換が、近傍のコントロール ポイントを使用して各コントロール ポイントにおける多項式を推定し、マッピングを行います。任意の位置でのマッピングは、これらの多項式の加重平均に依存します。n 個の最近傍点を使用して、コントロール ポイントの各組に対し 2 次多項式が推定されます。

すべて折りたたむ

チェッカーボードのイメージを作成し、このイメージを回転して、位置のずれたイメージを作成します。

I = checkerboard(40);
J = imrotate(I,30);
imshowpair(I,J,"montage")

Figure contains an axes object. The hidden axes object contains an object of type image.

固定イメージ (チェッカーボード) と移動イメージ (回転したチェッカーボード) にいくつかの一致させるコントロール ポイントを定義します。コントロール ポイント選択ツールを使用して対話的にポイントを定義できます。

fixedPoints = [41 41; 281 161];
movingPoints = [56 175; 324 160];

2 個のイメージの位置合わせに使用するアフィン幾何学的変換を作成します。

tform = fitgeotform2d(movingPoints,fixedPoints,"similarity");

tform 推定を使用して、回転したイメージをリサンプルし、固定イメージにレジストレーションします。レジストレーションの誤差は、フォールス カラーのオーバーレイ イメージ内で緑とマゼンタの色領域として表示されます。このエラーの原因は、コントロール ポイントが正確に一致していないためです。

Jregistered = imwarp(J,tform,OutputView=imref2d(size(I)));
imshowpair(I,Jregistered)

Figure contains an axes object. The hidden axes object contains an object of type image.

入力引数

すべて折りたたむ

移動イメージ内のコントロール ポイント。m 行 2 列の行列として指定します。各行は、コントロール ポイントの (x, y) 座標を指定します。

例: movingPoints = [11 11; 41 71];

データ型: double | single

固定イメージ内のコントロール ポイント。m 行 2 列の行列として指定します。各行は、コントロール ポイントの (x, y) 座標を指定します。

例: fixedPoints = [14 44; 70 81];

データ型: double | single

線形変換のタイプ。"nonreflectivesimilarity""similarity""affine"、または "projective" として指定します。詳細については、変換タイプを参照してください。

データ型: char | string

多項式の次数。整数 23 または 4 として指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

局所重み付き平均の計算に使用する点の数。正の整数として指定します。n には最小で 6 を指定できますが、n の値を小さくすると条件の悪い多項式が生成される可能性があります。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力引数

すべて折りたたむ

変換。幾何学的変換オブジェクトとして返されます。オブジェクトのタイプは変換タイプによって異なります。

変換タイプ

幾何学的変換オブジェクト
"nonreflectivesimilarity"affine2d
"similarity"affine2d
"affine"affine2d
"projective"projective2d
"polynomial"PolynomialTransformation2D
"pwl"PiecewiseLinearTransformation2D
"lwm"LocalWeightedMeanTransformation2D

詳細

すべて折りたたむ

参照

[1] Goshtasby, Ardeshir. “Piecewise Linear Mapping Functions for Image Registration.” Pattern Recognition 19, no. 6 (January 1986): 459–66. https://doi.org/10.1016/0031-3203(86)90044-0.

[2] Goshtasby, Ardeshir. “Image Registration by Local Approximation Methods.” Image and Vision Computing 6, no. 4 (November 1988): 255–61. https://doi.org/10.1016/0262-8856(88)90016-9.

拡張機能

すべて展開する

バージョン履歴

R2013b で導入

すべて展開する