One of the key issues in querying image databases by similarity is the choice of appropriate image descriptors and corresponding similarity measures. In this section, we first present a brief review of considered low-level visual features in our approach and then review the basic concept of the IGA.

*A. Color Descriptor*

A color image can be represented using three primaries of a color space. Since the RGB space does not correspond to the human way of perceiving the colors and does not separate the luminance component from the chrominance ones, we used the HSV color space in our approach. HSV is an intuitive color space in the sense that each component contributes directly to visual perception, and it is common for image retrieval systems. The color distribution of pixels in an image contains sufficient information. The mean of pixel colors states the principal color of the image, and the standard deviation of pixel colors can depict the variation of pixel colors. The variation degree of pixel colors in an image is called the color complexity of the image.

We can use these two features to represent the global properties of an image. The mean (и) and the standard deviation (a) of a color image are defined as follows:

where м = [мД м-S, м V]T and a = \oH, aS, aV]T, each component of м and a indicates the HSV information, respectively, and Pi indicates the ith pixel of an image. In addition to the global property of an image, the local color properties in an image play also an important role to improve the retrieval performance. Hence, a feature called binary bitmap can be used to capture the local color information of an image. This method first divides an image into several non overlapping blocks. Let Bj = (b\, b2, . . . , bk} be the jth block of the image, where 1 < j < m; k represents the total number of pixels in the block, and m is the total number of blocks in the image. The second step is to compute the mean value for each block. Let м-Bj be the mean value of the block Bj , which is defined as follows:

where м-Bj = \juHBj, м-SBj, м-VBj ]T. In the final step, comparing м-Bj with the image mean value (м) is performed to determine the characteristic of the block Bj and to generate the image binary bitmap. Hence, suppose that I = \IH, IS, IV] is the binary bitmap of the given image. Each component in I is expressed as IH = \IH1, IH2, . . ., IHm], IS = \IS1, IS2, . . ., ISm], and IV = \IV1, IV2, . . ., IVm], respectively. The entries are represented by

Texture is an important attribute that refers to innate surface properties of an object and their relationship to the surrounding environment. If we could choose appropriate texture descriptors, the performance of the CBIR should be improved. We use a gray level co-occurrence matrix (GLCM), which is a simple and effective method for representing texture. The GLCM represents the probability p(i, j; d, в) that two pixels in an image, which are located with distance d and angle в, have gray levels i and j. The GLCM is mathematically defined as follows:

where # denotes the number of occurrences inside the window, with i and j being the intensity levels of the first pixel and the second pixel at positions (x1, y1) and (x2, y2), respectively.

In order to simplify and reduce the computation effort, we computed the GLCM according to one direction (i.e., в = 0°) with a given distance d (= 1) and calculated the entropy, which is used most frequently in the literature. The entropy (E) is used to capture the textural information in an image and is defined as follows:

where Cij is the GLCM. Entropy gives a measure of complexity of the image. Complex textures tend to have higher entropy.

*C. Edge Descriptor*

Edges in images constitute an important feature to represent their content. Human eyes are sensitive to edge features for image perception. One way of representing such an important edge feature is to use a histogram.

An edge histogram in the image space represents the frequency and the directionality of the brightness changes in the image. We adopt the edge histogram descriptor (EHD) to describe edge distribution with a histogram based on local edge distribution in an image.

The extraction process of EHD consists of the following stages:

1) An image is divided into 4 x 4 sub images.

2) Each sub image is further partitioned into non overlapping image blocks with a small size.

3) The edges in each image block are categorized into five types: vertical, horizontal, 45° diagonal, 135° diagonal, and non directional edges.

4) Thus, the histogram for each sub image represents the relative frequency of occurrence of the five types of edges in the corresponding sub image.

5) After examining all image blocks in the sub image, the five-bin values are normalized by the total number of blocks in the sub image. Finally, the normalized bin values are quantized for the binary representation. These normalized and quantized bins constitute the EHD.

*D. IGA*

GAs, within the field of evolutionary computation, are robust, computational, and stochastic search procedures modeled on the mechanics of natural genetic systems. These potential solutions of the search space are encoded as binary or floating-point strings, called chromosomes. The initial population can be created randomly or based on the problem specific knowledge.

In each iteration, called a generation, a new population is created based on a preceding one through the following three steps:

1) Evaluation—each chromosome of the old population is evaluated using a fitness function and given a value to denote its merit;

2) Selection—chromosomes with better fitness are selected to generate the next population; and

3) Mating—genetic operators such as crossover and mutation are applied to the selected chromosomes to produce new ones for the next generation. The aforementioned three steps are iterated for many generations until a satisfactory solution is found or a termination criterion is met.

GAs has the following advantages over traditional search methods:

1) They directly work with a coding of the parameter set;

2) The search process is carried out from a population of potential solutions;

3) Payoff information is used instead of derivatives or auxiliary knowledge; and

4) Probabilistic transition rules are used instead of deterministic ones.

Recently, since the computation abilities of computers have become enormously enhanced, GAs have been widely applied in many areas of engineering such as signal processing, system identification, and information mining problems. GAs are applied to exercise difficulty-level adaptation in schools and universities with very satisfactory results. Beligiannis et al. applied GAs to the problem of intelligent medial diagnosis ofmale incompetence. Wu et al. proposed a genetic-based solution for a coordinate transformation test of Global Positioning System positioning.

Pan designed robust D-stable IIR filters by using GAs with embedded stability criterion. On the other hand, GAs also has been successfully applied in the research of CBIR.

For a detailed description on the aforementioned approaches, interested readers may directly refer to them. IGA is a branch of evolutionary computation. The main difference between IGA and GA is the construction of the fitness function, i.e., the fitness is determined by the user’s evaluation and not by the predefined mathematical formula.