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

Анализ методов предварительной обработки изображения на основе усредняющих фильтров Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1060
171
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИЗОБРАЖЕНИЕ / ДИСТАНЦИОННОЕ ЗОНДИРОВАНИЕ / ПОДСТИЛАЮЩАЯ ПОВЕРХНОСТЬ / ФИЛЬТРАЦИЯ / УСРЕДНЕНИЕ СВЕРТКА / ФУНКЦИОНАЛ / IMAGE / REMOTE SENSING / UNDERLYING SURFACE / FILTERING / AVERAGING OF FOLDING / FUNCTIONAL

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Тамьяров Андрей Валерьевич, Шестов Руслан Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ANALYSIS OF METHODS OF IMAGE PREPROCESSING BASED ON AVERAGING FILTER

The article presents the analysis of the most famous methods of the image filtering and program code of image folding and its results.

Текст научной работы на тему «Анализ методов предварительной обработки изображения на основе усредняющих фильтров»

УДК 004.94 +004.054 ББК 30в6

Тамьяров А.В., Шестов Р.В.

АНАЛИЗ МЕТОДОВ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ ИЗОБРАЖЕНИЯ НА ОСНОВЕ УСРЕДНЯЮЩИХ ФИЛЬТРОВ

Tamyarov A. V., Shestov R. V.

ANALYSIS OF METHODS OF IMAGE PREPROCESSING BASED ON AVERAGING FILTER

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

Keywords: image, remote sensing, underlying surface, filtering, averaging of folding, functional.

Аннотация

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

Abstract

The article presents the analysis of the most famous methods of the image filtering and program code of image folding and its results.

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

- первой из этих причин является невозможность соблюсти одинаковый уровень освещенности объекта или подстилающей поверхности;

- вторая причина связана с системой формирования и обработки изображения.

В настоящее время наиболее широкое применение получили устройства формирования изображения с датчиками на основе комплементарных металооксидных полупроводников (КМОП) и приборов с зарядовой связью (ПЗС-матрицы).

КМОП-матрицы на сегодняшний день не достигают уровня ПЗС - формирователей изображения особенно при низкой освещенности. Ввиду этого более широкое распространение получили ПЗС-матрицы (рисунок 1).

Рисунок 1 - Внешний вид ПЗС - матрицы

Данная матрица состоит из большого числа фоточувствительных элементов. Основной задачей ПЗС-матрицы является накопление электрических зарядов, сгенерированных поглощенными фотонами. В результате заряд, накопленный ПЗС-матрицей, пропорционален освещенности. На этапе считывания данные заряды передаются на дальнейшую обработку и в результате преобразуются в электрическое напряжение. Так вот разница изображений обусловлена тем, что во время формирования изображения в момент накопления заряда и передачи его на обработку на этот заряд действует большое количество шумов (например дробовый шум), уровни которых в различных ПЗС-матрицах различны. Из вышесказанного можно сделать вывод, что в результате использования двух ПЗС-матриц невозможно получить идентичные, с точки зрения технической системы, изображения. Помимо этих двух факторов на оптическую систему и устройство формирования изображения действует еще большое количество возмущений, которые тоже вносят свой негативный вклад. Однако на данный момент разработан комплекс мер, который позволяет обработать изображение на начальном уровне. К способам предварительной обработки изображения на программном уровне относится в первую очередь усреднение изображения, основой которого является свертка.

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

Согласно диаграмме (рисунок 2) выбор конкретного фильтра с целью обработки того или иного изображения необходимо производить согласно виду зашумленности изображения.

Управляемое

усреднение

Рисунок 2 - Классификация видов усреднения

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

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

На рисунке 3 представлены результаты работы медианного фильтра, на рисунке 3 а -изображение, зашумленное импульсной помехой, а на рисунке 3б - результат работы медианного фильтра.

а) б) Рисунок 3 - Пример использования медианного фильтра

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

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

Для более наглядной демонстрации описанных в статье материалов ниже приводится листинг программного кода, написанный в интегрированной среде разработки программного обеспечения Бе1рЫ 7, в котором реализуется метод свертки изображения (рисунок 4). Данный пример является вырожденным случаем линейной фильтрации изображения. _

Ш-4 TForml Ш\-Ш Procedures S L_! Variables/Constants El LJ Uses

1

SB®

TObject) ;

double;

.11] of double=(0.5, 1.5, 2.5, 3.5, 4.5, 5.5,

2.5, 1.5, 0.5);// Массив для работы со скатами крыши

procedure TForml.ShowSvertka(Sender: x: integer;

y: dword; //Для изображения xlf yl: word;

xiy, yiy: word; // для окна анализа rain, max: double; wash: double; razn: const mass: array[0..

5.5, 4.5, 3.5, begin

x i у: = 12; //Размер окна анализ а

yiy:=12; //Размер окна анализа

for у: =0 to ImageHeight-yiy do //Для перемещения по всему изображение:

for х:=0 to ImageWidth-xiy do //для перемещения по всему изображении:

begin

for yl:=□ to yiy-1 do //Для окна анализа for xl:=0 to xiy-1 do //Для окна анализа

SV[y, x]:=SV[y, x]+A11Image[y+yl, x+xl] *mass[xl] *mass[yl] ; end;

////////////////////////поиск наибольшего и наименьшего элементов массива свертки max: =5V[2 60, 1]; rain: =SV[2 60, 1]; for у: =3 00 t-о ImageHeight-300 do for x:=0 to ImageWidth-15 do

f FiVTw. wl > ШЯУ t-.tiRTi mav: =svri)

322: 12

I Insert [\Code ^Diagram /

Рисунок 4 - Листинг программного кода метода свертки

Суть представляемого метода фильтрации заключается в следующем: на

изображение накладывается весовая функция в виде крыши (рис 5; 6), которая, по сути, и является маской фильтра.

а) б)

Рисунок 5 - Функция веса используемая для получения свертки изображения:

Вид сверху а) и общий вид б)

Рисунок 6 - Фронтальный вид используемой функции веса

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

Рисунок 7 - Перемещение окна анализа по изображению

Для описания размеров изображения используются переменные ImageWidth и ImageHeight. Кроме этого, в программе использованы три массива: одномерный массив mass и двумерные массивы SV и AllImage. Назначение данных массивов заключается в следующем: массив mass содержит весовые коэффициенты, которые используются для расчета свертки при работе маски фильтра, массив SV необходим для накопления обработанных пикселей массива AllImage, который, в свою очередь, содержит исходное (обрабатываемое) изображение. Что касается выражения AllImage[y+y1, x+x1], то оно необходимо для позиционирования маски фильтра на изображении и корректного расчета свертки. Дело в том, что маска фильтра может позиционироваться при расчете свертки не только в точке AllImage(0,0), которая обозначает начало изображения (левый верхний угол), но и в любом другом месте по желанию оператора. Такие допущения приходится учитывать в случае, если часть пикселей отсутствуют или повреждены (рисунок 8).

Рисунок 8 - Примеры изображений с отсутствующими а) и с поврежденными б) пикселями

В данном конкретном случае вычисление свертки начиналось с 300 строки, то есть первый пиксель массива ЛШша§е имел координаты (300, 0).

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

а) б)

Рисунок 9 - Исходное изображение а), изображение полученное в результате свертки б)

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

Библиографический список

1. Яне Б. Цифровая обработка изображений. - М.: Техносфера, 2007. - 584 с. ISBN 978-5-94836

2. Визильтер Ю.В., Желтов С.Ю., Князь В.А., Ходарев А.Н., Моржин А.В. Обработка и анализ цифровых изображений с примерами на LabVIEW IMAQ Vision. - М.: ДМК Пресс, 2007. - 464 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.