Теоретические основы сжатия данных

Приемы и методы работы со сжатыми данными

На практике регулярно возникает необходимость сжимать данные перед тем, как размещать их в архивах или передавать по каналам связи. Соответственно, существует и обратная необходимость восстановления данных из предварительно уплотненных архивов.

Характерной особенностью большинства «классических» типов данных, с которыми традиционно работают люди, является определенная избыточность. Степень избыточности зависит от типа данных. Например, у видеоданных степень избыточности обычно в несколько раз больше, чем у графических данных, а степень избыточности графических данных в несколько раз больше, чем у текстовых. Кроме того, степень избыточности данных зависит от принятой системы кодирования. Так кодирование текстовой информации средствами русского языка, дает в среднем избыточность на 20-30 % больше, чем кодирование адекватной информации средствами английского языка.

Избыточность, как правило, улучшает восприятие, особенно в неблагоприятных условиях (просмотр телепередач в условиях помех, восстановление поврежденного графического материала, чтение при недостаточной освещенности). Однако, когда речь идет о хранении готовых документов или их передачи, то избыточность можно уменьшить, что дает эффект сжатия данных.

· Объекты сжатия

В зависимости от того, в каком объекте размещены данные, подвергаемые сжатию, различают:

ü уплотнение (архивацию) файлов – для уменьшения размера файла при

передаче по сети или транспортировке, например, на дискете;

ü уплотнение (архивацию) папок – при резервном копировании

ü уплотнение дисков – для повышения использования дискового пространства.

· Обратимость сжатия

Несмотря на изобилие алгоритмов сжатия данных, теоретически есть только три способа уменьшения их избыточности. Это либо изменения содержания данных, либо изменение их структуры, либо и то и другое вместе.

Если при сжатии данных происходит изменение их содержания, метод сжатия необратим и при восстановлении данных из сжатого файла не происходит полного восстановления исходной последовательности. Такие методы применимы только для тех типов данных, для которых формальная утрата части содержания не приводит к значительному снижению потребительских свойств. Это относится к мультимедийным данным: видеоряды, музыкальные записи, звукозаписи, рисунки. Методы сжатия с потерей информации обычно обеспечивают гораздо более высокую степень сжатия, чем обратимые методы, но их нельзя применять к текстовым документам, базам данных и, тем более, к программному коду.

Характерными форматами сжатия с потерей информации являются:

ü.JPG – для графических данных;

ü.MPG – для видеоданных;

ü.MP3 – для звуковых данных.

Если при сжатии данных происходит только изменение их структуры, то метод сжатия обратим. Обратимые методы применяют для сжатия любых типов данных. Характерными форматами сжатия без потери информации являются:

ü.GIF,.TIF,.PCX и многие другие – для графических данных;

ü.AVI – для видеоданных;

ü.ZIP,.ARJ,.RAR,.LZH,.LH,.CAB и многие другие – для любых типов данных.

· Алгоритмы обратимых методов

Обсуждая различные методы сжатия, следует иметь в виду, что наивысшую эффективность они демонстрируют для данных разных типов и разных объемов.

Существует достаточно много обратимых методов сжатия, однако в их основе лежит сравнительно небольшое количество теоретических алгоритмов, представленных в таблице 1.

Таблица 1. Свойства алгоритмов сжатия

Алгоритм Выходная структура Сфера применения Примечание
RLE (Run –Length Encoding Список (вектор данных) Графические данные Эффективность алгоритма не зависит от объема данных
KWE (Keyword Encoding) Таблица данных (словарь) Текстовые данные Эффективен для массивов большого объема
Алгоритм Хаффмана Иерархическая структура (дерево кодировки) Любые данные Эффективен для массивов большого объема

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



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