I'm using lib ColorThief in python to get RGB value of the dominant basic color in the image. The problem is that when I try converting this value to color name in pool basic_colors = { "White": (255, 255, 255), "Beige": (245, 245, 220), "Grey": (128, 128, 128), "Brown": (153, 102, 51), "Black": (0, 0, 0), "Yellow": (255, 255, 0), "Orange": (255, 128, 0), "Red": (255, 0, 0), "Pink": (255, 192, 203), "Blue": (0, 0, 255), "Green": (0, 255, 0), "Purple": (128, 0, 128), "Gold": (255, 215, 0), "Silver": (192, 192, 192), } I use method to calculate distance between image's value and pool's value with Euclid or LAB, but I can't get the exact color every time. Special when color is Darkblue or something like this, result sometimes returns Silver or Grey. Although by eye we can detect this color is blue. I also try use HSV (hue/saturation/value) to group color first before calculating the distance, but the result is same. Has the lib can convert this or the method I can use? Thanks Continue reading...