#color #quantization #reduce #dekker #neuquant #anthony #quantizer

color_quant

Color quantization library to reduce n colors to 256 colors

3 stable releases

Uses old Rust 2015

1.1.0 Oct 9, 2020
1.0.1 Jun 13, 2018
1.0.0 May 29, 2015

#300 in Images

Download history 127499/week @ 2023-12-23 222184/week @ 2023-12-30 267112/week @ 2024-01-06 231930/week @ 2024-01-13 234646/week @ 2024-01-20 243939/week @ 2024-01-27 262072/week @ 2024-02-03 279504/week @ 2024-02-10 255962/week @ 2024-02-17 287142/week @ 2024-02-24 278023/week @ 2024-03-02 272454/week @ 2024-03-09 275014/week @ 2024-03-16 278481/week @ 2024-03-23 274512/week @ 2024-03-30 199202/week @ 2024-04-06

1,067,409 downloads per month
Used in 3,552 crates (16 directly)

MIT license

19KB
345 lines

Color quantization library

This library provides a color quantizer based on the NEUQUANT quantization algorithm by Anthony Dekker.

Usage

let data = vec![0; 40];
let nq = color_quant::NeuQuant::new(10, 256, &data);
let indixes: Vec<u8> = data.chunks(4).map(|pix| nq.index_of(pix) as u8).collect();
let color_map = nq.color_map_rgba();

lib.rs:

Color quantization library

This library provides a color quantizer based on the NEUQUANT

Original literature: Dekker, A. H. (1994). Kohonen neural networks for optimal colour quantization. Network: Computation in Neural Systems, 5(3), 351-367. doi: 10.1088/0954-898X_5_3_003

See also https://scientificgems.wordpress.com/stuff/neuquant-fast-high-quality-image-quantization/

Usage

let data = vec![0; 40];
let nq = color_quant::NeuQuant::new(10, 256, &data);
let indixes: Vec<u8> = data.chunks(4).map(|pix| nq.index_of(pix) as u8).collect();
let color_map = nq.color_map_rgba();

No runtime deps