Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
3.5.2. Коды переменной длиныМетод кодирования переменной длины сопоставляет потоку входных символов определенную последовательность кодовых слов (коды переменной длины, VLC, Variable Length Codes). Каждый символ отображается в кодовое слово, которое может иметь переменную длину, но каждое из них имеет целое число бит. Символы, встречающиеся чаще, представляются более короткими словами VLC, а редко встречающиеся символы кодируются более длинными словами VLC. Эффект сжатия данных начинает проявляться после кодирования достаточно большого числа входных символов.
3.5.2.1. Коды ХаффманаМетод кодирования Хаффмана присваивает каждому символу код VLC, исходя из вероятности появления этого символа. В соответствии со схемой, предложенной Хаффманом в 1952 году [7], следует предварительно вычислить вероятность появления каждого символа и построить множество кодовых слов переменной длины. Этот процесс будет проиллюстрирован на двух примерах.
Рис. 3.46. Дерево Хаффмана (последовательность №2). Если распределение вероятностей хорошо соответствует частотам появления символов, то кодирование Хаффмана дает достаточно компактное представление исходных данных. В этих примерах вектор (0) с наибольшей вероятностью представляется кодом длиной в 1 бит. Однако для достижения оптимального сжатия необходимо использовать разные таблицы для этих последовательностей, имеющих разные распределения вероятностей векторов. Определенное снижение эффективности сжатия при использовании кодов с целочисленной длиной отчетливо видно при кодировании вектора (0) последовательности №2, так как оптимальное число бит (информационная емкость) для этого вектора равно 0,32 бит, однако лучшее, что может обеспечить код Хаффмана, это 1 бит.
|
1 |
Оглавление
|