Составители:
Рубрика:
20
ему должна быть известна длина кодируемой последовательности, ко-
торая в данном примере равна единице.
На практике арифметическое кодирование никогда не применяют для
сжатия единичных последовательностей, уже хотя бы потому, что полу-
чающиеся при этом коды не обладают свойством префиксности, и для
их правильного декодирования декомпрессором необходимо между ними
ставить разделители, что уменьшает степень сжатия. Другими словами,
для сжатия «одноотсчетных последовательностей» использование ариф-
метического кодирования не имеет смысла. Однако ситуация существен-
но изменяется при сжатии последовательности, состоящей из большого
числа отсчетов.
Поясним это простейшим примером, когда сжимаемая последователь-
ность состоит всего из трех отсчетов сигнала, значения которых 1, 3 и 2
появляются с вероятностями, приведенными в табл. 1. Для простоты
изложения все рассуждения проведем, используя десятичную систему
счисления. Обращаясь к рис. 7, видим, что, поскольку значение перво-
го отсчета сигнала равно 1, то дробь, представляющая собой закодиро-
ванное значение последовательности, должна лежать внутри интервала
0,3–0,5. Более точное значение этой дроби определяется значениями
последующих отсчетов сигнала. Для того чтобы найти это значение,
разобьем диапазон чисел 0,3–0,5 на поддиапазоны, пропорциональные
вероятностям P появления соответствующих отсчетов сигнала
()
Ln
∆
Рис. 6
∆L = 4→
∆L = –3→
∆L = 3→
∆L = –2→
∆L = 2→
∆L = –1→
∆L = 1→
∆L = 0→
1
–
1,000000
0,95
–
0,111100
0,9
–
0,111001
0,85
–
0,110110
0,75
–
0,110000
0,65
–
0,101001
0,5
–
0,100000
0,3
–
0,010011
0
–
0,000000
Страницы
- « первая
- ‹ предыдущая
- …
- 18
- 19
- 20
- 21
- 22
- …
- следующая ›
- последняя »