写真撮影に関する色々なこと

いろいろあるのだ 〜 画像ファイル形式

内容がダブるところもあるけど、画像ファイル形式のことも一応言っとく。色々あるんだけど、何をやるかってんでどれがいいかってことになるんだ。違いを知っとくとそれなりに便利っつうか、まあ、無理なく綺麗に扱えるっちゅうわけ。CGやるんでもないから、写真撮ってWEBに載っけるのに関係するのを並べてみる。それだけじゃつまらんから、ついでに余分なことも。余分なことから先に書いちゃう。

画像ちゅうてもコンピュータの場合、色が付いた点がびっちり並んでるものなんだ。この点はぞれぞれ、原色が混ざっていろんな色になってる。3原色って聞いたことがあるでしょ。黄色。この3原色は混ぜると黒になるっていうアレ。実際に混ぜても真っ黒になんかならないから、3原色プラス黒ちゅうのが普通。まあ、ここまではいいんだけど、印刷用インクで赤とか青って安定した色が作り難いんだと。昔の話で今は違うんだろうけど、鉱物を原料にするといつも同じ色のインクができるけど、そうじゃないとできんちゅうことがあったらしいんだな。そんで、印刷用のインクとしてはシアンマゼンダ黄色ってことになった。こいつらを混ぜると黒になるわけなんだけど、どうしても真っ黒にはならんから、黒を足してCMYK。理論的にはこいつらをうまいこと混ぜてやって、白い紙の上に印刷すると全部の色が出せる。んだけど、微妙な色はやっぱ無っ理〜なんで、6色インクなんてなプリンターがあったりする。おおっと、脱線し過ぎ、無理し過ぎ。色相とか彩度とか明度とか、そんな言葉もあったっけなあ。

ところがぎっちょん、実はこれって紙に絵を書くとか、印刷するときの原色。ディスプレイ画面だとで、この場合は光を3色混ぜると白になる。こっちの方はちゃんとそれぞれの色が正確に出せて、混ぜると見事に白もできるから3色で済むんだ。光の強さで微妙な色も出せるっし。これがRGB。この3色を最弱(黒)を0として最強を255にして、つまり強さを256段階にして混ぜる。256段階てのは8ビット(2進法で8桁)だから、これが3色で24ビットカラーとはこのこと。およそ1670万色になって、人間これ以上分けられても見分けがつかんもんで、トゥルーカラーとまあ、こんなわけなんよ。そうそう、デジタルカメラ用のCCDね。あれもRGBのやつとCMYのやつがあるんだ。印刷用ならCMY、画面表示用ならRGBと言いたいとこだけど、実は必ずRGBに変換するからRGBフィルターの方がいいんだ。ところが世の中うまくいかなくて、RGBフィルターは暗い。感度が悪くなるから画素数の多いCCDを小さくできないんだって。いかんいかん。また行き過ぎ。

シアン マゼンダ 黄色 シアン マゼンダ 黄色

何の話だっけ。そうそう、画像ファイル。それを言うためにここまで脱線しちゃって悪かったけど、人生何が役に立つかわかんないもんね。そんなわけで、画像ファイルってのは色付きの点々データを並べたもんなんだ。その並べ方の違いがファイル形式でござい。PCの画面て、最近だと1024×768とか、もっととか、もっともっととかがあるでしょ。例えばこの1024×768だと点の数は79万個くらいになる。電卓で計算できる。画面に顔を近づけて虫メガネでじっと見ると、ひとつの点だと思っても実際は赤青緑の3つの点が光ってる。79万個に見える点それぞれが3つの点でできているってことは、つまり、×3で236万個の点があるちゅうわけ。1個の点を1バイトであらわすとなると、およそ2.3メガバイトだあ。パソコンで扱う分はどってことないかもしんないけど、インターネットで送るにゃあでかすぎるって。どうしてくれる。

こうやって全部の点を馬鹿正直にあらわしている画像ファイルの代表例がBMP(ビットマップ)。馬鹿とか言うと失礼だから、違う言い方をすると、基本。ファイルはでかい。だれよりもでかい。その分、パソコン上では扱い易い。だって、そのまんまだから。けどやっぱ、扱い易いちゅうメリットよりも、でかいちゅうデメリットが目立つよねえ。少なくとも、インターネットで送ったりすんなよ、絶対。さあ、そろそろ本題に行きまっせ。インターネットで使われてる画像ファイル形式だす。

でかいのは小さくする。圧縮だ。画像ファイルの形式はこの圧縮の方法で違っていると言ってもそんなに乱暴じゃない。言い方は乱暴かもしれないけど、言ってることはそうでもないんだ。それはまあそれとして、この圧縮の方法によって得意不得意なんかが出てくる。

GIF(ジフ)。これはそもそも最大で256色しかサポートしない。この時点で、1670万色に比べて3分の1になる。64色とか、16色とかにするともっと小さくなる。それを間引くとかはしないで圧縮する。しかもこの圧縮方法は塗りつぶしに強い。例えばロゴマークとかの、色数が少なくて塗りつぶりが多い、ハッキリした画像を扱うというのが得意。逆に自然画なんかだと全然ダメ。256色って多いように思うかもしれないけど、人間の肌なんかを256色にしてごらん、不気味だぞ。しかも塗りつぶしが少なくて入り組んでたりすると圧縮効果もあまり出ない。自然画をGIFにすると、見た目は悪いわ、たいして圧縮されないわ、いいところがない。コンピュータで画いた絵はGIF、と思っておくこと。他のGIFのメリットとしては、背景を透けさせる「透過」と、動きを与える「アニメーション」があるね。デメリットとしては、圧縮の特許を使うのにライセンス料が必要なことがある。これ結構つらい問題でね。フリーソフトからはライセンス料は取らない、と言ってたはずなのに、やっぱ取るもんね、ちゅうことになったもんで、フリーのソフトを作ってた人達がソフトの配布を止めたりとかになってる。GIFなんかもう使わねーぞー、とかさ。

JPEG(ジェーペグ)。JPEGでもJPGでもいい。これはなんと、圧縮のときにデータの間引きをする。まあそうそう気付くもんでもなかろう。人間の目なんていいかげんなもんだし。というわけだな。特に色が微妙に変化していくとこなんかで強みを発揮するんだ。だから、自然画を扱うと違和感の少ない状態でファイルサイズを小さくしてくれる。その代わり、元には戻せない。だって、データを間引いているし、その分をごまかしているわけなんで。ここで結構重要になってくるのは圧縮率の設定。圧縮率を高くするとファイルサイズは小さくなる。その分、間引きとかごまかしが増えてくる。どっちを取るかが微妙。強い圧縮をかけると折角の写真が見づらくなるし、かと言ってねえ。どの程度がいいかは、扱う画像の様子で違うし、試してみるしかない。デジタルカメラではもっぱらJPEGを使っているんだけど、あれの解像度の設定は実はJPEGでの圧縮率の設定だったりするんだ。ところで、GIFが得意とするような画像をJPEGに扱わせると、これまた悲しいことになる。色のメリハリが強い画像に対しても、微妙な変化のつもりで扱ってくれちゃうから、境目のところにノイズが出たりするんだ。それとね、GIFみたいなアニメーションとか透過処理もできんのよ。できんのよ、ではどっちの意味かわかんねーね。できんちゅうことです。つまり、無理ちゅうこと。余計なことだけど、強い圧縮でモザイクっぽくなったのはブロックノイズとかブロック歪みっちゅうんだぜ。そんで、境目のとこにもやもや出るのんがモスキートノイズ。蚊が飛んでいるみたいに思った人がいたらしい。

PNG(ピング)。これは新しい形式だ。ブラウザのバージョンによってはサポートされていないし、サポートされていても全部の機能が発揮されるわけでもない。まあ、昔々のブラウザはGIFしか表示できなかったわけだし、早晩ちゃんとしてくるとは思うけどね。PNGは、まず、アニメーション以外はGIFと同等の機能を持っている。しかもGIFよりも圧縮率は良いらしいし、エラーチェックとかも優れているらしい。GIFに無い(JPEGにも無い)機能としては、アルファチャンネルちゅうのがある。こいつは、画像の好きな部分を透明化できるもので、例えば、周囲をぼかして背景になじませるみたいなことができる。色数は最大256とかではなく1670万色、どころか、更にそのはるか上までをサポートする。見たって解らんはずだが。圧縮はJPEGのような間引きをしないんで、JPEGほど小さくならんが、まあそこそこいける。ちなみに、まだまだ進化中で、アニメーションやらもいずれはできるようになるそうだ。GIFが嫌いな人、画質を絶対落とさずに扱い人、そういう人向けだね。今後の発展を期待して使うのも一興。とは言え、表示できないブラウザがゴロゴロいているのも事実なんで、根性入れてやってくれたまい。

圧縮の話のところで間引き云々と言っているけど、要は完全にもとの画像に戻せるかどうかと言うこと。戻せるのを可逆圧縮、戻せないのを非可逆圧縮と言う。もっともこれは提供する側にしかわからんことだがね。見る側にとっちゃ、見てるもんがすべてなわけでしょ。もっと綺麗な絵が欲しいちゅうのはあるかもだけど、表示されている絵から元の絵を再現、言うても元の絵を知らんから関係ないじゃん。なんか、説明下手でうまく言えんけど、綺麗なまんまで表示できるかっつうだけだ。そうそう、GIFは可逆だから元の絵のまんまで表示できるわけんだけどさ、色数の多い画像だと256色に減色しなきゃならないから、ここで随分と劣化するってえわけだ。なんてことを言っているうちにも時代は進化するしねえ。動画にでもなったらまた別のことを勉強しなきゃなんねえんかなあ。

いけね、モノクロとかグレーとかの話、ころっと忘れてた。ま、いっか。

<= back

-- Taq's Herb Photo Gallery --