Friday, 15 February 2013

image - How to detect colors under different illumination conditions -


I have pictures of many colors and I want to search the colors of each image. Say I have a blue skirt image in the auction position and I can get the right color through RGB distribution. However, color is difficult to tell at night and "blue" is called "black". In order to design the color through RGB distribution, it is very difficult to create an integrated standard

In this way, I am thinking that there is no way or algorithm to detect colors under different ignition is?

BTW: I also tried to replace HSV color and the results were not good.

This is a very difficult problem and it is still trying to solve it, summarizing it That is to use a representative set of original colors of an image which is strong against different external stimuli ... light, shadow, bad light etc. Unfortunately I can not give any suggestions, an algorithm that will work for you in all cases. However, an algorithm has worked for me in the past when I was working in image retrieval. Specifically, the work of Jabo Luo and David Crandall from Kodak Research Labs:

The basic algorithm is to see. Apart from this, this link is more useful: It is a set of 267 colors that represent colors in today's modern colors. Generally when we describe the colors, then we have a set of one or more adjectives, after which there are major colors. For example, that shirt is a blurred yellow blue, or a light luminous yellow, etc. The beauty of this algorithm is different when the color in question is subject to external stimuli, we give these adjectives the color meaning, but that is all the end of the day In, the last part of the color - the main color - what are we after.

Each of these colors has an associated RGB value. These colors are the color space, which are transformed into a 267 CIE lab lookup table.

To classify a particular input color, if you have converted the RGB values ​​of this input into the CIE lab color space, then the closest color is determined in this lookup table it is shown that in the CIE lab color space Euclidean distance between the two colors shows the difference in the human concept of the best colors. Once we determine which location's color is closest to the lookup table, we will miss all the adjectives and see what the main color is and we thus classify that color accordingly. For example, if we had a RGB pixel and we turned it into a lab, then found that the closest color was bright yellow, we would remove "bright" and the final color which would be representative of RGB pixels yellow.


Therefore, the ultimate algorithm is this:.

  1. Determine the RGB values ​​of the ISCC-NBS color set and will be converted into a CIE lab and create a lookup table
  2. Create another view in the ISCC-NBS color set Stores the main color for each color - so, sort all the adjectives and leave the effective color.
  3. For pixels in question, in the lookup table by the Euclidean distance of the closest pixel lab components.
  4. Once we find this place in the lookup table, then use the same index in the index in l. The backup was found in step # 2 and received the last color to classify the color of the input pixel.

Hope it helps!


No comments:

Post a Comment