maketform
创建空间转换结构(TFORM
)
maketform
不建议使用。使用fitgeotrans
,affine2d
,affine3d
,或projective2d
代替。
语法
T = maketform('affine',A)
T = maketform('affine',U,X)
T = maketform('projective',A)
T = maketform('投影',U,X)
T = maketform('custom',NDIMS_IN,NDIMS_OUT,FORWARD_FCN,INVERSE_FCN,TDATA)
T = maketform('box',tsize,LOW,HIGH)
T = maketform('box',INBOUNDS, OUTBOUNDS)
T = maketform('composite',T1,T2,…,TL)
T = maketform('composite', [T1 T2…]TL])
描述
创建多维空间转换结构T
= maketform(仿射,一个
)T
对于n维仿射变换。一个
是一个非奇异实(N+1) × (N+1)或(N+1) × N矩阵。如果一个
是(N+1)-by-(N+1),一个
必须[0 (N, 1); 1]
.否则,一个
自动增广,使其最后一列为[0 (N, 1); 1]
.矩阵一个
定义前向转换,如下所示tformfwd (U, T)
,在那里U
是一个1 × n向量,返回一个1 × n向量X
,以致于X = u * a (1: n,1: n) + a (n +1,1: n)
.T
既有正变换也有逆变换。
空间转换结构(称为空间转换结构)TFORM
结构),该结构可以与tformfwd
,tforminv
,fliptform
,imtransform
,或tformarray
功能。
创建自定义T
= maketform(“自定义”,NDIMS_IN, NDIMS_OUT
,FORWARD_FCN, INVERSE_FCN
,TDATA
)TFORM
结构体T
基于用户提供的函数句柄和参数。NDIMS_IN
而且NDIMS_OUT
是输入和输出维数。FORWARD_FCN
而且INVERSE_FCN
是正向和逆函数的函数句柄。forward函数必须支持以下语法:万博1manbetxX = forward_fcn (u, t)
.逆函数必须支持以下语法:万博1manbetxU = inverse_fcn (x, t)
.在这些语法中,U
是一个P
——- - - - - -NDIMS_IN
矩阵,它的行是变换输入空间中的点。X
是一个P
——- - - - - -NDIMS_OUT
矩阵,它的行是变换输出空间中的点。的TDATA
参数可以是任何MATLAB®数组,通常用于存储自定义转换的参数。它可以被FORWARD_FCN
而且INVERSE_FCN
通过tdata
领域的T
.要么FORWARD_FCN
或INVERSE_FCN
可以是空的,虽然至少INVERSE_FCN
必须定义才能使用T
与tformarray
或imtransform
.
或T
= maketform(“盒子”,tsize
,低,高
)T = maketform('box',INBOUNDS, OUTBOUNDS)
建立一个n维仿射TFORM
结构体T
.的tsize
参数是一个n元正整数向量。低
而且高
也是n元向量。转换映射由对角定义的输入框(1, N)
而且tsize
,或通过拐角:发边线球的(1)
而且入站(2)
,到由对角定义的输出框低
而且高
或:禁止击球区(1)
而且:禁止击球区(2)
.低(K)
而且高(K)
必须不同,除非tsize (K)
为1,则假设沿k维的仿射尺度因子为1.0。同样的,发边线球的(K)
而且发边线球的(2 K)
必须不同,除非禁止击球区(K)
而且禁止击球区(2 K)
是相同的,反之亦然。的“盒子”
TFORM
通常用于将图像或数组的行下标和列下标注册到某个世界坐标系统。
或T
= maketform(“复合”,T1, T2,…,TL
)T = maketform('composite', [T1 T2…]TL])
构建一个TFORM
结构体T
的正函数和逆函数是哪个的正函数和逆函数的复合函数T1, t2,…, TL
.
输入T1, t2,…, TL
的顺序与使用函数组合的标准符号时一样:T = t1
T2
...
TL
还要注意复合是结合律,而不是交换律。这意味着应用T
对于输入U
,必须申请TL
第一次和T1
最后的因此,如果L = 3
例如,那么tformfwd (U, T)
和tformfwd (tformfwd (tformfwd (U, T3), T2), T1)
.的组件T1
通过TL
必须在输入和输出维度的数量方面兼容。T
只有当所有组件转换都已定义正向转换函数时,才具有已定义的正向转换函数。T
只有当所有的分量函数都定义了反变换函数时,才有一个定义好的反变换函数。
例子
输入参数
输出参数
提示
对于3 × 2矩阵,仿射变换或射影变换也可以这样表示
一个
:[x y]' = a ' * [u v 1] '
或者,像这个3 × 3矩阵的方程
一个
:[x y 1]' = a ' * [u v 1]'