新聞電子化とJPEG 2000 その4

本日のお題画像

    


引き続き、NDNP(全米電子新聞プロジェクト*1)におけるJPEG2000の詳細を見てみます。概要は、http://d.hatena.ne.jp/denshikA/20091007をご覧ください。


本日、説明するのは、項目10だけですので、時間のない人もすっ飛ばずに読んでくださいね。


項目10ですが、

10.The JPEG 2000 will have 6 decomposition levels.

というわけで、「分解レベル(decomposition levels)は6でお願いします」ということです。


今からちょっと遠回りしますが、最後には、ちゃんと「分解レベル(decomposition levels)」の話に戻ってきますので、しばしお付き合いを。


まず、次の二つの画像を見比べてください。
 
右の画像が、ボケっとしてますね。ところが、右の画像を、ちょびっと小さくしてみると、どうでしょう?
 
二つの画像は、同じくらい、くっきりしてませんか?


つまり、「多少ボケた画像でも、小さくすると、ボケてんのかどうか、わからない」という法則です。


先ほどの同じ大きさの画像に戻って、左の画像から、右の画像を引き算してみましょう。
    
一番右の画像は、一番左の画像がちょっとボケて真ん中の画像になった時に、消えていった情報ということになります。分かりにくいかもしれませんので、一番右の画像だけ、大きくしておくと、

という感じで、よく見ていただくと、りんごの輪郭らしきもんがうっすらと現れています。この白く出ている部分が、消えていった情報です。


ここで真ん中の画像を小さくしたものと取り換えてみましょう。
    
これは冒頭のお題画像ですが、日本語に翻訳しますと、「元の画像(左)を、長さ半分*2の画像(真ん中)に縮小するとき、多少の情報(右)を省略しちゃっても見た目変わりません」ということです。また、
    
とすれば、「小さくしちゃった画像(真ん中)にさっき省略しちゃった「多少の情報(右)」をつけたしてやれば、元の画像(左)に戻ります」ということです。


さて、「多少ボケた画像でも、小さくすると、ボケてんのかどうか、わからない」法則が分かったところで、そろそろ、「分解レベル(decomposition levels)」の話に戻っていきましょう。


今、2048(縦)x2048(横)の画像があったとします。長さ半分にすると、1024x1024ですね。そして、先ほどの法則を適用しますと、

(1) 2048x2048画像 = 1024x1024画像 + 「省略しても良い多少の情報パート1」

となります。これが「分解レベル1」ということです*3。続いて、

1024x1024画像 = 512x512画像 + 「省略しても良い多少の情報パート2」なので、


先ほどの(1)に代入してあげれば、


(2) 2048x2048画像 = 512x512画像 
                 + 「省略しても良い多少の情報パート2」
                 + 「省略しても良い多少の情報パート1」

ということになります。これが「分解レベル2」ということです。同様に、今回のNDNPが指定している「分解レベル6」というのは、

(6) 2048x2048画像 = 32x32画像*4 
                 + 「省略しても良い多少の情報パート6」
                 + 「省略しても良い多少の情報パート5」
                 + 「省略しても良い多少の情報パート4」
                 + 「省略しても良い多少の情報パート3」
                 + 「省略しても良い多少の情報パート2」
                 + 「省略しても良い多少の情報パート1」

という感じになるのが、ご理解いただけたのではないでしょうか。つまり、「分解レベル6」というのは、「元の画像に対して、長さ1/64の画像と、「省略しても良い多少の情報」を6つ作ること」なのです。


さて、これまでのキーワードと有機的に結びつけていきますので、ここで、前々回の「プログレッション(progression)」を思い出してください。http://d.hatena.ne.jp/denshikA/20091009

Rが先頭に来る「プログレッション順序(progression order)」を選択すると、こういう感じになります。


と書きました。


この上図が、「分解レベル2」のものだと考えてください。


JPEG2000の画像ファイルとしては、次のような順序で記録されています。

左の小さい画像+「省略しても良い多少の情報パート2」+「省略しても良い多少の情報パート1」


画像ファイルを表示させようとすると、まず、

左の小さい画像 +「省略しても良い多少の情報パート2」+「省略しても良い多少の情報パート1」

の部分が表示されて、先ほどの一番左の小さな画像となり、続いて、

左の小さい画像 +「省略しても良い多少の情報パート2」+「省略しても良い多少の情報パート1」

の部分までが表示されて、先ほどの真ん中の中くらい画像となり、最後に、

左の小さい画像 +「省略しても良い多少の情報パート2」+「省略しても良い多少の情報パート1」

という感じで全部が表示されて、先ほどの右の大きい画像となるわけです。


というわけで、「プログレッション順序(progression order)」のところで出てきた「解像度(resolution)」というのは、「分解レベル(decomposition levels)」における画像のサイズのことである、ということがご理解いただけたかと思います。


ちょっと長かったですが、この「分解レベル(decomposition levels)」というのは、JPEG2000にとって、本丸に該当する要所です。なので、しっかりマークしておいてください。まだ少し時間がある方は、補足へとお進みください。



(補足)スーパーマニアのためのJPEG2000実習
マニアの中のマニア、スーパーマニアのために、JPEG2000に関する情報です。
続きは、こちらをご覧ください。http://denshika.cc/faq/faq7s.php

*1:http://d.hatena.ne.jp/denshikA/20090827参照

*2:面積だと1/4ですね

*3:文字通り、分解してますよね。

*4:元の長さの1/64(1/[2の6乗])になります