#image-compression #compression #image

no-std bin+lib imagezero

Pure Rust implementation of the imagezero (losless image compression algorithm) used i.e. in robotics.

2 releases

0.0.1 Feb 19, 2023
0.0.0 Jan 14, 2021

#47 in #image-compression

Apache-2.0

8KB
57 lines

imagezero

Apache licensed Actions Status

Pure Rust implementation of the imagezero (losless image compression algorithm) used i.e. in robotics.

Resources

Documentation

Read the detailed documentation here

imagezero-rs

Pure Rust implementation with NEON64 optimizations. Includes a commandline example.

imagezero-sys

Rust wrapper for the C++ implementation.

testing

Benchmark for checking the speed of the different implmentations.

cargo test
cargo bench

testing/images

Here the test images should reside.

Build

For building and running the tests (also does a check against the cpp implementation)

cargo test
cargo bench

If you would like to build/test the commandline utils (you have to checkout the cpp submodule)

cd imagezero-sys/imagezero-cpp
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make

cd imagezero-sys
cargo build --release

cd testing/image
./check.sh

ToDo

  • imagezero algorithm in Rust
  • create benchmarks
  • ARM64 optimizations
  • VHDL compression
  • Stereo Cam for ROS2

Done

  • test imagezero-sys against cpp
  • create imagezero-sys with Rust commandline program
  • reserve name on crates.io

License

Apache License, Version 2.0

Dependencies

~6MB
~76K SLoC