主要内容

affinetform3d

三维仿射几何变换

自 R2022b 起. 建议替换 affine3d.

    说明

    affinetform3d 对象存储有关三维仿射几何变换的信息,并支持正向变换和逆变换。

    创建对象

    您可以通过以下方式创建 affinetform3d 对象:

    • imregtform - 使用相似性优化来估计将运动图像映射到固定图像的几何变换。

    • randomAffine3d - 创建随机三维仿射变换。

    • 其他工具箱中返回几何变换的函数,包括(但不限于):

    • 此处介绍的 affinetform3d 函数。

    描述

    tform = affinetform3d 创建一个用于执行恒等变换的 affinetform3d 对象。

    tform = affinetform3d(affineMat) 从有效的三维仿射变换矩阵 affineMat 创建 affinetform3d 对象。

    示例

    tform = affinetform3d(tformIn) 基于另一个几何变换对象 tformIn 创建一个 affinetform3d 对象,该对象表示有效的三维仿射几何变换。

    输入参量

    全部展开

    正向三维仿射变换,指定为 4×4 数值矩阵。创建对象时,还可以将 affineMat 指定为 3×4 数值矩阵。在这种情况下,该对象会将行向量 [0 0 0 1] 串联到矩阵的末尾,形成一个 4×4 矩阵。

    有效的三维仿射变换 A 具有以下形式:

    Α=[abcdefghijkl0001]

    此参量设置 A 属性。

    数据类型: double | single

    仿射三维几何变换,指定为 affinetform3d 对象、rigidtform3d 对象、simtform3d 对象或 transltform3d 对象。

    输出参量

    全部展开

    仿射三维几何变换,以 affinetform3d 对象形式返回。

    属性

    全部展开

    正向三维仿射变换,指定为 4×4 数值矩阵。A 的默认值为单位矩阵。

    矩阵 A 使用以下约定将输入坐标空间中的点 (u, v, w) 转换为输出坐标空间中的点 (x, y, z):

    [xyz1]=Α×[uvw1]

    对于仿射变换,A 具有以下形式:

    Α=[abcdefghijkl0001]

    数据类型: double | single

    此 属性 为只读。

    输入点和输出点的几何变换维度,以值 3 的形式返回。

    数据类型: double

    对象函数

    invertInvert geometric transformation
    outputLimitsFind output spatial limits given input spatial limits
    transformPointsForwardApply forward geometric transformation
    transformPointsInverseApply inverse geometric transformation

    示例

    全部折叠

    定义一个 4×4 几何变换矩阵。此矩阵指定由平移和各向异性缩放组成的仿射变换。

    [sx,sy,sz] = deal(2,2,2.5);
    [tx,ty,tz] = deal(10,20.5,15);
    A = [sx 0 0 tx; 0 sy 0 ty; 0 0 sz tz; 0 0 0 1];

    创建一个执行缩放和平移的 affinetform3d 对象。

    tform = affinetform3d(A)
    tform = 
      affinetform3d with properties:
    
        Dimensionality: 3
    
                     A: [2.0000         0         0   10.0000
                              0    2.0000         0   20.5000
                              0         0    2.5000   15.0000
                              0         0         0    1.0000]
    
    

    检查 A 属性的值。

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

    扩展功能

    全部展开

    版本历史记录

    在 R2022b 中推出

    全部展开