gpt4 book ai didi

PHP Imagick - 将图像转换为灰度(非常糟糕的结果)

转载 作者:可可西里 更新时间:2023-10-31 23:42:09 25 4
gpt4 key购买 nike

我在用 PHP 做一些图像编辑,因为 GD 提供的功能较少,所以我切换到 Imagick。

其中一个过程是对图像进行灰度化。一切顺利(在 Windows 7 本地,Imagick 2.2.1-dev 6.5.8-7 Q16),直到我将脚本上传到我的网络托管服务器(Linux,Imagick 3.0.1、6.2.8、2010-10-20, Q16).

我试过改变质量,但没有任何改善。

$img->setImageCompression(imagick::COMPRESSION_JPEG); $img->setImageCompressionQuality(100);

这是 GD、Imagick 和 Photoshop 的结果 enter image description here

我认为 3.0.1 版本有问题。有人可以确认吗?

问题 1:是否有其他方法可以使用 Imagick 将图像转换为灰度?

Q2:GD资源可以转成Imagick吗?所以我可以使用 imagefilter($img, IMG_FILTER_GRAYSCALE); 得到正确的结果,然后用 Imagick 输出。

ps:对于Q2,你可能会建议我只使用GD来处理图像。但问题是 imagejpeg() 无法保存resolution preserved 的图像。这实际上是我转向 Imagick 的原因。

最佳答案

这是我在 php/imagick 中制作黑白照片的首选方式:$im = $im->fxImage('intensity');

这对图像应用了一个函数,其中强度等于 0.299*red+0.587*green+0.114*blue

该公式基于我们的眼睛对不同颜色的敏感程度,因此它与“平面”灰度图像之间的区别确实是白天和黑夜。

更多细节在这里:

关于PHP Imagick - 将图像转换为灰度(非常糟糕的结果),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13547466/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com