画像フォーマットの特性を理解する。

本日、職場にて。
何かと世話になっている先輩社員から「Blu-rayドライブ持ってないか?」と問いかけられた。

「そんなモノある訳無いッスよ!」
即答してみたものの、一体何に使いたいと言うのだろう??

改めて何がしたいのか問い質してみると、評価用データとして印刷した紙媒体をスキャナで取り込んだTIFFデータが1.5TB近くあるらしく、これをバックアップ用に書き出したいのだという。
そもそもBlu-rayだって2層メディアでも50GBしか無いし、メディア単価も高いし、これだけ大容量のデータをバックアップするのには向いていない。

「圧縮フォーマット使っちゃダメなんですか?」
「評価用のソフトをTIFF用で組んじゃったから、他の形式にはしたくないんだよね。」
「一旦PNGで圧縮しておいて、使う時だけTIFFに戻したらいいんじゃないですか?」
「…ピングって何??」

大抵、画像フォーマットに詳しくない人と話しているとこういった展開に陥る事が多い。
DTPやり始めて十ウン年の自分にとっては常識なのだが、普段WindowsでBMPとかJPEG位しか見慣れていない方々は、ナントカの一つ覚え的に‘圧縮フォーマットはJPEGBMPは重たいが高画質’程度の知識しか持ち合わせていないようだ。嗚呼、何と残念な事よ。


…と言う訳で。
上記のような事情を鑑みて、現在よく使われる画像のフォーマットについて簡単にまとめてみようかと思う。

Webでざっと調べてみた所、Windows 7のペイントから書き出し可能な主要フォーマットはBMPJPEGGIFPNG辺りが該当するらしい。
ここでは、これらのフォーマットを中心にその特徴を確認していきたいと思う。但し、時間とスペースの都合上全ての情報が網羅出来る訳では無い。あくまで概論として留めておいて頂きたい。

■非圧縮形式と不可逆圧縮形式、それと可逆圧縮形式。

非圧縮形式として有名なのがBMPTIFFである。これらの形式はドット毎の色情報が限りなくベタに近い状態で記述されているので、前述のように研究用のプログラムから画像情報を読み取ったりする場合には好適である。(※実際の所は、圧縮形式のTIFFというものも存在する。)
しかしながら、非圧縮形式の難点はファイルサイズが大きくなってしまう事である。圧縮形式のフォーマットを利用すればファイルサイズは小さく出来るが、圧縮形式と一口に言っても‘不可逆圧縮’と‘可逆圧縮’の2通りある。JPEGが不可逆圧縮である(上書き保存すればする程画質が劣化していく)事はある程度知れ渡っているようだが、Web及びデジカメの普及に伴ってJPEGばかりがクローズアップされた結果、可逆圧縮フォーマットが影を潜めてしまった感は否めない。
可逆圧縮形式とは、文字通り‘逆(=元の状態)に戻す事が可能’なデータ形式である。一体どういう事かというと、例えば赤いドットが100個並んでいるデータを‘赤赤赤赤………赤’等とズボラに記録するのでは無く、素直に‘赤x100’と記録するようなイメージ(実際にはもっと複雑な処理が施されているのだが)。データ自体は圧縮されているが色情報は失われていないので、圧縮後のデータから元のデータを完全に再現する事が可能なのである。

千奈美に、非圧縮形式と可逆圧縮形式はどちらが有利なのだろう? 既に述べた通り、特殊なソフトでドットデータをひとつひとつ拾っていくような処理に関しては非圧縮形式の方が有利な場合が多い。可逆圧縮方式の場合、画像データとして表示する際に圧縮されたデータを元通りに引き伸ばす(伸長する)処理が必要となるので、余分な演算処理が必要となる。
しかし、可逆圧縮形式はファイルサイズが軽くなる事が何よりのメリットであり、ファイルサイズが軽くなる分ディスクアクセスが減るので、非可逆圧縮形式より取り回しが良くなるケースも少なくない。余程特殊な理由が無い限り、可逆圧縮形式を利用するのがベターであろう。
可逆圧縮形式の代表例としてGIFPNGが挙げられるが、GIFLZWという圧縮アルゴリズムを用いていて、かつてこのLZWを巡って‘全てのGIFフォーマットユーザに特許料が課せられる’という情報がWeb上を駆け巡った事がある。当時Web向けの画像フォーマットはJPEGGIFの二強状態であったが、この事件を境に私も極力PNGを使うようになった。

■不可逆圧縮形式と可逆圧縮形式、それぞれのメリット。

それでは、不可逆圧縮形式を使うメリットとは何なのだろうか?
ズバリ言うと、不可逆圧縮形式は画像データをメチャクチャ軽く出来る‘場合が多い’。例えば、写真やグラデーションの多い画像をJPEG及びPNGで書き出した場合、ほぼ例外無くJPEGの方が軽くなる。但し、JPEGは画像全体を幾つかのブロックに区切ってブロック内の色情報を‘それっぽく’表現する圧縮方式を採っているので、どうしても元画像には含まれないノイズ成分が乗ってしまう。
一方、線画やテキストの割合が多いデータ、或いはベタ塗りの多いイラストレーションとなると話は別である。前述の通り、可逆圧縮方式は単調な情報の圧縮にめっぽう強い上、元画像に対する欠落も生じない。JPEGは圧縮時にノイズが乗ってしまう為、元々単調であるべき画像情報が却って荒らされてしまうので、結果的にはファイルサイズが余り小さくならない事が多い。何でもかんでもJPEGにすればファイルサイズが小さくなると思い込んでいる連中は実に多いが、不可逆圧縮方式であるという点も考慮すると、JPEGの乱用はむしろ避けられるべきである。

GIFPNG8、そしてPNG24。

GIFの特徴は、画像内の色情報を最大256色に限定してしまう点である。この方式のメリットとして、例えば‘モスグリーンx10、プルシアンブルーx20’といったような画像情報が存在する場合、モスグリーンにa、プルシアンブルーにbという符号を割り当てる事で‘ax10、bx20’といったように情報量をより少なく抑える事が可能になる(俗にインデックスカラーと呼ばれる方式)。また、GIFは‘無色透明’という色情報を持つ事も出来る。Web黎明期には、背景色を透かして見せる為に‘透過GIF’が多用された。
さて、実を言うとPNG方式はPNG8とPNG24の2種類が存在する。PNG8はGIFとよく似ていて、色情報は256色(8bits)しか保持出来ない。また、1bit分の透過情報を保持出来る。一方、PNG24は1670万色(24bits)の色情報を表現可能である為、表現能力の面ではBMPTIFFと全く同等である(むしろファイルサイズは小さく出来る)。更に、256階調(8bits)の透明情報を持たせる事も可能である。その分ファイルサイズは大きくなってしまうが、JPEGにはしたくない、或いはJPEGだと粗さが目立つといったような場合には是非利用してみたいフォーマットである。

尚、GIFPNG8では経験的にGIFの方が軽く仕上がる事が多いように感じる。

■結論。

  1. 二度と編集を行わない写真データは、JPEG形式。
  2. 再度編集する可能性がある、または極力高画質で表示したい写真データは、PNG24形式。
  3. 色数の少ないグラフィックは、PNG8形式かGIF形式。

以上、少しでも参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>