Saturday, 20 September 2014

Difference of Gaussian (DoG) Model



The Difference of Gaussian is the classical model used for pore detection. As the name specify it extracts the pore based on the two different Gaussian filtered image of different scale. The following two sub-sections explain the overall pore extraction using DoG algorithm.

DoG Algorithm

 

On the fingerprint image, ridges are the dark (black) lines whereas pores are the (white) bright blob on the ridges either isolated (closed pores) or connected with valleys (open pores). In general pores a small circular structure and their spatial appearance are similar to two dimensional Gaussian filters. Similarly the cross sections of valleys are one dimensional Gaussian filter usually of bigger scale than the pores. Thus the difference between the two Gaussian filters could yield the pores. The Difference of Gaussian filtering is basically the above mentioned procedure, which is a classic blob detection method.
The scales of either pores or valley are not uniform across a fingerprint image and different fingerprint images could have different ridge-valley pattern. This leads to a conclusion that the two different values of scales, one for ridges and other for valley are to be employed for the efficient extraction of pores. Now consider an input fingerprint image is I. Suppose the mean ridge period over the image is p. It is the good measure of the scale over the image. Thus we set the standard deviation of the two Gaussian filters to k1*p and k2*p respectively (0<k1<k2 are the constants) . Then the outputs of them are given by


where ‘*’ denotes the convolution operation between the image I and the corresponding Gaussian filter. F1 is the Gaussian filtered image with small scale and F2  is the Gaussian filtered image with large scale value. N is the normalization of the Gaussian filter to zero mean and unit standard deviation G(x,y) is the expression for the two dimensional Gaussian filter. The settings of the k1 and k2 should be chosen appropriately depending upon the ridge valley pattern. In our experiment we empirically set the values of  k1 and k2 as 0.5 and 2.
  
Fig.1: Difference of Gaussian Model

The filtering outputs F1 and F2 are then further binaries to have the values in the range [0, 1] resulting in B1 and B2. The small scale Gaussian filter Gk1p will enhance both pores and valleys whereas the large scale Gaussian filters Gk2p will enhance valleys only. At last the Difference of Gaussian is performed by subtracting B2 form B1 thereby resulting in the final pore extraction.

Where PB is the resultant binary pore extracted image. The Fig.2 (a) shows the fingerprint image block and Fig.2 (e) and Fig.2 (f) shows the extracted pore for the given block of fingerprint image.

Post-Processing

In order to remove the outliers from the pore extraction results following steps are employed. First of all the pores which are not on the ridges are removed using the binary ridge map. Second the spurious white lines at the boundary of the image are removed using morphological operations. This boundary lines results due to the large difference between the sizes of the two Gaussian filters. At last pores should be within the valid range of values. We measure the size of pores by counting the number of pixels inside its region. In our experiment we have empirically set the size of pores between 3 and 30. Finally we get the extracted pore image.

Fig.2: Fingerprint pore extraction using DoG; (a) Input fingerprint image; Gaussian filtering output (b) at small scale and (c) at large scale; (d) extracted pores using DoG after post processing; (e) and (f) shows the extracted pores.

The above presented two pore models have reliably extracted the pores form fingerprint image which is shown clearly in the Fig.2. Now our very next step is to match the pores of two fingerprints which are extracted using the proposed pore model which is presented in the next chapter.

References:


[1] Q. Zhao, L. Zhang, D. Zhang, N. Luo, “High resolution partial fingerprint alignment      using pore- valley descriptor”, Pattern Recognition vol. 43 (3), 1050-1061, (2010).
 

 


No comments:

Post a Comment