Given the output from previous clustering step, we want to eliminate possible similar images in order to get more representative ones out of these inputs which compose the summarization. One other motivation behind this mechanism is to generate best set of images of the representative set and it helps the human based evaluation. In other words it would be hard to evaluate all images by participant. Instead of the full set we select most desirable set of images for example 10 images out of 20 images in order for the evaluation.

Technically It goes like, On top of the function Match.m[2] we make some changes to our needs and calculate the number of matching points. Besides, we get the number of key points of each image through Sift.m[2]. Then we compute the ratio of number of matching points to summation number of detected key points between images. A higher ratio indicates a larger possibility of similarity. We choose function sum () here because our image sets have the following features:

a. They are supposed to be very dissimilar, which means the number of matching points, namely the numerator could be very small.

b. The number of key point’s detected can varies a lot. for example, one is 100, the other one is 3000.

Based on these, the values are more like 10/(100+3000), (or 10/max(100,3000) if we go for max()), where function sum can represent the dissimilarity well. By the way, we could choose function max() since it also can do a good approximation.

By sorting the ratios of all images we are free to choose arbitrary number of images and these images are highly representative.

Given a set RS of representative images of the original set P, we wish to compute a summary S □ RS that represents the most diverse visual content of RS. N is number of images in RS set. Below is a ranking algorithm to do this:

Algorithm 4: Ranking mechanism

1: input: representative set

2: output: ranking of each images of representative set

3: for each image i do for each image j from i+1 to n do // function Keypoint return the number of detected keypoints of an image using SIFT //function Matchingpoints return the number of matched points between to images calculate similarity ratio r[i j]= Matchingpoints(i,j)/Sum(Keypoint(i)+Keypoint(j)); end for

4: end for

5: for i from 0 to n do for j from i+1 to n compute the maximum similarity value mr[i]=Max[i j]; end for

6: end for

7: sort mr[i]; // in ascending order.

8: select arbitrary number of images from array s which will be the summary S