ドキュメンテーション

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

affine2d クラス

2 次元アフィン幾何学的変換

説明

affine2d オブジェクトは、2 次元アフィン幾何学的変換をカプセル化します。

affine2d オブジェクトは以下の方法を使用して作成できます。

  • imregtform — 移動イメージを固定イメージにマッピングする affine2d オブジェクトを返す

  • fitgeotrans — コントロール ポイントの組をマッピングする affine2d オブジェクトを返す

  • affine2d クラス コンストラクター

構築

tform = affine2d() は、恒等変換に該当する既定のプロパティ設定を使用して affine2d オブジェクトを作成します。

tform = affine2d(A) は、有効なアフィン変換を指定する 3 行 3 列の入力行列 A を基に affine2d オブジェクトを作成します。

入力引数

すべて展開する

2 次元フォワード アフィン変換。3 行 3 列の数値行列として指定します。A の形式は次のとおりです。

A = [a b 0;
     c d 0;
     e f 1];

データ型: double | single

プロパティ

すべて展開する

2 次元フォワード アフィン変換。3 行 3 列の数値行列として指定します。

行列 T は次の規則を使用します。

[x y 1] = [u v 1] * T

ここで、T の形式は次のとおりです。

 [a b 0;
  c d 0;
  e f 1];

T の既定の設定は、恒等変換です。

データ型: double | single

入力点と出力点の両方の幾何学的変換の次元を表します。

メソッド

invert幾何学的変換の反転
isRigid変換が剛体変換かどうかの判別
isSimilarity変換が相似変換かどうかの判別
isTranslation変換が純粋な平行移動かどうかの判別
outputLimits入力空間範囲に基づく出力空間範囲の特定
transformPointsForwardフォワード幾何学的変換の適用
transformPointsInverse幾何学的逆変換の適用

コピーのセマンティクス

値。値クラスがコピー操作に与える影響については、MATLAB® ドキュメンテーションの「オブジェクトのコピー」 (MATLAB)を参照してください。

すべて展開する

変換を定義する affine2d オブジェクトを作成します。

theta = 10;

tform = affine2d([cosd(theta) -sind(theta) 0; sind(theta) cosd(theta) 0; 0 0 1])
tform = 

  affine2d with properties:

                 T: [3x3 double]
    Dimensionality: 2

フォワード幾何学的変換を入力 (U,V) の点 (5,10) に適用します。

[X,Y] = transformPointsForward(tform,5,10)
X =

    6.6605


Y =

    8.9798

前の手順で得た出力 (X,Y) の点に幾何学的逆変換を適用して、元の点に戻します。

[U,V] = transformPointsInverse(tform,X,Y)
U =

    5.0000


V =

    10

イメージを読み取ります。

A = imread('pout.tif');

変換を定義する affine2d オブジェクトを作成します。

theta = 10;

tform = affine2d([cosd(theta) -sind(theta) 0; sind(theta) cosd(theta) 0; 0 0 1])
tform = 

  affine2d with properties:

                 T: [3x3 double]
    Dimensionality: 2

幾何学的変換をイメージに適用します。

outputImage = imwarp(A,tform);
figure, imshow(outputImage);

拡張機能

この情報は役に立ちましたか?