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

Принцип работы jbig

Двухуровневые изображения состоят всего из двух цветов, поэтому хранятся они в виде одного бита на пиксель. Самый распространенный тип двухуровневого изображения — черно-белое (например, страница книги). Тем не менее единичным (цвет знаков) или нулевым (цвет фона) состоянием одного бита можно представить любые два цвета.

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

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

Адаптивная природа шаблонов позволяет с высокой точностью предсказывать цвет кодируемых значений пикселей. При этом степень сжатия полутоновых изображений на 80% выше, чем в случае применения неадаптивных методов.

Хотя основное предназначение JBIG — это сжатие данных двухуровневых изображений, с его помощью можно обрабатывать и цветные, и полутоновые изображения глубиной до 255 битов на пиксель. Такие многобитовые пиксельные изображения сжимаются по битовым плоскостям, а не по пикселям. Например, 8-битовое изображение, сжатое по методу JBIG, кодируется в виде восьми отдельных битовых плоскостей.

Описанный метод можно применять в качестве альтернативы JPEG-кодированию без потерь. Установлено, что при обработке изображений глубиной 2—5 битов на пиксель JBIG дает лучшие результаты, чем вариант JPEG с использованием Q-кодировщика, а при обработке изображений глубиной 6—8 битов на пиксель результаты совпадают.

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

JBIG-изображения можно кодировать последовательно или поступательно. Последовательно кодируемые изобра­жения записываются в один слой с полным разрешением, при этом другие изображения, с меньшим разрешением, в этот поток данных не помещаются. Такое последовательное JBIG-изображение по функциям и применению эквивалентно G4-изображению. Декодируется оно за один проход и имеет примерно такую же степень сжатия, как и при использовании G4.

Поступательное кодирование начинается с изображения с самым высоким разрешением, а заканчивается изображением с самым низким разрешением. Изображение с высоким разрешением записывается в отдельный слой, а затем используется для создания изображения с более низким разрешением, которое также записывается в отдельный слой. Каждый слой, следующий за первым, называется удвоением разрешения. Таким образом, изображение с тремя слоями имеет два удвоения.

Число удвоений при кодировании не ограничено. Например, изображение с разрешением 1200 точек на дюйм можно закодировать в один слой (1200 точек на дюйм), в три (1200, 600 и 300 точек на дюйм) или в пять слоев (1200, 600, 300, 150 и 75 точек на дюйм). Минимальное разрешение определяется тем, что считается полезным. Даже неразборчивое изображение с разрешением 10 точек на дюйм можно использовать как пиктограмму.

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

Последовательный и поступательный методы JPEG-кодирования полностью совместимы. Изображения, сжатые методом последовательного кодирования, могут читаться поступательными JBIG-декодерами. Последовательные JBIG-декодеры могут читать в поступательно закодированных JBIG-изображениях только первый слой, с самым низким разрешением.

Многие приложения, в которых применяется JBIG, могут использовать только последовательное кодирование и декодирование. В первую очередь это касается факсимильной передачи. Поэтому можно реализовать упрощенный алгоритм JBIG, который будет кодировать только первый слой потока JBIG-данных. Такие кодировщики выдают достоверный поток JBIG-закодированных данных, который могут читать все JBIG-декодеры.

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

Сжатие ART

ART — это оригинальный алгоритм сжатия, который был создан и продается фирмой Johnson-Grace. Эта фирма, занимающаяся разработкой программного обеспечения, основана в 1992 году Стивом Джонсоном и Крисом Грейсом. Johnson-Grace разрабатывает инструментальные программные средства, например Web-броузеры для online-сервисов и конечных пользователей.

Соседние файлы в папке Лекции по компьютерной графике