1. 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: select a first subset of colors from a color distribution corresponding to a color image; determine a first representative color to be a color representing the first subset of colors; associate a first color weight to the first representative color based, at least in part, on the first subset of colors; select a second subset of colors from a modified color distribution, wherein the modified color distribution is based, at least in part, on removal of a third subset of colors different from the first subset from the color distribution; determine a second representative color to be a color representing the second subset of colors; and generate a color palette for the color image based, at least in part, on the first representative color, the first color weight, and the second representative color.