Main Content

transltform3d

3 次元平行移動幾何学的変換

R2022b 以降

    説明

    transltform3d オブジェクトは、3 次元平行移動幾何学的変換に関する情報を格納し、フォワード変換と逆変換を可能にします。

    作成

    transltform3d オブジェクトは次の方法で作成できます。

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

    • fitgeotform3d (Medical Imaging Toolbox) — 2 つのイメージの間でコントロール ポイントのペアをマッピングする幾何学的変換を推定します。

    • ここで説明する関数 transltform3d

    説明

    tform = transltform3d は、恒等変換を実行する transltform3d オブジェクトを作成します。

    tform = transltform3d(Translation) は、Translation プロパティの指定値に基づいて平行移動変換を実行する transltform3d オブジェクトを作成します。このプロパティは、x、y、z 方向の平行移動の量を指定します。

    tform = transltform3d(tx,ty,tz) は、それぞれ x、y、z 方向の指定された平行移動の量 txtytz で平行移動変換を実行する transltform3d オブジェクトを作成します。

    tform = transltform3d(A) は、transltform3d オブジェクトを作成し、指定された 3 次元平行移動変換行列としてプロパティ A を設定します。

    tform = transltform3d(tformIn) は、別の幾何学的変換オブジェクト tformIn から、有効な 3 次元平行移動幾何学的変換を表す transltform2d オブジェクトを作成します。

    入力引数

    すべて展開する

    x 方向の平行移動の量。数値スカラーとして指定します。この値は、Translation プロパティの最初の要素を設定します。

    y 方向の平行移動の量。数値スカラーとして指定します。この値は、Translation プロパティの 2 番目の要素を設定します。

    z 方向の平行移動の量。数値スカラーとして指定します。この値は、Translation プロパティの 3 番目の要素を設定します。

    3 次元平行移動幾何学的変換。affinetform3d オブジェクト、rigidtform3d オブジェクト、simtform3d オブジェクト、または transltform3d オブジェクトとして指定します。

    プロパティ

    すべて展開する

    3 次元フォワード平行移動変換。4 行 4 列の数値行列として指定します。このオブジェクトを作成する場合は、3 行 4 列の数値行列として A を指定することもできます。この場合、オブジェクトは行ベクトル [0 0 0 1] を行列の最後まで連結し、4 行 4 列の行列を作成します。A の既定値は単位行列です。

    行列 A は、次の規則を使用して、入力座標空間内の点 (u, v, w) を出力座標空間内の点 (x, y, z) に変換します。

    [xyz1]=Α×[uvw1]

    平行移動変換の場合、A の形式は次のとおりです。

    Α=[100tx010ty001tz0001]

    ここで、tx、ty、tz はそれぞれ x、y、z 方向の平行移動の量です。

    データ型: double | single

    平行移動の量。[tx ty tz] 形式の 3 要素の数値ベクトルとして指定します。

    データ型: double | single

    この プロパティ は読み取り専用です。

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

    データ型: double

    オブジェクト関数

    invert幾何学的逆変換
    outputLimitsFind output spatial limits given input spatial limits
    transformPointsForwardApply forward geometric transformation
    transformPointsInverseApply inverse geometric transformation

    すべて折りたたむ

    平行移動の量を指定します。

    t = [10 20.5 15];

    指定された平行移動を実行する transltform3d オブジェクトを作成します。

    tform = transltform3d(t)
    tform = 
      transltform3d with properties:
    
        Dimensionality: 3
           Translation: [10 20.5000 15]
    
                     A: [1.0000         0         0   10.0000
                              0    1.0000         0   20.5000
                              0         0    1.0000   15.0000
                              0         0         0    1.0000]
    
    

    A プロパティの値を調べます。

    tform.A
    ans = 4×4
    
        1.0000         0         0   10.0000
             0    1.0000         0   20.5000
             0         0    1.0000   15.0000
             0         0         0    1.0000
    
    

    拡張機能

    バージョン履歴

    R2022b で導入