« C++ Builder XE6 で FireMonkey を使わず NDK の機能で作る | メイン | invoke で呼び出すシンプルな RenderScript »

2014年05月30日

吉里吉里Z 開発:: なぜ JPEG XR ?

    

なぜか WebP を推す意見を何度か目にするので、書いておく。

WebP は、JPEG の高圧縮版を目指して開発されているように感じる。
そして、WebP は 4:4:4 形式をサポートしておらず、4:2:0 形式になる。
これがどういうことかすぐにわかる画像が以下。

png_webp_xr.png

青と赤の劣化が激しい。
完全に違う色になっている。
4:2:0 は、色差成分が 1/4 サイズになるので、どうしても青と赤が劣化する。
青と赤成分の画像サイズが 1/4 になっているのに近い。
この性質から WebP をサポートしようという動機は薄い。
もちろんアルファチャンネルが後から追加されたように、後で 4:4:4 形式が追加される可能性はあるが、そんなにコロコロ仕様追加される画像フォーマットは面倒だと言う面もある。

「非可逆+アルファチャンネル」形式が欲しいと言うところが JPEG XR のサポート理由として大きい。
そういう意味では、JPEG 2000 でもいいが、Windows での使い勝手と言う意味では JPEG XR の方が良い。
JPEG 2000 と JPEG XR で画質や処理負荷では判断が難しい。
別に JPEG 2000 のサポートがあってもいいとは思うが、今のところそこまで組み込みたいと言う気持ちはない。

mozjpeg は? と言うピントの外れた意見も見た。
フォーマット的に mozjpeg は、ただの JPEG と全く同じである。



投稿者 Takenori : 2014年05月30日 18:45




comments powered by Disqus
Total : Today : Yesterday : なかのひと