主要内容

PolynomialTransformation2D

二维多项式几何变换

描述

一个PolynomialTransformation2D对象封装了一个二维多项式几何变换。

创建

您可以创建PolynomialTransformation2D对象,使用以下方法:

  • fitgeotrans函数,该函数估计映射两个图像之间控制点对的几何变换。

  • images.geotrans.PolynomialTransformation2D这里描述的函数。这个函数创建一个PolynomialTransformation2D物体使用不动点和动点的坐标,或已知的多项式系数进行正变换和逆变换。

描述

例子

tform = images.geotrans.PolynomialTransformation2D (movingPoints定点学位创建一个PolynomialTransformation2D对象,并设置学位财产。函数估计多项式系数一个B从矩阵movingPoints定点分别在移动图像和固定图像中定义匹配控制点。

tform = images.geotrans.PolynomialTransformation2D (一个b创建一个PolynomialTransformation2D对象,并设置一个B属性。

输入参数

全部展开

x- - -y-运动图像中控制点的坐标,指定为2矩阵。

数据类型:|

x- - -y-固定图像中控制点的坐标,指定为2矩阵。

数据类型:|

属性

全部展开

用于确定的多项式系数U在逆变换中,指定为n元向量。对于2 3 4次的多项式,n分别是6、10和15。

二次(2次)多项式系数向量一个订购如下:

U = a (1) + a (2)* X +(3)。* Y +(4)。* X。* Y +(5)。* X。^ 2 +(6)。* y ^ 2

立方(3次)多项式系数向量加上这些项:

...+(7)。* x ^ 2。* Y +(8)。* x * Y。^ 2 +(9)。* X。^ 3 +(10)。* y ^ 3

四次(4次)多项式系数向量加上这些项:

...+(11)。* x ^ 3。* Y +(12)。* x ^ 2。* Y。x ^ 2 +(12)。* * Y。^ 3 +(14)。* X。^ 3 +(15)。* y ^ 4

数据类型:|

用于确定的多项式系数V在逆变换中,指定为n元向量。对于2 3 4次的多项式,n分别是6、10和15。

二次(2次)多项式系数向量B订购如下:

V = b (1) + b (2)* X + B(3)。* Y + B(4)。* X。* Y + B(5)。* X。(6) ^ 2 + B。* y ^ 2

立方(3次)多项式系数向量加上这些项:

...+ B(7)。* x ^ 2。* Y + B(8)。* x * Y。(9) ^ 2 + B。* X。^ 3 + B(10)。* y ^ 3

四次(4次)多项式系数向量加上这些项:

...+ B(11)。* x ^ 3。* Y + B(12)。* x ^ 2。* Y。(12) ^ 2 + B。* x * Y。^ 3 + B(14)。* X。^ 3 + B(15)。* y ^ 4

数据类型:|

多项式变换的次数,指定为标量值23.,或4

输入和输出点的几何变换的维数,指定为值2

对象的功能

outputLimits 给定输入空间限制,求输出空间限制
transformPointsInverse 应用逆几何变换

例子

全部折叠

拟合一个二次多项式变换到一组固定和移动控制点,这些控制点实际上与一个二维仿射变换相关。

创建二维仿射变换。

θ= 10;tformAffine = affine2d([cosd(theta) -sind(theta) 0;信德(θ)cosd(θ)0;0 0 1);

任意选择六对控制点。二次多项式需要六对控制点。

fixedPoints = [10 20;10 5;2 3;0 5;5 3;-10 -20);

将前向几何变换应用于不动点的映射,得到通过几何变换关联的动点和固定点的效果。

movingPoints = transformPointsForward (tformAffine、定点);

估计第二学位PolynomialTransformation2D转换适合定点movingPoints

tformPolynomial = images.geotrans.PolynomialTransformation2D (movingPoints定点2);

检查是否合适PolynomialTransformation2D在控制点进行转换。

movingPointsEstimated = transformPointsInverse (tformPolynomial、定点);errorInFit =函数(movingPointsEstimated (: 1) -movingPoints (: 1),...movingPointsEstimated (:, 2) -movingPoints (:, 2))

更多关于

全部展开

介绍了R2013b