PHP ImageMagick - 图像阈值



本章将学习如何使用ImageMagick库的一些内置函数创建不同类型的阈值图像。

PHP Imagemagick提供了广泛的功能,包括图像阈值化。图像阈值化允许您通过设置特定限制或“阈值”来调整图像的对比度,该限制或“阈值”决定图像中像素的明暗程度。

这使得创建具有清晰对象和背景边缘的高对比度图像以及没有强烈过渡的平滑渐变成为可能。通过使用PHP Imagemagick的图像阈值功能,用户可以轻松改进他们的数码照片和图形。

创建黑色阈值图像

'blackThresholdImage()'函数是Imagemagick库的一部分。它可以用来快速轻松地修改图像,方法是应用一个阈值,该阈值将与输入图像中的所有像素进行比较。

任何值低于指定阈值的像素将变为黑色,而任何高于阈值的像素将保持不变。

语法

public Imagick::blackThresholdImage(mixed $threshold): bool

此函数只有一个参数,即'threshold'。它指定与图像所有像素进行比较的阈值。

示例

此示例显示了'blackThresholdImage()'函数的使用。创建了一个Imagick对象,并输入一张图像。应用'blackThresholdImage()'函数,其参数为阈值,生成的输出图像保存为'blackThresholdImage.png'

<?php
   $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.png");
   $image->blackThresholdImage('rgb(1, 255, 141)');
   $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/blackThresholdImage.png");
?>

假设程序中的输入图像是(image.png):

Creating Black Threshold Image

输出

Creating Black Threshold Image

创建白色阈值图像

'whiteThresholdImage()'函数允许您设置指定的阈值,然后将其应用于输入图像的所有像素。低于阈值的像素将转换为白色,而高于阈值的像素将保持不变。

这对于图像分割或噪点去除等任务非常有益,允许您快速识别需要进一步关注的图像部分。

语法

public Imagick::whiteThresholdImage(mixed $threshold): bool

它只有一个参数 - 'threshold'。它指定与图像所有像素进行比较的阈值。

示例

以下示例演示了如何使用'whiteThresholdImage'函数。在这里,创建一个Imagick对象,并输入一张图像。然后应用'whiteThresholdImage'函数,其参数为阈值。生成的图像保存为'whiteThresholdImage.png'

<?php
   $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/imagee.png");
   $image->whiteThresholdImage('rgb(1, 255, 141)');
   $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/whiteThresholdImage.png");
?>

假设程序中的输入图像是(image.png):

Creating White Threshold Image

输出

Creating White Threshold Image
广告