Научная статья на тему 'РЕШЕНИЕ ЗАДАЧИ СЕГМЕНТАЦИИ МЕДИЦИНСКИХ ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ГРАФИЧЕСКИХ ПРОЦЕССОРАХ'

РЕШЕНИЕ ЗАДАЧИ СЕГМЕНТАЦИИ МЕДИЦИНСКИХ ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ГРАФИЧЕСКИХ ПРОЦЕССОРАХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
119
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СЕГМЕНТАЦИЯ / CUDA / OPENMP / ОПЕРАТОР СОБЕЛЯ / МАСКА ФИЛЬТРА / МЕДИЦИНСКОЕ ИЗОБРАЖЕНИЕ / ПАРАЛЛЕЛИЗМ / GPGPU

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Рябых М.С., Сойникова Е.С., Батищев Д.С., Михелёв В.М.

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Рябых М.С., Сойникова Е.С., Батищев Д.С., Михелёв В.М.

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

Текст научной работы на тему «РЕШЕНИЕ ЗАДАЧИ СЕГМЕНТАЦИИ МЕДИЦИНСКИХ ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ГРАФИЧЕСКИХ ПРОЦЕССОРАХ»

Таким образом, пользователям остается только нажать кнопку «Добавить» и полученные координаты добавятся непосредственно в коллекцию MongoDB и станут новым запросом. На скриншоте (рис. 2) можно увидеть 5 маркеров, то есть 5 населенных пунктов, куда пользователи хотели бы вызвать мобильную медицинскую бригаду.

Вторая, более важная функция, реализованная в приложение: оповещение о запланированных приездах медицинских бригад в малонаселенные пункты. Для этого был подключен смарт-пакет csv-to-collection, чтобы конвертировать «План приезда мобильных бригад врачей» на сервер в базу данных MongoDB, из которой с помощью функции publish(), он становится доступным каждому авторизованному клиенту на главной странице web-приложения [2]. А также плагин: Push notifications, благодаря которому с согласия пользователей, приходят сообщения с датой приезда бригады.

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

Список литературы:

1. David Burles Reactive geolocation with Google Maps [Электронный ресурс]. - Режим доступа: http://meteorcapture.com/reactive-geolocation-with-google-maps/ (дата обращения: 02.02.2016).

2. The catalog for Meteor packages [Электронный ресурс]. - Режим доступа: https://atmospherejs.com (дата обращения: 15.11.2015).

3. Tom Caleman, Sasha Grief Discover Meteor [Электронный ресурс]. -Режим доступа: http://ru.discovermeteor.com (дата обращения: 02.02.2016).

РЕШЕНИЕ ЗАДАЧИ СЕГМЕНТАЦИИ МЕДИЦИНСКИХ ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ГРАФИЧЕСКИХ ПРОЦЕССОРАХ

© Рябых М.С.1, Сойникова Е.С.1, Батищев Д.С.2, Михелёв В.М.3

НИУ Белгородский государственный университет, г. Белгород

В статье исследуется увеличение скорости выполнения сегментации медицинских изображений на примере оператора Собеля с использо-

1 Студент кафедры Математического и программного обеспечения информационных систем.

2 Ассистент кафедры Математического и программного обеспечения информационных систем, аспирант.

3 Доцент кафедры Математического и программного обеспечения информационных систем, кандидат технических наук, доцент.

ванием технологии СЦЭА. На основе вычислительного эксперимента делается вывод о том, какое преимущество даёт вычисление на графических процессорах по сравнению с вычислениями на центральных процессорах.

Ключевые слова сегментация, СЦБА, ОрепМР, оператор Собеля, маска фильтра, медицинское изображение, параллелизм, ОРОРИ.

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

- улучшения качества изображения;

- расчета клинически важных количественных параметров.

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

Задачи сегментации можно разделить на два класса:

- выделение областей на изображении - т.е. поиск и выделение областей на изображении, характеристики которых достоверно известны;

- разбиение изображения на области - поиск областей с некоторым общим характером.

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

- пороговая сегментация;

- морфологическая сегментация;

- объединение областей.

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

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

Медицинские изображения могут сильно варьироваться в размере / объеме, в среднем разрешение цифрового рентген-снимка лежит в пределах 58 мегапикселей, в случае же оцифровки аналоговой пленки, разрешающая способность ограничивается цифровым сканером и может быть существенно выше разрешающей способности цифровых рентген-аппаратов [1].

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

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

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

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

'-1 0 1" -1 - 2 -1"

по x - - 2 0 2 , по y - 0 0 0

-1 0 1 1 2 1

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

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

Важную роль при обнаружении контуров играет модуль этого вектора, который обозначается V/ и равен

V/ = |/ = 7о2х + о2у. (1)

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

В результате происходит первоначальное выделение краев на объекте интереса. Следующий шаг - применение порога для определения нахождения границы в данной точке изображения. Чем меньше порог, тем больше границ будет находиться, но тем более восприимчивым к шуму станет результат, выделяя лишние данные изображения. Наоборот, высокий порог может проигнорировать слабые края или получить границу фрагментами. Выделение границ использует два порога фильтрации: если значение пикселя выше верхней границы - он принимает максимальное значение (граница считается достоверной), если ниже - пиксель подавляется, точки со значением, попадающим в диапазон между порогов, принимают фиксированное среднее значение [3].

Проведём вычислительный эксперимент с использованием технологии OpenMP для распараллеливания программы на центральном процессоре и NVЮIA CUDA для распараллеливания на графическом процессоре. Результаты эксперимента приведены на рис. 1-3.

648x405 1296x810 1944x1215 2592x1620 3240x2025

Разрешение изображения

Рис. 1. График зависимости времени выполнения сегментации от разрешения изображения с использованием вычислений на CPU и GPU

Для проведения исследования используем следующее аппаратное обеспечение:

Центральный процессор: 12xIntel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz.

Графический процессор: NVIDIA GeForce GT 630M GF108 с поддержкой CUDA 2.1.

Рис. 2. Медицинское изображение до применения оператора Собеля

Рис. 3. Медицинское изображение после применения оператора Собеля

Для распараллеливания на CPU с помощью OpenMP использовали все 12 потоков. Для распараллеливания на GPU использовали максимально допустимое количество нитей в блоке для предоставленной видеокарты - 1024.

С помощью технологии NVIDIA CUDA удалось получить ускорение вычисления алгоритма оператора Собеля приблизительно в 10 раз по сравнению с использованием технологии OpenMP.

Список литературы:

1. Медицинские изображения [Электронный ресурс] // 8С1-АКПСЬБ. ЯИ. - Электрон. журн. - Режим доступа: Шр://5а-а1Ис1е.ги/51а1.рЬр?1=1413 957877. - Загл. с экрана.

2. Методы распознавания медицинских изображений для задач компьютерной автоматизированной диагностики [Электронный ресурс] // Современные проблемы науки и образования. - Электрон. журн. - М., [2005-]. -Режим доступа: http://www.science-education.ru/ru/artic1e/view?id=14414. -Загл. с экрана.

3. Методы сегментации изображений: автоматическая сегментация [Электронный ресурс] // Компьютерная графика и мультимедиа. - Электрон. журн. -М., - Режим досутпа: http://cgm.computergraphics.ru/content/view/147. - Загл. с экрана.

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В МЕДИЦИНЕ

© Щербинин Е.О.1

ИКИТ СФУ, г. Красноярск

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

Компьютеры уже давно используются в медицине [1]. Многие современные методы диагностики базируются на компьютерных технологиях. К ним, например, относятся: УЗИ, анализы крови, состояния зубов, кардиограмма, исследование глазного дна и т.д.

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

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

1 Студент.

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