2
$\begingroup$

I am new to the stream of digital signal processing, and hence my doubt may seem extremely stupid, but: In tools such as matlab, signals are stored in a single array. If i convolute it with an LPF array, i get another array/signal, that has certain elements attenuated, can i find out which elements these are and completely remove them from the new array.

Does my question even make sense? :/

$\endgroup$
1
$\begingroup$

You mention convolution which implies that your arrays represent time domain signals. As this is digital signal processing, the time is discretized and every element of the array corresponds to a sample. Two consecutive samples have a fixed time distance, say $T$.

If you convolve the discrete time signal with the impulse response of a low-pass filter (LPF) the resulting ouput signal will be longer than the input signal, because in general, linear time-invariant (LTI) systems have a memory (length of impulse response). You cannot reduce the array length without distorting the output signal (unless you use block-wise processing with overlap-add/-save, but that's another story). So, no matter what type of filter the impulse response of your LTI system represents, you cannot just remove elements from the output array.

To find out which frequency components are attenuated by a system you should analyze its transfer function (sometimes also refered to as frequency response). The transfer function is obtained by transforming the impulse reponse into the frequency domain. A tool for doing that with DSP is the discrete Fourier transform (DFT) which almost always comes in form of its FFT implementation (Fast Fourier transform). In case that the system in question is a black box and its impulse response is unknown the frequency domain representation of input and output signal can be compared to find out what frequencies are attenuated or amplified.

$\endgroup$
1
$\begingroup$

A low-pass filter partially attenuates some array elements in the array by a precise amount. If you completely remove these attenuated array elements, you will attenuate them too much, which can lead to adding a lot more high-frequency spectrum to your original signal than removal.

Removing a single element is the equivalent to adding a sharp glitch of the same magnitude but opposite phase. A sharp glitch usually contains a lot of high-frequency noise. So what a low pass filter does usually looks like smoothing multiple elements, some elements attenuated, some elements amplified. Not a point removal.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.