Noise Filtering Using €1 Filter (2020)
jaantollander.com
jaantollander.com
This is an exponential moving average aka first order average and has been used for decades. It's introductory material in any DSP class.
There are multiple varying derivations of the coefficients that have different meanings, the best one for this example would be as an approximation of an N-point moving average (derivation of that is an exercise to the reader, but it's like five minutes of whiteboarding)
https://academia.stackexchange.com/questions/9602/rediscover...
Adding a βX_{i-2} term allows for a filter with sharper cutoff, but makes determining the parameters more difficult.
The Z-transform is helpful here:
There's also another nice page with explanation on how to tune the parameters [2] and there's a great visual with your mouse [3].
[1] https://github.com/Valkirie/HandheldCompanion
It makes a sort of rational sense, at least to me.
The ‘1€’ name is an homage to the $1 recognizer [10]: we believe
that the 1€ filter can make filtering input signals simpler and
better, much like the $1 recognizer did for gestures
https://dl.acm.org/doi/10.1145%2F2207676.2208639?cid=8110016...[1] https://www.microsoft.com/en-us/research/wp-content/uploads/...
[2] https://depts.washington.edu/acelab/proj/dollar/index.html
Edit: nvm, just realized they included the VAT
Edit: > It's because the algorithm is easy to implement and efficient in terms of compute usage to match a gesture. It's a "cheap and easy" recognizer, a $1 recognizer.