В. Столлингс - Современные компьютерные сети (2-е издание, 2003) (1114681), страница 157
Текст из файла (страница 157)
21 10, б будет выглядеть так: (39 -3 2 1 -1 ΠΠΠΠΠ— 1 ЕОВ). Эти два подготовительных этапа приводят к появленшо двух строк целых чисел, которые затем кодируются путем энтропийного кодирования. ДЛя этого может применяться метод Хаффмана или арифметическое кодирование. При распаковке выполняется обратная последовательносгь шагов (см. рис. 21.9). Сначала декодируется и распаковывается закодированный при помощи энтропийного метода файл, в результате чего получается матрица квантованных 1)СТ-коэффициентов, На этом этапе информация ие теряется, поэтому восстановленная матрица точно совпадает с исходной.
Следующий шаг заключается в деквантовании матрицы квантованных ПСТ- коаффициентов, в результате чего получается матрица, близкая к исходной ПСТ- матрице, в соответствии со следующей формулой )7(и,о) = К(и, о). Яи, о). Полученный результат будет отличаться от исходной матрицы 5(и, о), что вызвано округлением. На рис. 21.12, а показан результат деквантования матрицы, представленной на рис. 21.10, б. Сравнивая результат с рис.
21.4, б, меж- ~ но заметить отличия, в частности в правой нижней области матрицы (высокие частоты). Наконец, восстановленная ПСТ-матрица отображается на пространственную область путем обратного дискре птого косинусного преобразования, оп ределенного в формуле (21.6).
На рис. 21.12, б показана восстановленная матрица пикселов из рнс. 21.4, а, а на рис. 21.12, е — матрица ошибок, содержащая разности л1ежду исходной и восстановленной матрицами для каждого пиксела. Взаимосвязь между обсуждавшимися матрицами иллюстрирует рис. 21 13. Прогрессивный режим 0СТ Прогрессивньпй режим ПСТ используется для быстрого получения декоднруемого приблизительного иаображения, что может быть полезно, если декодер отделен от колера каналом с низкой скоростью передачи данных. Таким образом, наблюдатель быстро получает грубое приближение к изображению, после чего постепенно видит все более четкие версии. В этом методе используются спектральная селекция и/или последовательное приближение, а изображение обрабатывается за несколько проходов, а не за один проход.
При использовании прогрессивного ПСТ-сткатия компрессирующий модуль должен содержать буфер размером с изображение на выходе операции квантования. В буфере должна содержаться квантовацпая ПСТ-матрица для каждого блока пикселов 8 х 8 в исходном изображении. Затем на каждом проходе частично кодируются коэффициенты в буфере.
694 Глава 21. Сжатие с потерями 21.3. Стандарт ЗРЕЙ ааБ Преобразование Квантование т, о т.' сз еые Ф ь о ь+ оеФ Наименее значимые разряды Первый проход Второй проход Второй проход Третий проход Восстановленное оцифрованное изображение Третий проход Декввнтованныв ССТ-козффициенты Квантованные ССТ-коэффициенты Рис. 21.13. Схема дРЕВ л-й проход Пкр Шестой проход б Спектральнаяселекция Метод спектральной селекции иллюстрирует рис.
21.14, а. На первом проходе ог каждого блока получается среднее значение (элемент (О, 0) РСТ-матрицы). При последующих проходах посылаются некоторые спектральные компоненты в зигзагообразном порядке. На каждом проходе посылается непрерывный набор дискретных частот. Дополнительные проходы выполняются до тех пор, пока не будут переданы все пространственно-частотные компоненты. Последовательноеприближение В прогрессивном режиме РСТ точность коэффициентов возрастает с каждым про- ходом.
Здесь также средние значения посылаются отдельно. Затем посылаются тт старших разрядов каждого коэффициента, причем величина 7тг может быль выбра- на по-разному. Прн последующих проходах посылается по одному дополнитель- ному биту точности (рис. 21.14, б). ф тз 10 ей~ Ъ~ — 3 ФоссФФФ Наименее значимые разряды .г~ Первый проход Рис. 21.14. Прогрессивное сжатие на основе алгоритма ССТ Оба метода (спектральная селекция и последовательное приближение) позволяют получать изображения, постепенно проявляющиеся у получателя. Обсуждение результатов применения каждого из этих методов и их комбинации можно найти в [1781.
21.3. Стандарт,>РЕО 687 686 Глава 21. Сжатие с потерями Режим без потерь Исходное иэобрэжэни Сжатое изображение Рис. 21.1 б. Режим сжатии беэ потерь «РЕ«« СтандартДРЕО включает простой режим работы без потери данных, основанный на прогнозирующей л1одели. Как правило, этот метод позволяет доспгчь коэффици ента сжатия около 2:1, что значительно меньше, чем коэффициенты, достлоклпны имые с помощью методов, основанных на дискретном косинусном преобразовании 19) На рис.
21.15, а показана общая блок-схема режима без потерь. В этом случае обрабатывается вся матрица пикселов изображения, а не отдельные блоки 3 х 3 При сканировании изображения каждое значение пиксела заменяется значением разности в соответствии с формулой Разность = Пиксел — Предсказание. Здесь «Предсказание» вЂ” значение, основанное на значениях некоторых сканированных ранее соседних пикселов.
Философия этой стратегии заключается в следующем. Как правило, значение пиксела близко к значениям соседних пикселов, Поэтому предсказание, основанное назначениях соседних пикселов, должно быть близко к фактическому значению или совпадать с фактическил1 значением Если преобразовать матрицу пикселов в разпостную матрицу, основанную на предсказаниях, многие значения окажутся равными нулю, а другие значения будут невелики. Преобразованное изобрахсение должно упаковываться более компактно. Схема )РЕС позволяет использовать предсказание, основанное на значениях некоторых или всех пикселов, сл1ежных с текущим пикселом, но встреченных ра~ нее в процессе сканирования слева направо или сверху вниз. На рис. 21.15, 6 показано, что для каждого пнксела Х имеются три таких пиксела, помеченных буквами А, В и С.
Единственное исключение составляют пикселы верхнего ряда и левого столбца, у которых имеется только один предшествующий пиксел. Алгоритм сжатия без потерь может быть настроен для использования любой комбинации предшествующих пикселов, как показано на рис. 21.15, в. В режимах с 1 по 3 используются одномерные предсказатели, тогда как в режимах с 4 по 7 используются двумерные предсказатели. Которые предсказатели задействовать, зависит от реализации.
Об этом следует информировать распаковываюший модуль. Однако в любом случае применяются три правила 1. Значение предсказателя для левого верхнего пиксела равно 2' ', где Р представляет собой входную точность. 2. Лля остальных пикселов верхнего ряда предсказание основывается на значении левого соседа (режим 1). 3. Для остальных пикселов левого столбца предсказание основывается на значении соседа сверху (режим 2).
Как только матрица предсказателей сформирована, ее можно закодировать при помощи метода Хаффмана или путем арифметического кодирования. Иерархический режим В иерархическом режиме изображение кодируется в виде набора кадров с возрастающим разрешением. Этот режим может использоваться совместно с любым другим из трех режимов сжатия. В иерархическом 1южиме кодирующий модуль начинает с формирования последовательности изображений, при этом разрешающая способность каждого следующего изображения в два раза меньше, чем предыдущего, в одном илн в обоих измерениях. Например, изображение размером 1024 х 1024 может быть уменьшено до размеров 512 х 512.
По существу, эта операция представляет собой фильтрацию низких частот, усредняюшую значения пикселов. Этот процесс продолжается до тех пор. пока не будет получено изображение с минимальным разрешением, задаваемым алгоритму в виде параметра.
Затем выполняются следующие шаги: 1. Изображение с минимальным разрешением сжимается в одном из трех режимов сжатия (последовательный режим 1)СТ, прогрессивный режим Г)СТ, режим сжатия без потерь). Результат является частично сжатыми данными, но также представляет собой входные данные для следующего шага. 2. Распаковывается результат предыдущего шага, а затем путем интерполяции из него формируется изображение более высокого разрешения. 3.
Результат предыдущего шага используется для предсказания битов фактического изображения с данным разрешение»а в результате сравнения которых получается разностная матрица. Эта матрица схгнмается в одном из трех режимов сжатия. Результат снова является частично сжатыми данными. 4. Шаги 2 и 3 повторяются до тех пор, пока не будет закодировано изображение с полным разрешением. 688 Глава 21. Сжатие с потерями 21.3. Стандарт ЗРЕЙ 689 Иерархический режим применяется, когда изображение может использоваться приложениями с различными возможностями разрешения, в частности устройством с низютм разрешением (у которого нет буфера для восстановления изображения с полным разрешением) и последующим масштабированием изображения для отображения на дисплее с низким разрешением.
4РЕО 2000 Стандарт )РЕС представляет собой наиболее распространенный стандарт сжатия изображений с реалистичным воспроизведением цвета и плавно изменяющимся тоном. Хотя этот стандарт обеспечивает достаточно высокое качество при небольших и умеренных коэффициентах сжатия, прн более сильном сжатии качество изобраятений резко падает. Группа экспертов )РЕС выпустила вторую версию этого стандарта, известную как зРЕС 2000, обладающую лучшими характеристиками сжатия и значительно большей гибкостью, чем старый стандарт (РЕС. Наиболее замечательное отличие нового стандарта заключается в принципиально другом алгоритме сжатия. В стандарте 1РЕС используется дискретное косинусцое преобразование, побочный эффект применения которого заключается в плохом воспроизведении на рисунке резких переходов.
Этого эффекта нет в стандарте 1РЕС 2000, в котором применяется сжатие на основе элементарных волн. Ключевые характеристики стандарта 1РЕС 2000 перечислены далее. + Формат с переменным разрешением. Изображение хранится с несколькими разрешениями без избыточности. Пропускная способность линий может экономиться за счет передачи изображений с более низким разрешением. + Область иншврвса (Вея1оп 01 1птегеьт, КО1).
Стандарт )РЕС 2000 предоставляет возможность кодирования области изображения произвольной формы с более высоким качеством (вплоть до использования сжатия без потерь), а также при прогрессивной передаче данной КО1-области прежде остальной части изображения. + Произвольный достлуп, Стандарт.(РЕС 2000 предоставляет возможность доступа к любой области изображения без распаковки всего изображения.
На рис. 21.16 показаны основные элементы типичных кодируюшего и декодирующего модулей ПРЕС 2000. Если колшопепты исходного изображения (например, компоненты цвета нли данные, сгенерированные многополосными сенсорами) не годятся для сжатия, в стандарте )РЕС 2000 может дополнительно перед сжатием использоваться кол~понвнгвнов преобразование (сошропеп1 Ггапз(опп). Например, изображение формата КСВ (Кед, Сгееп, В1пе — красный, зеленый, синий) может быть преобразовано в формат г'1рт', который значителыю легче сжимается, Определены как обратимый, так и необратимый (то есть подверженный ошибкам округления) алгоритмы. Остальная часть кодируюшей схемы работает индивидуально с каждым компонентом.