bin+lib imagezero-sys

Rust wrapper for imagezero (losless image compression algorithm) used i.e. in robotics.

1 unstable release

0.1.1 Feb 19, 2023

#177 in Robotics

Apache-2.0

24KB
690 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

~5.5–8MB
~122K SLoC