Image processing 基于FFT的模板匹配

Image processing 基于FFT的模板匹配,image-processing,fft,frequency,template-matching,Image Processing,Fft,Frequency,Template Matching,有人能解释一下如何使用FFT进行模板匹配吗。模板比原始图像小。 1.它在任何地方都声明模板必须用零填充。它是如何做到的。它是添加到图像的底部和右侧,还是在整个图像的周围添加 提前感谢。冈萨雷斯和伍兹的第3章和第4章“数字图像处理”应该可以帮助您更好地理解该理论 您需要在图像和模板之间执行关联。在某些情况下,在频域(使用FFT)中执行此相关可能更有效,而在其他情况下,您可能希望在空间域中执行此操作 一些软件系统使这种选择对用户透明。例如,请参见Mathematica()中的函数ImageCorre

有人能解释一下如何使用FFT进行模板匹配吗。模板比原始图像小。 1.它在任何地方都声明模板必须用零填充。它是如何做到的。它是添加到图像的底部和右侧,还是在整个图像的周围添加


提前感谢。

冈萨雷斯和伍兹的第3章和第4章“数字图像处理”应该可以帮助您更好地理解该理论

您需要在图像和模板之间执行关联。在某些情况下,在频域(使用FFT)中执行此相关可能更有效,而在其他情况下,您可能希望在空间域中执行此操作


一些软件系统使这种选择对用户透明。例如,请参见Mathematica()中的函数
ImageCorrelate

冈萨雷斯和伍兹的第3章和第4章“数字图像处理”应该可以帮助您更好地理解该理论

您需要在图像和模板之间执行关联。在某些情况下,在频域(使用FFT)中执行此相关可能更有效,而在其他情况下,您可能希望在空间域中执行此操作


一些软件系统使这种选择对用户透明。例如,请参见Mathematica()中的函数
ImageCorrelate

这里有一个,它回答了您的问题和一系列相关的权衡。

这里有一个,它回答了您的问题和一系列相关的权衡。

您正在使用傅里叶变换来计算互相关;就这么简单

填充是围绕模板的所有边执行的。这是因为标准的快速傅里叶变换只能对大小为2^n的数据进行操作,因此模板和图像的大小必须为2^n*2^n。由于模板通常不是这样,因此通过在外部填充零来调整模板的大小以满足此要求。这些零对FFT计算没有影响


考虑使用相位相关,额外的工作量非常小,并且可以得到很好的结果。

您正在使用傅里叶变换来计算互相关;就这么简单

填充是围绕模板的所有边执行的。这是因为标准的快速傅里叶变换只能对大小为2^n的数据进行操作,因此模板和图像的大小必须为2^n*2^n。由于模板通常不是这样,因此通过在外部填充零来调整模板的大小以满足此要求。这些零对FFT计算没有影响


考虑使用相位相关,额外的工作量非常小,您可以获得很好的结果。

我不得不编辑我的答案;图像填充可用于插值相关结果,这是另一个问题。通常,当匹配一个较小的模板到一个图像时,模板被填充,图像不需要填充;图像填充可用于插值相关结果,这是另一个问题。通常,在将较小的模板与图像匹配时,会填充模板,而不需要填充图像。