MichaelMauderer / one-euro-rs

Rust implementation of the One Euro Filter.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

One Euro Filter

A fast and simple signal filter based on the work of Géry Casiez, Nicolas and Daniel Vogel. The original research paper describing the algorithm can be found in the ACM digital library (paywalled) and further information, as well as other implementations, are available on the original author's website.

Example

use one_euro_rs::OneEuroFilter;

// Set up the filter.
let frequency = 120.0;
let cutoff_min = 1.0;
let cutoff_d = 1.0;
let beta = 1.0;

let mut one_euro = OneEuroFilter::new(frequency, cutoff_min, cutoff_d, beta);

// Process some values.
one_euro.filter(1.0);
one_euro.filter(1.1);
one_euro.filter(0.9);
one_euro.filter(99999.9);
one_euro.filter(1.01);
one_euro.filter(1.04);
one_euro.filter(0.00);

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

About

Rust implementation of the One Euro Filter.

License:MIT License


Languages

Language:Rust 100.0%