The Image Color Palette applies machine learning to color theory to identify aesthetically pleasing colors. First, pixels in the image are converted to the L*a*b* color space. In L*a*b color space the distance between the vector representations of two different colors corresponds with precieved difference between those colors. The pixels are then clustered using KMeans clustering to generate a color groupings for the color palette. Colors whose distances fall below the threshold to be detectable to the human eye are automatically merged.
Accent colors are then created by first computing the complimentary, split complementary, analogus and triad color harmonies for each of the key colors in the color palette. As before, similiar colors are merged until a set of optimally distinct colors has been created.
Interest in Photography? Try our Photo Analyzer & Comparator, which can show you a photos overall warmth and brightness.