This crate is an exposure stacking implementation for astrophotography. Here you can find a blog post explaining what this repository is about exactly.
This package primarily relies on opencv
to read/write and process images.
- @SirBubbls
By default no non-free algorithms are used. You can choose to enable those with the feature
opencvx
(~cargo build –features=”opencvx”~).
- Install Rust as you normally would (via
rustup
) - Install the
opencv-dev
package on your system (guide can be found here Opencv Bindings for Rust) - Build the project with
cargo build
You can just compile and run this program with:
cargo run -- -i "GLOB_IMAGES" -o "output.png"
The repository comes with 3 example datasets you can try out right away.
Because they are rather big (around 1 GB) you need to pull them manually with git lfs fetch --all
assuming you already have Git LFS installed.
To run the examples you can just run:
cargo run -- --input="./datasets/horizontal/*.png" -o "example-horizontal.png" --precision 3
cargo run -- --input="./datasets/vertical_full_size/*.png" -o "example-vertical-fs.png" --precision 3.5
Because of the small image size in the last example we need to adjust the threshold
for star detection and the precision
for mapping.
cargo run -- --input="./datasets/vertical_small_size/*.png" -o "example-vertical-ss.png" --precision 15 --threshold 4