「GD vs ImageMagick」PHPで画像加工性能比較
PHPベースでCMSを構築する際に、アップロードされた画像をGDライブラリを利用してリサイズ、トリミング、圧縮などの画像処理をすることがよくあるのですが、改めてその性能について検証してみようと思います。
また、今回は画質がよいと言われているImageMagickライブラリもあわせてテストしてみます。
検証した環境は以下のとおりです。FuelPHPをベースとしたCMSで、GDライブラリとImageMagickライブラリの圧縮率をそれぞれ変えてみて、jpgファイルの品質を比較してみます。
PHP 7.0.18
FuelPHP 1.8
FuelPHP 1.8
テストに利用するのは以下の横幅720px、縦幅480pxの画像です。
この画像をそれぞれのライブラリで品質を100%、90%、80%、70%に設定して、サイズ640 x 480にトリミングしてみます。
処理結果は以下の通りです。
GDよりもImageMagickの方が画質がよいと聞いていたので、これを機にImageMagickに乗り換えようと考えていましたが、見比べてもそんなに劣化はみられないですね。サンプルにする画像が悪かったかな。
ファイル容量のほうはGDのほうが圧縮率がよさそうです。運用を考えてもGDの90%で問題なさそうです。
また、処理時間ですが、体感でも明らかにImageMagickのほうが処理が重かったです。
今回の検証結果で、そのままGDを使い続けることにしました。ImageMagickについては、そのメリットについてもう少しつっこんだ実験をしてみたいと思います。
コメントする