Повышение степени сжатия и визуального качества при иерархической компрессии изображений за счет предварительной фильтрации

Бесплатный доступ

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

Короткий адрес: https://sciup.org/14058662

IDR: 14058662

Текст научной статьи Повышение степени сжатия и визуального качества при иерархической компрессии изображений за счет предварительной фильтрации

Иерархическая компрессия изображений [1-4] основана на использовании прореженных копий изображения для интерполяции промежуточных отсчетов и последующем энтропийном кодировании [5] ошибок интерполяции (постинтерполяционных остатков). В данной работе в качестве иерархического метода сжатия рассматривается метод иерархической сеточной интерполяции (ИСИ) [3-4]. Метод обладает чрезвычайно низкой вычислительной сложностью, высоким коэффициентом сжатия, позволяет контролировать погрешность и обладает многими другими достоинствами, характерными для иерархических методов компрессии.

Одним из недостатков метода ИСИ является недостаточная эффективность и снижение визуального качества декомпрессированных изображений при больших коэффициентах сжатия, обусловленное использованием равномерной шкалы квантования [5] для постинтерполяционных остатков. В данной работе предлагается способ уменьшения этих эффектов за счет предварительной фильтрации изображения.

Иерархическая компрессия изображений

Иерархическая компрессия основана на специальном представлении изображения. Пусть X = { x ( m , n ) } - исходное изображение. Представим изображения X в виде объединения иерархических (масштабных) уровней X l :

L - 1

X = и XI, l=0

X L - 1 = { x L - 1 ( m , n ) } ,

X l = { x l ( m , n ) } \ { x l + 1 ( m , n ) } , l e [°- L - 2 ] , где L – количество уровней, а { X l ( m, n ) } - массив отсчетов изображения, взятых с шагом 2 l по каждой координате.

При компрессии уровни обрабатываются последовательно, начиная со старшего уровня Xl -1. Старший уровень сжимается только статистическим кодером. Процедура компрессии любого из следую- щих младших уровней Xl, l е[0, L - 2] включает следующие этапы (см. также рис. 1):

Рис. 1. Иерархическая компрессия

  • 1)    Интерполяция

Производится интерполяция отсчетов { X[ ( m, n ) } уровня X l на основе отсчетов { X k ( m, n ) , k l } уровней { x k , k l } , уже прошедших компрессию и восстановление. В результате вычисляются интерполирующие значения отсчетов уровня X l ( m, n ) . В данной работе интерполяция осуществляется простым усреднением по ближайшим уже обработанным отсчетам более старшего уровня [4].

  • 2)    Вычисление постинтерполяционных остатков

Вычисляется разностный сигнал (массив «постинтерполяционных остатков»), т.е. массив разностей истинных и интерполирующих значений:

f l ( m , n ) = X l ( m , n ) - X l ( m , n ) .

  • 3)    Квантование постинтерполяционных остатков

Выполняется квантование постинтерполяционных остатков. В данной работе используется квантователь [5] с контролем максимальной погрешности emax ql (m, n) = sign

( f l ( m , n ) )

| f l ( m , n )| + S max

2e +1

°max + где [..] обозначает выделение целой части.

Этот квантователь гарантирует, что декомпрессированное изображение будет отличаться от исходного не более, чем на emax max x(m,n)-x(m,n)

( m, n)

  • 4)    Вычисление восстановленных значений отсчетов

По квантованным значениям постинтерполяционных остатков вычисляются восстановленные значения xi (m, n) отсчетов уровня. Очевидно, что для этого необходимо сначала вычислить восстановленные значения постинтерполяционных остатков:

fl(m, n) = qi(m, n) ( 2emax + 1), а затем осуществить собственно восстановление:

xi (m, n ) = fi (m, n) + Xi (m, n).

Эти восстановленные отсчеты будут нужны для интерполяции более младших иерархических уровней {Xk , ki}.

  • 5)    Статистическое кодирование

Осуществляется статистическое кодирование квантованных постинтерполяционных остатков. Поскольку распределение их вероятностей, как правило, является существенно неравномерным, в результате кодирования можно достичь значительного сокращения объема данных. На этом описание процедуры компрессии иерархического уровня закончено.

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

Предварительная фильтрация

Под предварительной фильтрацией в задаче компрессии будем понимать фильтрацию исходного изображения, которая производится до собственно компрессии (см. схему на рис. 2). Такая фильтрация, естественно, вносит погрешность, но, при правильном выборе фильтра, фильтрованное изображение может стать более «удобным» для данного метода сжатия, за счет чего схема обработки с предфильтром в результате может оказаться более эффективной (в координатах «коэффициент сжатия – погрешность восстановления»).

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

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

Рис. 2. Схема ИСИ-компрессии с предварительной фильтрацией

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

Такой вид погрешности метода ИСИ обуславливает требования к предфильтру: предфильтр должен подавлять малые шумы на участках плавно меняющейся яркости, при этом, по возможности оставляя нетронутой полезную информацию изображения, в первую очередь контурные линии. Такими свойствами обладает, в частности, сигма-фильтр [5]:

MN

S S x(m + i, n + j Ufn(m + i, n + j) i=-Mj=-N x (m, n )=---- M N---------------------

S E Um?, n(m+i,n+j)

i=-Mj=-N где

  • (a)       J1,если x(k,i )-x (m,n )< ?

Um,n(k,i) I                                        ,

  • 10, иначе

a                    - параметр фильтра,

(2M + 1)x (2N +1)      - размеры окна обработки, а x'(m, n)               - отфильтрованное изобра жение, которое подвергается собственно сжатию методом ИСИ.

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

Вычислительный эксперимент

Для исследования эффективности схемы с пред-фильтрацией производились вычислительные эксперименты по ее сравнению с базовым методом ИСИ. В качестве меры эффективности при этом использовался известный показатель PSNR (peak-to-peak sig- nal-to-noise ratio) [5], который для байтовых изображений с диапазоном значений 0..255 имеет вид:

SmSn2552

PSNR = 10log10

Sm -I Sn -I           _       2

£ ^ (x(m,n)-x(m,n))

m=0 n=0

где Sm x Sn - размеры исходного изображения, a x(m, n) и x(m, n) - отсчеты исходного и декомпрессированного изображений, соответственно.

Для схемы с предфильтрацией и базового метода ИСИ строилась зависимость PSNR от коэффициента сжатия. Типичный вид этой зависимости, полученный для изображения «Лена» (см. рис. 3), показан на рис. 4. Так как в координатах «PSNR-коэффициент сжатия» более эффективному методу соответствует более высоко расположенная кривая, то нетрудно видеть, что схема с предфильтрацией имеет выигрыш.

Рис. 3. Тестовое изображение «Лена»

Рис. 4. Зависимость PSNR от коэффициента сжатия K для метода ИСИ с предфильтрацией и базового метода ИСИ

Производилось также сравнение визуального качества декомпрессированных изображений. На рис. 5 и рис. 6 показаны фрагменты восстановленных изображений для базового метода ИСИ и схемы с пред- фильтром, соответственно. Изображения имеют практически одинаковую погрешность по сравнению с исходным изображением «Лена», причем изображению для схемы с предфильтром соответствует немного больший коэффициент компрессии.

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

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

Рис. 5. Фрагмент декомпрессированного изображения для базового метода ИСИ

Рис. 6. Фрагмент декомпрессированного изображения для метода ИСИ с предфильтрацией

Заключение

В данной работе предложен алгоритм предварительной фильтрации для иерархической компрессии изображений на основе сигма-фильтра. Алгоритм предназначен для повышения коэффициента сжатия и улучшения визуального качества декомпрессиро- ванных изображений. Проведено экспериментальное исследование разработанного алгоритма, показано преимущество схемы с предфильтрацией над базовым методом в координатах «PSNR-коэффициент сжатия» и по визуальному качеству.

Работа выполнена при поддержке Министерства науки и образования РФ, Администрации Самарской области и Американского фонда гражданских исследований и развития (CRDF Project SA-014-02) в рамках российско-американской программы «Фундаментальные исследования и высшее образование» (BRHE), а также при поддержке гранта Президента РФ № НШ-1007.2003.01, и гранта РФФИ № 04-01-96507.

Статья научная