Rust crate that exposes ToImage
trait.
It implements ToImage
for
Mat to convert it
into DynamicImage.
It also exposes ToImageUnsafe
. The rationale behind this, comes after learning
through profiling that
Mat::iter
is painfully slow. Then Mat::to_image_unsafe
is implemented using
Mat::data
accessing the raw data.
This example reads an image (examples/tinta_helada.jpg) using opencv and saves it using image API.
cargo run --release --example save_as [output_name[.jpg]=out.jpg]
When noticing that to_image
takes too much time, I profiled using perf
and
visualized it with Firefox Profiler.
Full profiling:
```
cargo build --example save_as
paranoid
kernel settingsudo perf record -g -F 999 ./target/debug/examples/save_as
sudo perf script -F +pid >save_as.perf ```
Then load it in Firefox Profiler.
References