Информатика
УДК 519.63:004.932
ЧИСЛЕННОЕ МОДЕЛИРОВАНИЕ МОДИФИЦИРОВАННОЙ СХЕМЫ ПЕРОНА-МАЛИКА В ЗАДАЧАХ ФИЛЬТРАЦИИ ЦВЕТНЫХ ИЗОБРАЖЕНИЙ
A.A. Юдашкин1, Д. А. Заусаев1, И. С. Рябцов2
1 Самарский государственный технический университет,
443100, Самара, ул. Молодогвардейская, 244.
2 Самарский государственный университет,
443011, Самара, ул. Академика Павлова, 1.
E-mails: [email protected], zausaev@wesee. com, ryabtsov^wesee.com
Рассматривается модификация классической модели Перона— Малика, адаптированная для фильтрации цветных дискретных изображений. Особенностью предлагаемой схемы является применение метрик перцептивного цветового 'различия для. оценки расстояния между пикселями, а также модификаций подсчёта коэффициентов диффузии. Численное моделирование показывает, что предложенная схема обладает высоким качеством и производительностью.
Ключевые слова: дифференциальные уравнения в частных производных, схема Перона—Малика, обработка изображений, фильтрация изображений.
Введение. Проблема фильтрации шума является одной из ключевых и одновременно самых сложных задач в разных областях науки и техники. Шумоподавление широко используется при распознавании образов в компьютерном зрении для улучшения качества рентгеновских снимков при сжатии видеопоследовательностей и изображений. Существует большое число подходов к фильтрации шума: Ьох-фильтры, медианная фильтрация, математическая морфология, Гауссовское размытие, вейвлет-преобразования, РСА, фильтры Винера. Однако основная проблема при фильтрации заключается в том, чтобы сохранить чёткость объектов, оставить детали, соизмеримые по амплитуде с самим шумом, и упомянутые подходы не способны её решить.
Лучшим решением на данный момент можно считать фильтры на основе PDE (Partial Differential Equations). Важным достоинством фильтров данного типа является возможность распараллеливания алгоритма численного расчёта и, как следствие, возможность реализация его на GPU [1]. В связи с широким применением графических процессоров при решении подобных задач [2-5], а также их высокой производительностью одной из целей текущей работы была выбрана реализация предложенной схемы на GPU.
Классическим результатом в области PDE-фильтров является цикл работ Перона и Малика [6,7], в которых вводится понятие анизотропной нелинейной диффузии в различных задачах, в том числе — фильтрация шума на изображениях в градациях серого. В статье [8] проводится анализ исходной схемы, приводятся альтернативные формулы для коэффициентов диффузии, которые позволяют повысить устойчивость при большом числе шагов, даются оценки качества анизотропной фильтрации изображений. Работы [2,3] посвящены реализации и анализу схем Перона—Малика
Александр Анатольевич Юдашкин (д.т.н.), профессор, каф. автоматики и управления в технических системах. Дмитрий Анатольевич Заусаев, аспирант, каф. прикладной математики и информатики. Игорь Сергеевич Рябцов, аспирант, каф. функционального анализа и теории функций.
на GPU. Результаты показывают преимущество GPU перед CPU, которое заключается в увеличении скорости исполнения одинаковых входных данных в 5-10 раз. В работе [4] рассматривается применение анизотропной диффузионной фильтрации при сегментации 3D MRI изображений с реализацией на CPU и CUDA. В другой работе [4] даётся сравнение билатерального и анизотропного фильтров, реализованных на высокоэффективной платформе NVIDIA Tesla. Полученные результаты показывают преимущество анизотропного фильтра по качеству и, в некоторых случаях, по скорости.
В текущей работе предлагается обобщение модели Перона—Малика на цветные изображения. Для этого предлагается использовать формулы цветового различия в качестве метрики расстояния между пикселями, а также модифицировать подсчёт коэффициентов диффузии. Предложенная в работе модель реализована на C++ для CPU И GPU на платформах CUDA и OpenCL. Численное моделирование показывает, что предложенная схема даёт лучшие результаты при работе с цветными изображениями, а также имеет высокую скорость по сравнению с другими реализациями.
1. Математическая модель модифицированной схема Перона Малика. Рассмотрим схему анизотропной диффузии [6]. Имеем замкнутую область D С R2, на которой определён класс непрерывных изображений в градациях серого /(ж, y,t) связанных следующим уравнением:
где величина с(х, у, €) называется коэффициентом диффузии. Она определяет скорость размытия и обычно выбирается зависящей от градиента I в точке (ж, у). Таким образом, удаётся сохранять границы изображения от размытия. В работе [7] предложено несколько функций для коэффициентов диффузии:
Параметр а определяет чувствительность функции к границам и выбирается экспериментально.
Подход Перона—Малика удобен при работе с изображениями в градациях серого, где пиксель задаётся одной числовой характеристикой — яркостью. Но при переходе к цветным изображениям применение схемы осложняется наличием дополнительных размерностей (цветовые компоненты).
Перейдём к рассмотрению модифицированной схемы для дискретных изображений. Имеем цветное изображение из N на М пикселей иО ^ г ^ Я-1, 0 ^ ^ ^ М — 1. Обозначим через П множество векторов:
Начальное состояние всех пикселей соответствует входному изображению: .
Для каждого пикселя подсчитаем коэффициенты X* ^(п) в начальный момент времени к = 0 по всем восьми направлениям: п = (Дг, (Е О
Значение пикселей изображения в произвольный момент времени к определяется по рекуррентной формуле
— = div (с(х, у, t) VI) = Vc • V/ + с(х, у, t) Д/,
1
п = {(-1, -1), (0, -1), (1, -1), (0, -1), (0,1), (-1,1), (0,1), (1,1)}.
1
2. Метрики оценки цветовой разности. Для оценки дистанции d между пикселями на цветных изображениях существуют специальные функции, которые мет-ризуют пространство цветов и одновременно дают числовую оценку человеческого восприятия цветовой разности. Они работают в специфических цветовых пространствах CIE Lab и CIE LCh.
Простейшим примером формулы для оценки перцептивной цветовой разности является CIE76 [9]:
d(h,l2) = y/{L\ — L2)2 + (ai — a.2)2 + (bi — Ьг)2-
Другими примерами функций подобного рода являются более сложные формулы CIE94 [9], СМС [9], CIEDE2000 [10]. В настоящей работе при численном моделировании применялась формула CIEDE2000, поскольку она даёт лучший результат из существующих на данный момент.
3. Реализация модели на GPGPU. Программа обработки изображений была реализована для выполнения как на центральном процессоре, так и на графической плате (технологии CUDA и OpenCL). Для вычислений использовались видеокарты AMD Radeon HD 6950 GPU, GeForce GTX 560 Ti и процессор Intel Core Í7-2600K 3.40 GHz.
Алгоритм вычисления на графической плате был адаптирован. На предварительном этапе массив пикселей изображения загружался в текстурную память видеокарты. Данная память обладает высоким быстродействием, однако она имеет доступ только на чтение [1].
Изображение обрабатывалось «окном»: для технологии CUDA «окно» имело размер 32 на 16 пикселей, для технологии OpenCL размер окна составил 16 на 16 пикселей. Такой размер окна был выбран на основе экспериментальных данных как оптимальный. При каждом проходе происходил перенос пикселей «окна» из текстурной памяти в разделяемую (наиболее быструю память) В разделяемой памяти происходило вычисление анизотропной диффузии по модифицированной схеме, после чего пиксели «окна» переносились в результирующий массив. Таким «окном» обрабатывалось всё изображение. В экспериментах численно моделировалось 50 шагов приведённого алгоритм.
Данный алгоритм тестировался на наборе картинок, масштабированных до размера 100 000 пикселей. В табл. 1 приведены усредненные результаты проведенных вычислений.
Удалось добиться пятикратного увеличения производительности при использовании графических плат, при этом различия во времени вычисления между двумя графическими платами невелики.
В качестве показателя зашумленности использовалось PSNR. Был взят набор тестовых изображений, для которых в 25%, 50% и 75% пикселей вносился импульсный шум. В табл. 2 показано среднее значение PSNR для зашумленного изображения до и после работы анизотропного фильтра по отношению к исходному изображению. Наблюдается значительное снижение шума в результате работы анизотропного фильтра.
Таблица 2
Среднее значения PSNR
PSNR 25% 50% 75%
Зашумлённое изображение 5,4076 4,9867 4,5807
После применения фильтра 5,8477 5,5843 5,2156
Таблица 1
Среднее время работы алгоритма (50 шагов)
Вычислительная платформа Среднее время(мс)
Intel Core Í7-2600K 38,32
GeForce GTX 560 Ti 8,17
Radeon HD 6950 8,43
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Hwu W. W. GPU Computing Gems Emerald Edition. San Francisco, CA: Morgan Kaufmann, 2011. 886 pp.
2. Felsberg M. On the Relation Between Anisotropic Diffusion and Iterated Adaptive Filtering // LNCS, 2008. Vol. 5096. Pp. 436-445.
3. Rumpf M., Strzodka R. Nonlinear Diffusion in Graphics Hardware / In: Proceedings of EG/IEEE TCVG Symposium, on Visualization (VisSym ’01), 2001. Pp. 75-84.
4. Schenke S., Wünsche В. C., Denzler J. GPU-based volume segmentation / In: Proceedings of IVCNZ ’05, 2005. Pp. 171-176.
5. Howison M. Comparing GPU Implementations of Bilateral and Anisotropic Diffusion Filters for 3D Biomedical Datasets: Technical Report LBNL-3425E. Berkeley, CA: Lawrence Berkeley National Laboratory, 2010. 9 pp.
6. Perona P., Malik J. Scale space and edge detection using anisotropic diffusion / In: Proceedings of the IEEE Computer Society Workshop on Computer Vision. Miami, FL, 1987. Pp. 16-27.
7. Perona P., Malik I. Scale-Space and Edge Detection Using Anisotropic Diffusion // Pattern Anal. Mach,. Inteil., 1990. Vol. 12, no. 7. Pp. 629-639.
8. Gilboa G., Zeevi Y. Y., Sochen N. Image enhancement segmentation and denoising by time dependent nonlinear diffusion processes / In: Image Processing’ 2001. Vol. 3, 2001. Pp. 134-137.
9. Melgosa M. Testing CIELAB-Based Color-Difference Formulas // Color Research and Application, 2000. Vol. 25, no. 1. Pp. 49-55.
10. Sharma G., Wu W., Dadal E. N. The CIEDE2000 Color-Difference Formula: Implementation Notes, Supplementary Test Data, and Mathematical Observations // Color research and application, 2005. Vol. 30, no. 1. Pp. 21-30.
Поступила в редакцию 14/VII/2011; в окончательном варианте — 14/XI/2011.
MSC: 68U10; 49М25
NUMERICAL SIMULATION OF MODIFIED PERONA-MALIK EQUANTION IN DIGITAL IMAGE DENOISING APPLICATIONS
A.A. Yudashkin1, D.A. Zausaev1, I. S. Ryabtsov2
1 Samara State Technical University,
244, Molodogvardeyskaya St., Samara, 443100, Russia.
2 Samara State University,
1, Academician Pavlov St., Samara, 443011, Russia.
E-mails: [email protected], zausaev@wesee. com, ryabtsov^wesee.com
Classical Perona-Malik model is modified and adapted for digital color image filtering.
An advantage of the proposed scheme is the use of perceptual color difference metrics to measure the distance between pixels, and, the modification of diffusion coefficients calculation formulas. Numerical simulation shows that the proposed scheme has a high quality and, performance.
Key words: partial differential equations, Perona-Malik equation, image processing, image denoising.
Original article submitted 14/VII/2011; revision submitted 14/XI/2011.
Alexander A. Yudashkin, (Dr. Sei. (Techn.)), Professor, Dept, of Automation & Control in Technical Systems. Dmitry A. Zausaev, Postgraduate Student, Dept, of Applied Mathematics & Computer Science. Igor S. Ryabtsov, Postgraduate Student, Dept, of Functional Analysis & Function Theory.