- •Лабораторная работа №2
- •"Защита программ и данных от hcд".
- •Например, рисунок буквы т может быть закодирован следующим образом:
- •Понятно, что число кодируемых направлений можно увеличить. В этом случае данный подход может быть приемлем и для более сложных изображений.
- •8) Фрактальное сжатие изображений.
- •9) Разбиение исходyого множества символов на несколько алфавитов.
- •10) Смысловая архивация.
- •11) Поиск закономерностей.
- •12) Выбор алгоритма архивации.
Например, рисунок буквы т может быть закодирован следующим образом:
<число квадратов><размер квадрата>(<код квадрата>).
Пусть изображение Т выглядит следующим образом :
111111111
111111111
000111000
000111000
000111000
000111000
тогда в закодированном виде будем иметь:
3, 3*2,1,1,1,0,1,0,0,1,0 .
5) Замена одинаковых последовательностей одним кодом .
В случае частого повторения в тексте какого либо слова или словосочетания иногда полезно перед выполнением архивации по любому из описанных алгоритмов осуществить замену часто повторяющейся последовательности специальным символом.
Подобная процедура позволяет сэкономить:
V = k * V1 - ( V1 + b ) + k * b = V1 * ( k-1) + k * b
бит памяти.
Где
V1 - размер в битах исходной заменяемой последовательности ;
k - встечаемость исходной заменяемой последовательности;
b - размер в битах результирующего кода (символа)
6) Кодирование с помощью цепных кодов.
Данный метод используется в основном для представления, изображений [40]. При его использовании вектору, соединяющему две соседние точки, ставится в соответствие один символ, принадлежащий некоторому конечному множеству. Данный подход, достаточно эффективен, если точки расположены близко друг к другу и примерно на одинаковом расстоянии. Кодировочная таблица создается на базе описанного выше префиксного кода. Например, если нам надо закодировать рисунок квадрата с шириной в 5 точек, то кодировочная таблица может выглядеть следующим образом:
Направление |
Двоичное значение |
То же направление движения Влево на 90 градусов Вправо на 90 градусов |
1 01 001 |
Тогда закодированный рисунок займет всего 23 бита:
11111011111011111011111.
Понятно, что число кодируемых направлений можно увеличить. В этом случае данный подход может быть приемлем и для более сложных изображений.
7) Организация сжатия изображении согласно стандарта JPEG
Jоint Photographic Ехperts Group – объединенная группа экспертов по обработке графических изображений [52].
Методика JPEG учитывает особенности восприятия визуальной информации.
1. Разделение исходной информации по следующим критериям :
информация о яркости - Х;
информация о цвете – У.
2. Прореживание данных о цвете У ( выбрасываются строки или столбцы с определенными номерами);
3. Выполнить "дискретное косинусное преобразование" ( ДКП) отдельно для Х и Y:
а) Изображение разбивается на блоки 8*8 пикселов и подвергается ДКП. При этом образуются матрицы 8*8 коэффициентов, максимальные элементы которых концентрируются в левом верхнем углу, а минимальные - в правом нижнем углу. ДКП является частным случаем преобразования Фурье с базовыми функциями в виде косинусоид, тем самым производится переход в частотную область.
б) Квантование. Матрица 8*8, полученная после ДКП, делится на матрицу, называемую матрицей квантования. Результат округляется до ближайшего целого.
в) Результирующая матрица вытягивается в строку данных таким образом, чтобы все последовательные нули (правая нижняя часть матрицы) были в конце;
г) Полученная строка кодируется по методу Хаффмана. Наиболее часто встречающиеся данные кодируются и представляются одним коротким элементом. В частности все последние нули заменяются на один элемент. Так как все исходные блоки имели одинаковый размер всегда известно, сколько нулей было заменено.
Для восстановления изображения все вычисления осуществляются в обратном порядке. При этом, естественно, точное воспроизведение исходного изображения невозможно, так как при выполнении ДКП и операции квантования была частичная потеря информации.
Степень сжатия зависит от вида изображения и от применяемых матриц квантования и, как утверждается в [52], позволяет достичь коэффициента сжатия 80:1 и даже больше.
