Адаптивный способ сжатия изображений

Адаптивный способ сжатия изображений

Ключевые слова: сжатие изображений, адаптивное сжатие, маска.

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

Белов А.С.,

аспирант кафедры ТиЗВ МТУСИ, Sanco88@mail.ru

Постановка задачи

Представим произвольное изображение Аа как открытое множество:

Введение

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

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

Общим свойством алгоритмов сжатия можно считать то, что они выполняются над всем изображением. Для того, чтобы сохранить высокое качество представления фрагментов изображения, представляющих повышенный интерес, и при этом обеспечить максимально высокую степень сжатия, представляется целесообразным применять алгоритмы сжатия не ко всему изображению, а к фрагментам изображения с учетом их особенностей [2,4]. На сегодняшний день данная задача является актуальной и не имеет решения. Целью данного исследования является разработка способа сжатия графических данных с адаптацией к структуре изображения. Под адаптацией будем понимать процесс деления изображения на непересекающиеся фрагменты с учетом их информационной ценности или морфологической структуры с целью дальнейшего сжатия каждого из фрагментов способом, наиболее оптимальным с точки зрения соотношения двух ключевых характеристик «степень сжатия» и «уровень качества». Для решения задачи адаптации предлагается ввести понятие маски, которая показывает месторасположение одной или нескольких областей интереса.

0 < ау < Ь

ау є Аа \<і<п

1 < у < т

(О

где Ь - количество градаций оттенков цвета; тип задают размер изображения в точках (пикселях).

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

а\\ а\2 '  аЫ

А = а2\ а22 ‘ " а2т

1 £ а„2 ' " пт

где а у ~ числовое значение оттенка цвета //-пикселя.

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

Маской изображения А будем называть матрицу Т размерности т х/7, причем е {0,1}, где /. =1, если у-

пиксель принадлежит области интереса С, / = о. в

противном случае.

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

Способы построения маски

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

Пусть область интереса С задана.

Область интереса й может быть прямоугольной и произвольной формы. Если область интереса имеет прямоугольную форму, то для ее задания достаточно определить номера строки и столбца двух пикселей, а^ и а/н/, изображения А, расположенных в противоположных углах прямоугольника области интереса С (к< р, /< ц). В этом случае задача построения маски Т является тривиальной, так как сводится к заполнению матрицы Т, первоначально являющейся нулевой, единицами в позициях / , где к <; < р, I < / < q.

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

заполнить матрицу Т, первоначально являющуюся нулевой, единицами в позициях если 6 С-

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

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

е = -Х^(А)|о8: К(ь;)'

где А - количество градаций оттенков цвета; g(bi) -

гистограмма яркости; Ь - случайная величина, соответствующая яркости элементов изображения.

Энтропия характеризует изменчивость яркости изображения: она принимает максимальное значение в случае равновероятностных значений, то есть при наличии большого количества мелких деталей, и е=0 для областей постоянства.

Тогда предлагается следующий способ получения маски. Вычислим значение энтропии е0 Для всего изображения А. Затем разделим изображение на N непере-секающихся областей А- так, что:

л,|1Ци...1м;=л-

л'гцп...пл;=0

Пусть, например, 4, тогда имеем 4 квадранта матрицы изображения А.

Вычислим значение энтропии е1 для каждой области Д1 и сравним полученные значения со значением энтропии для всего изображения А. Признаком наличия мелких деталей в области является увеличение значения энтропии по сравнению с энтропией всего изображения. Такую область (одну или несколько) первого уровня разделим на области А~ второго уровня так, что:

А?и4:и.МА1=А'

л,2п4п...п4=0

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

Указанную процедуру следует продолжать до достижения заданного уровня детализации или до достижения минимального размера области 2x2 пикселя.

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

Способ сжатия маски

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

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

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

Пусть дана матрица Т вида:

т=

!\\ Г12

21 ,22

... Г, ... /

I т 2/н

...

гДе/,уе{0,1}.

Получим для каждой строки матрицы Т вектор групп вида /?' = [V,' г,' ... г;], где к - количество

групп подряд стоящих одинаковых элементов, / - номер строки матрицы Т, в соответствии со следующими условиями:

1) вектор групп всегда состоит из четного количества элементов,

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

3) если какой-либо столбец или какая-либо строка матрицы начинается с единицы, то г/ = 0,

4) элементы, стоящие на четных позициях вектора групп, означают количество элементов в группах подряд стоящих единиц,

5) если какой-либо столбец или какая-либо строка матрицы заканчивается нулем, то г! = 0 •

Далее вычисляем сумму норм полученных п векторов групп /?':

5НИ+1И+-"+1М’

Аналогично получаем векторы групп С1 = [с/ с{ ... сП, гДеР ~ количество групп подряд

стоящих одинаковых элементов,/ - номер столбца, для всех столбцов матрицы Т. После чего вычисляем сумму

норм полученных т векторов групп С':

Из двух рассматриваемых способов преобразования матрицы в вектор — последовательной записью столбцов и последовательной записью сгрок - следует выбрать первый, если 5 <$(., и второй - в противном

случае.

Теперь из множества векторов групп { или |с',С2,...,С"1} (в зависимости от результата сравнения значений £ и 5Г) необходимо получить единый

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

Пусть в результате сравнения значений Ян и 5(

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

Для этого полученные т векторов групп С‘, соответствующие столбцам матрицы Г, необходимо проанализировать следующим образом:

1) если с1 = 0, а с/ * 0, где / и / - номера столбцов (

I £7 ), то эти столбцы могут быть объединены в порядке С'С7}, причем результирующий вектор групп будет

иметь вид:

^=[с[ с' ... с'р_,

2) если с‘г ф 0, а с/ = 0, где / и у - номера столбцов (/ Фу ), то эти столбцы могут быть объединены в поряд-

ке |с'С'} < причем результирующий вектор групп будет иметь вид:

И' = \с{ с{ ... с'_,

Если существует несколько способов объединения столбцов матрицы, то предпочтение следует отдать тому способу, при котором длина вектора IV будет минимальной. Наилучшим способом является объединение столбцов в порядке их вхождения в матрицу Т. В этом случае порядок следования столбцов можно не хранить вместе со сжатой маской.

Аналогично выполняются действия над строками матрицы Т. При этом вместе с данными про сжатую маску необходимо хранить признак (длиной 1 байт) того, были объединены строки или столбцы матрицы.

Процедура сжатия маски, выполненная в предложенном способе, является обратимой, поскольку:

1) известно, каким образом матрица Т была преобразована в вектор: по строкам или по столбцам, а также известен порядок, в котором это преобразование выполнено,

2) матрица Т является бинарной,

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

Выводы

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

Литература

1. Прэтт У. Цифровая обработка изображений. Кн. I: -М.: Мир, 1982.-312 с.: ил.

2. Гонсалес Р.. Вудс Р. Цифровая обработка изображений: Пер. с англ. / Под ред. Чочиа П.А. - М.: Техносфера, 2005. -1072 с.

3. Самира Эбрахими Кахоу. Е.С. Сулема. Адаптивный способ сжатия изображений. Вісник Хмельницького національного університету, 2010.

4. Сэломон Д. Сжатие данных, изображений и звука. - М.: Техносфера, 2004. - 368 с.

Adaptive Image Compression Method Belov AS„ MTUCI, Russia, Sanco88@mail.ru

Abstract

The common property of the compression algorithms can be considered that they are performed over the whole image. In order to maintain a high quality representation of the images are of special interest, and still provide the highest degree of compression, it is advisable not to use compression algorithms to the entire image, and the fragments of images based on their characteristics. At this moment this is an actual problem and has no solution. The article discusses a way to compress the image data to the adaptation to the structure of the image. By adaptation we mean the process of dividing the image into non-overlapping fragments according to their informational value or morphological structures in order to further compress each of the fragments in a way most optimal in terms of the ratio of two key characteristics of the "compression" and "quality".

Keywords: Image compression, adaptive compression, mask.