Golomb de codificare este o entropie codificare inventată de Solomon Wolf Golomb în 1966 și utilizat în principal în comprimarea datelor .
Codul produsului este un cod prefix .
Codificarea Golomb a unui număr natural depinde de un parametru și se face în doi pași:
Matematic, pentru a codifica un număr întreg , codificăm mai întâi în unar, apoi în binar trunchiat.
Codificarea Golomb este potrivită pentru date în care valorile mai mici sunt mai probabile decât celelalte (dar unde celelalte pot apărea în continuare).
Zecimal | Binar | Cod Golomb k = 1 (unar) |
Codul Golomb k = 2 |
Cod Golomb k = 4 |
Cod Golomb k = 16 |
---|---|---|---|---|---|
0 | 0000 | 0 | 0 0 | 0 00 | 0 0000 |
1 | 0001 | 10 | 0 1 | 0 01 | 0 0001 |
2 | 0010 | 110 | 10 0 | 0 10 | 0 0010 |
3 | 0011 | 1110 | 10 1 | 0 11 | 0 0011 |
4 | 0100 | 11110 | 110 0 | 10 00 | 0 0100 |
5 | 0101 | 111110 | 110 1 | 10 01 | 0 0101 |
6 | 0110 | 1111110 | 1110 0 | 10 10 | 0 0110 |
7 | 0111 | 11111110 | 1110 1 | 10 11 | 0 0111 |
8 | 1000 | 111111110 | 11,110 0 | 110 00 | 0 1000 |
9 | 1001 | 1111111110 | 11110 1 | 110 01 | 0 1001 |
10 | 1010 | 11111111110 | 111 110 0 | 110 10 | 0 1010 |
Codificarea Golomb este utilizată în principal în varianta sa cunoscută sub numele de codificare Rice, care poate fi implementată mai eficient. O codificare Rice este, în plus, echivalentă cu o codificare Golomb al cărei parametru este 2 ridicat la puterea parametrului Rice.