PHP ImageMagick - 图像阈值


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

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

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

创建黑色阈值图像

“ blackThresholdImage ()”函数是 Imagemagick 库的一部分。它可用于通过应用与输入图像中的所有像素进行比较的阈值来快速轻松地修改图像。

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

句法

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

该函数只有一个参数,即“阈值”。这指定了与图像的所有像素进行比较的阈值。

例子

此示例显示“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) -

创建黑色阈值图像

输出

创建黑色阈值图像

创建白色阈值图像

“ whiteThresholdImage ()”函数使您能够设置指定的阈值,然后将其应用于输入图像的所有像素。低于阈值的那些值将转换为白色,而高于阈值的任何值保持不变。

这对于图像分割或噪声消除等任务非常有益,使您可以快速识别图像中需要进一步关注的部分。

句法

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

它只有一个参数—— “阈值”。这指定了与图像的所有像素进行比较的阈值。

例子

以下示例演示了如何使用“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) -

创建白色阈值图像

输出

创建白色阈值图像