Individual Study Option : Support Vector Machines and Feature Selection for Content Based Image Retrieval

This work investigates the application of Support Vector Machines (SVMs) and a number of feature selection methods to Content Based Image Retrieval (CBIR) based on feature generation schema proposed by Tieu and Viola in 2000. This study largely builds on the work published by Pickering M. and Rüger S. , which investigates a number of approaches to CBIR. Experiments are carried out, and the results obtained are compared with the published results. Conclusions drawn from this comparison allow potential areas for future research to be identified. 1 Background We assume that the reader is familiar with the basic concepts of machine learning, such as training and classification. For a general introduction to machine learning with emphasis on the underlying theory, “Machine Learning” [B2] by Tom Mitchell is recommended. “Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations” [B3] by Witten I. and Frank E. is also recommended, but describes more of the practical aspects of machine learning such as evaluation methods and feature selection. Content Based Image Retrieval is the process in which the user retrieves images of interest from a (usually large) database collection by providing example images to the system of what he/she wants to retrieve. For more information on CBIR “Content based image retrieval at the end of the early years” by Smeulders A. , Worring M. , Santini S. , Gupta A. and Jain. R. (2000) [18] is recommended for an indepth analysis of the field. We also assume that the reader has familiarised oneself with the paper on which this study is based, “Evaluation of Key-frame Based Retrieval Techniques for Video” by Pickering M. and Rüger S. [14]. 1.1 Problem Set Up The user’s query consists of images selected visually from some source (called positive), and the retrieval system is asked to find “similar” images from its database of stored images. The definition of similar can be that the retrieved images contain the same type of object(s), or that they generally relate to the same category (Nature, Architecture, Animals). A classifier is built based on the vector representations of positive image examples supplied by the user and negative image examples, which are sampled at random from the system’s image database. Negative examples serve the purpose of telling the Alexei Yavlinsky 13/01/03 2 classifier which images the user does not want. The images from that database are then evaluated by the classifier as either belonging to the positive or the negative class of images, and the positive images are returned to the user first. The returned positive images are ranked by the degree of certainty that they are, in fact, positive. This machine-learning problem is unusual in that it has a very low ratio of positive examples to negative ones. In most cases, the user provides between one and six positive images, whilst the system uses about 100 “negative” images picked at random from the database. Such set-up makes it non-trivial to build classifiers that generalise well to unseen data, because there is little information on what features to look for in a positive image, and very disparate information is provided on what constitutes a negative image The size of the database is sufficiently large to minimise risk of picking a false negative example, however. 1.2 Image Representation One of the representations for images [14] is the Tieu and Viola feature space [19]. This is a recent feature generation method that aims to use a very large number of highly selective features to find similarity between images. It is different to previous feature generation methods, which only use colour, and methods that use local edge and texture detection, because it attempts to establish a global arrangement of such features, i.e. the global structure of the image. This feature generation is based on a set of 25 primitive filters, which detect different orientations of edges and primitive patterns. These filters are applied to the red, green and blue channels, producing 75 feature maps (convolutions of different filters with the image). Each of the feature maps is downsampled and fed again to each of the 25 filters, giving 1875 feature maps. This process is repeated once more, and then individual responses in each feature map are summed to give 46875 features for each image. Each feature is a real valued number, such that image has an assigned 46785dimensional real vector. According to [19], this method creates sparse feature vectors for images where only a small percentage of features have a significant value for any given image. In addition to this feature generation schema, [14] evaluate various colour spaces for feature generation, however, these were not included in the experimental part of this work. 1.3 Image Retrieval Methods In [14], three different machine learning algorithms are used to classify and rank images: 1.3. 1 Vector Space Model Vector Space Model (VSM) uses the entire feature vector of each image and computes the similarity to the query as a cosine of angle between the feature vector of that image and the sum of the feature vectors of the positive images. Negative Alexei Yavlinsky 13/01/03 3 examples are not required in this case; images in the database are ranked using the positive examples only. The variant used in [14] uses Manhattan distance as a distance measure between two feature vectors. 1.3. 2 K Nearest Neighbours An instance of k-Nearest Neighbours (KNN) method also uses Manhattan distance between feature vectors to calculate the similarity of a given image to the positive images provided. The rank value is calculated as the ratio of the sum of distances to positive training images, to the sum of the distances to negative training images. The ranking is obtained as