machine-vision-formats

Crates.iomachine-vision-formats
lib.rsmachine-vision-formats
version0.1.3
sourcesrc
created_at2021-05-29 22:25:53.366072
updated_at2024-11-01 17:26:15.017409
descriptionTypes and traits for working with raw image data from machine vision cameras
homepage
repositoryhttps://github.com/strawlab/machine-vision-formats
max_upload_size
id403661
size58,274
Andrew Straw (astraw)

documentation

README

machine-vision-formats

Documentation Crates.io

Types and traits for working with raw image data from machine vision cameras.

This crate aims to be a lowest common denominator for working with images from machine vision cameras from companies such as Basler, FLIR, and AVT.

  • Can be compiled without standard library support (no_std).
  • Includes strongly-typed pixel formats in the pixel_format module (e.g. RGB8 and Mono8) to ensure correct API use.
  • Includes types to efficiently iterate through images respecting strided layouts in the [iter] module.
  • Includes structs which reference image data in the [image_ref] module.
  • Includes struct which owns image data in the [owned] module.

This crate is used extensively in Strand Camera.

Potential further improvements

The list of pixel formats variants is currently limited rather limited. Please submit an issue or, better, pull request for any additions needed.

We could also address the question of how endian-ness and packed-ness are handled. Currently, these are not specified.

See also

Test compilation with all feature variants

cargo build
cargo +nightly build --no-default-features --features "alloc"
cargo +nightly build --no-default-features

Code of conduct

Anyone who interacts with this software in any space, including but not limited to this GitHub repository, must follow our code of conduct.

License

Licensed under either of these:

Commit count: 15

cargo fmt