ドキュメンテーション

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

affine3d クラス

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

説明

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

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

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

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

構築

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

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

入力引数

すべて展開する

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

 A = [a b c 0;
      d e f 0;
      g h i 0;
      j k l 1];

データ型: double | single

プロパティ

すべて展開する

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

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

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

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

 [a b c 0;
  d e f 0;
  g h i 0;
  j k l 1];

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

データ型: double | single

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

メソッド

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

コピーのセマンティクス

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

すべて展開する

次元ごとに異なる倍率を定義する affine3d オブジェクトを作成します。

Sx = 1.2;
Sy = 1.6;
Sz = 2.4;
tform = affine3d([Sx 0 0 0; 0 Sy 0 0; 0 0 Sz 0; 0 0 0 1]);
tform = 

  affine3d with properties:

                 T: [4x4 double]
    Dimensionality: 3

フォワード幾何学的変換を入力点に適用します。

[X,Y,Z] = transformPointsForward(tform,1,1,1)
X =

    1.2000


Y =

    1.6000


Z =

    2.4000

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

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

     1


V =

     1


W =

     1

MRI イメージを読み込みます。

A = load('mri');
A = squeeze(A.D);

次元ごとに異なる倍率を定義する affine3d オブジェクトを作成します。

Sx = 1.2;
Sy = 1.6;
Sz = 2.4;
tform = affine3d([Sx 0 0 0; 0 Sy 0 0; 0 0 Sz 0; 0 0 0 1]);
tform = 

  affine3d with properties:

                 T: [4x4 double]
    Dimensionality: 3

関数 imwarp を使用して幾何学的変換をイメージに適用し、変換されたボリュームの中心を通る軸スライスを可視化して、スケール変換の効果を確認します。

outputImage = imwarp(A,tform);
figure, imshowpair(A(:,:,14),outputImage(:,:,27));

参考

関数

クラス

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