0

我正在尝试使用 PHP 的 pecl 模块 Gmagick 创建一个脚本,以从图像中删除一些白色的背景。在命令行上,我对 imagemagick 使用以下两个命令:

convert source.jpg \( +clone -fx 'p{0,0}' \) \
        -compose Difference -composite  \
        -modulate 100,0 -alpha off -threshold 10% source_mask.png

convert source.jpg source_mask.png \
        -alpha Off -compose CopyOpacity -composite \
        source_transparent.png

我已经能够采取最初的几个步骤:

$source_gm = new Gmagick();
$source_gm->readImage($source_path);

$white_gm = new Gmagick();
$white_gm->newImage($source_gm->getImageWidth(), $source_gm->getImageHeight(), 'white', 'png');

$mask_image = $source_gm->compositeImage($white_gm, Gmagick::COMPOSITE_DIFFERENCE, 0, 0);
$mask_image->modulateImage(100, 0, 0);

Gmagick 模块有某种常数,应该用于阈值Gmagick::COMPOSITE_THRESHOLD。但是,没有关于如何使用它的提示。有人可以帮我解决门槛吗?

谢谢!

4

1 回答 1

0

我发现在 gmagick 中还没有 thresholdImage 函数。该功能已在 SVN 中实现,但尚未发布。

于 2012-04-19T13:15:41.580 回答