(PECL imagick 2.0.0)

Imagick::contrastStretchImageMejora el contraste de una imagen en color


bool Imagick::contrastStretchImage ( float $black_point , float $white_point [, int $channel = Imagick::CHANNEL_ALL ] )

Mejora el contraste de una imagen en color ajustando los colores de los píxeles de color para abarcar el rango completo de los colores disponibles. Este método está disponible si Imagick ha sido compilado con la versión 6.2.9 (o superior) de ImageMagick.



El punto blanco.


El punto negro.


Proporcione cualquier constante de canal que sea válida para su modo de canal. Para aplicar más de un canal, combine las constantes channeltype usando operadores a nivel de bits. Imagick::CHANNEL_ALL. Consulte esta lista de constantes de canal.

Valores devueltos

Devuelve TRUE en caso de éxito.

add a note add a note

User Contributed Notes 1 note

2 months ago
Trying to figure out what values the black and white points can have and what their effects are nearly drove me around the bend. However, this works:

= 480;
$height = 360;
$mask = new Imagick ();
$mask->newImage ($width, $height, "black");
$draw = new ImagickDraw ();
$draw->setFillColor ("white");
$draw->ellipse ($width / 2, $height / 2, $width * 5 / 12, $height * 5 / 12, 0, 360);
$mask->drawImage ($draw);
$mask->blurImage (0, 50);
$mask->contrastStretchImage (10, 125000);
$mask->writeImage ("mask.png");

The result will be a vignette mask with the pixels in the corner being pure black, and the ones in the middle pure white (which is not the case if the line is commented out). Reducing the white value to, say, 100, turns most of the grey pixels white.
To Top