Imagick::convolveImage

(PECL imagick 2.0.0)

Imagick::convolveImageApplies a custom convolution kernel to the image

说明

bool Imagick::convolveImage ( array $kernel [, int $channel = Imagick::CHANNEL_ALL ] )

Applies a custom convolution kernel to the image.

参数

kernel

The convolution kernel

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channeltype constants using bitwise operators. Refer to this list of channel constants.

返回值

成功时返回 TRUE

错误/异常

错误时抛出 ImagickException。

范例

Example #1 Imagick::convolveImage()

<?php
function convolveImage($imagePath$bias$kernelMatrix) {
    
$imagick = new \Imagick(realpath($imagePath));    
    
//$edgeFindingKernel = [-1, -1, -1, -1, 8, -1, -1, -1, -1,];
    
$imagick->setImageBias($bias * \Imagick::getQuantum());
    
$imagick->convolveImage($kernelMatrix);
    
header("Content-Type: image/jpg");
    echo 
$imagick->getImageBlob();
}

?>

User Contributed Notes

peter at musicalsaw dot com 26-Sep-2013 07:22
Example of convolveImage:

<?php
// run an edge detection filter on an image
$image = new imagick( "diana.png" );
$edgeArray = array(-1,-1,-1,-1,8,-1,-1,-1,-1);
$image->convolveImage ($edgeArray);
$image->thresholdImage(1);
header('Content-type: image/png');
echo
$image;
?>