simpleA記

馬にふつまに 負ほせ持て

傷ついたら、どーなんの?


前に、電子画像データのファイル・フォーマットについて、あれこれと騒いでたの、覚えてる?今日はその続き。(大分の話じゃないから、頭ん中、入れ替えてよ)


このあたりでも見て、思い出してー。

http://www.myopenarchive.org/documents/view/76
http://hotdocs.jp/file/54640
http://hotdocs.jp/file/54641


要するに、

書籍電子化において、長い間、TIFFってのが使われてんの。でも、最近の書籍電子化ってのは、規模がやたらと大きくなってきたので、データ容量ってもんが気になってる。ストレージ(要はデータ入れておく装置)のコストも下がってきてるんだからいいじゃん?って言ってる人がいるんだけど、そんなこたーねぇ。データ容量が大きくなってくると、ストレージのコストうんぬんじゃないんだ。その扱いコストだとか、データ送信コストだとか、いろいろと厄介なんや。そんな中、誰かさんの陰謀で、JPEG 2000が密かに脚光を浴びてる。みんなで使おう、JPEG 2000!

ってな感じ。


さて、今日は、そんな状況下、一般人がよーく使ってるJPEGってのと、書籍電子化でよく使われてるTIFFってのと、最近頭角を現しつつあるJPEG 2000について、その特徴を見やすくしてみましたーって実験をご紹介。

A Format for Digital Preservation of Images
- A Study on JPEG 2000 File Robustness -
http://www.dlib.org/dlib/july08/buonora/07buonora.html


この論文を書いたイタリア人、パオロとフランコは何をしたのか?


音楽CDにたとえて、ちょー簡単に説明しましょ。音楽CDとかの表面に傷がついたり、汚れがついてたりすると、音が飛んだり、繰り返したりするでしょ?*1それと一緒な感じで、画像ファイルに、もし傷がついたら、その画像はどーなっちまうの?ってことをやってみたの。


その結果、

みんなのJPEGは、こんな感じ。傷ついた部分から下が全て真っ黒。

出所:http://www.dlib.org/dlib/july08/buonora/Jpeg1.20.png

書籍電子化のTIFFは、こんな感じ。傷ついた部分に、横にブワーっと線が入る(ことがある)。

出所:http://www.dlib.org/dlib/july08/buonora/Tiff.png

最後に新星JPEG 2000は、こんな感じ。どこに傷ができたんだか、よーわからん。(ってことは、音とびしないCDと一緒で、すばらしい!ってことだ。)

出所:http://www.dlib.org/dlib/july08/buonora/0.01.png


さて、なんでこんなことになんのか?(ここから、ちょいとマニアな領域。)

JPEG can use DCT to break up an image to its spatial frequency components, and it compresses the low-frequency component first. This important - but optional - feature is called progressive encoding. Unfortunately, JPEG is generally used in a sequential mode, rather than in a progressive mode, so when data is corrupted, the encoding/decoding process fails and the rest of the image is lost.

ってなわけで、「画像ファイルってのは、その方式として、大きくわけて二つあるわけ。プログレッシブ・モードとシーケンシャル・モード。途中に問題が発生すると、そこで立ち往生しちゃうのがシーケンシャル・モード。傷つきやすいタイプなの。それに比べて、ツラの皮が厚くて、多少の問題は気にしないタイプなのが、プログレッシブ・モード。あなたの性格はどっちのモード?(おっと脱線。)そんでJPEGってのは、ホントはね、プログレッシブ・モードをオプションとして選択できんだけど、一般のピープルが使ってるやつだと、シーケンシャルなんだ。だから、途中で傷があると、それ以降は真っ黒になってしまうってわけ」ってことらしい。


JPEGを使ったことある人は多いと思うので、もしかしたら、途中から真っ黒画像に遭遇したこともあったでしょう。これで、謎は解明されたでしょ。


ところが、TIFFのヨコシマは、意外と知られていない。っていうか、普通に画像ファイルを扱ってれば、あんまし、傷ついちゃうなんてこと起きないし、わざわざこんな傷つける実験する人いないしぃ。そのヨコシマな原因は、

The TIFF format has an end-line dedicated byte; therefore, removing or corrupting this value can damage a strip. In other cases, it is not possible to open the files if 0.1% errors are introduced (7 have failed: 30% tested image, see Table 1) and 1% errors occur (24 have failed: 100% tested image) .

ってなわけで、「TIFFには、各行の終わりだよってのをお知らせする部分がある。もし、その部分が傷ついちゃうと、1行全部がおかしなことになっちゃうか、たまに、ぜーんぶの画像がおかしくなっちゃうんだよ。傷の量が、全体の1%に達すると、100%の確率で画像が開かなくなっちゃったんだよ」ってことらしい。


そんで、JPEG 2000はなんで傷ついても立ち直りが早いかっていうと、

JPEG 2000, however, uses markers, headers and dedicated coding to prevent coding errors or transmission errors.

ってなわけで、「JPEG 2000には、自然治癒力が備わっておって、多少の傷なら、もとに戻るんじゃい」ってことらしい。そりゃ便利だ。


というわけで、結局何が言いたいのかって言うと、「ファイル・フォーマットの違いについて覚える語呂合わせ(本日公開のセックス・アンド・ ザ・シティ編*2)。失恋したら、

  • もう人生終わりだと、塞ぎ込んじゃうJPEG (シャーロット)
  • 大きな傷を残しながらも、強く生きていこうとするTIFF (キャリー、ミランダ)
  • 何もなかったかのように振舞うJPEG 2000 (サマンサ)

さぁ、最後の夏を振り絞って、映画館で「セックス・アンド・ ザ・シティ」見て、ファイル・フォーマットへの造詣を深めましょ」ってこと。


JPEG2000

*1:最近のCDはそんなに音とびとかしないかも。でも、なんとなく、言いたいこと分かるでしょ?

*2:http://sexandthecity-movie.gyao.jp/