主要内容

fitgeotrans

拟合几何变换到控制点对

描述

例子

tform= fitgeokotrans(movingPoints固定点transformationType取控制点对,movingPoints固定点,并使用它们来推断由此指定的几何变换transformationType

tform= fitgeokotrans(movingPoints固定点,多项式,程度适合A.PolynomialTransformation2D对象到控制点对movingPoints固定点.指定多项式变换的程度程度,可以是2、3或4。

tform= fitgeokotrans(movingPoints固定点,'pwl')适合A.PiecewiseLinearTransformation2D对象到控制点对movingPoints固定点.这种转换通过将平面分解成局部分段线性区域来映射控制点。不同的仿射变换在每个局部区域映射控制点。

tform= fitgeokotrans(movingPoints固定点,'lwm',N.适合A.LocalWeightedMeanTransformation2D对象到控制点对movingPoints固定点.局部加权平均转换通过使用相邻控制点推断在每个控制点处的多项式来创建映射。任何位置的映射取决于这些多项式的加权平均值。这N.最接近点用于推断每个控制点对的二次多项式变换。

例子

全部折叠

此示例显示如何创建可用于对齐两个图像的几何变换。

创建棋盘映像并将其旋转以创建未对齐的图像。

I =棋盘(40);J = imrotate(我,30);imshowpair (I, J,'剪辑'

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

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

固定点= [41 41;281 161];移动点= [56 175;324 160];

创建一个几何变换,可用于对齐返回为Affine2d.几何变换对象。

tform = fitgeokotrans(移动点,固定点,'非反应期相似'
TForm =带有属性的仿射2D:T:[3x3双]维度:2

使用tform估计重新采样旋转图像以将其注册到固定图像。假彩色叠加图像中的颜色(绿色和洋红色)区域表示注册中的错误。此错误来自控制点中缺乏精确的对应关系。

JREGISTED = IMWARP(J,TForm,“OutputView”,imref2d(大小(i)));图imshowpair(我,jregistered)

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

通过检查平行于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.
scale = 1 / sqrt(dx ^ 2 + dy ^ 2)
规模= 1.0003

输入参数

全部折叠

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

例子:移动点= [11 11;41 71];

数据类型:|单身的

X- - -y-固定图像中控制点的坐标,指定为m- 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目的。

更多关于

全部折叠

转换类型

表列出了所有支持的转换类型万博1manbetxfitgeotrans按复杂性的顺序。

转换类型

描述 最小控制点对数 例子
“nonreflectivesimilarity” 当运动图像中的形状未改变时,使用此转换,但图像因转换,旋转和缩放的某种组合而扭曲。直线保持直线,平行线仍然是平行的。 2

“相似” 和...一样“nonreflectivesimilarity”添加可选反射。 3.

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

'投影' 当场景倾斜时,使用此转换。直线保持直线,但平行线会聚朝向消失点。 4.

多项式的 当图像中的对象弯曲时,使用此转换。多项式的顺序越高,拟合越好,但结果可以包含比固定图像更多的曲线。

6(订单2)

10(订单3)

15(订单4)

'pwl' 当图像的某些部分出现不同的扭曲时,使用这种变换(分段线性)。 4.

'lwm' 当畸变局部变化且分段线性不够时,使用这种变换(局部加权平均)。 6(推荐)

参考文献

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

[2] Goshtasby, Ardeshir,“局部逼近方法配准图像,”图像和视觉计算,第6卷,1988年,第255-261页。

扩展能力

介绍了R2013b