filtered output signal gives high values at the ends when using lowpass function

8 vues (au cours des 30 derniers jours)
After filtering a data signal using the lowpass function in Maltab, the ends of the output signal gives very high values like in the figure below. How should I deal with this?
Light blue is the original data and light green is after the filtering using lowpass function. This also happens when using filter function.

Réponse acceptée

Star Strider
Star Strider le 10 Mai 2020
Filter transients such as those can occasionally occur with any filtering algorithm (and both hardware and digital filters), especially if the signal has abrupt ‘step’ transitions at the ends.
The easiest way to deal with it is to first subtract the mean of the signal from the rest of the signal, filter the signal, then add back the mean to the filtered signal. Another way to deal with it is to pad it at both ends with a vector of ones that is equivalent to the mean of the signal, then use indexing to elimiinate those elements from the ends of the filtered signal. Subtracting the mean and adding it back later is easier.
  4 commentaires
Dhanushka Palipana
Dhanushka Palipana le 10 Mai 2020
Great. Thank you very much. I'll do so.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by