ドキュメンテーション

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

affine3d

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

説明

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

作成

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

  • imregtform — 類似性の最適化を使用して移動イメージを固定イメージにマッピングする幾何学的変換を推定します

  • ここで記述された関数 affine3d

説明

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

tform = affine3d(A) は、正則行列 A によって定義される有効なアフィン変換でプロパティ T を設定します。

プロパティ

すべて展開する

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

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

オブジェクト関数

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

すべて折りたたむ

次元ごとに異なる倍率で 3 次元イメージをスケーリングする 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:

    Dimensionality: 3
                 T: [4x4 double]

3 次元ボリュームをワークスペースに読み込みます。

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

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

B = imwarp(D,tform);

各ボリュームの中心を通る軸スライスを可視化して、スケール変換の効果を確認します。変換されたボリュームの中心スライスは、z 次元でのスケーリングのために、元のボリュームの中心スライスとは異なるインデックスを持つことに注意してください。

figure
imshowpair(D(:,:,14),B(:,:,33),'montage');

元のイメージは左側に、変換されたイメージは右側に表示されます。SySx よりも大きいので、変換されたイメージは、予想どおり水平方向よりも垂直方向に大きくスケーリングされます。

拡張機能

R2013a で導入