Smashing Magazine - WE SMASH YOU WITH THE INFORMATION THAT WILL MAKE YOUR LIFE EASIER, REALLY.

Sergey Chikuyonok氏がSmashing MagazineにおいてClever JPEG Optimization Techniquesのタイトルのもと、JPEG画像を最適化するテクニックを紹介している。ツールを使った最適化ではなく、JPEGの特性を理解することで、より進んだ最適化を実施するという内容になっている。紹介されているテクニックは次のとおり。

8ピクセルグリッド

JPEGでは画像データは8x8ピクセルのブロックの羅列として保持される。このため、とくに直線成分が含まれた画像では、区切りの部分が8ピクセルに一致するかどうかで、圧縮後の画像がぼやけるか、シャープに見えるかがかわってくる。直線成分の部分をはっきりさせたいなら、その部分が8ピクセルの区切り目にくるように画像の位置を調整してから、JPEGデータとして最適化して保存するといい。ファイルサイズの縮小にもつながる。

カラー最適化

JPEGのカラーモデルとしてはRBGが採用されることが多いが、YCbCrも使用できる。多くのJPEG最適化ツールでは、YCbCrのように色相、彩度、明度を保持するカラーモデルの場合、明度は圧縮せずに可能なかぎりもとの状態を保とうとする傾向にある。これは人間の視覚が明度に敏感なため。このため、画像に黒のような明度データが0でいい領域がある場合、その部分を明示的に指定してツールによる圧縮が可能になるように補助してやる。操作方法は複雑に見えるかもしれないが、効果的なわりには作業はそれほど難しくない。

一般的なJPEG最適化ティップ

JPEG圧縮をかける場合にもっとも注意深くなる必要があるのはクオリティの値だが、利用する圧縮プログラムごとに特性が違うことに注意する必要がある。またクオリティに100を指定してももっとも高いクオリティというわけではないため、画像損失を避けたいのであれば95を指定しておけば十分。またPhotoshopを使う場合、クオリティに50以下を指定するとcolor down-samplingと呼ばれる最適化が実施されるようになり、ハイコントラストな画像では汚くなる傾向にある。画像が小さくハイコントラストである場合には51以上を指定したほうがいい。