从 FFT 图像中查找频率

Find frequency from FFT Image

提问人:Vincenzo La Forgia 提问时间:7/10/2023 更新时间:7/18/2023 访问量:85

问:

我有下图,我想计算图中光气流的周期性,有人建议我使用傅里叶变换。我计算了功率谱,但后来我无法继续。我在 Halcon 工作,这是我必须分析的图像

这是使用的代码

get_image_size (img, Width, Height)
median_rect (img, ImageMedian, 5, Height -1)
sub_image (img,ImageMedian,ImageSub, 1.0, 128)
fft_generic (ImageSub, ImageFFT, 'to_freq', -1, 'sqrt', 'dc_center', 'complex')
power_real(ImageFFT, ImageResult)

我需要关于如何继续的建议,不仅要继续编写代码,还要继续想法。

图像处理 FFT 频率分析 HALCON

评论


答:

1赞 Vladimir Perković 7/18/2023 #1

我认为这里不需要 FFT。只需使用灰色投影并找到峰值即可。在代码中,有一个覆盖所有峰值的掩码。在那之后,它应该很容易:

read_image (Image, 'C:/Users/Perkovic/Desktop/JL9Wj.png')
gray_projections (Image, Image, 'simple', HorProjection, VertProjection)
create_funct_1d_array (HorProjection, Function)
smooth_funct_1d_mean (Function, 9, 3, SmoothedFunction)
funct_1d_to_pairs (SmoothedFunction, XValues, Signal)

tuple_median (Signal, Median)
tuple_deviation (Signal, Deviation)
Mask:=Signal[>]Median+Deviation

enter image description here