忍者ブログ
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【2024年04月25日18:48 】 |
LZSS符号・・・
LZSS符号はLZ77符号を改良したものである。
1982年にStorerとSzymanskiによって考案された。

符号化は・・・
辞書に登録されている場合は1を出力し
続いて開始位置と一致長を出力する。
辞書の最後に一致した文字列を追加する。

辞書に登録されていない場合は0を出力し
続いて文字を出力する。
辞書の最後に出力した文字を追加する。

復号化は・・・
最初に1ビット読み込み
0だった場合、続く1文字を読み込み出力する。
辞書の最後に出力した文字を追加する。

1だった場合、続いて開始位置と一致長を読み込む
辞書から一致長分の文字列を出力する。
辞書の最後に出力した文字列を追加する。

辞書サイズが大きくすると開始位置を表す記号も大きくなるため
辞書サイズが大きくなるほど圧縮率が良くなるという訳ではない。

また一致長が1だった場合(1,開始位置,一致長)と出力するより
(0,文字)と出力した方が圧縮率が良くなる。

さらに一致長が3以下の場合は辞書に登録されていないとみなした場合
つまり(0,文字)(0,文字)(0,文字)のように出力するとした場合
3以下の一致長は現れないため

一致長を符号化時は(一致長 - 3)
復号化時は(一致長 + 3)のように表せる。
要するに最大一致長を増やすことができる。
最大一致長を変えない場合でも、より小さな値で一致長を表現できる。
PR
【2007年01月16日21:58 】 | 圧縮 | コメント(0) | トラックバック()
<<Set の toArray・・・ | ホーム |いなばうわぁ・・・・>>
コメント
コメントの投稿













トラックバック
トラックバックURL

前ページ| ホーム |次ページ

忍者ブログ [PR]