我正在尝试将高通滤波器应用于由从黑白图像中提取的 1 像素宽的线组成的信号(列或行向量)。我知道图像的分辨率(res
在下面的代码中,以毫米/像素给出)。如何在 MATLAB 中过滤这些线数据以丢弃某些低频(波纹)或大波长,例如 >10 毫米,使用巴特沃斯滤波器或任何其他?
线数据不以零为中心。
Fs = 1; % I do not know if this assumption is correct for the image.
Fn = Fs/2; % Nyquist frequency.
lambda = 10; % Cut-off wavelength in mm, given.
samples_in_lambda = lambda/res; % divide by resolution to get samples.
fc = 1/samples_in_lambda; % Cut-off frequency from lambda.
我试过了 :[z, p, k] = butter(9, fc/fn, 'high'); % I see the filter is high pass on plotting.
我可以使用上述给定值和假设值过滤线路数据吗?如果没有,有没有办法可以使用截止波长过滤数据?