当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cucim.skimage.transform.ProjectiveTransform.estimate用法及代码示例


用法:

estimate(src, dst)

从一组对应点估计变换。

您可以使用总least-squares 方法确定过、井和under-determined 参数。

源坐标和目标坐标的数量必须匹配。

转换定义为:

X = (a0*x + a1*y + a2) / (c0*x + c1*y + 1)
Y = (b0*x + b1*y + b2) / (c0*x + c1*y + 1)

这些方程可以转换为以下形式:

0 = a0*x + a1*y + a2 - c0*x*X - c1*y*X - X
0 = b0*x + b1*y + b2 - c0*x*Y - c1*y*Y - Y

每组对应点都存在,所以我们有一组 N * 2 个方程。系数呈线性出现,因此我们可以写成 A x = 0,其中:

A   = [[x y 1 0 0 0 -x*X -y*X -X]
       [0 0 0 x y 1 -x*Y -y*Y -Y]
        ...
        ...
      ]
x.T = [a0 a1 a2 b0 b1 b2 c0 c1 c3]

在总least-squares 的情况下,这个齐次方程组的解是 A 的右奇异向量,它对应于由系数 c3 规范的最小奇异值。

在仿射变换的情况下,系数 c0 和 c1 为 0。因此方程组为:

A   = [[x y 1 0 0 0 -X]
       [0 0 0 x y 1 -Y]
        ...
        ...
      ]
x.T = [a0 a1 a2 b0 b1 b2 c3]

参数

src(N, 2) 数组

源坐标。

dst(N, 2) 数组

目的地坐标。

返回

successbool

是的,如果模型估计成功。

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cucim.skimage.transform.ProjectiveTransform.estimate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。