struct returned by cv::moments More...
#include "types.hpp"
Public Member Functions | |
Moments () | |
the default constructor More... | |
Moments (double m00, double m10, double m01, double m20, double m11, double m02, double m30, double m21, double m12, double m03) | |
the full constructor More... | |
Public Attributes | |
spatial moments | |
double | m00 |
double | m10 |
double | m01 |
double | m20 |
double | m11 |
double | m02 |
double | m30 |
double | m21 |
double | m12 |
double | m03 |
central moments | |
double | mu20 |
double | mu11 |
double | mu02 |
double | mu30 |
double | mu21 |
double | mu12 |
double | mu03 |
central normalized moments | |
double | nu20 |
double | nu11 |
double | nu02 |
double | nu30 |
double | nu21 |
double | nu12 |
double | nu03 |
struct returned by cv::moments
The spatial moments \(\texttt{Moments::m}_{ji}\) are computed as:
\[\texttt{m} _{ji}= \sum _{x,y} \left ( \texttt{array} (x,y) \cdot x^j \cdot y^i \right )\]
The central moments \(\texttt{Moments::mu}_{ji}\) are computed as:
\[\texttt{mu} _{ji}= \sum _{x,y} \left ( \texttt{array} (x,y) \cdot (x - \bar{x} )^j \cdot (y - \bar{y} )^i \right )\]
where \((\bar{x}, \bar{y})\) is the mass center:
\[\bar{x} = \frac{\texttt{m}_{10}}{\texttt{m}_{00}} , \; \bar{y} = \frac{\texttt{m}_{01}}{\texttt{m}_{00}}\]
The normalized central moments \(\texttt{Moments::nu}_{ij}\) are computed as:
\[\texttt{nu} _{ji}= \frac{\texttt{mu}_{ji}}{\texttt{m}_{00}^{(i+j)/2+1}} .\]
The moments of a contour are defined in the same way but computed using the Green's formula (see http://en.wikipedia.org/wiki/Green_theorem). So, due to a limited raster resolution, the moments computed for a contour are slightly different from the moments computed for the same rasterized contour.
cv::Moments::Moments | ( | ) |
the default constructor
cv::Moments::Moments | ( | double | m00, |
double | m10, | ||
double | m01, | ||
double | m20, | ||
double | m11, | ||
double | m02, | ||
double | m30, | ||
double | m21, | ||
double | m12, | ||
double | m03 | ||
) |
the full constructor
double cv::Moments::m00 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m01 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m02 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m03 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m10 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m11 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m12 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m20 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m21 |
Referenced by CvMoments::CvMoments().
double cv::Moments::m30 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu02 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu03 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu11 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu12 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu20 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu21 |
Referenced by CvMoments::CvMoments().
double cv::Moments::mu30 |
Referenced by CvMoments::CvMoments().
double cv::Moments::nu02 |
double cv::Moments::nu03 |
double cv::Moments::nu11 |
double cv::Moments::nu12 |
double cv::Moments::nu20 |
double cv::Moments::nu21 |
double cv::Moments::nu30 |