Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

invert

幾何学的変換の反転

説明

invtform = invert(tform) は、幾何学的変換 tform の逆を返します。

すべて折りたたむ

原点回りの反時計方向に 30 度の回転を定義する affine2d オブジェクトを作成します。T プロパティに格納されている変換行列を表示します。

theta = 30;
tform = affine2d([cosd(theta) sind(theta) 0; -sind(theta) cosd(theta) 0; 0 0 1]);
tform.T
ans = 3×3

    0.8660    0.5000         0
   -0.5000    0.8660         0
         0         0    1.0000

幾何学的変換を反転させます。結果は新しい affine2d オブジェクトになります。

invtform = invert(tform);
invtform.T
ans = 3×3

    0.8660   -0.5000         0
    0.5000    0.8660         0
         0         0    1.0000

この行列は、時計回りの方向に 30 度の回転を表します。

幾何学的逆変換のテスト

イメージを読み取り、それを表示します。

I = imread('pout.tif');
figure;
imshow(I)

tform を使用してイメージに幾何学的変換を適用します。回転させたイメージを表示します。

J = imwarp(I,tform);
figure;
imshow(J)

invtform を使用してイメージ J に幾何学的逆変換を適用します。

K = imwarp(J,invtform);
imshow(K)

最終的なイメージ K は、正しい向きになっています。2 つの変換では、イメージを囲むパディングが行われましたが、イメージ データのサイズ、形状、および方向は変更されませんでした。

入力引数

すべて折りたたむ

幾何学的変換。affine2daffine3dprojective2d、または rigid3d 幾何学的変換オブジェクトとして指定します。

出力引数

すべて折りたたむ

幾何学的逆変換。幾何学的変換オブジェクトとして返されます。invtform は、tform と同じオブジェクト タイプです。

R2013a で導入