Skip to content
Related Articles

Related Articles

PHP | Imagick filter() Function

View Discussion
Improve Article
Save Article
Like Article
  • Last Updated : 25 Jul, 2019

The Imagick::filter() function is an inbuilt function in PHP which is used to apply custom convolution kernel to the image. A kernel, convolution matrix, or mask is a small matrix. It is used for blur, sharpen, embossing, edge detection, and many more.


bool Imagick::filter( $ImagickKernel, $channel = Imagick::CHANNEL_UNDEFINED )

Parameters: This function accepts two parameters as mentioned above and described below:

  • $ImagickKernel: It is a kernel or a linked series of multiple kernels that are used to be apply on the image.
  • $channel: It is a constant that is used on basis of the modes. It is of integer type and the default value of channel is Imagick::CHANNEL_DEFAULT.

Return Value: It returns true when the filter to the image is successfully applied.

Below program illustrates the Imagick::filter() function in PHP:


// Declare an imagick object
$imagick = new Imagick(
// Declare convolution matrix
$matrix = [
    [-1, 0, -1],
    [0,  5,  0],
    [-1, 0, -1],
$kernel = \ImagickKernel::fromMatrix($matrix);
$strength = 0.5;
// Scaling the image on kernel
$kernel->scale($strength, \Imagick::NORMALIZE_KERNEL_VALUE);
// Use addUnityKernel() function
$kernel->addUnityKernel(1 - $strength);
// Use filter() function 
header("Content-Type: image/jpg");
// Display the output image
echo $imagick->getImageBlob();



My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!