Hit-or-miss transform

From HandWiki
Short description: Detects a given configuration (or pattern) in a binary image

In mathematical morphology, hit-or-miss transform is an operation that detects a given configuration (or pattern) in a binary image, using the morphological erosion operator and a pair of disjoint structuring elements. The result of the hit-or-miss transform is the set of positions where the first structuring element fits in the foreground of the input image, and the second structuring element misses it completely.

Mathematical definition

In binary morphology, an image is viewed as a subset of a Euclidean space [math]\displaystyle{ \mathbb{R}^d }[/math] or the integer grid [math]\displaystyle{ \mathbb{Z}^d }[/math], for some dimension d. Let us denote this space or grid by E.

A structuring element is a simple, pre-defined shape, represented as a binary image, used to probe another binary image, in morphological operations such as erosion, dilation, opening, and closing.

Let [math]\displaystyle{ C }[/math] and [math]\displaystyle{ D }[/math] be two structuring elements satisfying [math]\displaystyle{ C\cap D=\emptyset }[/math]. The pair (C,D) is sometimes called a composite structuring element. The hit-or-miss transform of a given image A by B=(C,D) is given by:

[math]\displaystyle{ A\odot B=(A\ominus C)\cap(A^c\ominus D) }[/math],

where [math]\displaystyle{ A^c }[/math] is the set complement of A.

That is, a point x in E belongs to the hit-or-miss transform output if C translated to x fits in A, and D translated to x misses A (fits the background of A).

Some applications

Thinning

The structuring elements Ci, Di, Bi as described in the text. The top two rows show the pairings of C1+D1, and C2+D2. The bottom two rows show how B1-B8 are generated by rotating (C1+D1) and (C2+D2). The numbering of B1-B8 are arbitrary. (White pixels are not included in any of these sets, and are shown only to keep the spacing intelligible. Red and Blue pixels identify set membership only, and do not represent a pixel's actual color value.)

Let [math]\displaystyle{ E=\mathbb{Z}^2 }[/math], and consider the eight composite structuring elements, composed of:

[math]\displaystyle{ C_1=\{(0,0),(-1,-1),(0,-1),(1,-1)\} }[/math] and [math]\displaystyle{ D_1=\{(-1,1),(0,1),(1,1)\} }[/math],
[math]\displaystyle{ C_2=\{(-1,0),(0,0),(-1,-1),(0,-1)\} }[/math] and [math]\displaystyle{ D_2=\{(0,1),(1,1),(1,0)\} }[/math]

and the three rotations of each by 90°, 180°, and 270°. The corresponding composite structuring elements are denoted [math]\displaystyle{ B_1,\ldots,B_8 }[/math].

For any i between 1 and 8, and any binary image X, define

[math]\displaystyle{ X\otimes B_i=X\setminus (X\odot B_i), }[/math]

where [math]\displaystyle{ \setminus }[/math] denotes the set-theoretical difference.

The thinning of an image A is obtained by cyclically iterating until convergence:

[math]\displaystyle{ A\otimes B_1\otimes B_2\otimes\ldots\otimes B_8\otimes B_1\otimes B_2\otimes\ldots }[/math]

Other applications

  • Pattern detection. By definition, the hit-or-miss transform indicates the positions where a certain pattern (characterized by the composite structuring element B) occurs in the input image.
  • Pruning. The hit-or-miss transform can be used to identify the end-points of a line to allow this line to be shrunk from each end to remove unwanted branches.
  • Computing the Euler number.

Bibliography

  • An Introduction to Morphological Image Processing by Edward R. Dougherty, ISBN:0-8194-0845-X (1992)