- •Содержание
- •//28. 09.04.Лекция 1// История развития компьютерной графики
- •//5.10.04.Лекция 2// Основные понятия компьютерной графики
- •Физические и логические пиксели
- •Отображение цветов
- •//12.10.04.Лекция3// Определение цвета с помощью палитры
- •Цветовые пространства
- •Типы палитры
- •//26.10.04. Лекция 4// Цвет
- •Цветовые модели – аддитивная и субтрактивная
- •Модели rgb (Red Green Blue)
- •Наложение и прозрачность
- •Векторные файлы
- •Организация векторных файлов
- •//2.11.04. Лекция 5// Векторные данные
- •Палитра и цветовая информация
- •Атрибуты заполнения и цветовые атрибуты
- •Концовка векторных файлов
- •Текст векторных файлов
- •Преимущества и недостатки векторных файлов
- •//9.11.04. Лекция 6// Растровые файлы и их организация
- •Идентификатор файла
- •Версия файла
- •Организация данных в виде строк развертки
- •Непрерывные данные
- •Фрагменты
- •Организация данных в виде плоскостей
- •Концовка
- •//16.11.04. Лекция 7// Дополнительные структуры растровых файлов
- •Преимущества рф
- •Недостатки рф
- •Сжатие данных
- •Схемы сжатия
- •Физическое и логическое сжатие
- •Симметричное и ассиметричное сжатие
- •Адаптивное, полуадаптивное и неадаптивное кодирование
- •Сжатие с потерями и без потерь
- •Алгоритм группового кодирования или rle
- •//23.11.04. Лекция 8// rle схемы битового, байтового и пиксельного уровней
- •Rle схемы с использованием флага
- •Rle пакеты вертикального повторения
- •//30.11.04 Лекция 9// lwz сжатие
- •Кодирование по алгоритму Хаффмена
- •Алгоритм Хаффмена для символьных групп
- •//7.12.04 Лекция 10// Фрактальная графика
- •Фрактальное сжатие
- •//14.12.04. Лекция 11// Сжатие Jpeg
- •Алгоритм Jpeg
- •Сжатие Mpeg
- •Mpeg кодирование
- •Сравнительный анализ Mpeg стандартов
Кодирование по алгоритму Хаффмена
Международный консультативный комитет по телефонии и телеграфии (CCITT) разработал серию протоколов для факсимильной передачи изображений. Эти протоколы основываются на алгоритме, предложенном Д. Хаффменом в 1952г., и используются для обработки черно-белых изображений.
Метод Хаффмена строит таблицы кодов, базирующихся на частоте повторения элементов. Чем чаще встречается тот или иной элемент, тем короче будет заменяющий его код.
Степень сжатия 2:1 и 3:1.
По алгоритму Хаффмена для сжатия файла необходимо прочитать его полностью и подсчитать сколько раз встречается каждый элемент, подлежащий кодированию.
//Этот алгоритм разрабатывался для факсовых передач черно-белых изображений передачи данных. Также называется кодирование по алгоритму Хаффмана.
Он является неадаптивным, то есть не настраивается для кодирования каждого реестра оптимальным образом , используется фиксирование таблицы кодовых значений , которые были выбраны заранее для представления данных в степень сжатия по этим алгоритмам 5:1-8:1.
Кодирование:
Кодировщик определяет длину пиксельных групп в строке развертке и выводит двоичное кодовое слово, представляющее длину и цвет группы . Кодированное слова берутся из таблицы значений представляемых группами белых и черных пикселей. Двоичное кодовое слово по этому алгоритму бывает переменной длины. Размер каждого слова определяется на основе статистически усредненной частоты черно-белых групп, появляется в течение печатных документов. Длины групп, встречающиеся наиболее часто, присваивается наименьшее кодированное слово , чем длины групп, которые появляются менее часто.//
Алгоритм Хаффмена для символьных групп
Подсчитаем вхождение каждого символа в файл и получим следующие характеристики
Файл длиной 100 байт, имеет различные символы, длина каждого 1 байт.
Символ |
A |
B |
C |
D |
E |
F |
Число вхожд-ий |
10 |
20 |
30 |
5 |
25 |
10 |
на 100 символов
Сначала рассматриваются те символы, которые имеют самую низкую частоту вхождений.
Например D и F или D и A. Для них формируется узел, частота вхождения которого равна сумме частот вхождений этих символов.
A B C D E F
10 20 30 5 25 10
| | | | | |
| | | |______|______|
| | | 15 |
|_____|_____|_________| |
| 25 |___________|
|___| 55
45 |
|__________|
100
Если из вершины дерева идти по левой ветке, то присваиваем значение 0, по правой – 1.
C 10 E 11 B 00 A 010 F 0111 D 0110
Базируется на частоте повторений величин: чем чаще встречается величина, тем короче будет её код.
Существует целая группа протоколов, разработанных с использованием алгоритма Хаффмена. За счет модификации этого алгоритма достигается степень сжатия 4:1 и 5:1.
