Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
17
Добавлен:
25.05.2014
Размер:
948.22 Кб
Скачать

Rle-схемы с использованием флага

При таком способе кодир-ия для представления группы используется не 2 ,а 3 байта.

1-ый байт – флаг, значение которого указывает на то , что следующие 2 байта явл частью закодиров-ого пакета.

255

0-255

0-255

флаг

счётч

знач

2-ой байт – счетчик группы

3-ий байт – значение группы

Значение флага д.б. заранее задано.

//Флаг:= 255

флаг

счётч

знач

255

15

218

Если нет флага – незакодированная группа.

218- данные не закодир. 16 раз повоторзнач 218.

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

Недостатки:1).минимальный размер группы, пригодной для кодир-я увеличив до 4х байт. 2).если поток незакодированных данных содержит значения символов = флаговому значению, то этот символ д.б. закодирован в 3х байтовый пакет.

Rle-пакет вертикального повторения

Некоторые RLE-схемы для повышения эффект-ти сжатия использ пакет повторения строк развертки или пакет вертикального повторения. Этот пакет не хранит реальных строк развертки, он содержит указатель на необходимость повторить предыдущую строку. Пакет вертикального повторения занимает всего 1 байт для счетчика группы, причем этот байт равен 0. Второй байт – для значения количества повторяемых строк развёртки.

Lzw-сжатие

Этот метод сжатия без потерь применяется в различных форматах файлов: GIF, TIFF; включен в стандарт сжатия для модемов и язык Post Script. Используется для сжатия текста и является основой архивирующих программ: ZIP,ARG, COMPRESS. Был разработан в 1977 г., в 1984 был доработан и стал назLZW.

Алгоритм LZW позволяет работать с любым типом данных, обеспечивает быстрое сжатие и распаковку. Этот алгоритм основан на поиске шаблонов в изображении и сохранении их. Программа считывает значения пикселей и строит таблицы кодов, которые представляют повторяющиеся пиксельные узоры, найденные этой программой. Степень сжатия достигается 3:1 или 4:1. Хорошо сжимаются насыщенные узорами изображения, содержащие большие блоки однотонной окраски или повторяющиеся одинаковые значения цветовых элементов. Этот алгоритм, как и RLE, не является форматом – он лишь включен в различные другие форматы файлов.

LZWявляется полуадаптивным, т.к. строит словарь данных из входного потока, образцы данных идентифицируются в потоке данных и сопоставляются с записями из словаря. Если данные не представлены в словаре, то создается кодовая фраза, которая записывается как в словарь, так и в выходной поток сжатых данных. Т.к. фразы имеют меньший физический размер, чем исходные данные, то LZW считается сжатием. Декомпрессор работает в порядке, обратном кодированию. Преимущество LZW в том, что для него необязательно сохранять словарь для последующего декодирования. При сжатии текстовых файлов LZW инициализирует первые 256 записей символами ASCII как фразами, а затем ищет их повторения.

Соседние файлы в папке Другая версия лекций и шпор