kneed
This is a pure rust implementation of Knee-point detection.
The code here aims to be a 1:1 match of kneed.
Usage
General usage:
// Provide your x: Vec<f64> and y: Vec<f64>
let x = ;
let y = ;
let params = new;
// Instantiate KneeLocator
let kl = new;
// After instantiation, you can invoke the following:
// kl.knee
// kl.knee_y
// kl.norm_knee
// kl.norm_knee_y
// kl.elbow()
// kl.norm_elbow()
// kl.elbow_y()
// kl.norm_elbow_y()
// kl.all_elbows()
// kl.all_norm_elbows()
// kl.all_elbows_y()
// kl.all_norm_elbows_y()
Example from the paper:
let = figure2;
let params = new;
let kneedle = new;
assert_relative_eq!;
assert_relative_eq!;
Credits
All credit for the python implementation goes to Kevin Arvai.