## 2 GCD Algorithm
### Classification with Gabor Features  
Gabor filters have been used in many applications, such as texture segmentation, target detection, edge detection, retina identification, image coding and image representation [20]. The Gabor filters have received considerable attention because the characteristics of certain cells in the visual cortex of some mammals can be approximated by these filters. Further, biological research suggests that the primary visual cortex performs a similar orientational and Fourier space decomposition [21], so they seem to be sensible for a technical vision system. In addition these 2D band-pass filters, have been shown to posses optimal localization properties in both spatial and frequency domain and thus are well suited for extracting edges or features of an image lying in a specific frequency range and orientation. A _Gabor filter_ can be viewed as a _sinusoidal_ plane of particular frequency and orientation, modulated by a _Gaussian_ envelope. It can be written as:  
\[g(x,y)=e^{-\frac{1}{2}\left[\frac{x^{2}}{\sigma_{x}^{2}}+\frac{y^{2}}{\sigma_{ y}^{2}}\right]}e^{-j2\pi(\omega_{\mathrm{p}}x+\omega_{\mathrm{p}}y)} \tag{4}\]  
In Fourier frequency domain, the filter's response consists of two 2D Gaussian functions (due to the conjugate symmetry on the spectrum) that are:  
\[v_{2}=-(u+f\cos\theta)\cos\theta+(v+f\sin\theta)\sin\theta \tag{6d}\]  
where \(f\) determines the central frequency of the pass band in orientation \(\theta\). Of course, we have \(\theta=\tan^{-1}(v_{0}/u_{0})\) and \(f=\sqrt{u_{0}^{2}+v_{0}^{2}}\), where (\(u_{0}\), \(v_{0}\)) is the center of one Gaussian function in Equation (5). From each mammogram, a total of 20 Gabor filtered images (\(I_{Gmn}\), \(m=1\)-\(5\), \(n=1\)-\(4\), in spatial domain) are produced with 20 Gabor filters distributed along five bands (located from low to high frequencies) by four orientations (vertical, \(45\)\({}^{\circ}\), horizontal, and \(135\)\({}^{\circ}\)). Four Gabor filters along four orientations at Band 2 are illustrated in Figure 3, where only the central parts of four filters are displayed. The full size of a Gabor filter actually matches the image size being processed. Keep in mind that there is \(90\)\({}^{\circ}\) directional difference between spatial domain and frequency domain. One sample of Gabor filtered images (of Case \"3039_Left\", refer to Figure 10) with the Gabor filter bank at 5 bands and 4 orientations is demonstrated in Figure 4.  
For each alarm segment found in Section 2.2, a set of edge histogram descriptors are computed with its 20 counterparts lying in 20 Gabor filtered images (\(I_{Gmn}\), \(m=1\)-\(5\), \(n=1\)-\(4\)), which will be used as features for classification. After clustering the EHD features with fuzzy C-means clustering method, a \(k\)-nearest neighbor (KNN) classifier is used to reduce the number of false alarms. The _edge histogram descriptor_ (EHD) [22, 23] was initially proposed for MPEG-7 to express the local edge distribution in an image. The histogram generated in EHD denotes the local (within the alarm segment) frequency of four different types of edges namely vertical (\(90\)\({}^{\circ}\)), horizontal (\(0\)\({}^{\circ}\)), \(45\)\({}^{\circ}\) diagonal, \(135\)\({}^{\circ}\)diagonal edges at each band (refer to Figures 3 and 4). Specifically, for a particular alarm segment at each band (each row in Figure 4), the vertical histogram frequency (within the alarm segment) is the number of pixels of maximal intensity values in the vertical edge-extracted image (left-most column in Figure 4) compared with the pixel values in other three directional (horizontal, \(45\)\({}^{\circ}\) diagonal and \(135\)\({}^{\circ}\) diagonal) edge-extracted images (columns 2, 3, 4 in Figure 4). The other three directional frequencies can be calculated in the same way and a four-dimensional EHD signature can be  
Figure 3: Four Gabor filters along four orientations at Band 2.