C# Class Accord.Imaging.Moments.HuMoments

Hu's set of invariant image moments.

In image processing, computer vision and related fields, an image moment is a certain particular weighted average (moment) of the image pixels' intensities, or a function of such moments, usually chosen to have some attractive property or interpretation.

Image moments are useful to describe objects after segmentation. Simple properties of the image which are found via image moments include area (or total intensity), its centroid, and information about its orientation.

Hu's set of invariant moments are invariant under translation, changes in scale, and also rotation. The first moment, I1, is analogous to the moment of inertia around the image's centroid, where the pixels' intensities are analogous to physical density. The last one, I7, is skew invariant, which enables it to distinguish mirror images of otherwise identical images.

References: Wikipedia contributors. "Image moment." Wikipedia, The Free Encyclopedia. Wikipedia, The Free Encyclopedia. Available at http://en.wikipedia.org/wiki/Image_moment

Inheritance: MomentsBase, IMoments
Show file Open project: accord-net/framework Class Usage Examples

Public Methods

Method Description
Compute ( CentralMoments moments ) : void

Computes the Hu moments from the specified central moments.

Compute ( UnmanagedImage image, Rectangle area ) : void

Computes the center moments for the specified image.

Compute ( float image, Rectangle area ) : void

Computes the center moments for the specified image.

HuMoments ( Bitmap image, int order = defaultOrder ) : System

Initializes a new instance of the HuMoments class.

HuMoments ( float image, int order = defaultOrder ) : System

Initializes a new instance of the HuMoments class.

HuMoments ( int order = defaultOrder ) : System

Initializes a new instance of the HuMoments class.

Method Details

Compute() public method

Computes the Hu moments from the specified central moments.
public Compute ( CentralMoments moments ) : void
moments CentralMoments The central moments to use as base of calculations.
return void

Compute() public method

Computes the center moments for the specified image.
public Compute ( UnmanagedImage image, Rectangle area ) : void
image Accord.Imaging.UnmanagedImage The image whose moments should be computed.
area System.Drawing.Rectangle The region of interest in the image to compute moments for.
return void

Compute() public method

Computes the center moments for the specified image.
public Compute ( float image, Rectangle area ) : void
image float The image whose moments should be computed.
area System.Drawing.Rectangle The region of interest in the image to compute moments for.
return void

HuMoments() public method

Initializes a new instance of the HuMoments class.
public HuMoments ( Bitmap image, int order = defaultOrder ) : System
image System.Drawing.Bitmap The image whose moments should be computed.
order int The maximum moment order to be computed.
return System

HuMoments() public method

Initializes a new instance of the HuMoments class.
public HuMoments ( float image, int order = defaultOrder ) : System
image float The image whose moments should be computed.
order int The maximum order for the moments.
return System

HuMoments() public method

Initializes a new instance of the HuMoments class.
public HuMoments ( int order = defaultOrder ) : System
order int The maximum moment order to be computed.
return System