Discards all but one of any pixel color. This method is available if Imagick has been compiled against ImageMagick version 6.2.9 or newer.
Extracts all the unique colors from an image, and generates and 1 pixel high, and 1 pixel wide for each color.
Extracts all the unique colors from an image, and generates and 1 pixel high, and 1 pixel wide for each color.
function uniqueImageColors($image_path)
{
    $imagick = new \Imagick(realpath($image_path));
    //Reduce the image to 256 colours nicely.
    $imagick->quantizeImage(256, \Imagick::COLORSPACE_YIQ, 0, false, false);
    $imagick->uniqueImageColors();
    $imagick->scaleimage($imagick->getImageWidth(), $imagick->getImageHeight() * 20);
    header("Content-Type: image/png");
    echo $imagick->getImageBlob();
}