[][src]Crate cv

This library primarily provides a binding and API for OpenCV 3.x.

This is a work-in-progress and modules/functions are implemented as needed. Attempts to use rust-bindgen or cpp_to_rust haven't been very successful (I probably haven't tried hard enough). There is another port opencv-rust which generates OpenCV bindings using a Python script.

Modules

cuda

Bindings to OpenCV's classes and functions that exploits GPU/Cuda. See cv::cuda

errors

Errors for OpenCV bindings

features2d

Provide the type that encapsulates all the parameters of the MSER extraction algorithm

highgui

highgui: high-level GUI

imgcodecs

Image file reading and writing, see OpenCV imgcodecs.

imgproc

Image processing, see OpenCV imgproc.

objdetect

Various object detection algorithms, such as Haar feature-based cascade classifier for object detection and histogram of oriented gradients (HOG).

video

Video Analysis, see OpenCV video

videoio

Media I/O, see OpenCV videoio

Structs

Mat

This wraps OpenCV's Mat class which is designed for n-dimensional dense array. It's the most widely used data structure in image/video processing since images are often stored as Mat.

Point2f

2D floating points specified by its coordinates x and y.

Point2i

2D integer points specified by its coordinates x and y.

Rect

The Rect defines a rectangle in integer.

Scalar

A 4-element struct that is widely used to pass pixel values.

Size2f

Size2f struct is used for specifying the size (width and height as f32) of an image or rectangle.

Size2i

Size2i struct is used for specifying the size (width and height as i32) of an image or rectangle.

Enums

CvType

Here is the CvType in an easy-to-read table.

FlipCode

A flag to specify how to flip the image. see Mat::flip

LineTypes

Line type

NormTypes

Normalization type. Please refer to OpenCV's documentation.