Image-based color palette generation
First Claim
1. A computer-implemented method for generating a color palette, the computer-implemented method comprising:
- under control of a hardware computing device configured with specific computer-executable instructions,obtaining a color image;
obtaining a first color distance threshold and a second color distance threshold for use in generating a color palette, wherein the color palette is generated based, at least in part, on the color image;
identifying a plurality of representative colors and a plurality of color weights based, at least in part, on the color image, wherein identifying the plurality of representative colors and plurality of color weights comprises;
defining a base color;
selecting a color from a current color distribution corresponding to the color image, wherein the selected color has a greatest color distance, among all colors in the current color distribution, from the base color;
identifying a first subset of colors in the current color distribution that have a color distance within the first color distance threshold from the selected color;
determining a representative color of the plurality of representative colors to be a color representing the identified first subset of colors;
associating a color weight to the determined representative color based, at least in part, on a collective weight measure corresponding to the first subset of colors;
identifying a second subset of colors in the current color distribution that have a color distance within the second color distance threshold from the determined representative color;
generating a new color distribution from the current color distribution by removing the second subset of colors from the current color distribution; and
determining a new representative color of the plurality of representative colors and a color weight associated with the new representative color based, at least in part, on the new color distribution; and
generating the color palette based, at least in part, on the identified plurality of representative colors and associated weight.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are provided for generating an image-based color palette based on a color image. A color palette can be a collection of representative colors each associated with a weight or other metadata. A color palette may be generated based on palette generation criteria, which may facilitate or control a palette generation process. Illustratively, the palette generation process may include image pre-processing, color distribution generation, representative color identification, palette candidate generation and palette determination. Representative colors with associated weight can be identified from a distribution of colors depicted by the color image, multiple palette candidates corresponding to the same color image can be generated based on various palette generation criteria, and a color palette can be identified therefrom.
55 Citations
21 Claims
-
1. A computer-implemented method for generating a color palette, the computer-implemented method comprising:
under control of a hardware computing device configured with specific computer-executable instructions, obtaining a color image; obtaining a first color distance threshold and a second color distance threshold for use in generating a color palette, wherein the color palette is generated based, at least in part, on the color image; identifying a plurality of representative colors and a plurality of color weights based, at least in part, on the color image, wherein identifying the plurality of representative colors and plurality of color weights comprises; defining a base color; selecting a color from a current color distribution corresponding to the color image, wherein the selected color has a greatest color distance, among all colors in the current color distribution, from the base color; identifying a first subset of colors in the current color distribution that have a color distance within the first color distance threshold from the selected color; determining a representative color of the plurality of representative colors to be a color representing the identified first subset of colors; associating a color weight to the determined representative color based, at least in part, on a collective weight measure corresponding to the first subset of colors; identifying a second subset of colors in the current color distribution that have a color distance within the second color distance threshold from the determined representative color; generating a new color distribution from the current color distribution by removing the second subset of colors from the current color distribution; and determining a new representative color of the plurality of representative colors and a color weight associated with the new representative color based, at least in part, on the new color distribution; and generating the color palette based, at least in part, on the identified plurality of representative colors and associated weight. - View Dependent Claims (2, 3, 4)
-
5. A system comprising:
-
a data store configured to store computer-executable instructions; and a hardware processor in communication with the data store, the hardware processor configured to execute the computer-executable instructions to at least; obtain a color image; obtain a first criterion for use in generating a color palette, wherein the color palette is generated based, at least in part, on the color image; identify a plurality of representative colors and an associated plurality of color weights from a color distribution corresponding to the color image in accordance with the first criterion, wherein at least one color weight associated with a representative color is determined based, at least in part, on a collective weight measure associated with a subset of colors corresponding to the representative color, the subset of colors identified from the color distribution; and generate the color palette based, at least in part, on the identified plurality of representative colors and the associated plurality of color weights. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory computer-readable storage medium storing computer-executable instructions that when executed by a processor perform operations comprising:
-
identifying a plurality of representative colors from a color distribution corresponding to a color image, wherein the plurality of representative colors are identified based, at least in part, on color distances computed in accordance with a color distance formula; associating a plurality of color weights with the plurality of representative colors based, at least in part, on at least one color distance criterion, wherein each color weight of the plurality of color weights is associated with a respective representative color of the plurality of representative colors, wherein at least one color weight associated with a representative color is determined based, at least in part, on a collective weight measure associated with a subset of colors corresponding to the representative color, the subset of colors identified from the color distribution; and generating a color palette comprising one or more palette colors each associated with a palette color weight, wherein the one or more palette colors are selected from the plurality of representative colors based, at least in part, on a color weight criterion. - View Dependent Claims (19, 20, 21)
-
Specification