Технические науки
УДК 004.932.4 DOI 10.21661/r-112063
М.С. Рябых, Е.С. Сойникова, Д.С. Батищев, В.М. Михелёв
Высокопроизводительный метод морфологической обработки медицинских изображений
Аннотация
В статье показана реализация алгоритма полутоновой морфологии vHGW для выделения границ на медицинском изображении. Обработка изображений выполнена с использованием технологий OpenMP и NVIDIA CUDA для изображений с разным разрешением и различным размером структурирующего элемента.
I
Ключевые слова: медицинские изображения, клетки крови, математическая морфология, CPU, GPU, OpenMP, NVIDIA CUDA, vHGW, градиент, выделение границ.
M.S. Ryabykh, E.S. Soynikova, D.S. Batishchev, V.M. Mikhelev
High-performance method of morphological medical image processing
Abstract
The article shows the implementation of grayscale morphology vHGW algorithm for selection borders in the medical image. Image processing is executed using OpenMP and NVIDIA CUDA technology for images with different resolution and different size of the structuring element.
I
Keywords: medical images, blood cells, mathematical morphology, CPU, GPU, OpenMP, NVIDIA CUDA, vHGW, gradient, edge detection.
Морфология - это наука о строении и форме. В данной работе под словом морфология подразумевается математическая морфология - инструмент извлечения некоторых компонент изображения, полезных для его представления и описания, например границ, остовов и выпуклых оболочек. Интерес также представляют морфологические методы, применяемые на этапах предварительной и заключительной обработки, например, морфологические фильтрация, морфологический градиент [1].
В статье [2] был продемонстрирован результат выделения границ на рентгеновском изображении грудной клетки с помощью оператора Собеля. В данной работе рассмотрим высокопроизводительный метод выделения границ на медицинском изображении клеток крови с помощью алгоритма полутоновой морфологии.
Достоинством морфологического градиента по сравнению с оператором Собеля является то, что сама обработка происходит быстрей и есть возможность выбора сколь угодно большого размера структурирующего элемента. Для реализации операций полутоновой морфологии использовали алгоритм vHGW.
Алгоритм vHGW (van Herk Gil-Werman), описан ван Херком [3], Гилем, и Верманом [4] в своих работах. Это алгоритм полутоновой морфологии для вычисления дилатации и эрозии со сложностью, независимой от размера структурирующего элемента. Он работает для всех структурирующих элементов, состоящих из горизонтальных и / или вертикальных линейных элементов, и требует не более 3-х сравнений значений пикселей для каждого выходного пикселя. Алгоритм состоит из трёх основных этапов (рис. 1) [5].
Engineering Sciences
Input
Row у
p*2-1
Step 1: Segment row into p*2-1 sized windows
П
Step 2: Perforin suffix/prefix max for the left/right half of array
Step 3 : Write final result to output image
Result Row V
V
MAX
Рис. 1. vHGW алгоритм для горизонтального структурирующего элемента размера р
Несмотря на быстроту самого алгоритма, для изображений большого размера требуется больше времени на его обработку, а если необходимо обработать коллекцию изображений, то обработка может занимать часы. Для ускорения выполнения алгоритма необходимо использовать параллельные технологии, что и было сделано в этой работе.
Для сравнения производительности алгоритма нахождения градиента изображения клеток крови мы использовали технологии OpenMP и NVIDIA CUDA. Результат обработки представлен на рис. 2.
V. ) un с
о о ,
• Ö^OfO oG — . •• o-O'^opOi
Рис. 2. Исходное изображение клеток крови и результат его морфологического градиента
Проанализировав графики, представленные на рисунках 3 и 4, можно сделать вывод о том, что при реализации алгоритма vHGW на NVIDIA CUDA для обработки изображения клеток крови удалось получить ускорение приблизительно в 15 раз, по сравнению с реализацией на OpenMP.
4,50 4,00 3,50 3,00 2,50 2,00 1,50 1,00 0,50 0,00
Ч
= =•= 12XCPU t GPU
15x15 27x27 39x39 51x51
Размер структурирующего элемента
Рис. 3. Зависимость времени выполнения программы от размера структурирующего элемента на 12 потоках CPU и GPU
Interactive science | 5 • 2016 55
Технические науки
5 4,5 4
3,5
2 3 гх
5 2,5 ш о_ « 2
1,5
1
0,5
0
р
ш • ' •
■ ■
• GPU ■ 12XCPU
600*449 1200x899 1900x1423 2592x1942 3240x2427
Разрешение изображения
Рис. 4. Зависимость времени выполнения от разрешения изображения программы на 12 потоках CPU и GPU
Литература
1. Рябых М.С. Морфологическая обработка изображений отпечатков пальцев с использованием параллельных вычислений на графических процессорах / М.С. Рябых, Е.С. Сойникова, Д.С. Батищев, В.М. Михелёв // Тенденции развития науки и образования: Сборник научных трудов по материалам XII международной научно-практической конференции (31 марта 2016 г.). - Ч. 4. - Самара: Л-Журнал, 2016. - 60 с.
2. Рябых М.С. Решение задачи сегментации медицинских изображений с использованием параллельных вычислений / М.С. Рябых, Е.С. Сойникова, Д.С. Батищев, В.М. Михелёв // Приоритетные направления развития науки, техники и технологий: Сборник материалов международной научно-практической конференции (29 февраля 2016 г.). - Т. 2. - Кемерово: ЗапСибНЦ, 2016 - 460 с.
3. A fast algorithm for local minimum and maximum filters on rectangular and octagonal kernels / Van Herk M. // Pattern Recognition Letters. - 1992. - Vol. 13. - №7. - P. 517-521.
4. Computing 2-D Min, Median, and Max Filters / J. Gil and M. Werman // IEEE Trans. Pattern Anal. Mach. Intell. -1993. - Vol. 15. - №5. - P. 504-507.
5. Domanski L. Parralel van herk/gil-werman image morphology on gpus using cuda / L. Domanski, P. Vallotton, D. Wang // NVIDIA GPU Computing Poster Showcase. - 2009 [Электронный ресурс]. - Режим доступа: http://www.nvidia.com/ object/SC09 posters.html