GoogleがJPEGエンコーダー「Guetzli」をオープンソースで公開

by greyloch

Google製のJPEGエンコーダー「Guetzli」がGitHubで公開されています。生成されるJPEGファイルはlibjpegと比較したとき、同等の品質でファイルサイズが20~30%ほど小さくなるとのことです。

GitHub - google/guetzli
https://github.com/google/guetzli


特にニュースリリースなどは発表されていないようなのですが、2016年10月にEncode.ruというフォーラムにJyrki Alakuijala氏が投稿した内容(Googleキャッシュ)によると、このGuetzliはGoogleが新たな圧縮アルゴリズムとして2013年に発表した「Zopfli」ライクな、非常に遅いJPEGエンコーダーだとのこと。

画像の品質とファイルサイズについて、butteraugliを用いてlibjpegと結果を比較したところ、同等のスコア(品質)でもファイルサイズを35%減らすことができたそうです。なお、The Structural SIMilarity(SSIM)PSNR-HVS-Mでのスコアは13%~14%悪化したとのこと。ただ、目視の限りでは「ブロックノイズなどが減少してきれいになっている」そうです。

GitHubのページ内ではPOSIX(UbuntuやArch LinuxなどUNIX系OS)向けとWindows向けのビルド方法、およびBazelを使ったビルド方法が紹介されています。

Windowsの場合、Visual Studio 2015vcpkgが必要。なお、vcpkgの利用に、さらにgit.exeが必要になってくるので、Git for Windows などを入れる必要があります。

ただし、「Release」のページではバイナリファイルが公開されているので、こちらを利用する手もあります。Windowsの場合、「guetzli_windows_x86.exe」をダウンロード。


GUIはないので、こんな感じでコマンドプロンプトから利用することになります。実行ファイルのみなので任意のフォルダに置き、「入力するファイル名」と「出力するファイル名」を渡して実行します。画面はサンプルとして配布されている「bees.png」を変換してみたところ。


結果、174KBのPNGファイルが38KBのJPEGファイルに縮みました。入力可能なファイルはJPEGとPNG、出力はJPEGのみです。


これが実際に使用したファイル。まずは変換前の「bees.png」。


そしてこれが変換後の「bees-v2.jpg」。ファイルサイズでは100KBちょっと縮んでいますが、その違いはほぼわかりません。


・2017/03/17 9:50 追記
GoogleがオープンソースのJPEGエンコーダーGuetzliのリリースを発表しました。

Research Blog: Announcing Guetzli: A New Open Source JPEG Encoder

・関連記事
JPEG画像をロスレスで22%も圧縮できるオープンソースソフト「Lepton」をDropboxがリリース - GIGAZINE

JPEGファイルのサイズを最大で1/12ほどに縮められる「JPEGmini」と「JPEGmini Pro」を使ってみた - GIGAZINE

画質の劣化なしでファイルサイズを簡単に圧縮できる「mozjpeg encoder」 - GIGAZINE

画像データから不要なメタデータを一発で削除できる「JPEG&PNG Stripper」 - GIGAZINE

180

in レビュー,   ソフトウェア, Posted by logc_nt