ゴロム符号
出典: フリー百科事典『ウィキペディア(Wikipedia)』
ゴロム符号(Golomb符号)とは、南カリフォルニア大学のS.W.Golombによって開発された、幾何分布に従って出現する整数を最適に符号化することのできる整数の符号化手法である。 ゴロム符号と類似の手法にライス符号があるが、ゴロム符号の特別な場合がライス符号になるため、ライス符号のことをゴロム・ライス符号と呼称することが多い。
目次 |
[編集] 符号化の原理
符号化のパラメータとして、1以上の整数値mを用いる。 ただし、m=1のときは、unary符号に等しくなる。 また、mが2の冪であるとき(m = 2k)は、ライス符号に等しくなる。
m>1 のとき、符号化対象とする整数値 x(≧0) に対して、x を m で割った商を q 余りを r とする。 商 q をunary符号を用いて符号化する。 余り r は log2m に従って、次のように符号化する。
- この値が整数値である。すなわち、m が2の冪であるならば、r をlog2mビットのバイナリ符号で符号化する。
- それ以外の場合、
としたとき、rの2b − m − 1までの数を b-1 ビットのバイナリ符号で符号化し、残りを2b − mを加えた上で b ビットのバイナリ符号で符号化する。
[編集] 符号化の例
m=3 とする。このとき b=2, 2b − m = 1 である。 よって、 r=0 を 1 ビットで、r=1,2 をr + 2b − mとした上で2ビットで符号化する。
x | q | r | 符号語 |
---|---|---|---|
0 | 0 | 0 | 00 |
1 | 0 | 1 | 010 |
2 | 0 | 2 | 011 |
3 | 1 | 0 | 100 |
4 | 1 | 1 | 1010 |
5 | 1 | 2 | 1011 |
6 | 2 | 0 | 1100 |
[編集] 応用
整数値の符号化として用いられるほか、画像(動画・静止画)や音声の圧縮で用いられる予測符号化の一部として利用される。