image-sieve
rawloader
Our great sponsors
image-sieve | rawloader | |
---|---|---|
2 | 3 | |
116 | 293 | |
- | - | |
6.7 | 5.4 | |
6 months ago | 20 days ago | |
Rust | Rust | |
GNU General Public License v3.0 only | GNU Lesser General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
image-sieve
rawloader
-
Announcing: ImageSieve, a tool to assist in sorting and archiving images and videos
I absolutely loved all the crates available that made my life very simple in many cases. I used (among others) the slint ui framework, kamadak-exif, img_hash, fast_image_resize and rawloader.
-
QOI: Lossless Image Compression in O(n) Time
The simplest form is just to pack 10 or 12 bit values. There's all kinds of variations of that:
https://github.com/pedrocr/rawloader/blob/a59bb78d156277781a...
There are a few formats that use a curve and less bits. They do become lossy and doing dithering on decompress is useful to avoid banding.
The Nikon one you mention was only used very early and is decoded by decode_8bit_wtable() in that file. It's just looking up the 8 bit value in the table and then adding some randomness to prevent the banding.
What are some alternatives?
fast_image_resize - Rust library for fast image resizing with using of SIMD instructions.
dnglab - Camera RAW to DNG file format converter
exif-rs - Exif parsing library written in pure Rust
annatar - The Lord of Gifs! ...Hahahaha shut up.
rawspeed - fast raw decoding library
cargo-ui - GUI for Cargo
slint - Slint is a declarative GUI toolkit to build native user interfaces for Rust, C++, or JavaScript apps.
qoi - A rust implementation of the “Quite OK Image” format for fast, lossless image compression
flutter_rust_bridge - Flutter/Dart <-> Rust binding generator, feature-rich, but seamless and simple.
msgpack-rust - MessagePack implementation for Rust / msgpack.org[Rust]