Эффективное кодирование

Задача эффективного кодирования – представить сообщение минимальным количеством канальных символов. Если кодировать отдельные знаки алфавита источника, то наиболее вероятные знаки следует представлять самыми короткими кодовыми комбинациями.

Пример кодирования блоков знаков с независимым появлением:

Источник , энтропия Н = – (0,9 log20,9 + 0,1 log20,1) = 0,47,

для передачи одного знака требуется один двоичный символ (1 бит).

Кодируем блоки из двух знаков (методом Шеннона –Фано)

блоки знаков вероятности разделение на группы кодовые слова
а = x 1 x 1 b = x 1 x 2 c = x 2 x 1 d = x 2 x 2 0,81 0,09 0,09 0,01 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0

Для передачи блока в среднем требуется

1*0,81 + 2*0,09 + 3(0,09 + 0,01) = 1,29 бит, а для передачи знака – 0,65 бит.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: