Monday, July 26, 2010

3 image features for content based image retrieval

All are from MPEG-7.
Scalable Color Descriptor: a color histogram in HSV color space. For example, Hue is divided into 8 fuzzy areas: (0) Red to Orange, (1) Orange, (2) Yellow, (3) Green, (4) Cyan, (5) Blue, (6) Magenta and (7) Blue to Red. S is divided into 2 fuzzy regions, The first area, in combination with the position of the pixel in channel V, is used to define if the color is clear enough to be ranked in one of the categories which are described in H histogram, or if it is a shade of white or gray color.
Color Layout:
Edge Histogram Descriptor: the filters for edges from different angles:
• vertical: [1 –1; 1 –1]
• horizontal: [1 1; –1 –1]
• 45 diagonal: [sqrt(2) 0; 0 -sqrt(2)]
• 135 diagonal: [0 sqrt(2); -sqrt(2) 0]
• non-directional: [2 –2; –2 2]
the respective edge magnitudes are ‘m_xx’, each image block is derived to 4 sub blocks, the average gray level of each sub block is a_x(i,j), where x is 1,2,3,4, then m_xx = | sum_0^3 a_x(i,j) * f_x(k) |, where xx is vertical, horizontal, etc., and its max value is ‘max’. We get the edge histogram with:
if (max < TEdge) EdgeHist[0]++; // no edge
else                            // different direction
if (m_nd > T0) EdgeHist[1]++;
if (m_h  > T1) EdgeHist[2]++;
if (m_v  > T1) EdgeHist[3]++;
if (m_45 > T2) EdgeHist[4]++;
if (m_135> T2) EdgeHist[5]++;