bzz(1) DjVu 汎用圧縮ユーティリティ。

書式

   エンコーディング:

bzz -e[blocksize] inputfile outputfile

   デコーディング:

bzz -d inputfile outputfile

説明

最初の書式では (オプション -e ) inputfile に指定したファイルを圧縮して、 outputfile にファイルを書き込みます。 二番目の書式では (オプション -d ) inputfile に指定したファイルをデコードして、 outputfile にファイルを書き込みます。

オプション

-d
デコードモード。
-e[blocksize]
エンコードモード。 オプションの引数 blocksize は Burrows-Wheeler 変換が使用するファイルのブロック数をキロバイト単位で指定します。 デフォルト値は 2048 KB です。 最大ブロックサイズは 4096 KB です。 大きいブロックサイズを指定すると圧縮比率が高くなり、エンコーダおよびデコーダ のメモリ消費量が増大します。入力ファイルのサイズより大きなブロックサイズを 指定することはできません。

アルゴリズム

Burrows-Wheeler 変換は Karp-Miller-Rosenberg および Bentley-Sedgewick アルゴリズム とのコンビネーションで動作します。これは (Sadakane, DCC 98) に少しフレキシブルな ランキングスキームを加えたものに相当します。シンボルは発生頻度の推定値に基づいて 序列化されます。シンボルのランクはシンプルな固定のツリー構造と ZP バイナリアダプティブ コーダ (Bottou, DCC 98) を使用して符号化されます。

Burrows-Wheeler 変換は有名な圧縮プログラム bzip2 でも使用されています。 bzz の特徴は ZP アダプティブコーダを使用していることです。 アダプテーションノイズは最大 5 程度ですが、アダプテーションの 利点で相殺できる程度のものです。

パフォーマンス

以下の表は Canterbury Corpus ( http://corpus.canterbury.ac.nz ) での比較結果 (1 文字あたりのビット数) です。 excl のスプレッドシートファイルでの bzz のパフォーマンスが非常に良いため、 fsmx のようなかなり洗練された圧縮ソフトよりも優れた加重平均値を示します。

圧縮のパフォーマンス
textfaxcsrcexclsprctechpoemhtmllispmanplayWeightedAverage


 compress 3.27    0.97    3.56    2.41    4.21    3.06    3.38    3.68    3.90    4.43    3.51    2.55    3.31    
 gzip -9 2.85    0.82    2.24    1.63    2.67    2.71    3.23    2.59    2.65    3.31    3.12    2.08    2.53    
 bzip2 -9 2.27    0.78    2.18    1.01    2.70    2.02    2.42    2.48    2.79    3.33    2.53    1.54    2.23    
 ppmd 2.31    0.99    2.11    1.08    2.68    2.19    2.48    2.38    2.43    3.00    2.53    1.65    2.20    
 fsmx 2.10    0.79    1.89    1.48    2.52    1.84    2.21    2.24    2.29    2.91    2.35    1.63    2.06    
 bzz 2.25    0.76    2.13    0.78    2.67    2.00    2.40    2.52    2.60    3.19    2.52    1.44    2.16    

エントリーされているプログラムのいくつかは DjVu の協力者が作成したものです。 プログラム compress は Joe Orost が作成しました。 プログラム ppmd は、 Paul Howard が発明した

PPM-C メソッドを改良したものです。

クレジット

プログラム bzz は Léon Bottou <[email protected]> が開発し、 Andrei Erofeev <[email protected]> および Bill Riemers <[email protected]> その他の方々により改良されました。 この man page は Nobchika Morimoto <[email protected]> が翻訳しました。

参照

djvu(1)、 compress(1)、 gzip(1)、 bzip2(1)