JPEG2000実習 ビットレート編

本日のお題:ビットレートと圧縮率は、コインの裏表


さて、今日は、かなり簡潔に行きます*1


最近の日本における大規模電子化プロジェクトは、JPEG2000のレイヤーを、ビットレートで指定することが多いですね。


例えば、

など。


ところが、これまでに見てきたように、OpenJPEGでは、各レイヤーの指定を圧縮率で指示します。例えば、http://d.hatena.ne.jp/denshikA/20100604で見たように、

C:\image_to_j2k.exe -i C:\test.tif -o C:\aaa.jp2 -r 50,20,10

という場合、「50分の1に圧縮したレイヤーと、20分の1に圧縮したレイヤーと、10分の1に圧縮したレイヤーを作成してください」ということでしたね。


はて、どうしましょう?


その昔、http://d.hatena.ne.jp/denshikA/20091204に書きましたとおり、ビットレートと圧縮率はコインの裏表のように1対1対応してまして、カラー画像で言うと、

ビットレートファイルサイズ
24そのまま
12半分
83分の1
64分の1
46分の1
38分の1
2.410分の1
212分の1
124分の1
0.24100分の1

となります。ちなみに、「ビットレート0.08にしなさい」というのは、グレースケール画像の時に出てくるお話で、ちょうど「100分の1に圧縮しなさい」というのと同義です。


仮にカラー画像で、「ビットレート0.20のレイヤーを作りなさい」と言われたら、

C:\image_to_j2k.exe -i C:\test.tif -o C:\aaa.jp2 -r 120*3

とすればOKです。


そして、仮に「可逆レイヤーとビットレート0.20のレイヤーを作りなさい」と言われたら、

C:\image_to_j2k.exe -i C:\test.tif -o C:\aaa.jp2 -r 1,120

とすれば良いということは、もう皆さんはお分かりですね。


というわけで、レイヤー指定については、ビットレートで指示されようが、圧縮率で指示されようが、恐れることはありません。なぜなら、両者は、コインの裏表なのですから。

*1:しかし、今、大規模電子化プロジェクトなどで使うJPEG2000変換について、あれこれ調べている人にとっては、重要な内容かもしれませんね。

*2:個人的には、0.20というのは中途半端な数字だと思うのですが、何か意図があるんでしょうかね?>某国立図書館さん

*3:ビットレート0.24のとき、100分の1なので、ビットレート0.20のときは、120分の1ですね