MPEG-7 Visual Descriptors

MPEG-7 is a multimedia content description standard. It was standardized in ISO/IEC 15938 (Multimedia content description interface). This description will be associated with the content itself, to allow fast and efficient searching for material that is of interest to the user. [From Wikipedia]

From this page you can download an open source implementation (in C#) of the Scalable Color Descriptor, Color Layout Descriptor, Dominant Colors Descriptor, as well as the Edge Histogram Descriptor. The source code is a modification of the implementation that can be found in LIRE. The original version of the descriptors’ implementation is written in Java and is available online as open source under the General Public License (GPL).

Download MPEG-7 Descriptors (SCD, EHD, CLD) as .NET DLL

Download MPEG-7 Descriptors (SCD, EHD, CLD) as C# Source Code

Download MPEG-7 Descriptors Similarity Matching class as C# class

Download an example application, in which we describe the retrieval procedure

Download MPEG-7 EHD Descriptor Demo Application as C# Source Code

All the downloads are licensed under GNU GPL ]

See also: SIMPLE DESCRIPTORS: We employ the SURF detector to define salient image patches of blob-like textures and use the  MPEG-7 Scalable Color (SC), Color Layout (CL), Edge Histogram (EH) and the Color and Edge Directivity Descriptor (CEDD) descriptors to produce the final local features’ vectors named SIMPLE-SC, SIMPLE-CL, SIMPLE-EH and SIMPLE-CEDD or “LoCATE” respectively. Read more…

Instructions:

In order to use these descriptors, add the dll as references in your C# project and then call the classes as:

Scalable Color

The Scalable Color Descriptor is a Color Histogram in HSV Color Space, which is encoded by a Haar transform. Its binary representation is scalable in terms of bin numbers and bit representation accuracy over a broad range of data rates. The Scalable Color Descriptor is useful for image-to-image matching and retrieval based on color feature. Retrieval accuracy increases with the number of bits used in the representation.

Color Layout 

This descriptor effectively represents the spatial distribution of color of visual signals in a very compact form. This compactness allows visual signal matching functionality with high retrieval efficiency at very small computational costs. It provides image-to-image matching as well as ultra high-speed sequence-to-sequence matching, which requires so many repetitions of similarity calculations. It also provides very friendly user interface using hand-written sketch queries since this descriptors captures the layout information of color feature. The sketch queries are not supported in other color descriptors.

Dominant Color(s)

This color descriptor is most suitable for representing local (object or image region) features where a small number of colors are enough to characterize the color information in the region of interest. Whole images are also applicable, for example, flag images or color trademark images. Color quantization is used to extract a small number of representing colors in each region/image. The percentage of each quantized color in the region is calculated correspondingly. A spatial coherency on the entire descriptor is also defined, and is used in similarity retrieval.

Edge Histogram

The edge histogram descriptor represents the spatial distribution of five types of edges, namely four directional edges and one non-directional edge. Since edges play an important role for image perception, it can retrieve images with similar semantic meaning. Thus, it primarily targets image-to-image matching (by example or by sketch), especially for natural images with non-uniform edge distribution. In this context, the image retrieval performance can be significantly improved if the edge histogram descriptor is combined with other Descriptors such as the color histogram descriptor. Besides, the best retrieval performances considering this descriptor alone are obtained by using the semi-global and the global histograms generated directly from the edge histogram descriptor as well as the local ones for the matching process.

If you use these descriptors please cite:

1. M. Lux and S. A. Chatzichristofis, “LIRE: LUCENE IMAGE RETRIEVAL – AN EXTENSIBLE JAVA CBIR LIBRARY”, «ACM International Conference on Multimedia 2008»,(ACM MM), Open Source Application Competition, pp.1085-1087, October 27 to 31, 2008, Vancouver, British Columbia.