This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)(Learn how and when to remove this template message)
A co-occurrence matrix or co-occurrence distribution (less often coöccurrence matrix or coöccurrence distribution) is a matrix that is defined over an image to be the distribution of co-occurring values at a given offset. Mathematically, a co-occurrence matrix C is defined over an n × m image I, parameterized by an offset (Δx,Δy), as:
where i and j are the image intensity values of the image, p and q are the spatial positions in the image I and the offset (Δx, Δy) depends on the direction used and the distance at which the matrix is computed d. The 'value' of the image originally referred to the grayscale value of the specified pixel, but could be anything, from a binary on/off value to 32-bit color and beyond. Note that 32-bit color will yield a 232 × 232 co-occurrence matrix!
Really any matrix or pair of matrices can be used to generate a co-occurrence matrix, though their main applicability has been in the measuring of texture in images, so the typical definition, as above, assumes that the matrix is in fact an image.
It is also possible to define the matrix across two different images. Such a matrix can then be used for color mapping.
Note that the (Δx, Δy) parameterization makes the co-occurrence matrix sensitive to rotation. We choose one offset vector, so a rotation of the image not equal to 180 degrees will result in a different co-occurrence distribution for the same (rotated) image. This is rarely desirable in the applications co-occurrence matrices are used in, so the co-occurrence matrix is often formed using a set of offsets sweeping through 180 degrees (i.e. 0, 45, 90, and 135 degrees) at the same distance to achieve a degree of rotational invariance.
Co-occurrence matrices have been referred to as:
- GLCM (gray-level co-occurrence matrices)
- GLCH (gray-level co-occurrence histograms)
- spatial dependence matrix
Application to image analysis
Whether considering the intensity or grayscale values of the image or various dimensions of color, the co-occurrence matrix can measure the texture of the image. Because co-occurrence matrices are typically large and sparse, various metrics of the matrix are often taken to get a more useful set of features. Features generated using this technique are usually called Haralick features, after R M Haralick.
- Robert M Haralick; K Shanmugam; Its'hak Dinstein (1973). "Textural Features for Image Classification" (PDF). IEEE Transactions on Systems, Man, and Cybernetics. SMC-3 (6): 610–621.