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
廣告