4个版本
使用旧的Rust 2015
0.1.3 | 2019年3月21日 |
---|---|
0.1.2 | 2019年2月12日 |
0.1.1 | 2019年2月10日 |
0.1.0 | 2019年1月22日 |
#1605 in 数学
9KB
222 行
所有这些都非常过时,需要重写。
使用 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变换,创建一个Transform
对象并添加你想要的变换
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变换仅在8x8块上工作,块大小应由用户定义。
- 1D和2D Haar变换默认步长为3
- 需要根据它进行阅读和修改 https://rust-lang-nursery.github.io/api-guidelines/about.html
- 还有更多问题,毫无疑问...
这是一个学习项目,所以很多东西都会改变很多 :-)
依赖项
~615KB
~11K SLoC