Локализация позвонков человека на рентгеновских изображениях с использованием Darknet yolo

Доклады БГУИР

Doklady BGUIR

2018, № 3

УДК 004.891:004.934

ЛОКАЛИЗАЦИЯ ПОЗВОНКОВ ЧЕЛОВЕКА НА РЕНТГЕНОВСКИХ ИЗОБРАЖЕНИЯХ С ИСПОЛЬЗОВАНИЕМ DARKNET YOLO

К С. КУРОЧКА, Т В. ЛУЧШЕВА, К.А. ПАНАРИН

Гомельский государственный технический университет имени П.О. Сухого, Республика Беларусь

Поступила в редакцию 4 января 2018

Аннотация. Предлагается алгоритм, позволяющий с использованием сверточной нейронной сети на основе регионов Darknet YOLO осуществлять локализацию позвонков на рентгеновских изображениях с последующим определением геометрических параметров с помощью библиотеки компьютерного зрения OpenCV.

Ключевые слова: спондилография, рентгенография, компьютерное зрение, сегментация, нейронные сети.

Abstract. Technology that allows to localize vertebrae on X-ray images and then determine geometric parameters using the OpenCV computer vision library using a convolutional neural network Darknet YOLO based on regions is proposed.

Keywords: spondylography, radiography, computer vision, segmentation, neural networks. Doklady BGUIR. 2018, Vol. 113, Ш. 3, pp. 32-38

Localization of human percentages on X-ray images with use of Darknet YOLO K.S. Kurachka, T.V. Luchshava, K.A. Panarin

Введение

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

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

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

1) локализация пространственного положения позвонков на изображении;

2) определение размерных характеристик каждого позвонка в отдельности;

3) измерение относительного взаиморасположения позвонков, определение углов наклона и поворота между ними.

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

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

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

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

Авторами предлагается воспользоваться сверточной нейронной сетью на основе регионов [7], что позволит значительно сократить временные затраты при низких требованиях к вычислительным мощностям и сохранении высокой точности нахождения объектов.

Локализация и параметризация позвонков на изображении

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

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

ТЯвШР чч.

Рис. 1. Пример типичного изображения, полученного при рентгеновском исследовании

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

Для нахождения координат позвонков авторами была использована нейронная сеть на основе регионов Darknet YOLO [7]. Для обучения сети использовалась технология параллельных вычислений CUDA. Принцип работы сети состоит в разбиении изображения на фиксированные области, в которых затем происходит поиск наличия объекта. Соседние ячейки, содержащие части одного объекта, объединяются. После объединения обнаруженные объекты передаются классификатору (рис. 2). Таким образом, классификатору передаются лишь фрагменты изображения, гарантированно содержащие объекты, а не все изображение.

Рис. 2. Принцип работы YOLO

В качестве обучающей выборки выступает набор, состоящий из множества изображений позвонков различной степени яркости, четкости, зашумленности и угла наклона (рис. 3).

Рис. 3. Пример изображений в обучающей выборке

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

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

Рис. 4. Результат процесса локализации позвонков на изображении

В ходе анализа снимка профильной проекции позвоночника необходимо вычислить ряд унифицированных параметров, связанных как со структурой позвоночного столба в целом, так и с формой и пространственным взаиморасположением отдельных позвонков [8]. Найденные сегменты (рис. 4) не позволяют получить признаки и параметры позвонков, поэтому необходимо разработать дополнительные алгоритмы.

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

Для решения указанной задачи предлагается использовать следующий алгоритм локализации позвонка в каждом найденном сегменте.

1. С целью подавления лишних деталей и шумов на изображении используется размытие по Гауссу [9] (рис. 5, а).

2. Для выделения структурных элементов границ используется оператор Канни [10]. В результате будет получен набор кривых (рис. 5, б). На следующем этапе следует принять решение, какие из кривых будут образовывать контур позвонка.

3. Для простоты можно считать, что контур позвонка представляет собой четырехугольник. Далее следует искать образующие его прямые с помощью преобразования Хафа [11]. В результате будет получен набор прямых (рис. 5, в). На данном этапе производится отсеивание прямых, проходящих в области, близкой к центру рассматриваемого фрагмента

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

4. Анализируя взаимное расположение прямых и находя их точки пересечения, будут получены наборы возможных точек - вершин четырехугольника (позвонка) (рис. 5, г). При формировании наборов точек отсеиваются точки, полученные путем пресечения с горизонтальными линиями, расположенными на удалении от основной группы линий, так как данные линии являются частью контура иного позвонка, попавшего в рассматриваемый фрагмент изображения.

5. При рассмотрении полученных в области вершин наборов точек производится группировка и усреднение до четырех отдельных «ключевых точек» - вершин позвонка (рис. 5, д).

а б в г д

Рис. 5. Этапы обработки найденных сегментов с позвонками: а - размытие изображения по Гауссу; б - получение контура позвонка; в - поиск образующих позвонок прямых; г - нахождение точек пересечения прямых; д - получение углов позвонка

После нахождения «ключевых» точек, соответствующих углам позвонка, возможно осуществление вычисления необходимых геометрических параметров. Для данного вида проекции характерен следующий набор параметров:

- высота левого и правого контура позвонка;

- длина покровной La и базальной Lb замыкательной пластинки;

- угол клиновидности ар и трапецевиднодности аt тела позвонка;

- угол наклона тела позвонка относительно вертикали и горизонтали.

При наличии этих параметров становится возможным вычисление остальных вспомогательных параметров, таких как высота левого и правого отдела межпозвонкового диска, угол клиновидности ad межпозвонкового диска, угол между телами позвонков и линейное смещение 5 тела позвонка в плоскости диска.

На основании предложенного алгоритма было спроектировано и разработано соответствующее программное обеспечение, позволяющее находить геометрические параметры позвонков на рентгеновских изображениях в автоматическом режиме (рис. 6).

Рис. 6. Результаты вычисления размерных характеристик

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

При помощи разработанного программного обеспечения работа алгоритма была проверена на 50 случайно выбранных DICOM-изображениях профильных снимков поясничного отдела позвоночника, полученных при исследованиях в клинической больнице. Ниже представлен пример результатов тестирования (рис. 7).

Тестирование показало, что алгоритм успешно решает задачу локализации и нахождения «ключевых точек» для L2-L5 позвонков на 39 изображениях, однако точки позвонков L1 и 51 определяются со значительными ошибками. На остальных 11 изображениях успешно определены углы позвонков L3-L5, в то время как при определении углов позвонка L2 обнаружилась погрешность. Данная проблема обусловлена затемнением снимков в нижней части и осветлением в верхней, в связи с чем позвонки, располагающиеся в данных областях, слабо отличаются от фона. Таким образом, алгоритм в 79 % случаев успешно находит углы позвонков L2-L5.

Также было выявлено ухудшение нахождения «ключевых точек» на слишком светлых изображениях в связи со слабо выраженными контурами позвонков. Причиной данной проблемы является преобразование DICOM в Bitmap с частичной потерей информации о цветопередаче.

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

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

Тестирование алгоритма на базе изображений

Рис. 7. Результаты тестирования алгоритма

Заключение

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

В результате тестирования полученного алгоритма на базе из некоторого количества профильных рентгеновских изображений поясничного отдела позвоночника установлено, что в 79 % случаев алгоритм успешно находит угловые точки позвонков L2-L5, однако в случае позвонков L1 и 51 наблюдаются значительные отклонения, обусловленные неравномерностью распределения яркости на предоставленных DICOM-изображениях. Среднее время распознавания и обработки одного рентгеновского снимка составляет 8 с.

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

1. Рентгенометрический анализ кинематики L4-L5 и L5—S1 позвоночных сегментов в III стадии дегенеративного процесса // Е.Л. Цитко [и др.] // Новости хирургии. 2015. Т. 23. С. 202-208.

2. Automatic vertebra detection in x-ray images / C.M. Daniel [et al.] // CompIMAGE 06 - Computational Modelling of Objects Represented in Images. 2006. P. 307-312.

3. Головко В.А. Нейронные сети: обучение, организация и применение. Кн. 4. М.:И11РЖР. 2001. 256 с.

4. Kurachka K.S., Tsalka I.M. Vertebrae detection in X-ray images based on deep convolutional neural network // 2017 IEEE 14th Internationa Scientific Conference of Informatics. 2017. P. 194-196.

5. Fabian L., Mohammed B., Said M. Fully Automatic Vertebra Detection in X-Ray Images Based on Multi-Class SVM // Medical Imaging 2012: Image Processing. 2012. DOI: 10.1117/12.911424.

6. Fast scale-invariant lateral lumbar vertebrae detection and segmentation in X-ray images / S. Ruhan [et al.] // 38th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2016. P. 1054-1057.

7. You Only Look Once: Unified, Real-Time Object Detection / R. Joseph [et al.]. arXiv preprint arXiv:1506.02640.

8. Kurachka K, Kamrakou U., Masalitina N. The automated classification system for lumbar spine anatomic elements // Nonlinear Dynamics and Applications. 2017. Vol. 23. P. 127-134.

9. Гонсалес Р. Цифровая обработка изображений. М.: Техносфера, 2005. 1072 с.

10. Canny J.A. Computational Approach to Edge Detection // IEEE. 1986. P. 679-698.

11. Кудрина М.А. Использование преобразования Хафа для обнаружения прямых линий и окружностей на изображении // Изв. Самарского научного центра Рос. академии наук. 2014. С. 476-478.

References

1. Rentgenometricheskij analiz kinematiki L4-L5 i L5-S1 pozvonochnyh segmentov v III stadii degenerativnogo processa // E.L. Citko [i dr.] // Novosti hirurgii. 2015. T. 23. S. 202-208.

2. Automatic vertebra detection in x-ray images / C.M. Daniel [et al.] // CompIMAGE 06 - Computational Modelling of Objects Represented in Images. 2006. P. 307-312.

3. Golovko V.A. Nejronnye seti: obuchenie, organizacija i primenenie. Kn. 4. M.:IPRZhR, 2001. 256 s.

4. Kurachka K.S., Tsalka I.M. Vertebrae detection in X-ray images based on deep convolutional neural network // 2017 IEEE 14th Internationa Scientific Conference of Informatics. 2017. P. 194-196.

5. Fabian L., Mohammed B., Said M. Fully Automatic Vertebra Detection in X-Ray Images Based on Multi-Class SVM // Medical Imaging 2012: Image Processing, 2012. DOI: 10.1117/12.911424.

6. Fast scale-invariant lateral lumbar vertebrae detection and segmentation in X-ray images / S. Ruhan [et al.] // 38th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2016. P. 1054-1057.

7. You Only Look Once: Unified, Real-Time Object Detection / R. Joseph [et al.]. arXiv preprint arXiv:1506.02640.

8. Kurachka K, Kamrakou U., Masalitina N. The automated classification system for lumbar spine anatomic elements // Nonlinear Dynamics and Applications. 2017. Vol. 23. P. 127-134.

9. Gonsales R. Cifrovaja obrabotka izobrazhenij. M.: Tehnosfera, 2005. 1072 s.

10. Canny J.A. Computational Approach to Edge Detection // IEEE. 1986. P. 679-698.

11. Kudrina M.A. Ispol'zovanie preobrazovanija Hafa dlja obnaruzhenija prjamyh linij i okruzhnostej na izobrazhenii // Izv. Samarskogo nauchnogo centra Ros. akademii nauk. 2014. S. 476-478.

Сведения об авторах

Курочка К.С., к.т.н., доцент, заведующий

кафедрой информационных технологий

Гомельского государственного технического университета имени П.О. Сухого.

Лучшева Т.В., магистрант кафедры информационных технологий Гомельского государственного технического университета имени П.О. Сухого.

Панарин К.А., магистр технических наук, инженер-программист кафедры информационных технологий Гомельского государственного технического университета имени П.О. Сухого.

Адрес для корреспонденции

246746, Республика Беларусь, г. Гомель, пр-т Октября, 48, Гомельский государственный технический университет им. П.О. Сухого тел. +375-29-836-94-20; e-mail: tamara@gstu.by Лучшева Тамара Владимировна

Information about the authors

Kurochka K.S., PhD, associate professor, head of information technology department of Gomel state technical university named after P.O. Sukhoi.

Luchshava T.V., master student of information technology department of Gomel state technical university named after P.O. Sukhoi.

Panarin K.A., master of engineering sciences, software engineer the information technology department of Gomel state technical university named after P.O. Sukhoi.

Address for correspondence

246746, Republic of Belarus, Gomel, Octiabria ave., 48, Gomel state technical university named after P.O. Sukhoi tel. + 375-29-836-94-20; e-mail: tamara@gstu.by Luchshava Tamara Vladimirovna