Научная статья на тему 'Быстрый алгоритм медианной фильтрации'

Быстрый алгоритм медианной фильтрации Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
2682
205
Читать
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕДИАННАЯ ФИЛЬТРАЦИЯ / ЦИФРОВЫЕ ИЗОБРАЖЕНИЯ / MEDIAN FILTERING / DIGITAL IMAGING

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

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

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

FAST ALGORITHM OF MEDIAN FILTERING

Fast algorithm of median filtering using data median determination in filter window by means of local histogram analysis has been suggested. When moving from pixel to pixel in the process of image scanning correction of histogram requires small number of non-complex operations. The suggested algorithm increases considerably the median filtering process compared to the traditional algorithms. This enables median filtering application sphere extending.

Текст научной работы на тему «Быстрый алгоритм медианной фильтрации»

ISSN 0868-5886

НАУЧНОЕ ПРИБОРОСТРОЕНИЕ, 2011, том 21, № 3, с. 135-139 ОБРАБОТКА И ПРЕДСТАВЛЕНИЕ ДАННЫХ

УДК 621.391.837: 681.3 © Б. В. Бардин

БЫСТРЫЙ АЛГОРИТМ МЕДИАННОЙ ФИЛЬТРАЦИИ

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

Кл. сл.: медианная фильтрация, цифровые изображения

ВВЕДЕНИЕ

Медианная фильтрация является удобным инструментом обработки информации, особенно двухмерной информации — изображения [1, 2, 3]. Медианный фильтр удаляет из сигнала фрагменты с размерами, меньшими чем половина размера окна фильтра, и при этом мало искажает или почти совсем не искажает остальные участки сигнала. Например, одномерный монотонный сигнал совсем не искажается медианным фильтром. Наиболее известным применением медианной фильтрации является устранение из сигнала коротких импульсных помех [2, 3]. Причем амплитуда помехи не влияет на результат медианной фильтрации в отличие от реакции линейного фильтра. В работе [1] показано использование медианного фильтра при обработке изображения клеток крови — гра-нулоцитов. Здесь перед измерением размера гра-нулоцита его изображение подвергалось сглаживанию медианным фильтром с целью устранения гранул, которые могут влиять на результат измерения.

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

При обработке изображения размером М х N точек (пикселей) число операций с данными будет велико и составит М х N х п2. Различные опера-

ции требуют разных затрат времени выполнения. При последовательном сканировании изображения количество наиболее трудоемких операций — операций сортировки можно сократить. Так, при переходе от точки о1 с окном w1 к точке о2 с окном w2 на рис. 1 можно из вариационного ряда окна w1 исключить точки столбца 1, отсортировать точки столбца 6 и объединить два полученных вариационных ряда в один. Такой алгоритм работает быстрее по сравнению с независимой сортировкой в каждом окне, однако общее число манипуляций с данными (пусть и менее трудоемких), например хотя бы перебор данных, остается тем же самым, т. е. достаточно большим. Поэтому при медианной фильтрации изображений обычно ограничиваются окнами 3 х 3 или 5 х 5 и редко

136

Б. В. БАРДИН

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

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

БЫСТРАЯ МЕДИАННАЯ ФИЛЬТРАЦИЯ

В работе [3] при рассмотрении ранговых алгоритмов обработки изображений показано, что любую г-ю порядковую статистику V, (г) элемента изображения можно найти из локальной гистограммы Н, (д) распределения значений элементов окрестности , (окна на рис. 1), решив уравнение

V, (г)

Ед=г.

д=0

(1)

Здесь

д = 0, 1, - 1— номер кванта (бина) гистограммы;

V, = Яу — квантованное значение видеосигнала;

г = 0, 1, ..., -1 — ранг элемента: его номер в вариационном ряду;

— число элементов окрестности (окна) ,,

или площадь окна в пикселях; в нашем случае = «2.

Медианный фильтр является частным случаем рангового фильтра с рангом отклика г = (-1 )/2. Так как

е-1

Е (Я) =

д=0

(2)

О- 1

Рис. 2. Гистограмма яркости изображения в окне медианного фильтра

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

+ So + Sн =

SL < (5, -1)/2, 5н < (5, -1) / 2.

(3)

(4)

(5)

то из (1) следует, что медиана дт = V, (г) делит площадь гистограммы пополам (за вычетом бина, соответствующего дт).

На рис. 2 показано разбиение гистограммы. Здесь 5о = Н(дт) — площадь бина, соответствую-

Предполагается, что нечетное. Знаки неравенства в двух последних выражениях могут иметь место только при 5о > 1.

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

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

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

3. В процессе выполнения операций по пунктам 1 и 2 одновременно изменяются величины

, 5н и ¿О .

4. На оснований выражений (3), (4) и (5) корректируются величины , , и дт .

Ниже приведен фрагмент программы на языке С, реализующий описанный алгоритм корректировки. Здесь, для удовлетворения синтаксису языка С индексы при 5 и д заменены строчными буквами, а индексы при Н и V упущены. Для случая на рис. 1 п=5 и j о=1.

БЫСТРЫЙ АЛГОРИТМ МЕДИАННОЙ ФИЛЬТРАЦИИ

137

for(i=0; i<n; i++) { h[v[jo] [i]]--; if(v[jo][i] < qm) Sl—; else if(v[jo][i] > qm) Sh--; else So-- ;

h [v[jo+n] [i] ] ++; if(v[jo+n][i] < qm) Sl++; else if(v[jo+n][i] > qm) Sh++; else So++;

while(Sl > (Sw-1)/2) { qm-- ; if(h[qm] > 0) { Sl=Sl-h[qm]; } while(Sh > (Sw-1)/2) { qm++ ; if(h[qm] > 0) { Sh=Sh-h[qm]; } }

Sh=Sh+h[qm+1]; So=Sw-Sl-Sh; }

Sl=Sl+h[qm-1]; So=Sw-Sl-Sh; }

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

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

ПРОВЕРКА РЕЗУЛЬТАТОВ И ВЫВОДЫ

Видеоинформация, содержащаяся в регистрируемых аналитическими приборами изображениях, в частности в изображениях биологических объектов [4, 5], обычно имеет три составляющие: видеоинформация, представляющая исследуемые объекты, шум и фоновая составляющая изображения.

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

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

Рис. 3. Изображение объектов ПЦР-анализа

138

Б. В. БАРДИН

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

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

На рис. 5 показано вычисление фона при помощи медианного фильтра. Из рисунка видно, что краевые эффекты в этом случае очень малы, однако при этом потребовалось применение фильтра с большим окном — 41 х 41 пиксель или 1681 пиксель в окне. Размер изображения составлял 256 х 256 пикселей. Измерение времени медианной фильтрации производилось на компьютере со скромными возможностями. Он имел в своем составе одноядерный процессор Pentium® 4 CPU 2.4 GHz и RAM 512 MB.

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

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

быстрый алгоритм медианнои фильтрации

139

СПИСОК ЛИТЕРАТУРЫ

1. Бардин Б.В. Исследование возможностей медианной фильтрации при цифровой обработке изображений совокупностей локальных биологических объектов // Научное приборостроение. 2011. Т. 21, № 2. С. 120-125.

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

3. Ярославский Л.П. Цифровая обработка сигналов в оптике и голографии. М.: Радио и связь, 1987. 296 с.

4. Бардин Б.В., Чубинский-Надеждин И.В. Обнаружение локальных объектов на цифровых микроскопических изображениях // Научное приборостроение. 2009. Т. 19, № 4. С. 96-102.

5. Бардин Б.В, Манойлов В.В., Чубинский-Надеж-дин И.В., Васильева Е.К., Заруцкий И.В. Определе-

ние размеров локальных объектов изображений для их идентификации // Научное приборостроение. 2010. Т. 20, № 3. С. 88-94.

Институт аналитического приборостроения РАН, г. Санкт-Петербург

Контакты: Бардин Борис Васильевич, bardin.bv@mail.ru

Материал поступил в редакцию 19.04.2011.

FAST ALGORITHM OF MEDIAN FILTERING

B. V. Bardin

Institute for Analytical Instrumentation of RAS, Saint Petersburg

Fast algorithm of median filtering using data median determination in filter window by means of local histogram analysis has been suggested. When moving from pixel to pixel in the process of image scanning correction of histogram requires small number of non-complex operations. The suggested algorithm increases considerably the median filtering process compared to the traditional algorithms. This enables median filtering application sphere extending.

Keywords: median filtering, digital imaging

Оригинал-макет подготовлен Беленковым В.Д._

Лицензия ИД № 02980 от 06 октября 2000 г.

Подписано к печати 25.08.2011 г. Формат 60 х 90)8. Бумага офсетная. Печать офсетная. Усл. печ. л. 17.5. Уч.-изд. л. 16.3. Тираж 100 экз. Тип. зак. № 270. С 96

Санкт-Петербургская издательская фирма "Наука" РАН 199034, Санкт-Петербург, Менделеевская линия, 1 E-mail: main@nauka.nw.ru Internet: www.naukaspb.spb.ru

Первая Академическая типография «Наука», 199034, Санкт-Петербург, 9 линия, 12

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