欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)從一組顏色中找出與給定顏色最接近顏色的方法

 更新時(shí)間:2015年03月19日 11:55:49   作者:liuli  
這篇文章主要介紹了python實(shí)現(xiàn)從一組顏色中找出與給定顏色最接近顏色的方法,涉及Python操作rgb格式顏色的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了python實(shí)現(xiàn)從一組顏色中找出與給定顏色最接近顏色的方法。分享給大家供大家參考。具體分析如下:

這段代碼非常有用,可以找到指定顏色相似的顏色,比如有一組8個(gè)顏色,現(xiàn)在給定一個(gè)rgb格式的演示,找出它與8個(gè)顏色中的哪一個(gè)最接近,如果你需要做一個(gè)按照圖片顏色搜索圖片的程序,這個(gè)就非常有用了。

復(fù)制代碼 代碼如下:
from colorsys import rgb_to_hsv
colors = dict((
((196, 2, 51), "RED"),
((255, 165, 0), "ORANGE"),
((255, 205, 0), "YELLOW"),
((0, 128, 0), "GREEN"),
((0, 0, 255), "BLUE"),
((127, 0, 255), "VIOLET"),
((0, 0, 0), "BLACK"),
((255, 255, 255), "WHITE"),))
def to_hsv( color ):
    """ converts color tuples to floats and then to hsv """
    return rgb_to_hsv(*[x/255.0 for x in color]) #rgb_to_hsv wants floats!
def color_dist( c1, c2):
    """ returns the squared euklidian distance between two color vectors in hsv space """
    return sum( (a-b)**2 for a,b in zip(to_hsv(c1),to_hsv(c2)) )
def min_color_diff( color_to_match, colors):
    """ returns the `(distance, color_name)` with the minimal distance to `colors`"""
    return min( # overal best is the best match to any color:
        (color_dist(color_to_match, test), colors[test]) # (distance to `test` color, color name)
        for test in colors)
color_to_match = (255,255,0)
print min_color_diff( color_to_match, colors)

希望本文所述對大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評論