Crates.io | discrete_transforms |
lib.rs | discrete_transforms |
version | 0.1.3 |
source | src |
created_at | 2019-01-22 19:01:03.979089 |
updated_at | 2019-03-21 18:59:17.947889 |
description | Library for Discrete Transforms |
homepage | https://github.com/hgallagher1993/discrete_transforms |
repository | https://github.com/hgallagher1993/discrete_transforms |
max_upload_size | |
id | 110062 |
size | 19,877 |
use discrete_transforms::*
1D DCT
let forward = dct_1d::forward(&Vec<f64>)
let inverse = dct_1d::inverse(&Vec<f64>)
1D Haar
let forward = haar_1d::forward(&Vec<f64>)
let inverse = haar_1d::inverse(&Vec<f64>)
2D Transforms, create a Transform
object and add in the transform you want
let dct_forward = Transform::new(input, TransformType::DctForward).transform();
let dct_inverse = Transform::new(input, TransformType::DctInverse).transform();
let haar_forward = Transform::new(input, TransformType::HaarForward).transform();
let haar_inverse = Transform::new(input, TransformType::HaarInverse).transform();
2D Transforms only work on 8x8 blocks, block size should be user defined.
1D and 2D Haar transforms default to a step size of 3
This needs to be read and changes made based on it https://rust-lang-nursery.github.io/api-guidelines/about.html
And many more problems, no doubt...
This is a learning project as much as anything so things will change a lot :-)