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

ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ АДАПТИВНЫХ АЛГОРИТМОВ ИНТЕРПОЛЯЦИИ ДЛЯ ИЕРАРХИЧЕСКОЙ КОМПРЕССИИ ИЗОБРАЖЕНИЙ

А.Н. Беденьгов, М.В. Гашников Самарский государственный аэрокосмический университет

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

Введение

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

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

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

Будем рассматривать метод компрессии на основе иерархической сеточной интерполяции (ИСИ) [1-4]. Пусть X = {х(т,п)} - исходное изображение. Рассмотрим представление изображения X в виде объединения иерархических уровней Х1:

Ь-1

X = и х, ,

1=0

Хь-х = {-1

XI = {х, (т,п)}/{х1+1(т,п)}, I < Ь -1 (3) где ь - количество уровней,

{х, (т, п)} - массив отсчетов изображения, взятых с

п.,

шагом 2 по каждой координате.

Представление (1)-(3) дает возможность при компрессии и декомпрессии обрабатывать уровни последовательно, начиная со старшего уровня ХЬ-1, причем отсчеты каждого более старшего уровня будут использоваться для интерполяции отсчетов более младшего уровня. Самый старший уровень в си-

лу своего малого объема данных записывается в сжатое изображение без компрессии. Процедура компрессии любого из следующих более младших уровней Х1, I < Ь -1 включает следующие этапы:

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

€ (m, n) = P f U {xk (m, n)}

1 k=l+1

где Х€, (т, п) - интерполирующие значения отсчетов, хк (т, п) - отсчеты более старших уровней, уже

прошедших компрессию и восстановление, Р(...) -функция, задающая в общем виде некоторый интерполятор.

2) Вычисление разностного сигнала

f (m, n) = xl (m, n) - X (m, n). 3) Квантование разностного сигнала | fi (m, n)| + e

qj (m, n) =

2emax +1

sign

где emax - гарантируемая максимальная погрешность [6] восстановления, а [..] - знак выделения целой части.

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

Xj

5) Статистическое кодирование квантованного разностного сигнала.

Процедура декомпрессии (нестаршего уровня):

1) декодирование квантованного разностного сигнала (6);

2) интерполяция (4);

3) восстановление (7).

2. Известные схемы интерполяции

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

Отсчеты вида xl (2m + 1,2n +1) будем называть «центральными», а xl (2m + 1,2n) и xl (2m,2n +1) -

«крайними» (см. рис. 1). Укажем способы интерполяции крайних и центральных отсчетов для распространенных схем интерполяции (см. рис. 2, 3). Схема (I) - «косой крест» [5] (рис. 2а):

€

€ (2m + 1,2n +1) = (x, (2m, 2n), x, (2m + 2,2n),

х1 (2т, 2п + 2), х1 (2т + 2,2п + 2),

где (...) обозначает усреднение с последующим

округлением до ближайшего целого. Схема (II) - «прямой крест» [5] (рис. 2б).

Сначала с помощью выражения вида (8) интерполируются все крайние отсчеты. Затем для них вычисляются восстановленные значения, которые используются для интерполяции центральных отсчетов

X, (2т + 1,2п +1) = (х, (2т +1,2п), х, (2т, 2п +1).

х,

Схема (III) - «два креста» [5] (рис. 2в).

Сначала с помощью выражения вида (9) интерполируются все центральные отсчеты. Затем для них вычисляются восстановленные значения, которые используются для интерполяции крайних отсчетов:

х, (2т +1,2п) = (х, (2т, 2п), х, (2т + 2,2п),

х,

Схема (IV) - «адаптивная» [7] (рис. 3).

Для каждого центрального отсчета используется одна из трех интерполирующих функций:

х,

хР (2т +1,2п +1) = (х, (2т, 2п), х, (2т + 2,2п), х, (2т, 2п + 2), х, (2т + 2,2п + 2),

х

Выбор функции в каждой точке изображения осуществляется на основе признака

ц, (2т + 1,2п +1) = \х, (2т, 2п) - х, (2т + 2,2п + 2)|

-1 x, (2m, 2n + 2) - x, (2m + 2,2n)|

с помощью зависящего от параметров а(+> и а(> решающего правила

Fr (и,а(~\а(+у) =

0, /и<а<г)

1, а{ ) < /и< а

2, и> а(+>

которое в каждой точке изображения по значению признака определяет номер используемой интерполирующей функции.

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

Выбор значений параметров а(+-1 и а{ ) решающе-

го правила осуществляется исходя из минимизации суммарной ошибки интерполяции [7]:

Ef)

(m, n)eI, а 'а

где It - множество индексов центральных отсчетов уровня Xl.

Далее, как и в схеме (III), вычисляются восстановленные значения крайних отсчетов. Интерполяция крайних отсчетов производится аналогично интерполяции центральных.

X О X О

О # О #

X О X О

Рис. 1. Соглашение о наименовании отсчетов:

«х» - опорные отсчеты

да

Л

"7

Ж

а) б) в)

Рис. 2. Известные схемы интерполяции

N N /

*

ч Ч

а) б) в)

Рис. 3. Интерполирующие функции центрального отсчета для известной адаптивной схемы

3. Предел эффективности адаптивных схем интерполяции

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

Рассмотрим следующую схему интерполяции. Поставим в соответствие каждой интерполируемой точке изображения четырехмерный вектор V признаков. Компонентами этого вектора являются восстановленные значения отсчетов, по которым происходит интерполяция. Например, центральному интерполируемому отсчету , (2т + 1,2п +1) соответствует вектор

v =

Собственно интерполяцию проведем в соответствие со следующей схемой:

€

{m,n )j,

где Jl - множество отсчетов уровня I, в соответствие которым поставлен вектор признаков, совпадающий с вектором интерполируемого отсчета, N - мощность множества Jl.

В результате, если вектор признаков какого-либо отсчета встретился в изображении один раз, то этот отсчет будет интерполирован точно (с нулевой ошибкой интерполяции). Если же вектор встретился N раз, то ошибка интерполяции в каждой из N отсчетов будет равна х, (т, п) - (т, п).

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

По изложенной выше схеме был проведен вычислительный эксперимент с изображением «Лена» (см. рис. 4) для количества иерархических уровней Ь = 4.

Рис. 4. Тестовое изображение «Лена» (256 х 256) По ходу эксперимента варьировалась максимальная погрешность е тах , которая является параметром квантователя (6). Для каждого значения максимальной погрешности вычислялась относительная квадратичная ошибка интерполяции:

\2

Z

2 m,n 6 = ——

Dx

Результаты этого эксперимента приведены на рис. 5 в виде графиков зависимости относительной

квадратичной ошибки интерполяции 62 от задаваемой максимальной погрешности 6 max . Для сравнения на этом же рисунке показаны аналогичные графики для усредняющей схемы (III) и адаптивной схемы (IV).

Как видно из рис. 5, квадратичная погрешность квазиоптимальной схемы много меньше погрешности известной адаптивной схемы (IV). Из полученных результатов можно сделать вывод о том, что резерв совершенствования адаптивных схем интерполяции еще далеко не исчерпан, и имеет смысл искать другие адаптивные схемы интерполяции по четырем опорным отсчетам.

0,060,040,020,00 л

---Квазиоптимальная

Схема IV ............ Схема III

ч-

8

где Dx - дисперсия изображения.

0 1 2 3 4 5 6 7 _

Рис. 5. Зависимость относительной квадратичной ошибки интерполяции

от задаваемой максимальной погрешности

4. Новый адаптивный алгоритм интерполяции

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

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

€у) (2m +1,2n +1) =

= [у •

+ (( - Y) • (x, (2m, 2n + 2) + x, (2m + 2,2n)),

где у - параметр, выбираемый в каждой точке.

Отметим, что при у = -4,0,^2 получаем интерполирующие функции (12-14), то есть рассматриваемая схема является обобщением схемы (IV).

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

с помощью зависящего от параметров a0,au...,aM решающего правила:

y(j/ = a0 + at • j + a2 • j2 + ... + ам • JM

которое в каждой точке по значению признака определяет параметр интерполирующей функции.

Процесс настройки интерполятора на конкретное изображение заключается в отыскании параметров а0,а^,...,ам . Для этого рассмотрим подробнее

работу интерполятора. В каждой точке изображения, которую необходимо интерполировать, вычисляется значение признака по формуле (15). Предположим, что значению ц признака (15) соответствуют значения у,] = 1,параметра у, который для центральных отсчетов вычисляется по формуле

у, (2т + 1,2п +1) = (х, (2т +1,2п +1)-

-2 (х, (2т,2п + 2) + х, (2т + 2,2п))) /

/ (х, (2т, 2п ) + х, (2т + 2,2п + 2) -

-х, (2т + 2,2п) - х1 (2т, 2п + 2)).

Поиск параметров а0,а1,.,ам будем осуществлять исходя из минимизации квадратичной погрешности аппроксимации множества пар (у,ц) функцией вида (21):

£

I =0 а1

где Я - количество пар (ц,у), ц - значение признака (15), которому соответствует параметр у, вычисленный по формуле (22).

Известно, что решение задачи (23) сводится к решению системы линейных уравнений порядка М +1.

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

1. Обучение интерполятора:

a) вычисление признака (15) и параметра (22),

b) отыскание параметров а0, а1,..., ам .

2. Сохранение значений параметров а0,а1,.,ам в сжатом изображении.

3. Вычисление интерполирующих значений (20) с использованием параметра (21), рассчитанного с учетом найденных значений а0,ах,...,ам .

На этапе декомпрессии интерполяция не требует обучения и включает следующие шаги:

1. чтение из сжатого изображения параметров

а0 , а1,. • •, ам ,

2. вычисление интерполирующих значений (20).

5. Сравнение различных алгоритмов интерполяции

Для определения эффективности разработанного адаптивного интерполятора, который далее будем называть схемой (V), было проведено

его сравнение с известными схемами (II), (III), (IV). В задаче компрессии эффективность интерполяционной схемы определяется ее вычислительной сложностью и степенью сжатия, которая может быть достигнута с применением этой схемы. Степень сжатия, в свою очередь, определяется точностью интерполяции отсчетов, поэтому в качестве показателя эффективности каждой схемы использовалась относительная квадратичная погрешность интерполяции (19).

В качестве меры выигрыша разработанной схемы, у известных использовались величины вида

0 (II) _ о

д№ = 0100%,

0(11 >

о (II) о

где - значения относительной квадратичной

ошибки интерполяции для схем (II) и (V), соответственно. Аналогичным образом вычислялись вели-

д(III) д(Ю

чины ' . Для изображения «Лена» (рис. 4) результаты, полученные при различных максимальных ошибках и м = 1, приведены на рис. 6.

0 1 2 3 4 5 6 7 8 9

Рис. 6. Выигрыш по точности разработанной схемы интерполяции у известных схем

Заключение

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

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

Литература

1. Александров В.В., Горский Н.Д. Представление и обработка изображений: Рекурсивный подход // Л.: Наука, 1985. 192 с.

2. Kortman C. M. Redundancy Reduction - A Practical Method of Data Compression // IEEE, 1967. Vol. 55. N. 3. Р. 253-263.

3. Гашников М.В., Глумов Н.И., Сергеев В.В. Метод компрессии изображений в системах оперативного дистанционного зондирования // Доклады IX Всероссийской конференции «Математические методы распознавания образов» (ММРО-9-99). С.160-163.

4. Gashnikov M.V., Glumov N.I., Sergeyev V.V. Compression Method for Real-Time Systems of Remote Sensing // Proceedings of 15th International

Conference on Pattern Recognition. Barselona 2000. September 3-7. Vol.3. Р. 232-235.

5. Ефимов В.М., Колесников А.Н. Оценка эффективности иерархических и построчных алгоритмов сжатия полутоновых изображений без потерь // Тезисы докладов III конференции «Распознавание образов и анализ изображений: новые информационные технологии». Нижний Новгород, 1997. Часть I. С. 157-161.

6. Прэтт У. К. Цифровая обработка изображений // М.: Мир, 1982.

7. Гашников М.В., Глумов Н.И., Сергеев В.В. Адаптивный алгоритм интерполяции для иерархической компрессии изображений // Компьютерная оптика, 2002. Вып. 23, С. 89-93.