- •Лекция № 1
- •1. Понятие информации
- •2 Информация в адаптивной системе
- •Лекция № 2 Тема: Виды и формы представления информации. Свойства информации.
- •1 Символьная информация. Понятие о знаках и знаковых системах
- •2 Графическая информация. Понятие о спектре непрерывных сообщений
- •3 Параметрическая (числовая) информация. Дискретизация непрерывных сообщений
- •Лекция № 3 Тема: Формы адекватности информации.
- •Обработка аналоговой и цифровой информации
- •Лекция № 4
- •1. Позиционные и непозиционные системы счисления
- •Для позиционной системы счисления справедливо равенство
- •Лекция № 5 Тема: Недесятичная арифметика и её правила.
- •1. Двоичная арифметика
- •Лекция № 6
- •Методы перевода чисел
- •Перевод чисел делением на основание новой системы
- •Табличный метод перевода
- •Форматы представления чисел с фиксированной плавающей запятой
- •Знаковая часть
- •Лекция № 7
- •Лекция № 8 Тема: Параметры измерения информации.
- •Лекция № 9
- •1. Измерение информации в быту (информация как новизна).
- •2. Измерение информации в технике (информация – любая хранящаяся, обрабатываемая или передаваемая последовательность знаков).
- •Лекция № 10
- •Лекция № 11
- •Лекция № 12
- •Лекция № 13 Тема: Данные и их кодирование. Принципы кодирования и декодирования.
- •1. Коды: прямой, обратный, дополнительный.
- •1 1 1 1 1 1 1 1 Знак числа «-»
- •Лекция № 14
- •1. Классификация методов шифрования информации
- •2. Общие принципы построения блочных шифров
- •Лекция № 15 Тема: Характеристика процесса передачи данных. Режимы и коды передачи данных
- •Структурная схема системы передачи информации.
- •Получатель
- •Линия связи
- •Классификация сигналов по дискретно-непрерывному признаку.
- •Квантование и кодирование сигналов
- •Квантование по уровню
- •Квантование по времени
- •Лекция № 16 Тема: Каналы передачи данных. Способы передачи цифровой информации.
- •Характеристики каналов передачи данных
- •Современные технические средства обмена данными и каналообразующая аппаратура
- •Лекция № 17 Тема: Пропускная способность канала связи. Теорема Шеннона
- •4. Пропускная способность непрерывного канала с помехами
- •Лекция № 18 Тема: Методы повышения помехозащищенности и помехоустойчивости передачи и приема данных.
- •I группа – основана на выборе метода передачи сообщений.
- •II группа – связана с построением помехоустойчивых приемников.
- •Лекция № 19 Тема: Понятие об оптимальном кодировании информации
- •Лекция № 20
- •Лекция № 21 Тема: Кодирование графической информации.
- •Лекция № 22 Тема: Кодирование звуковой информации. Кодирование видеоинформации
- •1. Кодирование звуковой информацию
- •2. Кодирование видеоинформации.
- •Лекция № 23 Тема: Сжатие графической и видеоинформации. Методы сжатия.
- •Обзор подходов к сжатию информации
- •2. Эффективное посимвольное кодирование для сжатия данных.
- •3 Сжатие информации с учетом цепочек символов по Лемпелю-Зиву.
- •4 Сжатие изображений по блочному алгоритму jpeg.
- •Лекция № 24
- •1. Архиваторы
- •2. Основные виды программ-архиваторов
- •3. Способы управления программой-архиватором
2. Эффективное посимвольное кодирование для сжатия данных.
Основные моменты сводятся к следующему:
идея такого кодирования базируется на том, чтобы использовать для часто встречающихся символов более короткие кодовые цепочки, а для редких - более длинные. В результате средняя длина кода
будет меньше, чем при равномерном
кодировании;согласно теореме Шеннона, наилучшее кодирование позволяет сократить lср. до величены энтропии Н, подсчитанной для данного набора символов;
неравномерное кодирование позволяет автоматически устранить избыточность, связанную с тем, что количество символов в алфавите может быть не кратно степени двойки (так, например, чтобы закодировать одинаковым числом разрядов 5 разновидностей символов потребуется 3 бита, так же как и для 8 символов).
Идея неравномерного кодирования, в котором длина кодовой цепочки зависит от частоты появления соответствующего символа, реализована еще в знаменитой «азбуке Морзе». Однако там наряду с «точками» и «тире» использовался третий кодовый символ – разделитель «пауза». Если ограничиться только «O» и «1», то при построении кода необходимо учесть дополнительное требование: чтобы все кодовые цепочки однозначно выделялись в непрерывном потоке битов, ни одна из них не должна входить как начальный участок в кодовую, цепочку другого символа. Такое свойство кода называется префиксностью.
Наибольшее распространение получил способ построения эффективного кода предположенный Хаффменом. Рассмотрим его на примере. Пусть задан алфавит из 5 разновидностей символов Z1 – Z5, и их вероятности. В таблице 5.1 наряду с этими исходными данными приведены так же результаты кодирования по Хаффмену: кодовые цепочки Ki их длинны li. Процедуру построения кода иллюстрирует таблица и рисунок 1
На первом этапе символы упорядочивают по убыванию вероятностей, а затем выполняют несколько шагов «объединения», на каждом из которых суммируются вероятности наиболее редко встречающихся символов и столбец вероятностей пересортировывается .
Пример кода Хаффмена
1
Zi |
Pi |
Ki |
li |
Z1
Z2
Z3
Z4
Z5 |
0,25
0,17
0,08
0,35
0,15 |
10
00
010
11
011 |
2
2
3
2
3 |
|
|
|
lср |
На втором этапе строится «дерево кода», ветви которого отображают в обратном порядке процесс «объединения вероятностей». При построении дерева принимается правило соответствия большей вероятности одному из направлений ветви (например «левому») и определенному значению бита кода (например, «1») . Цепочки битов от «корня» до конца каждой ветви соответствуют кодам исходных символов (табл.5.1 – 5.2).
Таблица 2 Объединение вероятностей символов
Zi |
Pi |
Шаги объединения |
Ki |
|||
1 |
2 |
3 |
4 |
|||
Z1
Z2
Z3
Z4
Z5 |
0,35
0,25
0,17
0,15
0,08 |
0,35
0,25
0,23
0,17 |
0,40
0,35
0,25 |
0,60
0,40 |
1,00 |
11
10
00
011
010 |
Процедура кодирования сводится к выбору из кодовой таблицы цепочек, соответствующих каждому символу источника. Декодирование предусматривает выделение в битовом потоке кодов символов и их расшифровку в соответствии с таблицей.
Код Хаффмена может быть двухпроходным и однопроходным. Первый строится по результатам подсчета частот (вероятностей) появления различных символов в данном сообщении. Второй использует готовую таблицу кодирования, построенную на основе вероятностей символов в сообщениях похожего типа. Например, кодирование текста на русском языке в первом случае включает его предварительный анализ, подсчет вероятностей символов, построение дерева кода и таблицы кодирования индивидуально для данного сообщения. Во втором случае будет работать готовая таблица, построенная по результатам анализа множества русскоязычных текстов. Двухпроходный код более полно использует возможности сжатия. Однако, при этом вместе с сообщением нужно передавать и кодовую таблицу. Однопроходный код не оптимален, однако прост в использовании, поэтому на практике обычно применяют именно его.
В целом код Хаффмена проигрывает по сравнению с «цепочечными» кодами и его редко используют самостоятельно, однако он часто фигурирует как элемент более сложных алгоритмов сжатия.
