X-PDF

Словарные и словарно-статистические алгоритмы сжатия

Поделиться статьей

Алгоритмы KWE

В основу алгоритмов кодирования по ключевым словам (KWE = Keyword Encoding) положено кодирование лексических единиц исходного документа группами байтов фиксированной длины. Примером лексической единицы может служить слово (последовательность символов, справа и слева ограниченная пробелами или символами конца абзаца). Результат кодирования сводится в таблицу, которая прикладывается к сжатому коду и представляет собой словарь. Обычно для англоязычных текстов принято использовать двухбайтную кодировку слов. Образующиеся при этом пары байтов называют токенами.

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

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

В 1977 году израильские ученые А.Лемпел и Я.Зив опубликовали работу [], в которой привели разработанный ими алгоритм сжатия данных, названный позже LZ. На основе этого алгоритма в дальнейшем было разработано множество алгоритмов, учитывающих технические возможности компьютеров. В алгоритмах LZ учитываются корреляционные связи между символами, что позволяет значительно увеличить коэффициент сжатия.

Представленная информация была полезной?
ДА
60.87%
НЕТ
39.13%
Проголосовало: 1536

Сущность алгоритма сжатия данных LZ состоит в том, что повторяющиеся последовательности символов заменяются указателями на позиции, где они в тексте уже ранее появлялись. Одной из форм такого указателя может быть пара (n,m), которая ссылается на последовательность символов длиной m символов, начинающуюся с позиции n. В большинстве реализаций алгоритма Лепеля-Зива позиция в паре кодируется как смещение (разность) между позициями кодируемой строки и строки, на которую произведена ссылка.

Из-за ограниченного объема оперативной памяти компьютера обычно используется вариант алгоритма Лемпеля-Зива со скользящим окном, когда максимальное значение смещения ограничено некоторым значением.

Сжатие данных происходит следующим образом. В сжатые данные выдаются либо символы сжимаемых данных, либо ссылки на уже просмотренную часть сообщения. Эти ссылки указывают, что текущие символы некоторым количеством m совпадают с теми, что уже были прочитаны, начиная с позиции n. Распаковка начинается сначала сообщения.


Поделиться статьей
Автор статьи
Анастасия
Анастасия
Задать вопрос
Эксперт
Представленная информация была полезной?
ДА
60.87%
НЕТ
39.13%
Проголосовало: 1536

или напишите нам прямо сейчас:

Написать в WhatsApp Написать в Telegram

ЯТТС-Рекомендации по написанию отчета по учебной и производственной практики-Гостинечное дело

Поделиться статьей

Поделиться статьейПоделиться статьей Автор статьи Анастасия Задать вопрос Эксперт Представленная информация была полезной? ДА 60.87% НЕТ 39.13% Проголосовало: 1536


Поделиться статьей

ЮУрГУ-вопросы

Поделиться статьей

Поделиться статьейПоделиться статьей Автор статьи Анастасия Задать вопрос Эксперт Представленная информация была полезной? ДА 60.87% НЕТ 39.13% Проголосовало: 1536


Поделиться статьей

ЮУГУ-Отчет_ПП-Машины непрерывного транспорта

Поделиться статьей

Поделиться статьейПоделиться статьей Автор статьи Анастасия Задать вопрос Эксперт Представленная информация была полезной? ДА 60.87% НЕТ 39.13% Проголосовало: 1536


Поделиться статьей

ЮУГУ- Курсовой проект по электронике

Поделиться статьей

Поделиться статьейПоделиться статьей Автор статьи Анастасия Задать вопрос Эксперт Представленная информация была полезной? ДА 60.87% НЕТ 39.13% Проголосовало: 1536


Поделиться статьей

ЮУГУ-ВКР-Обеспечение требований охраны труда на рабочем месте слесаря-ремонтника 5 разряда

Поделиться статьей

Поделиться статьейПоделиться статьей Автор статьи Анастасия Задать вопрос Эксперт Представленная информация была полезной? ДА 60.87% НЕТ 39.13% Проголосовало: 1536


Поделиться статьей

или напишите нам прямо сейчас:

Написать в WhatsApp Написать в Telegram
Заявка
на расчет