Scalet
scalet is a Continuous Wavelet Transform (CWT) library written in Rust, focused on
speed, numerical robustness, and high-quality visualization.
It provides fast CWT execution for f32 and f64, multiple wavelet types, flexible scale generation.
Example
let cwt = Scalet::make_cwt_f32(
Arc::new(MorletWavelet::new(13.4)),
signal.len(),
CwtOptions {
l1_norm: true,
..Default::default()
},
)?;
let cwt_result = cwt.execute(&signal)?;
use spectrograph::{Normalizer, SpectrographOptions, rgb_spectrograph_color_f32, SpectrographFrame};
let scalogram = rgb_spectrograph_color_f32(&SpectrographFrame {
data: std::borrow::Cow::Borrowed(cwt_result.data.borrow()),
width: cwt_result.width,
height: cwt_result.height,
}, SpectrographOptions {
out_width: 1920,
out_height: 1080,
normalizer: Normalizer::PowerSqrt,
colormap: spectrograph::Colormap::Turbo,
})?;
This project is licensed under either of
- BSD-3-Clause License (see LICENSE)
- Apache License, Version 2.0 (see LICENSE)
at your option.