【问题标题】:PHP fastest way to apply strong blurPHP 应用强模糊的最快方法
【发布时间】:2012-12-28 10:54:02
【问题描述】:

我需要编写一个脚本来模糊图像。如果我不需要它真的很难模糊它,那将不是问题。

现在,GD 的高斯模糊滤镜真的很弱。 imageconvolution 出于某种原因只接受 3x3 矩阵,所以我不能生成更大半径的gaussian matrix 以获得更强的模糊效果?即使可以,我也不确定它会多快。

多次运行高斯模糊可以解决问题,但真的很慢。为了达到我正在寻找的效果,我需要在一张图片上运行 40-100 次,当然,这需要 10-20 秒才能完成。

有没有办法使用与 PHP 捆绑在一起的库在合理的时间内实现我正在寻找的东西?

这是确切的效果。 生成时间:10.972307920456 秒。 80 次传球。

原文:

已处理:

【问题讨论】:

  • 您可以检查 ImageMagick 的性能。它有 PHP 原生接口:imagemagick.org/Usage/blur
  • 但我需要它与 PHP 捆绑在一起,不幸的是它没有。如果有人知道一些极其不准确但非常快速的算法,我可以在每个像素的基础上运行图像,我会非常高兴。
  • 但是 GD(您当前使用的)没有与 PHP 捆绑在一起。它只是有 PHP 的包装器,就像 IM...
  • 您可以查看stackblur 过滤器并将其移植到 PHP。
  • 您可以尝试的另一种方法是将图像调整为原始大小的 10%,然后再次放大或让浏览器以原始大小呈现。

标签: php image gaussian


【解决方案1】:

bool Imagick::blurImage ( float $radius , float $sigma [, int $channel ] )

一)。 $radius 模糊半径

b)。 $sigma 标准差

c)。 $channel 通道类型常量。未提供时,所有通道都会模糊。

【讨论】:

    猜你喜欢
    • 2017-08-03
    • 2010-09-11
    • 2016-09-26
    • 2012-11-20
    • 2013-01-30
    • 1970-01-01
    • 2020-03-17
    • 2020-11-30
    相关资源
    最近更新 更多