» Fighting Noise with the 1€ Filter
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Fighting Noise with the 1€ Filter


here is a supasmall thing. But it can be supausefull. So i thought you should know rightaway: We're all familiar with noisy signals coming from sensors and the simplest thing in vvvv to do to calm such a signal always was to use a Damper (Animation). But of course that introduces a lag, which is sometimes unwanted.

Enter the 1€ Filter: A Simple Speed-based Low-pass Filter for Noisy Input in Interactive Systems
All credits to its creators: Géry Casiez, Nicolas Roussel, Daniel Vogel and Mitsuru Furuta from which we borrowed the C# implementation.

Available now with more details in the helppatch in the latest alpha.

joreg, Thursday, Dec 4th 2014 Digg | Tweet | Delicious 13 comments  
vux 04/12/2014 - 22:37

Does it fix ui lag too? ;)

mrboni 04/12/2014 - 23:52

excellent. thank you

mediadog 13/12/2014 - 03:29

I've been using this filter for a while to filter head tracking data for VR (got it off the VRGeeks list), but never made it into a proper plugin because it is stateful, and couldn't decide how best to handle that in the case of changing spreads. Does this implementation handle spreads, and if so what happens if the spread count changes?

joreg 13/12/2014 - 13:10

well, it behaves like all the other filters (linear, damper, oscillator) do.

mediadog 13/12/2014 - 22:35

To clarify, that behavior is to always use the slice history, regardless of slice count changes, yes? I tried making wrappers that bang a reset when the spread count changes, but that is still not great.

I've been thinking it would be helpful for all of those animation filter nodes to have a version that took a spread of IDs as well to maintain behavior, since in tracking applications you frequently do have an ID associated with the data. That way the correct history would apply wherever in the spread the data moved to. One of these days...

joreg 13/12/2014 - 23:03

yes. and see here for a discussion on the topic: damper-issues-when-spread-count-changes

sebl 13/12/2014 - 23:05

@mediadog hehe, i had the exact same idea some days ago. maybe some clever id-creation nodes can make such ID-ized nodes even more multipurpose

elliotwoods 11/02/2015 - 03:21

this is amazing news!
is it using some kind of Kalman based approach?

joreg 11/02/2015 - 13:46

in their paper they argue how that outsmarts kalman: http://www.lifl.fr/~casiez/publications/CHI2012-casiez.pdf

Mooney 23/02/2015 - 18:03

Hey guys.
This seems like exactly what I need right now, but I can't seem to find it anywhere in the alpha pack?
Am I missing something obvious?

joreg 23/02/2015 - 18:14

@mooney it already comes with the latest regular download now. no more alpha needed.

Mooney 23/02/2015 - 19:00

Hey, thanks for the reply.
I actually came across this a while ago, re downloaded the add on pack to make sure. Still couldn't find it. Kind of forgot about then and tried to make a work around.
Any chance you have the file path to where it should be?

joreg 23/02/2015 - 20:05

i am not sure why you ask about a filepath.. just doubleclick in a patch to popup the nodebrowser and type "oneeuro.." to make it come up. if it does not show up like this you are not running the latest version of vvvv.

in case you're asking for the source, it is here: https://github.com/vvvv/vvvv-sdk/blob/develop/vvvv45/src/nodes/plugins/Animation/OneEuroFilter/OneEuroFilterNode.cs

  • 1

anonymous user login


~53min ago

mediadog: FYI VC redist 2008 links bad in 38.1 installer and on web page

~1d ago

joreg: Reminder: Intro workshop to the all-new vvvv this Tuesday before the #vvvv meetup in #berlin. Signup here: https://nodeforum.org/announcements/2020-series-of-2h-introduction-workshops-to-vvvv-gamma/

~2d ago

~2d ago

tonfilm: Creative coder wanted: https://discourse.vvvv.org/t/creativvvve-coder-in-residence-2020/18283 vvvv visualprogramming #creativecoding #xenko #dotnet #berlin #internship #residency

~3d ago

metrowave: Collection of replicable research: http://www.replicabilitystamp.org/

~3d ago

~7d ago

joreg: @ravazquez always trying to diversivvvvy...

~7d ago

ravazquez: I did not know you were making plates as well: http://www.clairewan.com/

~11d ago

evvvvil: "Pounding Aldebaran" raymarching shader live coded on Twitch. https://www.shadertoy.com/view/tt3SWB

~12d ago