Localized color indexing

Each image is characterized by color histogram (only hue space is considered), computed from pixels which aligned with principle directions.  Below are examples of two buildings.

                                   

Based on geometric information (the principle directions), we can assigned each pixel to one of the four typical groups. Below are color coded pixel membership assignment. The three principle group are colored red, yellow and cyan, other pixels are classified as background and colored blue. The detection of principle direction endows our approach invariant to large range of rotation.

                              

Color information of (only) pixels which belong to principal directions is used to represent images. Unlike the traditional color indexing technique where pixel color is represented in 3D RGB space or 2D hue-saturation space, we adopt the 1D hue representation [1]. The (R G B) representation is first transformed to (Y, Cb, Cr) defined as

The hue value is then calculated by

Then hue distributions are computed for the three groups of pixels, 16 bins are used for each histogram. The two horizontal (left and right) group are combined into one group to remove ambiguity between left and right group. The discriminative power is still very good with two hue histogram while the vector length get reduced.

In the end, a 16*2=32D vector is used to represent each image. The compactness of the vector make model retrieval very efficient and require less storage.

                                                             

Our code for color histogram extraction can be downloaded here.