使用 php imagick 将图像转换为草图

Convert image to sketch using php imagick

正在尝试使用 php 实现素描效果,但无法获得所需的输出。

尝试过

$im1->sketchimage(2, 1, -20);

但只得到模糊的图像。

另外,查了一下发现

*s = Read-File-Into-Image("/path/to/image")
*g = ConvertToGrayScale(s)
*i = Invert Colors(g)
*b = ApplyGaussianBlur(i)
*result = Colour Dodge Blend Merge(b,g)

尝试过

$im1->edgeImage(2);
$im1->contrastStretchImage(30, 500);
$im2 = $im1;
$im1->modulateImage(100, 20, 50); 
$im1->negateImage(FALSE);
$im1->gaussianBlurImage(5, 1, FALSE);
$im1->compositeImage($im2, imagick::COMPOSITE_COLORDODGE, 0, 0 );

仍然没有得到想要的输出。

半径应大于西格玛。否则将其设置为 0,以便 sdk 负责。使用高质量的图像和格式。 供参考..http://php.net/manual/en/imagick.sketchimage.php