bioleptic-js
v0.1.0
Published
Biosignals compression
Maintainers
Readme
Bioleptic
Wavelet-based signal compression for physiological data (ECG, PPG, accelerometry).
Algorithm
- Non-finite substitution (
NaN→ 0,±inf→ 0/1) - Mean-centering + range normalization
- Multi-level DWT (CDF 5/3 or CDF 9/7, 5 levels)
- Quantization to
i16with configurable scale - Detail coefficient thresholding
- Entropy coding with deflate
Rust
let compressed = compress(&signal, CompressionOptions::default())?;
let recovered = decompress(&compressed)?;Python
pip install biolepticfrom bioleptic import compress_signal, decompress_signal, BiolpCompressionOptions
compressed = compress_signal(signal, BiolpCompressionOptions("cdf97", 11, "low"))
recovered = decompress_signal(compressed)JavaScript
npm install biolepticimport init, {compress_signal, decompress_signal} from "bioleptic";
await init();
const signal = new Float32Array([...]);
const options = new BiolpCompressionOptions(
BiolpCompressionMethod.Cdf97,
BiolpQuantizationScale.S11,
BiolpCutoffLevel.Medium,
);
const compressed = compress_signal(signal, options); // Uint8Array
const recovered = decompress_signal(compressed); // Float32ArrayThis project is licensed under either of
at your option.
