МИНИМИЗАЦИЯ ЭНТРОПИИ ПОСТИНТЕРПОЛЯЦИОННЫХ ОСТАТКОВ ПРИ КОМПРЕССИИ ИЗОБРАЖЕНИЙ НА ОСНОВЕ ИЕРАРХИЧЕСКОЙ СЕТОЧНОЙ ИНТЕРПОЛЯЦИИ
М.В. Гашников1
1 Самарский национальный исследовательский университет имени академика С.П. Королёва, Самара, Россия
Аннотация
Разрабатывается и исследуется адаптивный параметризованный интерполятор при компрессии изображений на основе иерархической сеточной интерполяции. Для оптимизации параметров этого интерполятора предлагается подход, основанный на минимизации энтропии квантованных постинтерполяционных остатков, которая используется в качестве оценки объёма сжатых данных. Записывается рекуррентная схема вычисления параметров предлагаемого интерполятора, и вычисляются теоретические оценки его вычислительной сложности. В составе иерархического метода компрессии изображений производится экспериментальное исследование разработанного интерполятора, а также его сравнение с усредняющими интерполяторами и адаптивным интерполятором, основанным на оптимизации суммы абсолютных значений погрешностей интерполяции. Показывается преимущество разработанного интерполятора над прототипами по размеру компрессированных данных при различных погрешностях, вносимых в сжатое изображение.
Ключевые слова: иерархическая сеточная интерполяция, компрессия, квантование, степень сжатия, максимальная погрешность, вычислительная сложность.
Цитирование: Гашников, М.В. Минимизация энтропии постинтерполяционных остатков при компрессии изображений на основе иерархической сеточной интерполяции / М.В. Гашников // Компьютерная оптика. - 2017. - Т. 41, № 2. - С. 266-275. - Б01: 10.18287/2412-6179-2017-41 -2-266-275.
Введение
Несмотря на продолжающееся быстрое увеличение ёмкости запоминающих устройств, размер обрабатываемых изображений всё равно растёт быстрее, особенно для мульти- и гиперспектральных изображений [1 - 3]. Из-за ограничений на доступные ресурсы (размер, вес, энергопотребление, объём памяти, мощность процессора и т.п.) особенно остро эта проблема проявляет себя для бортовых систем регистрации изображений, размещённых на летательных аппаратах, в том числе спутниках и атмосферных беспилотных летательных аппаратах (БПЛА). Единственно возможным решением проблемы чрезмерно большого объёма данных, соответствующего изображениям, в описанных ситуациях является использование компрессии.
К настоящему моменту известно огромное количество методов, предназначенных для компрессии изображений [4 - 17]. Наиболее эффективными (по коэффициенту компрессии) являются фрактальные методы [10], которые, однако, используются очень редко из-за чрезмерно высокой вычислительной сложности и недопустимых искажений в виде неестественных для изображения артефактов.
Наиболее предпочтительными в координатах «эффективность/погрешность» и «эффективность / сложность» автору представляются методы на основе вейв-лет-преобразований [11], наиболее известным и распространённым из которых является JPEG-2000 [12].
Схожими свойствами обладает семейство методов на основе дискретных ортогональных преобразований (ДОП) [13], среди которых особое место занимает JPEG [14], который уступает [15] вейвлет-методам по коэффициенту компрессии, но существенно превосходит их (а также все остальные методы компрес-
сии изображений) по распространённости из-за огромного количества находящихся в использовании аппаратных и программных средств.
Однако, общим местом всех перечисленных методов компрессии, основанных на каких-либо преобразованиях (фрактальных, вейвлетных, ДОП и т.п.), является повышенная ресурсоёмкость, что ставит под сомнение возможность их применения как в бортовых системах, так и в системах реального времени вообще.
Кроме того, из-за уникальности сжимаемой информации требования к управлению качеством компрессированных данных в таких системах часто бывают особенно жёсткими, что также является препятствием к использованию перечисленных методов из-за трудности (или невозможности) строгого управления погрешностью в пространстве тех или иных коэффициентов преобразования (трансформант).
Таким образом, при жёстких требованиях к качеству сжатых данных и ограниченности доступных ресурсов на первый план выходят методы компрессии изображений, не требующие использования сложных (спектральных, вейвлетных и т. п.) преобразований и выполняющие всю обработку в пространственной области, что делает возможным строгий контроль качества сжатой информации при низкой вычислительной сложности.
Наиболее простыми из таких методов являются дифференциальные (разностные) методы компрессии изображений, в том числе методы на основе дифференциальной импульсно-кодовой модуляции (ДИКМ) [4 -6], которые производят декорреляцию сжимаемого сигнала за счёт перехода к его разностному представлению.
Эти методы основаны на экстраполяции (предсказании) пикселов изображения по уже обработанным (предыдущим) пикселям и последующем сжимающем
кодировании погрешностей этого предсказания. Главным достоинством таких методов является низкая вычислительная сложность, которую, однако, «перевешивает» существенный недостаток - невысокая эффективность (недостаточно высокий коэффициент сжатия).
Естественным развитием дифференциальных методов компрессии изображений являются иерархические [16 - 17] методы компрессии, отличие которых заключается в способе «предсказания»: для интерполяции пикселей изображения используются пиксели прореженной копии того же самого изображения.
Более удачный способ расположения опорных отсчётов при «предсказании» (интерполяции) позволяет существенно повысить коэффициент компрессии, а структура метода обеспечивает возможность быстрого иерархического доступа к сжатым данным, при котором время декомпрессии фрагмента изображения не зависит от масштаба этого фрагмента.
К другим важным преимуществам иерархических методов компрессии относятся возможности:
• управления скоростью формирования потока сжатых данных,
• повышения помехоустойчивости,
• управления максимальной [18] погрешностью, что является обоснованием актуальности дальнейшего исследования и повышения эффективности иерархических методов компрессии изображений.
Одним из наиболее важных этапов иерархических методов компрессии является этап интерполяции («предсказания»), на котором пиксели более прореженного изображения используются для интерполяции пикселей менее прореженного изображения.
Для такой интерполяции чаще всего используется простое усреднение [19 - 20] по ближайшим (уже обработанным) пикселям более прореженных масштабных уровней. Такой способ очень прост вычислительно, но по точности недостаточно эффективен, в результате чего в работе [21] был предложен адаптивный интерполятор, использующий различные интерполирующие функции в зависимости от локальных особенностей изображения. Параметры этого адаптивного интерполятора выбирались исходя из минимизации абсолютных значений постинтерполяционных остатков (погрешностей интерполяции). Однако автор считает, что адекватность этого критерия задаче компрессии изображения не является подтверждённой, т.к. уменьшение погрешности интерполяции только косвенным образом влияет на объём сжатых данных.
Поэтому в данной работе предлагается более адекватный с точки зрения компрессии изображений подход к оптимизации параметров адаптивного интерполятора, который основан на минимизации собственно объёма сжатых данных, в качестве оценки которого используется энтропия [22] квантованных постинтерполяционных остатков.
На основе предложенного подхода разработан параметризованный алгоритм адаптивной интерполяции, произведена теоретическая оценка его вычисли-
тельной сложности, а также экспериментальное сравнение этого алгоритма (в составе иерархического метода компрессии изображений) с другими алгоритмами интерполяции.
Иерархическая компрессия изображений
Компрессия изображений методом иерархической сеточной интерполяции (ИСИ) [16, 23 - 24] базируется на специальном представлении изображения, в основе которого лежит безызбыточная модификация квадродерева. При этом изображение X = {х(т,п)}
представляется в виде непересекающихся «масштабных уровней» X/:
1-1
X = иX/ , ХХ-1 ={ хХ-1 (т,п)} ,
1=0
XI ={ х1 (т п)} \ { х/+1 (т п)}, 1 < Ь-1 ,
где Ь - количество масштабных уровней, а {х1(т, п)} - изображение, прореженное с шагом 21 по каждой координате.
Для простоты изложения пусть отсчёты х(т, п) исходного изображения неотрицательные и целочисленные. При компрессии методом ИСИ «масштабные уровни» X1 обрабатываются последовательно, от старшего (наиболее прореженного) уровня XL-l к младшим уровням XЬ-2, XЬ-1,.., X1, X0,. Объём данных старшего уровня составляет настолько малую долю от объёма данных изображения, что выбор алгоритма сжатия этого уровня неважен (можно даже помещать этот уровень в архив вообще без компрессии). Поэтому далее рассматривается алгоритм сжатия любого «нестаршего» масштабного уровня X1, 1 < Ь-1.
1) Интерполятор
Интерполяция пикселей {х1(т, п)} «нестаршего» масштабного уровня X1 осуществляется на основе пикселей {х* (т, п), к > 1} более прореженных масштабных уровней { Xк,к > 1}, уже прошедших компрессию и восстановление:
х1 (т, п ) = Р {~Xk , к > 1} = Р { хм(т, п)} , (1)
где х1 ( т, п ) - интерполирующие значения пикселей, а Р(..) - функция, задающая интерполятор. Интерполяторы рассматриваются более подробно в следующих параграфах.
2) Постинтерполяционные остатки
Вычисляются разности исходных и интерполирующих (1) значений пикселей, то есть разностный сигнал или «постинтерполяционные остатки» (погрешности интерполяции):
/1 (т,п) = х1 (т,п)-Х1 (т,п) . (2)
3) Квантователь
Выполняется квантование (по сути, переквантование) разностного сигнала (постинтерполяционных остатков). В данной работе для определённости бу-
дем применять квантователь с равномерной шкалой (здесь [..] выделяет целую часть числа):
к (т, п)\ + £ша
q,(m,n) = sign (f (m,n))
2emax +1
(3)
который гарантирует, что декомпрессированное изображение отличается от исходного изображения не более чем на заданную величину максимальной
погрешности £шах (параметр метода компрессии):
( т, П )| = ( т, П )" * ( т, . (4)
Квантованные постинтерполяционные остатки (3) подвергаются статистическому кодированию, что обеспечивает собственно уменьшение объёма данных, и направляются в канал связи или архив.
4) Восстановление пикселей
При компрессии также вычисляются восстановленные значения пикселей, идентичные значениям, которые будут получены при декомпрессии:
х, (т, п) = ql (т, п) (1 + ) + х, (т, п). (5)
Эти значения будут затем использованы для интерполяции пикселей более прореженных масштабных уровней (уровней с меньшими номерами) (X , к > ,}. Наличие такой «обратной связи» гарантирует, что интерполятор будет принимать на вход одни и те же значения и при компрессии, и при декомпрессии (при декомпрессии неискажённые значения отсчётов недоступны), что позволяет в конечном итоге управлять погрешностью.
Процедура декомпрессии произвольного нестаршего масштабного уровня в целом похожа на процедуру компрессии и включает шаги интерполяции (1) и восстановления (5).
Усредняющая интерполяция
при иерархической компрессии изображений
Для минимизации вычислительной сложности для интерполяции при иерархической компрессии изображений обычно [19 - 20] используется простое усреднение по ближайшим обработанным (уже восстановленным) пикселям более прореженных «масштабных уровней» изображения. Далее рассматриваются два типа интерполируемых пискелей (см. рис. 1): «центральные» пиксели вида х,(2т+1, 2п+1) и «крайние» пиксели вида х,(2т+1, 2п) и х,(2т, 2п+1). Таким образом, четыре ближайших восстановленных пикселя более прореженного масштабного уровня расположены по диагонали от центрального пикселя. Два ближайших восстановленных пикселя более прореженного масштабного уровня расположены по вертикали или по горизонтали от крайнего пикселя. Указанные восстановленные пиксели при интерполяции исполняют роль опорных значений. Далее описываются алгоритмы интерполяции одного центрального и одного крайнего пикселя для трёх усредняющих интерполяционных схем. Алгоритм (I). Центральные и крайние пиксели интерполируются в произвольном порядке:
2j (2m + 1,2n)= 0,5(x,+i (m,n) + x,+i (m +1,n)) , (6) x, (2m +1,2n +1) = 0,25( x+ (m,n) + + x,+1 (m +1,n) + x,+1 (m,n +1) + x,+1 (m +1,n +1)).
(7)
+ +
+ +
Рис. 1. Интерполируемые пиксели трёх типов: «центральный» пиксель помечен штриховкой, «крайние» пиксели помечены «плюсами» (закрашенные клетки показывают восстановленные пиксели, на основе которых происходит интерполяция)
Алгоритм (II). Сначала интерполируются крайние пиксели на основе выражений (6). Затем для этих крайних пикселей вычисляются восстановленные значения, которые используются для интерполяции центральных пикселей:
х, (2m + 1,2n +1) = 0,25 (x, (2m + 1,2n) + x, (2m,2n +1) +
- - , (8) + xi (2m +1,2n + 2) + xi (2m + 2,2n +1)).
Алгоритм (III). Сначала интерполируются центральные пиксели на основе выражения (7). Затем для этих центральных пикселей вычисляются восстановленные значения. Интерполяция произвольного крайнего пикселя осуществляется на основе двух пикселей более прореженного масштабного уровня и двух центральных (восстановленнных) пикселей того же самого масштабного уровня:
xi (2m +1,2n) = 0,25 (x,+1 (m, n)+ x,+1 (m +1, n) +
_ - s (9)
+ xi (2m +1,2n -1) + xi (2m + 1,2n +1)).
Описанные алгоритмы интерполяции обладают низкой вычислительной сложностью и довольно хорошо работают на относительно ровных участках изображения, так как усреднение уменьшает влияние шумов, которые неизбежно присутствуют на изображении.
Параметризованная адаптивная интерполяция при иерархической компрессии изображений
Основным недостатком усредняющих алгоритмов интерполяции (6 - 8) является увеличение погрешности интерполяции на границах относительно ровных областей (контурах, т.е. протяжённых перепадах функции яркости изображения, не обязательно замкнутых). Кроме того, эти интерполяторы всегда «работают одинаково», т.е. никак не учитывают особенности каждого конкретного изображения. Для исправления этих недостатков применяются параметризованные адаптивные интерполяторы, которые наряду с усреднением используют также интерполяцию «вдоль контура».
Адаптивный интерполятор, так же как и алгоритм (III), сначала производит интерполяцию центральных отсчётов x/(2m+1, 2n+1), но при этом использует не одну, а три интерполирующие функции: x(0) (2m +1,2n +1) =
Г , s - , П (10)
= 0,5(xi+1 (m,n) + xi+1 (m +1,n +1) ),
xf1 (2m +1,2n +1) = 0,25 (xi+1 (m, n) + + xi+i (m +1,n) + xi+i (m,n +1) + xi+i (m +1,n +1)), X(2) (2m +1,2n +1) =
= 0,5 (
(xi+1 (m +1,n) + xi+1 (m,n +1)).
(11)
(12)
Выбор интерполирующей функции (для каждого пикселя отдельно) автоматически осуществляется посредством зависящего от параметров а, Р решающего правила:
0, ц, (т, п)<а;
1, а<т, (т, п)<Р; (13) 2 т, (m,п) >р;
x (m,n) = xi(>) (m,n), j =
где ц,(т, п) - признак, показывающий направление (и выраженность) контура в локальной окрестности текущего пикселя
mi (2m +1,2n +1) = |xi+1 (m,n) - xi+1 (m +1,n +1) | -
-| xi+1 (m n +1)-xi+1 (m +1, n)
(14)
Большие по модулю (положительные или отрицательные) значения признака контура (14) соответствуют пикселям изображения, через которые проходит участок диагонального контура «слева снизу вправо вверх» и «слева сверху вправо вниз» соответственно. В этих ситуациях интерполяция «вдоль» контура соответствующего направления более точна, поэтому используются функции (12) и (10) соответственно. Близкие к нулю значения признака контура (14) соответствуют пикселям, находящимся на относительно ровных участках изображения, для которых «усредняющее» выражение (11) работает лучше. Таким образом, параметры интерполятора используются как «пороги переключения» между «усредняющим» выражением (11) и выражениями (10), (12), которые интерполируют «вдоль контура».
После интерполяции центральных отсчётов x/(2m+1, 2n+1), так же как и в алгоритме (III), для них вычисляются восстановленные значения, на основе которых затем интерполируются крайние отсчёты x/(2m+1, 2n) и x(2m, 2n+1). Эта интерполяция также адаптивна и происходит аналогично рассмотренной схеме (10 - 15) (ситуация просто поворачивается на 45°).
Таким образом, для каждого масштабного уровня вычисляется (и записываются в архив) своя пара параметров а, ß (точнее, две пары параметров: одна для центральных пикселей и вторая для крайних, итого 2L-2 параметра).
Минимизация энтропии постинтерполяционных остатков при адаптивной интерполяции
Перед применением адаптивного интерполятора (13) сначала необходимо вычислить его параметры a, ß. Эти параметры автоматически вычисляются в зависимости от «количества и выраженности» контурных линий для каждого изображения индивидуально. Параметры a, ß являются целочисленными и находятся в интервале
-M < а <0<ß<M , (15)
где M - зависит от разрядности изображения и фактически задаёт диапазон 0 < x (m, n) < M ,
возможных яркостей изображения (для 8-битного изображения M = 256).
В работе [21] вычисление указанных параметров происходит исходя из минимизации абсолютных значений погрешностей интерполяции:
5(а,ß) = ^ \x, (m,n)-xl (m,n) ® min . (16)
(m,n)
Уменьшение ошибок интерполяции (увеличение точности) влечёт за собой ослабление разностного (2) и квантованного разностного (3) сигналов, что в результате должно повысить коэффициент сжатия квантованного сигнала (3).
Однако влияние указанной погрешности на объём сжатых данных является не прямым, а опосредованным. Поэтому в данной работе параметры адаптивного интерполятора предлагается вычислять исходя из минимизации энтропии Hq квантованного разностного сигнала (3), которая является хорошей оценкой [22] объёма сжатых данных.
С точностью до мультипликативной и аддитивной констант, не влияющих на результат оптимизации, указанный критерий минимизации энтропии Hq записывается в виде:
M-1
Hq (a,b) = - £ Nq (a,b)lnNq (a,b) ® min , (n)
q=-M +1 a,b
где Nq(a, b) - количество отсчётов квантованного разностного сигнала (3), имеющих значение q. Оптимизация оценки объёма сжатых данных в данном случае представляется более адекватным критерием, т.к. основной целью компрессии является минимизация объёма сжатых данных, а не погрешности интерполяции.
Немаловажной является ещё и побочная цель решения задачи (17): полезным представляется выяснить, насколько хорошим с точки зрения компрессии является решение задачи (16). Очевидно, что решение задачи (16) является настолько хорошим, насколько оно близко к решению задачи (17), которая решается непосредственно исходя из минимизации объёма данных.
Прямое решение задачи (17) вычислительно трудоёмко, потому что задача является двухпараметри-ческой. В данной работе предлагается замена этой задачи на две однопараметрические задачи. Для этого рассмотрим два подмножества значений квантованного разностного сигнала q(m, n), соответствующие
отрицательным и положительным значениям признака контура (14) соответственно:
{q (m,n)j = {q, (m,n): m, (m,n) < öj , {q+ (m,n)j = {q, (m,n): m, (m,n) > öj .
(18)
(19)
где qi(m, n) вычисляется согласно выражению (3).
Как видно из (18 - 19), количество Nq-(a) отсчётов сигнала q- (m, n), имеющих значение q, зависит от a
и не зависит от ß. Поясним это утверждение.
1. Так как параметр ß может принимать только положительные значения, то при отрицательном значении признака (14) в формуле (13) третий вариант вычисления не будет задействован никогда, т.е. прямой зависимости от параметра ß действительно нет.
2. Признак (14) зависит от восстановленных значений пикселей, которые, в свою очередь, зависят от параметров a, ß. Однако указанные восстановленные значения находятся на уже обработанных (более прореженных) масштабных уровнях, к моменту вычисления признака (14) их значения уже известны и фиксированы. Т.е. они действительно зависят от параметров a, ß «своего» (уже обработанного) масштабного уровня и не зависят от параметров «текущего» масштабного уровня, т.е. косвенной зависимости от параметра ß также нет.
Соответственно, количество Nq+(ß) отсчётов сигнала q+(m, n), имеющих значение q, зависит от ß и
не зависит от a. Следовательно, энтропия Hq-(a) сигнала q- (m, n) также зависит только от a, а энтропия
Hq+(ß) сигнала q+(m,n) зависит только от ß. Опираясь на это, двухпараметрическая задача (17) заменяется на две однопараметрические:
M-1
H "(a) = - X N- (a) ln Nq (a)® min, (20)
q q=-M+1 a
M-1
® min . (21)
q=-M+1 ß
Рассмотрим решение задачи (21). Для этого на дополнительном предварительном проходе по изображению вычисляется трёхмерная матрица
N® , 0 <m< M, - M < q < M, i e{1,2j , (22)
каждый элемент которой содержит количество пикселей квантованного разностного сигнала (3), имеющих значение q, при значении признака контура (14), равном m, при использовании интерполятора номер i, который задаётся одним из выражений (10 - 12).
Затем с использованием этой матрицы запускается рекуррентная схема вычисления количества Nq+(ß) значений сигнала (19), равных q, при всех возможных значениях параметра ß:
H+(ß) = - X N+(ß)lnN+ (ß)
Nq+(0)= X N
(1)
m=0
(23)
ж;(р+1,д) = ж;(р,д)-к« + .
На основе найденного количества Лд+(Р) значений сигнала (19), равных д, может быть вычислен массив значений энтропии (21) этого сигнала при всех возможных значениях параметра Длина этого одномерного массива всего М и простой перебор его значений позволяет найти минимальное значение энтропии (21) и соответствующее ему оптимальное значение параметра Таким образом, задача (21) решена, а т.к. задача (20) решается аналогично, то это означает решение основной поставленной задачи (17), т.е. задачи оптимизации параметров адаптивного интерполятора.
Оценка вычислительной сложности интерполяторов при компрессии изображений
Для вычислительной сложности предложенного интерполятора в данной работе была построена теоретическая оценка, которая сравнивалась с теоретическими оценками вычислительной сложности других интерполяторов. Оценки вычислительной сложности вычислялись в «операциях на пиксель».
При этом аддитивная иа и мультипликативная ит вычислительные сложности оценивались отдельно. Кроме этих величин, также оценивалось количество и/ вычислений логарифма. Общая вычислительная сложность при этом может быть оценена как
и = иа + ит +и
При оценке вычислительной сложности предполагалось, что деление на степени двойки при интерполяции реализуется битовым сдвигом и по этой причине не требует математических операций. Также принималось во внимание, что сложность рекурсивного расчёта (23) не зависит от размера изображения, а при декомпрессии параметры адаптивных интерполяторов вычислять нет необходимости (они читаются из архива).
Приведём обозначения для рассмотренных в статье алгоритмов интерполяции:
• (I) - (III) - усредняющие интерполяторы (10 - 12);
• (IV) - адаптивный интерполятор (13), основанный на минимизации (16) суммы модулей погрешности интерполяции;
• (V) - адаптивный интерполятор (13), основанный на минимизации (17) энтропии квантованного разностного сигнала (далее «энтропийный интерполятор»). При оценке вычислительной сложности были использованы следующие соображения. При использовании «энтропийного интерполятора» (17) необходимо на предварительном проходе по изображению вычислить значение признака контура (14) для каждого пикселя изображения. Кроме того, для каждого пикселя необходимо вычислить два из трёх интерполированных значений (10 - 12), т.к. нужно всегда только одно из двух значений (10), (12), в зависимости от знака признака контура (14). Затем необходимо вычислить значение кванто-
ванного разностного сигнала (3) и заполнить матрицу (22). После этого запускается рекуррентная схема (23), вычислительная сложность которой не зависит от размера изображения, после чего происходит собственно вычисление значений параметров интерполятора.
После отыскания параметров интерполятора на втором проходе по изображению происходит собственно интерполяция, причём для этого используются интерполирующие значения (10 - 12), уже вычисленные ранее.
Вычислительная сложность такого расчёта приведена в табл. 1 - 3 для изображения размера SmxSn пикселей.
Табл. 1. Аддитивная вычислительная сложность иа интерполяторов при компрессии
Табл. 2. Мультипликативная вычислительная сложность ит и количество операций и/вычисления логарифма при интерполяции на этапе компрессии
Табл. 3. Вычислительная сложность интерполяторов на этапе декомпрессии
Вычислительная сложность
Номер интерполятора Ua Um, Uf
(I-II) Ua = 5/3 Um = Uf = 0
(III) Ua = 3 Um = Uf = 0
(IV-V) Ua = 6 Um = Uf = 0
Для сравнения в этих же таблицах приведена вычислительная сложность остальных интерполяторов.
Выводы таковы:
1. Несмотря на то, что при компрессии адаптивные интерполяторы (IV - V) в несколько раз проигрывают по сложности усредняющим интерполяторам (I - III), их вычислительная сложность находится на уровне, приемлемом для большинства практических приложений.
2. При декомпрессии вычислительная сложность адаптивных интерполяторов в несколько раз меньше, чем при компрессии, и близка к уровню неадаптивных процедур.
3. «Расплатой» за более адекватный с точки зрения компрессии, но вычислительно более сложный показатель качества (17) является то, что при компрессии предлагаемый энтропийный интерполятор (V) существенно (примерно вдвое) проигрывает адаптивному интерполятору (IV) по вычислительной сложности.
4. На этапе декомпрессии вычислительная сложность этих двух интерполяторов совпадает.
Исследование эффективности энтропийного интерполятора при компрессии изображений
Для исследования эффективности адаптивного интерполятора (V), основанного на минимизации (17) энтропии постинтерполяционных остатков, была произведена серия вычислительных экспериментов на наборе изображений разного типа («город», «поля», «портрет», «шум» и др.).
Некоторые примеры тестовых изображений такого вида показаны на рис. 2. Из них синтезированным является только изображение «Шум» (это «белый шум», то есть некоррелированное стационарное случайное поле), остальные примеры соответствуют реальным изображениям.
Рис. 2. Примеры тестовых изображений: «Поля», «Портрет», «Город», «Шум»
Разработанный «энтропийный» интерполятор (V) сравнивался с остальными интерполяторами (I - IV), рассмотренными в данной работе (список алгоритмов и их обозначений приведён в предыдущем параграфе). Для всех интерполяторов, а также для метода компрессии на основе ИСИ в целом была использована авторская программная реализация на языке С++.
В качестве меры эффективности разработанного энтропийного интерполятора (V) был использован его относительный (в процентах) выигрыш А у остальных интерполяторов по размеру сжатых данных:
А = (^(х) - S{У) (х) )100% , (24)
где S;V) - размер компрессированных данных (в байтах) при использовании разработанного энтропийного интерполятора (V), который сравнивается с размером компрессированных данных S(X) какого-либо другого интерполятора из набора (I - IV). Типичные результаты показаны на рис. 3 - 4.
Номер интерполятора Вычислительная сложность
Изображение размера SmxSn, содержащее М возможных значений яркости, при иерархической компрессии используется Ь масштабных уровней Sm*S„ = 1000 M = 256 L = 5
(I-II) Ца = 5/3 Ua = 5/3
(III) Ца = 3 Ua = 3
(IV) иа = 11 + 2 (Ь -1) ((6М - 4)/^)) Ua » 11,01
(V) и = 11 + 4(Ь -1)8М2 - 13М + 4 SmSn Ua »19,34
Номер интерполя-тора Вычислительная сложность
Изображение размера SmxSn, содержащее М возможных значений яркости, при иерархической компрессии используется Ь масштабных уровней Sm*S„ = 1000 M = 256 L = 5
(I-IV) Цт = ЦГ = 0 Um = Uf = 0
(V) , ч( 2М -1) М ит = ЦГ = 4 (Ь 1Г о о Um = Uf » 2,09
10
-я-
р-
V \
Г
-1-7-Я
-П а /
»-л
..•Д-д
.сг
.....Л- (Ш)
\ /
10
15
20
-2
А,%
—©,(П)
.....(III)
у
■А— А...А—А— А—А--А— А—А—А— А»-А--А» .А»-А--А—А...А..
О 5 10 15 20
Рис. 3. Зависимость выигрыша А разработанного интерполятора (V) у усредняющих схем (I- III) по размеру архива от максимальной погрешности Втах для изображений «Поля», «Шум», «Портрет», «Город»
Выводы таковы:
1. Разработанный энтропийный интерполятор (V) имеет заметный выигрыш (до 10%) по сравнению с усредняющими интерполяторами (ЫП) по размеру архива на изображениях всех рассмотренных типов (кроме «белого шума», на котором тривиальное усреднение оптимально).
2. Выигрыш разработанного энтропийного интерполятора (V) у адаптивного интерполятора (IV) по размеру архива составляет доли процента на большей части диапазона погрешностей (на меньшей части диапазона имеет место незначительный проигрыш).
0 5 10 15 20
Рис. 4. Зависимость выигрыша А разработанного интерполятора (V) у адаптивного интерполятора (IV) по размеру архива от максимальной погрешности Втах
для изображений: «Поля», «Шум», «Портрет», «Город»
3. Подтверждена экспериментально адекватность предложенного критерия (17) по отношению к задаче компрессии.
4. Подтверждена экспериментально адекватность критерия (16) по отношению к задаче компрессии, т.к. полученные с его помощью результаты лишь незначительно уступают результатам, полученным с помощью критерия (17).
5. Разработанный энтропийный интерполятор (V) может быть использован вместо адаптивного интерполятора (IV), если минимизация размера архива важнее скорости компрессии (или когда имеет значение только скорость декомпрессии, а скорость компрес-
сии неважна), т.к. интерполятор (V) существенно проигрывает интерполятору (IV) по скорости компрессии (вдвое), а выигрывает по коэффициенту компрессии незначительно (доли процента).
Заключение
Исследовались адаптивные интерполяторы при компрессии на основе иерархической сеточной интерполяции. Предложен основанный на минимизации энтропии постинтерполяционных остатков подход к оптимизации параметров адаптивного интерполятора, который наиболее адекватен задаче компрессии, т.к. основан непосредственно на минимизации оценки собственно объёма сжатых данных.
На основе предложенного подхода разработан и реализован программно (в составе метода ИСИ) адаптивный интерполятор. Получена теоретическая оценка вычислительной сложности разработанного алгоритма интерполяции, и проведено её сравнение с оценками вычислительной сложности других интерполяторов.
Проведены вычислительные эксперименты по исследованию эффективности разработанного «энтропийного» интерполятора, в рамках которых показано его преимущество над прототипами в координатах «объём данных / погрешность».
Благодарности
Работа выполнена за счет гранта Российского научного фонда (проект №14-31-00014) «Создание лаборатории прорывных технологий дистанционного зондирования Земли».
Литература
1. Chang, C.-I. Hyperspectral data processing: Algorithm design and analysis / C.-I. Chang. - Hoboken, NJ: Wiley Press, 2013. - 1164 p. - ISBN: 978-0-471-69056-6.
2. Borengasser, M. Hyperspectral remote sensing: Principles and applications / M. Borengasser, W. Hungate, R. Watkins. - Boca Raton, London, New York: CRC Press, 2004. -128 p. - ISBN: 978-1566706544.
3. Chang, C.-I. Hyperspectral imaging: Techniques for spectral detection and classification / C.-I. Chang. - Springer, 2003. - 372 p. - ISBN: 978-0306474835.
4. Salomon, D. Data compression. The complete reference / D. Salomon. - 4th ed. - Springer-Verlag, 2007. - 1118 p. -ISBN: 978-1846286025.
5. Sayood, K. Introduction to data compression / К. Sayood. -4th ed. - Morgan Kaufmann, 2012. - 768 p. - ISBN: 9780124157965.
6. Ватолин, Д. Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео / Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин. - М.: ДИАЛОГ-МИФИ, 2002. - 384 с. - ISBN: 5-86404-170-Х.
7. Woods, E. Digital image processing / E. Woods, R. Gonzalez. - 3th ed. - Prentice Hall, 2007. - 976 p. - ISBN: 9780131687288.
8. Pratt, W. Digital image processing / W. Pratt. - 4th ed. -Wiley, 2007. - 807 p. - ISBN: 978-0471767770.
9. Лидовский, В.В. Теория информации: Учебное пособие / В.В. Лидовский. - М.: Компания Спутник+, 2004. -111 с. - ISBN 5-93406-661-7.
10. Woon, W.M. Achieving high data compression of self-similar satellite images using fractal / W.M. Woon, A.T.S. Ho, T. Yu; S.C. Tam, S.C. Tan, L.T. Yap // Proceedings of IEEE International Geoscience and Remote Sensing Symposium (IGARSS). - 2000. - P. 609-611. - DOI: 10.1109/IGARS S.2000.861646.
11. Gupta, V. Enhanced image compression using wavelets / V. Gupta, V. Sharma, A. Kumar // International Journal of Research in Engineering and Science (IJRES). - 2014. -Vol. 2(5). - P. 55-62.
12. Li, J. Image compression: The mathematics of JPEG-2000 / J. Li // Modern Signal Processing. MSRI Publications. -2003. - Vol. 46. - P. 185-221.
13. Plonka, G. Fast and numerically stable algorithms for discrete cosine transforms / G. Plonka, M. Tasche // Linear Algebra and its Applications. - 2005. - Vol. 394(1). - P. 309345. - DOI: 10.1016/j.laa.2004.07.015.
14. Wallace, G. The JPEG still picture compression standard / G. Wallace // Communications of the ACM. - 1991. -Vol. 34(4). - P. 30-44. - DOI: 10.1145/103085.103089.
15. Ebrahimi, F. JPEG vs. JPEG2000: An objective comparison of image encoding quality / F. Ebrahimi, M. Chamik, S. Winkler // Proceedings of SPIE. - 2004. - Vol. 5558. -Р. 300-308. - DOI: 10.1117/12.564835.
16. Gashnikov, M.V. Compression method for real-time systems of remote sensing / M.V. Gashnikov, N.I. Glumov, V.V. Sergeyev // Proceedings of 15th International Conference on Pattern Recognition. - 2000. - Vol. 3. - P. 232-235. - DOI: 10.1109/ICPR.2000.903527.
17. Gashnikov, M.V. Hierarchical GRID interpolation under hyper-spectral images compression / M.V. Gashnikov, N.I. Glumov // Optical Memory and Neural Networks. - 2014. - Vol. 23(4). -P. 246-253. - DOI: 10.3103/S1060992X14040031.
18. Lin, S. Error control coding: Fundamentals and applications / S. Lin, D. Costello. - 2nd ed. - Englewood Cliffs, New Jersey: Prentice-Hall, Inc., 2004. - 1260 p. - ISBN: 9780130426727.
19. Ефимов, В.М. Оценка эффективности иерархических и построчных алгоритмов сжатия полутоновых изображений без потерь / В.М. Ефимов, А.Н. Колесников // Тезисы докладов III конференции "Распознавание образов и анализ изображений: новые информационные технологии". - Нижний Новгород, 1997. - Часть I. - С. 157-161.
20. Gashnikov, M.V. Interpolation for hyperspectral images compression / M.V. Gashnikov // CEUR Workshop Proceedings. - 2016. - Vol. 1638. - Р. 327-333. - DOI: 10.18287/1613-0073-2016-1638-327-333.
21. Гашников, М.В. Адаптивный алгоритм интерполяции для иерархической компрессии изображений / М.В. Гашников, Н.И. Глумов, В.В. Сергеев // Компьютерная оптика. - 2002. - Вып. 23. - С. 89-93.
22. MacKay, D.J.C. Information theory, inference, and learning algorithms / D.J.C. MacKay. - Cambridge University Press, 2003. - 628 p. - ISBN: 978-0521642989.
23. Gashnikov, M.V. Hyperspectral images repository using a hierarchical compression / M.V. Gashnikov, N.I. Glumov // Posters Proceedings of 23rd International Conference on Computer Graphics, Visualization and Computer Vision (WSCG). - 2015. - P. 1-4.
24. Gashnikov, M.V. Development and investigation of a hierarchical compression algorithm for storing hyperspectral images / M.V. Gashnikov, N.I. Glumov // Optical Memory and Neural Networks. - 2016. - Vol. 25(3). - P. 168-179. -DOI: 10.3103/S1060992X16030024.
Сведения об авторе
Гашников Михаил Валерьевич, 1975 года рождения, в 1998 году окончил Самарский государственный аэрокосмический университет имени академика С.П. Королёва (СГАУ), кандидат наук, доцент. В настоящее время работает доцентом кафедры геоинформатики и информационной безопасности Самарского национального исследовательского университета имени академика С.П. Королёва. Область научных интересов: сжатие изображений, обработка космических снимков, геоинформационные технологии. Имеет более 80 публикаций, в том числе более 30 статей и две монографии (в соавторстве). E-mail: [email protected] .
ГРНТИ: 28.23.15, 28.21.15, 28.17.19 . Поступила в редакцию 16 января 2017 г. Окончательный вариант - 15 февраля 2017 г.
MINIMIZING THE ENTROPY OF POST-INTERPOLATION RESIDUALS FOR IMAGE COMPRESSION
BASED ON HIERARCHICAL GRID INTERPOLATION
M.V. Gashnikov1
1 Samara National Research University, Samara, Russia Abstract
An adaptive parameterized interpolator for image compression based on hierarchical grid interpolation is developed and investigated. For optimizing the interpolator parameters an approach is proposed based on the minimization of the entropy of the quantized post-interpolation residuals, which is used as an estimate of the volume of compressed data. A recursive procedure for calculating the parameters of the developed interpolator is proposed, and theoretical estimates of its computational complexity are calculated. As part of a hierarchical image compression method, the developed interpolator is experimentally investigated, as well as making its comparison with averaging interpolators and an adaptive interpolator based on optimizing the sum of the absolute values of the interpolation errors. The developed interpolator is shown to have an advantage over the prototypes in terms of the compressed data size for various compression errors.
Keywords: hierarchical grid interpolation, compression, quantization, compression ratio, maximum deviation, computation complexity.
Citation: Gashnikov MV. Minimizing the entropy of post-interpolation residuals for image compression based on hierarchical grid interpolation. Computer Optics 2017; 41(2): 266-275. DOI: 10.18287/2412-6179-2017-41-2-266-275.
Acknowledgements: The work was funded by the Russian Science Foundation, grant No. 14-31-00014.
References
[1] Chang C. Hyperspectral Data Processing: Algorithm Design and Analysis. Hoboken, NJ: Wiley Press; 2013. ISBN: 978-0-471-69056-6.
[2] Borengasser M, Hungate W, Watkins R. Hyperspectral remote sensing: Principles and applications. Boca Raton, London, New York: CRC Press; 2004. ISBN: 9781566706544.
[3] Chang C-I. Hyperspectral imaging: Techniques for spectral detection and classification. Springer; 2003. ISBN: 9780306474835.
[4] Salomon D. Data Compression. The Complete Reference. 4th ed. Springer-Verlag, 2007. ISBN: 978-1846286025.
[5] Sayood K. Introduction to Data Compression. 4th ed. Morgan Kaufmann; 2012. ISBN: 978-0124157965.
[6] Vatolin D, Ratushnyak A, Smirnov M, Yukin V. Data compression methods. Archive program architecture, image and video compression [In Russian]. Moscow: "Dia-log-MIFI" Publisher; 2002. ISBN: 5-86404-170-X.
[7] Woods E, Gonzalez R. Digital Image Processing. 3th ed. Prentice Hall; 2007. ISBN: 978-0131687288.
[8] Pratt W. Digital image processing. 4th ed. Wiley; 2007. ISBN: 978-0471767770.
[9] Lidovski V. Information theory: Tutorial [In Russian]. Moscow: "Kompania Sputnik+" Publisher; 2004. ISBN 593406-661-7.
[10] Woon W, Ho A, Yu T, Tam S, Tan S, Yap L. Achieving high data compression of self-similar satellite images using fractal. Proceedings of IEEE International Geoscience and Remote Sensing Symposium (IGARSS) 2000; 609-611. DOI: 10.1109/IGARSS.2000.861646.
[11] Gupta V, Sharma V, Kumar A. Enhanced image compression using wavelets. International Journal of Research in Engineering and Science (IJRES) 2014; 2(5): 55-62.
[12] Li J. Image Compression: The Mathematics of JPEG-2000. MSRI Publications 2003; 46: 185-221.
[13] Plonka G, Tasche M. Fast and numerically stable algorithms for discrete cosine transforms. Linear Algebra and its Applications 2005; 394(1): 309-345. DOI: 10.1016/j.laa.2004.07.015.
[14] Wallace G. The JPEG Still Picture Compression Standard. Communications of the ACM 1991; 34(4): 30-44. DOI: 10.1145/103085.103089.
[15] Ebrahimi F, Chamik M, Winkler S. JPEG vs. JPEG2000: An objective comparison of image encoding quality. Proceedings of SPIE 2004; 5558: 300-308. DOI: 10.1117/12.564835.
[16] Gashnikov MV, Glumov NI, Sergeyev VV. Compression method for real-time systems of remote sensing. Proceedings of 15th International Conference on Pattern Recognition 2000; 3: 232-235. DOI: 10.1109/ICPR.2000.903527.
[17] Gashnikov MV, Glumov NI. Hierarchical GRID interpolation under hyperspectral images compression. Optical
Memory and Neural Networks 2014; 23(4): 246-253. DOI: 10.3103/S1060992X14040031.
[18] Lin S, Costello D. Error control coding: Fundamentals and applications. 2nd ed. Englewood Cliffs, NJ: Prentice-Hall, Inc.; 2004. ISBN: 978-0130426727.
[19] Efimov VM, Kolesnikov AN. Effectiveness estimation of the hierarchical and line-by-line lossless compression algorithms [In Russian]. Proceedings of the III conference "Pattern recognition and image analisys" 1997; 1: 157-161.
[20] Gashnikov MV. Interpolation for hyperspectral images compression. CEUR Workshop Proceedings 2016; 1638: 327-333. DOI: 10.18287/1613-0073-2016-1638327-333.
[21] Gashnikov MV, Glumov NI, Sergeev VV. Adaptive interpolation algorithm for hierarchical image compression [In Russian]. Computer optics 2012; 23: 89-93.
[22] MacKay DJ. Information theory, inference, and learning algorithms. Cambridge University Press; 2003. ISBN: 9780521642989.
[23] Gashnikov MV, Glumov NI. Hyperspectral images repository using a hierarchical compression. Posters Proceedings of 23rd International Conference on Computer Graphics, Visualization and Computer Vision (WSCG) 2015; 1-4.
[24] Gashnikov MV, Glumov NI. Development and investigation of a hierarchical compression algorithm for storing hyperspec-tral images. Optical Memory and Neural Networks 2016; 25(3): 168-179. DOI: 10.3103/S1060992X16030024.
Authors' information
Mikhael Valeryevich Gashnikov (b. 1975) graduated from S.P. Korolyov Samara State Aerospace University (SSAU), PhD and associate professor. He is the associate professor at the Geoinformatics and Information Security department at Samara National Research University. He has 80 publications, including 30 scientific papers and 2 monograph (with coauthors). His research interests are currently focused on image compression, space images processing, geoinformation technologies. E-mail: [email protected] .
Received January 16, 2017. The final version - February 15, 2017.