python 库 scikit image 有一个名为“match_template”的函数。它获取一个图像和一个子图像,并返回子图像最有可能位于主图像中的位置。
它通过一个值网格(每个值从 -1 到 1)返回此信息,表示针图像的右上角位于干草堆图像中该位置的可能性。
出于某种原因,我在输出数组中得到的值高达 3.5。没有文件提到这个事实。
有谁知道发生了什么?
python 库 scikit image 有一个名为“match_template”的函数。它获取一个图像和一个子图像,并返回子图像最有可能位于主图像中的位置。
它通过一个值网格(每个值从 -1 到 1)返回此信息,表示针图像的右上角位于干草堆图像中该位置的可能性。
出于某种原因,我在输出数组中得到的值高达 3.5。没有文件提到这个事实。
有谁知道发生了什么?
它可能与*match_template* 的实现有关(请查看文档字符串)。
他们说:
为了加快计算速度,我们使用面积求和表(又称积分图像)来快速计算循环内图像窗口的总和。此步骤依赖于以下关系:
sum{ [I(x, y) - <I>]^2 } = sum{ I^2(x, y) } - [sum{ I(x, y) }]^2 / N_x N_y
(如果没有这种关系,您需要在平方之前从图像窗口中减去每个图像窗口的平均值。)
因此,如果您的图像不符合上述关系,则可能是原因(您需要减去每个平均值)。
此问题已在最新版本的 scikit-image 中修复。