I am trying to design a low pass filter for smoothing a sequence of Euler rotations I have stored. However the low pass filter I am using produces a smoothed set of rotations but the forward vector sometimes flips around violently (takes the long-way round).

I was wondering how to implement a low pass filter with Quaternion or Euler sequences such that it can smooth high frequencies while preserving transients such as sharp turns or hard stops.

My understanding is that Lerp and Slerp are unbiased in the sense that they will smooth any sharp transition regardless if it has a frequency component or is just a fast change.

Is it possible to design low pass filter for 3d rotations using Lerp or Slerp that allows specifying a cutoff frequency with a decent frequency response?

Thanks!