Googleが2024年4月3日、新たなJPEGのコーディングライブラリである「Jpegli」を発表しました。Jpegliは高い下位互換性を維持しながら機能が強化されており、高品質の圧縮設定で圧縮率を35%も向上したとのことです。

Introducing Jpegli: A New JPEG Coding Library | Google Open Source Blog

https://opensource.googleblog.com/2024/04/introducing-jpegli-new-jpeg-coding-library.html



libjxl/lib/jpegli at main · libjxl/libjxl · GitHub

https://github.com/libjxl/libjxl/tree/main/lib/jpegli

インターネットは人々の生活や仕事にとって欠かせないものとなっていますが、見たいウェブページの読み込みが遅くてイライラしてしまうこともあります。ウェブページの読み込みに時間がかかる原因のひとつが「画像ファイルが重すぎること」だそうで、画像のサイズをより圧縮すれば読み込み速度が向上するものの、圧縮率を上げすぎると画像の品質が下がってしまうというトレードオフが存在します。

そこでGoogleは、画像ファイルの圧縮を改善するための新たなJPEGコーディングライブラリ「Jpegli」を発表しました。Jpegliは従来のJPEGコーディングライブラリよりも高速かつ効率的で、視覚的に美しいJPEG画像をエンコードできるとのこと。

Jpegliでは、次世代のJPEG形式「JPEG XL(JXL)」のために開発されたadaptive quantization heuristics(適応的量子化ヒューリスティックス)という技術を用いて量子化のデッドゾーンを空間的に変調し、画質の向上とファイルサイズの縮小を実現しているそうです。また、量子化マトリックスの選択を改善することで、エンコードとデコードの両方で高品質な結果が得られるとGoogleは説明しています。



Jpegliの特徴は以下の通り。

・オリジナルのJPEG規格と従来の8ビット形式に準拠し、libjpeg-turboやMozJPEGのAPI/ABIと互換性がある完全に相互運用可能なエンコーダとデコーダを備えている。

・画像の圧縮または復号による劣化が少なく、より正確で鮮明な画像を作り出せる。

・画質と圧縮密度を向上させながらlibjpeg-turboやMozJPEGなどの従来のアプローチに匹敵するコーディング速度を達成する。

・従来のJPEGコーディングライブラリではコンポーネントあたり8ビット(256階調)のダイナミクスしか提供されないが、Jpegliでは10+ビットでエンコード可能。そのため、画像をJPEGで圧縮した際にグラデーションに段階ができてしまうバンディングノイズを防ぐことができる。

・従来のJPEGコーデックよりも効率的に画像を圧縮するため、帯域幅とストレージを節約し、ウェブページの表示を高速化できる。



Googleがクラウドソーシングで募集した被験者を対象に、Jpegli・libjpeg-turbo・MozJPEGを使用して変換した画像の品質を評価してもらったところ、Jpegliは従来のJPEGコーデックと比べて品質を保ちつつ圧縮率を35%向上できたとのことです。

◆フォーラム開設中

本記事に関連するフォーラムをGIGAZINE公式Discordサーバーに設置しました。誰でも自由に書き込めるので、どしどしコメントしてください!Discordアカウントを持っていない場合は、アカウント作成手順解説記事を参考にアカウントを作成してみてください!

• Discord | "JPEGやPNGなど画像形式はしっかり使い分けてる?あまり気にしてない?" | GIGAZINE(ギガジン)

https://discord.com/channels/1037961069903216680/1225382022080368761