ndarray_vision/
lib.rs

1//! This crate is a computer vision and image analysis crate built on `ndarray`.
2//!
3//! By using `ndarray`, this project aims to make full use of other crates in
4//! the ecosystem like `ndarray_stats`. This should also allow users to easily
5//! integrate other `ndarray` crates with `ndarray-vision` and avoid this crate
6//! becoming a monolith by fulfilling every potential usecase in a rather large
7//! field. Instead the main focus of this crate will be as follows:
8//!
9//! * An `Image` type which makes use of Rust to ensure proper and safe use
10//! * Conversions between different colour models
11//! * Encoding and decoding images
12//! * Image processing intrinsics like convolution and a selection of common filters
13//! * Common image enhancement algorithms
14//! * Geometric image transformations
15//! * Intrinsics required for feature detection and matching
16//! * Camera Calibration
17//! * Frequency domain image processing
18//!
19//! This may seem like a lot but is still a lot less than OpenCV offers. Also,
20//! where possible algorithms will be used from other crates in the ecosystem
21//! when those operations aren't Computer Vision specific. For example,
22//! `ndarray-stats` has histogram calculation.
23//!
24//! This crate is a work in progress and as such most of these features aren't
25//! yet present and those that are may not be stable. Although, there will be
26//! some effort to ensure things don't break.
27
28/// The core of `ndarray-vision` contains the `Image` type and colour models
29pub mod core;
30/// Image enhancement intrinsics and algorithms
31#[cfg(feature = "enhancement")]
32pub mod enhancement;
33/// Image formats - encoding and decoding images from bytes for saving and
34/// loading
35#[cfg(feature = "format")]
36pub mod format;
37/// Operations relating to morphological image processing
38#[cfg(feature = "morphology")]
39pub mod morphology;
40/// Image processing intrinsics and common filters/algorithms.
41#[cfg(feature = "processing")]
42pub mod processing;
43/// Image transforms and warping
44#[cfg(feature = "transform")]
45pub mod transform;