ただし,ハミング距離(Hamming distance)2については,述べておくべきであろう.
二つのデータで,同じ位置にあるビットで異なるビットの個数をハミング距離と呼ぶ.た とえば,(01000110)と(01000001)のハミング距離は3である.
グレイ符号については,私の講義ノート「グレイコード 誤り の検出」に書いてあるので見ると良いだろう.また,参考文献 [2]も詳しい.
すなわちデジタル符号(データ)の圧縮は,情報量[bit]と2進数の桁数が異なることを利用 する.すなわち,情報を2 進数で符号化すると,その桁数と情報量は一般には異なる.先 に示したように,符号化された2進数の0と1の出現確率が異なるためである.もし,0と1 の出現確率が同じならば,桁数と情報量は同じになり,デジタル符号の圧縮はでき ない.
実際の圧縮の例として,教科書 [1]のpp.30-31ではハフマン符号化とラングレ ス圧縮の例が記述されている.
人間の感覚では気がつかない部分の情報を減らすことにより,デジタル符号を圧縮するこ とも可能である.たとえば,画像データフォーマットで使われるJPEGなどがその例である. 教科書 [1]のpp.27の図 2.10のように,周波数の高い成分の情報を削除しても人 間は気がつかない.人間が気がつかない周波数の高い成分を圧縮しても,人間への伝達は 問題がない.
符号の圧縮には,可逆圧縮と非可逆圧縮がある.圧縮されたデジタル符号が元の状態に戻 せるものを可逆圧縮,戻せないものを非可逆圧縮と呼ぶ.ハフマン符号化とラングレス圧 縮は可逆圧縮で,JPEG圧縮は非可逆圧縮である.
コーヒーブレイク
TEX関係で有名な奥村晴彦先生が,圧縮のジレンマとして,おもしろいことを書い
ている [3]ので引用しておく.
定理 最悪の場合でも圧縮データが元データより大きくならない圧縮ソフトは,どん なデータも圧縮できない.
証明 元データのサイズが0ビットなら,圧縮して大きくなることはないのだから, 圧縮データのサイズも0ビットでなくてはならい.元データのサイズが1ビットなら,も う0ビットは使用済みなので,圧縮データは1ビットでなくてはならない.1ビットの元デー タ(2通り)が,1:1に対応する.以下同様に続けていけば,元データのサイズがビットな ら,圧縮してもnビットでなければ成らないことがわかる. 要するに,元データと圧縮データは1:1に対応するため,全く圧縮できないことになる. また,もしこの定理が成り立たなければ,この圧縮ソフトを繰り返し使うことにより,ど んなデータも0ビットに圧縮できてしまう.これは,矛盾である. |