The ImagickPixel::getColorCount() function is an inbuilt function in PHP which is used to get the color count associated with the pixel color. A color count is the number of pixels in the image that have the same color as this ImagickPixel. getColorCount() appears to only work for ImagickPixel objects created through getImageHistogram().
Syntax:
int ImagickPixel::getColorCount( void ) : int
Parameters: This function doesn’t accepts any parameter.
Return Value: This function returns an integer containing the color count.
Exceptions: This function throws ImagickException on error.
Below given programs illustrate the ImagickPixel::getColorCount() function in PHP:
Program 1:
<?php // Create a new imagick object $imagick = new Imagick(   // Get the image histogram $histogramElements = $imagick->getImageHistogram();   // Get the last index $lastIndex = count($histogramElements) - 1;   // Get the element from array which is // a ImagickPixel object $lastColor = $histogramElements[$lastIndex];   // Get the Color count echo $lastColor->getColorCount(); ?> |
Output:
18
Program 2:
<?php // Create a new imagick object $imagick = new Imagick(   // Get the image histogram $histogramElements = $imagick->getImageHistogram();   // Get the element from array which is // a ImagickPixel object $lastColor = $histogramElements[0];   // Get the Color count echo $lastColor->getColorCount(); ?> |
Output:
1
Program 3:
<?php // Create a new imagick object $imagick = new Imagick(   // Get the image histogram $histogramElements = $imagick->getImageHistogram();   // Get the element from array which is // a ImagickPixel object $firstColor = $histogramElements[0];   // Set the Color count $firstColor->setColorCount(20);   // Get the Color count echo $firstColor->getColorCount(); ?> |
Output:
20
Program 3:
<?php // Create a new imagick object $imagick = new Imagick( Â Â // Get the image histogram $histogramElements = $imagick->getImageHistogram(); Â Â // Get the whole color stats echo "R G B Hue :Count<br>"; foreach ($histogramElements as $pixel) { Â Â Â Â $colors = $pixel->getColor(); Â Â Â Â foreach ($colors as $color) { Â Â Â Â Â Â Â Â print($color . " "); Â Â Â Â } Â Â Â Â print(":" . $pixel->getColorCount() . "<br>"); } ?> |
Output:
R G B Hue :Count 0 22 35 1 :1 0 25 37 1 :1 0 24 37 1 :1 0 31 43 1 :1 0 32 44 1 :1 0 33 45 1 :1 0 37 49 1 :3 . . .
Reference: https://www.php.net/manual/en/imagickpixel.getcolorcount.php
