主要内容

fitgeotrans

拟合几何变换到控制点对

描述

例子

tform= fitgeotrans (movingPoints定点transformationType取控制点对,movingPoints定点,并利用它们来推断出指定的几何变换transformationType

tform= fitgeotrans (movingPoints定点,多项式,学位符合一个PolynomialTransformation2D对象来控制点对movingPoints定点.指定多项式变换的次数学位,可以是2、3或4。

tform= fitgeotrans (movingPoints定点, ' pwl ')符合一个PiecewiseLinearTransformation2D对象来控制点对movingPoints定点.这种变换通过将平面分割成局部分段线性区域来映射控制点。不同的仿射变换映射每个局部区域的控制点。

tform= fitgeotrans (movingPoints定点“lwm”,n符合一个LocalWeightedMeanTransformation2D对象来控制点对movingPoints定点.局部加权平均变换通过在每个控制点使用相邻控制点推断多项式来创建一个映射。任何位置的映射都依赖于这些多项式的加权平均值。的n最接近的点被用来推断一个二次多项式变换为每个控制点对。

例子

全部折叠

这个例子展示了如何创建一个可以用来对齐两个图像的几何变换。

创建一个棋盘图像并旋转它来创建一个不对齐的图像。

I =棋盘(40);J = imrotate(我,30);imshowpair (I, J,“蒙太奇”

图中包含一个轴对象。axis对象包含一个image类型的对象。

在固定图像(棋盘格)和移动图像(旋转的棋盘格)上定义一些匹配控制点。您可以使用控制点选择工具交互式地定义点。

fixedPoints = [41 41;281 161);movingPoints = [56 175;324 160);

创建可用于对齐两个图像的几何变换,返回为affine2d几何变换对象。

tform = fitgeotrans (movingPoints定点,“NonreflectiveSimilarity”
tform = affine2d with properties: T: [3x3 double]维数:2

使用tform估计重新采样旋转后的图像,将其与固定图像配准。假彩色叠加图像中的颜色区域(绿色和品红)表明配准错误。这个错误是由于控制点缺乏精确的对应。

tform Jregistered = imwarp (J,“OutputView”imref2d(大小(I)));图imshowpair(我Jregistered)

图中包含一个轴对象。axis对象包含一个image类型的对象。

通过检查平行于x轴的单位矢量如何旋转和拉伸来恢复变换的角度和比例。

U = [0 1];V = [0 0];[x, y] = transformPointsForward(tform, u, v); / /修改变量Dx = x(2) - x(1)Dy = y(2) - y(1);角= (180/)* atan2(dy, dx)
角= 29.7686
比例= 1 /√(dx^2 + dy^2)
规模= 1.0003

输入参数

全部折叠

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

例子:movepoints = [11 11;41 71];

数据类型:|

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

例子:fixedPoints = [14 44;70 81);

数据类型:|

转换类型,指定为以下类型之一:“nonreflectivesimilarity”“相似”仿射的,或“射影”.有关更多信息,请参见转换类型

数据类型:字符|字符串

多项式的次数,指定为整数2、3或4

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

在局部加权平均计算中使用的点数,指定为正整数。n可以小到6个,但制作呢n产生病态多项式的小风险。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部折叠

转换,作为转换对象返回。对象的类型取决于转换类型。例如,如果您指定转换类型仿射的,然后tform是一个affine2d对象。如果您指定“pwl”,然后tform是一个image.geotrans.PiecewiseLinearTransformation2d对象。

更多关于

全部折叠

转换类型

该表列出了支持的所有转换类型金宝appfitgeotrans按复杂度排序。

转换类型

描述 控制点对的最小数目 例子
“nonreflectivesimilarity” 当移动图像中的形状没有改变,但图像由于平移、旋转和缩放的组合而变形时,使用此转换。直线保持直线,平行线保持平行。 2

“相似” 一样“nonreflectivesimilarity”加上可选的反射。 3.

仿射的 当移动图像中的形状显示剪切时使用此转换。直线保持直线,平行线保持平行,但是矩形变成了平行四边形。 3.

“射影” 当场景倾斜时使用这个变换。直线保持直线,而平行线则收敛于消失点。 4

多项式的 当图像中的物体是弯曲的时候使用这个变换。多项式的阶数越高,拟合效果越好,但结果可能包含比固定图像更多的曲线。

6订单(2)

10(3阶)

15(4)顺序

“pwl” 使用这种变换(分段线性),当部分图像出现不同的扭曲。 4

“lwm” 当失真局部变化且分段线性不够时,可以使用这种变换(局部加权平均)。 6(12推荐)

参考文献

[1] Goshtasby, Ardeshir,“用于图像配准的分段线性映射函数”模式识别, 1986年第19卷,第459-466页。

[2] Goshtasby, Ardeshir,“通过局部近似方法进行图像配准”图像及视觉计算,第6卷,1988年,页255-261。

扩展功能

介绍了R2013b