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(); }