Английская Википедия:Image moment
Шаблон:Short description Шаблон:Use American English
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.
Raw moments
For a 2D continuous function f(x,y) the moment (sometimes called "raw moment") of order (p + q) is defined as
- <math> M_{pq}=\int\limits_{-\infty}^{\infty} \int\limits_{-\infty}^{\infty} x^py^qf(x,y) \,dx\, dy</math>
for p,q = 0,1,2,... Adapting this to scalar (grayscale) image with pixel intensities I(x,y), raw image moments Mij are calculated by
- <math>M_{ij} = \sum_x \sum_y x^i y^j I(x,y)\,\!</math>
In some cases, this may be calculated by considering the image as a probability density function, i.e., by dividing the above by
- <math>\sum_x \sum_y I(x,y) \,\!</math>
A uniqueness theorem (Hu [1962]) states that if f(x,y) is piecewise continuous and has nonzero values only in a finite part of the xy plane, moments of all orders exist, and the moment sequence (Mpq) is uniquely determined by f(x,y).[1] Conversely, (Mpq) uniquely determines f(x,y). In practice, the image is summarized with functions of a few lower order moments.
Examples
Simple image properties derived via raw moments include:
- Area (for binary images) or sum of grey level (for greytone images):<math> M_{00}</math>
- Centroid: <math> \{\bar{x},\ \bar{y} \} = \left\{ \frac{M_{10}}{M_{00}}, \frac{M_{01}}{ M_{00}} \right\}</math>
Central moments
Central moments are defined as
- <math> \mu_{pq} = \int\limits_{-\infty}^{\infty} \int\limits_{-\infty}^{\infty} (x - \bar{x})^p(y - \bar{y})^q f(x,y) \, dx \, dy </math>
where <math>\bar{x}=\frac{M_{10}}{M_{00}}</math> and <math>\bar{y}=\frac{M_{01}}{M_{00}}</math> are the components of the centroid.
If ƒ(x, y) is a digital image, then the previous equation becomes
- <math>\mu_{pq} = \sum_{x} \sum_{y} (x - \bar{x})^p(y - \bar{y})^q f(x,y)</math>
The central moments of order up to 3 are:
- <math>\mu_{00} = M_{00},\,\!</math>
- <math>\mu_{01} = 0,\,\!</math>
- <math>\mu_{10} = 0,\,\!</math>
- <math>\mu_{11} = M_{11} - \bar{x} M_{01} = M_{11} - \bar{y} M_{10},</math>
- <math>\mu_{20} = M_{20} - \bar{x} M_{10}, </math>
- <math>\mu_{02} = M_{02} - \bar{y} M_{01}, </math>
- <math>\mu_{21} = M_{21} - 2 \bar{x} M_{11} - \bar{y} M_{20} + 2 \bar{x}^2 M_{01}, </math>
- <math>\mu_{12} = M_{12} - 2 \bar{y} M_{11} - \bar{x} M_{02} + 2 \bar{y}^2 M_{10}, </math>
- <math>\mu_{30} = M_{30} - 3 \bar{x} M_{20} + 2 \bar{x}^2 M_{10}, </math>
- <math>\mu_{03} = M_{03} - 3 \bar{y} M_{02} + 2 \bar{y}^2 M_{01}. </math>
It can be shown that:
- <math>\mu_{pq} = \sum_{m}^p \sum_{n}^q {p\choose m} {q\choose n}(-\bar{x})^{(p-m)}(-\bar{y})^{(q-n)} M_{mn}</math>
Central moments are translational invariant.
Examples
Information about image orientation can be derived by first using the second order central moments to construct a covariance matrix.
- <math>\mu'_{20} = \mu_{20} / \mu_{00} = M_{20}/M_{00} - \bar{x}^2</math>
- <math>\mu'_{02} = \mu_{02} / \mu_{00} = M_{02}/M_{00} - \bar{y}^2</math>
- <math>\mu'_{11} = \mu_{11} / \mu_{00} = M_{11}/M_{00} - \bar{x}\bar{y}</math>
The covariance matrix of the image <math>I(x,y)</math> is now
- <math>\operatorname{cov}[I(x,y)] = \begin{bmatrix} \mu'_{20} & \mu'_{11} \\ \mu'_{11} & \mu'_{02} \end{bmatrix}</math>.
The eigenvectors of this matrix correspond to the major and minor axes of the image intensity, so the orientation can thus be extracted from the angle of the eigenvector associated with the largest eigenvalue towards the axis closest to this eigenvector. It can be shown that this angle Θ is given by the following formula:
- <math>\Theta = \frac{1}{2} \arctan \left( \frac{2\mu'_{11}}{\mu'_{20} - \mu'_{02}} \right)</math>
The above formula holds as long as:
- <math>\mu'_{20} - \mu'_{02} \ne 0</math>
The eigenvalues of the covariance matrix can easily be shown to be
- <math> \lambda_i = \frac{\mu'_{20} + \mu'_{02}}{2} \pm \frac{\sqrt{4{\mu'}_{11}^2 + ({\mu'}_{20}-{\mu'}_{02})^2 }}{2}, </math>
and are proportional to the squared length of the eigenvector axes. The relative difference in magnitude of the eigenvalues are thus an indication of the eccentricity of the image, or how elongated it is. The eccentricity is
- <math> \sqrt{1 - \frac{\lambda_2}{\lambda_1}}. </math>
Moment invariants
Moments are well-known for their application in image analysis, since they can be used to derive invariants with respect to specific transformation classes.
The term invariant moments is often abused in this context. However, while moment invariants are invariants that are formed from moments, the only moments that are invariants themselves are the central moments.Шаблон:Citation needed
Note that the invariants detailed below are exactly invariant only in the continuous domain. In a discrete domain, neither scaling nor rotation are well defined: a discrete image transformed in such a way is generally an approximation, and the transformation is not reversible. These invariants therefore are only approximately invariant when describing a shape in a discrete image.
Translation invariants
The central moments μi j of any order are, by construction, invariant with respect to translations.
Scale invariants
Invariants ηi j with respect to both translation and scale can be constructed from central moments by dividing through a properly scaled zero-th central moment:
- <math>\eta_{ij} = \frac{\mu_{ij}}
{\mu_{00}^{\left(1 + \frac{i+j}{2}\right)}}\,\!</math>
where i + j ≥ 2. Note that translational invariance directly follows by only using central moments.
Rotation invariants
As shown in the work of Hu,[2][3] invariants with respect to translation, scale, and rotation can be constructed:
<math>
I_1 = \eta_{20} + \eta_{02}
</math>
<math>
I_2 = (\eta_{20} - \eta_{02})^2 + 4\eta_{11}^2
</math>
<math>
I_3 = (\eta_{30} - 3\eta_{12})^2 + (3\eta_{21} - \eta_{03})^2
</math>
<math>
I_4 = (\eta_{30} + \eta_{12})^2 + (\eta_{21} + \eta_{03})^2
</math>
<math>
I_5 = (\eta_{30} - 3\eta_{12}) (\eta_{30} + \eta_{12})[ (\eta_{30} + \eta_{12})^2 - 3 (\eta_{21} + \eta_{03})^2] + (3 \eta_{21} - \eta_{03}) (\eta_{21} + \eta_{03})[ 3(\eta_{30} + \eta_{12})^2 - (\eta_{21} + \eta_{03})^2]
</math>
<math>
I_6 = (\eta_{20} - \eta_{02})[(\eta_{30} + \eta_{12})^2 - (\eta_{21} + \eta_{03})^2] + 4\eta_{11}(\eta_{30} + \eta_{12})(\eta_{21} + \eta_{03})
</math>
<math>
I_7 = (3 \eta_{21} - \eta_{03})(\eta_{30} + \eta_{12})[(\eta_{30} + \eta_{12})^2 - 3(\eta_{21} + \eta_{03})^2] - (\eta_{30} - 3\eta_{12})(\eta_{21} + \eta_{03})[3(\eta_{30} + \eta_{12})^2 - (\eta_{21} + \eta_{03})^2].
</math>
These are well-known as Hu moment invariants.
The first one, I1, is analogous to the moment of inertia around the image's centroid, where the pixels' intensities are analogous to physical density. The first six, I1 ... I6, are reflection symmetric, i.e. they are unchanged if the image is changed to a mirror image. The last one, I7, is reflection antisymmetric (changes sign under reflection), which enables it to distinguish mirror images of otherwise identical images.
A general theory on deriving complete and independent sets of rotation moment invariants was proposed by J. Flusser.[4] He showed that the traditional set of Hu moment invariants is neither independent nor complete. I3 is not very useful as it is dependent on the others (<math>I_3 = (I_5^2 + I_7^2) / I_4^3</math>). In the original Hu's set there is a missing third order independent moment invariant:
- <math>
I_8 = \eta_{11}[ ( \eta_{30} + \eta_{12})^2 - (\eta_{03} + \eta_{21})^2 ] - (\eta_{20}-\eta_{02}) (\eta_{30}+\eta_{12}) (\eta_{03}+\eta_{21}) </math>
Like I7, I8 is also reflection antisymmetric.
Later, J. Flusser and T. Suk[5] specialized the theory for N-rotationally symmetric shapes case.
Applications
Zhang et al. applied Hu moment invariants to solve the Pathological Brain Detection (PBD) problem.[6] Doerr and Florence used information of the object orientation related to the second order central moments to effectively extract translation- and rotation-invariant object cross-sections from micro-X-ray tomography image data.[7]
External links
- Analysis of Binary Images, University of Edinburgh
- Statistical Moments, University of Edinburgh
- Variant moments, Machine Perception and Computer Vision page (Matlab and Python source code)
- Hu Moments introductory video on YouTube
- Gist Implementation of this page, jupyter and python.
References
- ↑ Шаблон:Cite book
- ↑ M. K. Hu, "Visual Pattern Recognition by Moment Invariants", IRE Trans. Info. Theory, vol. IT-8, pp.179–187, 1962
- ↑ http://docs.opencv.org/modules/imgproc/doc/structural_analysis_and_shape_descriptors.html?highlight=cvmatchshapes#humoments Hu Moments' OpenCV method
- ↑ J. Flusser: "On the Independence of Rotation Moment Invariants", Pattern Recognition, vol. 33, pp. 1405–1410, 2000.
- ↑ J. Flusser and T. Suk, "Rotation Moment Invariants for Recognition of Symmetric Objects", IEEE Trans. Image Proc., vol. 15, pp. 3784–3790, 2006.
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite journal