未捕获的异常 'ImagickException',错误信息为“比较图像失败”。

3

这是我第一次使用ImageMagick,我正在进行一个小测试,只是为了看看它是否能够按照我的期望工作。然而,我遇到了“比较图像失败”的错误。很可能是因为我做错了什么,因为我不太清楚Imagick的工作原理。我愿意听取其他建议,我只想比较两张有很少变化的图片。

<?php
$image1 = new Imagick();
$image2 = new Imagick();
$image1->readImage("export/image1.jpg");
$image2->readImage("export/image2.jpg");
$result = $image1->compareImages($image2, 1);
$result[0]->setimageFormat("jpg");
echo $result[1] . '\n';
?>

错误信息如下所示:
root@review1:/var/www/html# php export/image.php
PHP Fatal error:  Uncaught exception 'ImagickException' with message 'Compare images failed' in /var/www/html/export/image.php:6
Stack trace:
#0 /var/www/html/export/image.php(6): Imagick->compareimages(Object(Imagick), 1)
#1 {main}
  thrown in /var/www/html/export/image.php on line 6
1个回答

4

对于未来遇到相同问题的用户,我已经解决了。如果您尝试比较两个具有不同尺寸的图像,则会出现此错误。我所做的只是重新调整两个图像的大小,使它们具有相同的尺寸。在我的情况下,看起来像这样:

$image1->resizeImage(400,400,Imagick::FILTER_LANCZOS, 1);
$image2->resizeImage(400,400,Imagick::FILTER_LANCZOS, 1);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接