УДК 004.9
DOI: 10.18413/2518-1092-2019-4-2-0-5
Михелев В.М.1 Мирошниченко А.С.2
РЕШЕНИЕ ЗАДАЧИ КЛАССИФИКАЦИИ ПАТОЛОГИИ ГОЛОВНОГО МОЗГА ЧЕЛОВЕКА НА СНИМКАХ МРТ
1)1 Белгородский государственный технологический университет, ул. Костюкова д. 46, г. Белгород, 308012, Россия 2) Белгородский государственный национальный исследовательский университет, ул. Победы д.85, г. Белгород,
308015, Россия
e-mail: 963565@bsu.edu.ru, mikhelev@bsu.edu.ru
Аннотация
В статье рассмотрены методы классификации снимков МРТ головного мозга человека. Методы представляют собой обучаемые бинарные классификаторы, для определения наличия или отсутствия высокой стадии патологий головного мозга. Исследование направлено на выявление лучшего метода классификации на обработанном наборе данных BRATS. В работе выполнен анализ трех методов классификации: классификация изображений по базовым примитивам контура, метод на основе сверточной нейронной сети, с бинарным классификатором и метод классификации на основе сверточной предобученной нейронной сети Xception. В работе показано, что использование предобученных нейронных сверточных сетей позволяет сократить время расчета времени и ресурсы вычислительной системы на обучение нейронной сети. Приведены результаты вычислительного эксперимента и показано что наилучшая точность при решении задачи классификации патологий головного мозга человека на снимках МРТ достигается при использовании нейронной сверточной предобученной нейронной сети Xception. Ключевые слова: методы классификации изображений; снимки МРТ; нейронные сети; сверточные сети.
UDC 004.9
Mikhelev V.M.1 Miroshnichenko A.S.2
THE DECISION OF THE TASK OF CLASSIFICATION OF HUMAN BRAIN PATHOLOGIES ON MRI IMAGES
^Belgorod State Technological University named after V.G. Shukhov, 46 Kostyukova St., Belgorod, 308012, Russia
2) Belgorod State National Research University, 85 Pobedy St., Belgorod, 308015, Russia
e-mail: 963565@bsu.edu.ru, mikhelev@bsu.edu.ru
Abstract
The article discusses the methods of classification of MRI images of the human brain. The methods are trained binary classifiers to determine the presence or absence of a high stage of brain pathologies. The study aims to identify the best classification method on the processed BRATS data set. We analyzed three classification methods: image classification by basic contour primitives, a method based on a convolutional neural network, with a binary classifier, and a classification method based on a convolutional pretrained neural network Xception. The paper shows that the use of pre-trained neural convolutional networks allows to reduce the time for calculating the time and resources of a computer system for training a neural network. The results of a computational experiment are presented and it is shown that the best accuracy in solving the problem of pathology classification in MRI scans of the human brain is achieved using the Xception neural convolutional pre-trained neural network.
Keywords: image classification methods; MRI scans; neural networks; convolutional networks. ВВЕДЕНИЕ
В настоящее время онкологические заболевания головного мозга являются очень серьезным и опасным заболеванием среди детей и взрослых. По статистическим данным
Всемирной организации здравоохранения показано, что каждый год от онкологических заболеваний в мире умирает более 7,5 млн. человек [1]. Одним из общепринятых методов обнаружения различных патологий является магниторезонансная томография (МРТ) [5], которая позволяет получить детальное изображение различных тканей. Анализ полученных изображений МРТ обычно проводится вручную, этот процесс является трудоемким и сложным. Он требует выполнения следующих задач: поиск и распознавание определённых объектов, выделение и сегментирование этих объектов на снимках МРТ.
На рисунке 1 представлен пример медицинского снимка после работы аппарата МРТ [4]. Этот снимок здорового человека, на котором не видно патологий и других элементов, отражающих «нездоровые» изменения.
Важно отметить, что для диагностирования патологий головного мозга требуюсь высокие навыки точности и опыта в анализе снимков МРТ [12, 13]. В виду человеческого фактора зачастую бывают моменты, когда специалист не выявляет мельчайшие изменения, что в очередной раз доказывает необходимость разработки дополнительных инструментариев для диагностирования и анализа снимков МРТ [19].
Рис. 1. Снимок МРТ головного мозга человека Fig. 1. MRI scan of the human brain
Целью данного исследования является анализ существующих методов решения рассмотренной выше задачи и выбор лучшего из них [20]. Для достижения поставленной цели необходимо решить следующие задачи: сформировать один набор данных для всех методов, классифицировать эти данные различными методами и провести сравнительный анализ полученных результатов.
ОБЗОР И АНАЛИЗ ИССЛЕДУЕМОЙ ОБЛАСТИ
Типичные глубокие нейронные сети классификаторы, такие как AlexNet [16, 17], VGGNet [18] или GoogLeNet [15], считывают изображение и выводят набор вероятностей класса относительно всего изображения. Это делается путем предоставления необработанного
изображения в качестве входа в первый уровень сети и выполнение «переднего прохода»: последовательно позволяя каждому слою вычислить свою соответствующую функцию на выходе слоя, который ему предшествовал.
Примером для проверки правильности классификации является распознавание рукописной цифры, где нейронная сеть получает изображение одной рукописной цифры и должна решить, какая из десяти цифр представлена на изображении. Задача сегментации требует решения классификации для каждого отдельного пикселя исходного изображения [14]. Поэтому эта цель может быть решена путем применения классификатора к исправлениям ввода изображения в режиме скользящего окна. В этой схеме каждый пиксель классифицируется путем извлечения патча (матрица пикселей, где центральный пиксель входной) вокруг него и классифицирования его по нейронной сети. Несколько пикселей можно классифицировать сразу, для этого необходимо обрабатывать несколько перекрывающихся патчей как пакет, и выполнять распараллеливание переднего прохода каждого патча через сеть. Однако, соседние пиксели в изображении могут быть близки по своим характеристикам (похожи по подобию), поэтому этот подход к решению задачи характеризуется избыточными вычислениями.
ОПИСАНИЕ ДАТАСЕТА И ИССЛЕДУЕМЫХ МЕТОДОВ
В качестве входных данных выступают медицинские снимки МРТ головного мозга датасета BRATS, возможные виды которых приведены на рисунках 2 и 3. Датасет был предоставлен «Center for Biomedical Image Computing and Analytics University of Pennsylvania, Philadelphia PA, USA».
Рис. 2. Изображения срезов по оси Х Fig. 2. Images of slices along the X axis
Рис. 3. Изображения срезов по оси Y и Z Fig. 3. Images of slices along the Y and Z axis
Датасет BRATS содержит снимки МРТ головного мозга человека в формате медицинского изображения *.mha, имеет обучающую и тестовую выборки. Каждый *.mha файл представлен в виде куба, плоскости которого являются срезом (снимок за такт работы аппарата МРТ).
Исследуемые методы применяют в качестве входных данных растровые изображения, таким образом для формирования общего набора данных, необходимо произвести предварительную обработку датасета BRATS.
Алгоритм предварительной подготовки общего набора данных для исследования:
1. Для каждого *.mha файла выгружаем срезы и представляем их в 8 битном одноканальном формате растрового изображения
2. Приводим каждое изображение к одному размеру 299x299 px
3. Сохраняем все срезы со всех осей X, Y, Z каждого файла *.mha
После предварительной подготовки набора данных, получаем набор из срезов по трем осям каждого *.mha файла.
В результате обработки датасета BRATS сформированная выборка (обучающая и тестовая)
составила 520000 изображений.
ПЕРВЫЙ МЕТОД - КЛАССИФИКАЦИЯ ИЗОБРАЖЕНИЙ ПО БАЗОВЫМ ПРИМИТИВАМ КОНТУРА [2]
1. На вход алгоритма поступает изображение (рис.4 левый). С помощью функции canny () OpenCV [2] строим контур изображения (рис.4 правый).
2. Для построения графа основной идеей является метод, описанный в статье [3]. Основное отличие данного метода заключается в том, что при формировании графа используется контуры изображений, следовательно, значение цвета пикселя для дальнейшей работы не является определяющим.
Рис. 4. Исходное изображение и построенный контур Fig. 4. Input image and built contour
3. После сформированного контура изображения необходимо пройти по всему контуру и выявить «значимые точки» вершины и присвоить им вес значимости.
4. Вес присваивается следующим образом, чем больше точек контура находится в ближайшей окрестности, тем выше вес, т.е. своего рода задача кластеризации.
5. Далее производим аппроксимацию вершин графа для отображения более значимых вершин. Аппроксимация производится по весу вершин с определенным порогом.
Рис. 5. Аппроксимация вершин с различным порогом Fig. 5. Approximation of vertices with different thresholds
При использовании изображений с малым разрешением около 100x100 px алгоритм работает достаточно быстро, но как только размер изображения превышает 600х600 px алгоритм обрабатывает информацию на порядок дольше. Отсюда следует, что необходимо ускорить процесс формирования вершин графа и определения веса вершин. Для решения данной задачи было принято решение использовать технологию параллельного программирования CUDA, как одно из самых эффективных. Для изображения размером fullHD 1920х1080 время обработки данных сократилось с 325 секунд до 11.5 секунд.
6. Шаги 1-5 применяются не для всего изображения, а для сегментированных «кусков», приблизительным размеров 5x5 px (выбран эмпирическим методом). Похожий алгоритм сегментации описан в работе [4]. В результате использования сегментированных изображений, на каждом выходном изображении получаем несколько простых графов (они же примитивы, рис. 6).
Рис. 6. Базовые примитивы Fig. 6. Basic lines
7. Полученные «простые графы» аналитическим путем описываем для представления в виде математических функций. После этого производится классификация базовых примитивов с последующей записью в вектор. Важное замечание: данные примитивы выполняют роль признаков изображений, которые в дальнейшем можно использовать для задач классификации и распознавания, это очень похоже на определённые признаки в нейронных сетях (см. рис. 7).
Рис. 7. Все базовые примитивы Fig. 7. All types of basic lines
ВТОРОЙ ИССЛЕДУЕМЫЙ МЕТОД - МЕТОД НА ОСНОВЕ СВЕРТОЧНОЙ НЕЙРОННОЙ СЕТИ, С БИНАРНЫМ КЛАССИФИКАТОРОМ [3].
Изображение Слой свертки
Рис. 8. Схема сверточной сети предлагаемого метода распознавания объектов на снимках МРТ Fig. 8. Scheme of the convolutional network of the proposed method of object recognition in MRI images
Данная структура сети имеет 4 слоя свертки, 2 слоя под выборки и 1 полно связный слой. Предлагаемый метод решает простую задачу классификации, он разделит данные на класс наличия проблем и класс отсутствия проблем, это разделение позволит быстро определить наличие патологий у человека по снимкам МРТ. Так же данную структуру можно использовать с применением метода обучения с подкреплением, что позволит расширить базу снимков и снизить погрешность определения класса [6, 7].
На вход сети поступает изображение (для примера 32x32) определенного размера, после чего производится свертка дважды с ядром 5x5, после этого выделяется слой под выборки и также производится свертка дважды с другим ядром для выделения признаков изображения [8, 9]. После выделения еще одного слоя под выборки добавляется полно связный слой и «результирующий».
ТРЕТИЙ ИССЛЕДУЕМЫЙ МЕТОД - СВЕРТОЧНАЯ ПРЕДОБУЧЕННАЯ НЕЙРОННАЯ СЕТЬ XCEPTION
Сеть Xception можно считать модифицированной Inception V3 [4].
Данные сначала проходят через входной поток, затем через средний поток, который повторяется восемь раз и, наконец, через выходной поток [10, 11]. Все слои Convolution и SeparableConvolution сопровождаются пакетной нормализацией (не включены в диаграмму), кроме того, слой SeparableConvolution использует множитель глубины 1 (без увеличения глубины).
Модель Xception с глубиной 126 слоя и 22.9 млн параметрами.
Entry flow
299x299x3 images
_I_
Conv 32, 3x3, stride=2x2
ReLU
Conv 64, 3x3
ReLU
Conv lxl stride=2x2
SeparableConv 128, 3x3
I
ReLU
SeparableConv 12S, 3x3
X
MaxPooling 3x3, stride=2x2
ST
Ж
ReLU
SeparableConv 256, 3x3
Conv lxl stride=2x2
x
ReLU
SeparableConv 256, 3x3
X
I MaxPooling 3x3, stride=2x2 |
Ж
ReLU
SeparableConv 728, 3x3
Conv lxl stride=2x2
ReLU
X
SeparableConv 728, 3x3
П=
I MaxPooling 3x3, stride-2x2 |
19x19x728 feature maps
Middle flow
19x19x728 feature maps
ReLU
SeparableConv 728, 3x3
1
ReLU
SeparableConv 728, 3x3
1
ReLU
SeparableConv 728, 3x3
19x19x728 feature maps
Repeated 8 times
Exit flow
Conv lxl stride-2x2
19x19x728 feature maps
ReLU
SeparableConv 728, 3x3
ReLU
X
SeparableConv 1024, 3x3
x
MaxPooling 3x3, stride=2x2
rt
ж
SeparableConv 1536, 3x3
ReLU
X
SeparableConv 2048, 3x3
ReLU
X
GlobalAveragePooling
2048-dimensional vectors
Optional fully-connected layer(s)
Logistic regression
Рис.9. Структура сверточной нейронной сети Xception Fig. 9. The structure of the convolutional neural network Xception
ВЫЧИСЛИТЕЛЬНЫЙ ЭКСПЕРИМЕНТ
Тестирование методов проводилось на одном наборе данных, а также на одном тестовом стенде. Важно отметить, что временные затраты на обучение зависят от аппаратного обеспечения.
Параметры стенда: Nvidia GTX960 4GB Asus Strix + Intel Core i5 6600k + 16GB RAM
На рисунке 9 представлен пример классифицируемого снимка и результат классификации. Как видно по работе метода ответ «Prediction: True» что означает присутствие патологии на снимке.
pciBUSiu: tiwtit»:wx:wti.u
totalMemory: 1.95GiB freeMemory: 1.42Giß
I tensorflow/core/c I tensorflow/core/c I tensorflow/core/c I tensorflow/core/c I tensorflow/core/c
2019-05-16 17:01:38.651004 2019-05-16 17:01:38.867301 2019-05-16 17:01:38.867328 2019-05-16 17:01:38.867334 2019-05-16 17:01:38.867449:
memory) -> physical GPU (device: 0, name: GeFc Device mapping:
/job:localhost/replica:0/task:0/device:GPU:0 ->
2019-05-16 17:01:38.880917: I tensorflow/core/c loading image is success complete!
[Prediction]: True
/job:localhost/replica:0/task:0/device:GPU:0 ->
Process finished with exit code 0
Рис. 9. Пример загрузки снимка и вывода результата классификации изображения Fig. 9. Example of loading a snapshot and displaying the result of image classification
Сравнение методов Comparison of methods
Таблица
Table
Метод Время на обучение мин. Точность %
Базовые линии контура 10 63,7
CNN 2018 25 78
CNN 2019 15 91, 5
Исходя из данных, полученных в результате тестирования рассмотренных методов, алгоритм CNN 2019, основанный на использовании предобученной сверточной сети, лучше всего подходит для решения задачи классификации снимков МРТ головного мозга с использованием датасета BRATS.
ЗАКЛЮЧЕНИЕ
В работе выполнен анализ использования трех методов классификации патологий на снимках МРТ головного мозга человека. Это метод классификация изображений по базовым примитивам контура, метод на основе сверточной нейронной сети с бинарным классификатором и метод классификации на основе сверточной предобученной нейронной сети Xception. Приведенные результаты вычислительного эксперимента показали, что наилучшая точность при решении задачи классификации патологий достигается при использовании нейронной сверточной предобученной нейронной сети Xception. Максимальная точность классификатора составила 91.4% на сформированной тестовой выборке.
Приведенные результаты доказывает необходимость и возможность разработки дополнительных программных средств для диагностирования и анализа снимков МРТ.
Работа выполнена при поддержке гранта РФФИ 19-07-00133 А.
Список литературы
1. Всемирная организация здравоохранения, Международное агентство по изучению рака/ПРЕСС-РЕЛИЗ № 223 / [Электронный ресурс]. - Режим доступа: http://globocan.iarc.fr/Default.aspx.
2. Мирошниченко А.С., Михелев В.М, Коняева Е.С. - «Метод классификации изображений» // XIX Международная конференция «Информатика: проблемы, методология, технологии» (IPMT-2019) и X школы-конференции «Информатика в образовании» (INED-2019), 14-15 февраля, г. Воронеж.
3. Мирошниченко А.С., Михелев В.М. - «Метод распознавания объектов на снимках МРТ на основе сверточной нейронной сети» // XVIII International Conference «Computer Science: problems, methodology, technologies» (IPMT-2018)» and IX school-conference on Computer Science For Education» (INED-2018), 8-9 февраля, г. Воронеж.
4. Снимок МРТ головного мозга человека [электронный ресурс]. - Режим доступа: http://eegeasy.com/articles/detail.php?ELEMENT_ID=26.
5. Современные виды томографии. Учебное пособие/ М.Я. Марусина, А.О. Казначеева. - СПб.: СПбГУ ИТМО., 2006. - 152 с.
6. Francois Chollet, Xception: Deep Learning with Depthwise Separable Convolutions.2017, arXiv:1610.02357v3 [cs.CV].
7. K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. 2015, arXiv:1512.03385v1 [cs.CV].
8. K. He, X. Zhang, S. Ren, and J. Sun. Delving deep into rectifiers: Surpassing human-level performance on imagenet classification. 2015, arXiv:1502.01852v1 [cs.CV].
9. S. Ioffe and C. Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. 2015, arXiv:1502.03167v3 [cs. LG].
10. A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In NIPS, 2012.
11. Min Lin, Qiang Chen, and Shuicheng Yan. Network in network. CoRR, abs/1312.4400, 2013.
12. Manoj, L.L. Brain Tumor Detection and Segmentation Using Histogram Thresholding/ K.K. Manoj, Y.K. Soubrabh// International Journal of Engineering and Advanced Technology. - 2012. - Vol. 1. - Issue 04. -P. 16-20.
13. Mansfield, P. NMR Imaging in Biomedicine: Supplement 2 Advances in Magnetic Resonance/ P. Mansfield, P.G. Morris. - New York: Academic press, 1982. - 365 P.
14.Neeraj, S. Automated medical image segmentation techniques/ S. Neeraj, L.M. Aggarwal // Journal of medical physics. - 2010. - Vol. 35. - PP. 3-14.
15. Sanjeev Arora, Aditya Bhaskara, Rong Ge, and Tengyu Ma. Provable bounds for learning some deep representations. CoRR, abs/1310.6343, 2013.
16. K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recog-nition. 2015, arXiv:1409.1556v6 [cs.CV].
17. C. Szegedy, V. Vanhoucke, S. Ioffe, J. Shlens, and Z. Wojna. Rethinking the inception architecture for computer vision. arXiv preprint arXiv:1512.00567, 2015.
18. C. Szegedy, W. Liu, Y. Jia, et al. Going deeper with convolutions. In 2015 IEEE Conference on Computer Vision and Pattern Recognition, pages 1-9, 2015.
19. Swe, Z.O. Brain tumor detection and segmentation using watershed segmentation and morphological operation/ Z.O. Swe, S.K. Aung // International Journal of Research in Engineering and Technology. -2014. -Vol. 3. - Issue 03. - PP. 367-374.
20. M. D. Zeiler, G. W. Taylor, and R. Fergus. Adaptive deconvolutional networks for mid and high-level feature learning. In ICCV ' 11 Proceedings of the 2011 International Conference on Computer Vision, pages 20182025, 2011.
References
1. World Health Organization, International Agency for Research on Cancer / PRESS-RELEASE No. 223 / [Electronic resource]. - Access mode: http://globocan.iarc.fr/Default.aspx.
2. Miroshnichenko A.S., Mikhelev V.M., Konyaeva E.S. - "Method of image classification" // XIX International Conference "Computer Science: Problems, Methodology, Technologies" (IPMT-2019) and X School-Conference "Computer Science in Education" (INED-2019), 14-15 February, Voronezh.
Михелев В.М., Мирошниченко А.С. Решение задачи классификации патологий головного мозга человека на снимках МРТ// Научный результат. Информационные технологии. -Т.4, №2,2019
3. Miroshnichenko A.S., Mikhelev V.M. - "The method of recognition of objects in MRI images based on a convolutional neural network" // XVIII International Conference "Computer Science: problems, methodology, technologies" (IPMT-2018) and IXED - 2018, P. 181-185, 8-9 February, Voronezh.
4. MRI scan of the human brain [electronic resource]. - Access mode: http://eegeasy.com/articles/detail.php?ELEMENT_ID=26.
5. Modern types of tomography. Tutorial / M.Ya. Marusina, A.O. Kaznacheeva. - SPb .: SPbSU ITMO., 2006. - 152 p.
6. Francois Chollet, Xception: Deep Learning with Depthwise Separable Convolutions.2017, arXiv:1610.02357v3 [cs.CV].
7. K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. 2015, arXiv:1512.03385v1 [cs.CV].
8. K. He, X. Zhang, S. Ren, and J. Sun. Delving deep into rectifiers: Surpassing human-level performance on imagenet classification. 2015, arXiv:1502.01852v1 [cs.CV].
9. S. Ioffe and C. Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. 2015, arXiv:1502.03167v3 [cs. LG].
10. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In NIPS, 2012.
11. Min Lin, Qiang Chen, and Shuicheng Yan. Network in network. CoRR, abs/1312.4400, 2013.
12. Manoj, L.L. Brain Tumor Detection and Segmentation Using Histogram Thresholding/ K.K. Manoj, Y.K. Soubrabh// International Journal of Engineering and Advanced Technology. - 2012. - Vol. 1. - Issue 04. -
13. Mansfield, P. NMR Imaging in Biomedicine: Supplement 2 Advances in Magnetic Resonance/ P. Mansfield, P.G. Morris. - New York: Academic press, 1982. - 365 P.
14.Neeraj, S. Automated medical image segmentation techniques/ S. Neeraj, L.M. Aggarwal // Journal of medical physics. - 2010. - Vol. 35. - PP. 3-14.
15. Sanjeev Arora, Aditya Bhaskara, Rong Ge, and Tengyu Ma. Provable bounds for learning some deep representations. CoRR, abs/1310.6343, 2013.
16. K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recog-nition. 2015, arXiv:1409.1556v6 [cs.CV].
17. C. Szegedy, V. Vanhoucke, S. Ioffe, J. Shlens, and Z. Wojna. Rethinking the inception architecture for computer vision. arXiv preprint arXiv:1512.00567, 2015.
18. C. Szegedy, W. Liu, Y. Jia, et al. Going deeper with convolutions. In 2015 IEEE Conference on Computer Vision and Pattern Recognition, pages 1-9, 2015.
19. Swe, Z.O. Brain tumor detection and segmentation using watershed segmentation and morphological operation/ Z.O. Swe, S.K. Aung // International Journal of Research in Engineering and Technology. -2014. -Vol. 3. - Issue 03. - PP. 367-374.
20. M.D. Zeiler, G.W. Taylor, and R. Fergus. Adaptive deconvolutional networks for mid and high-level feature learning. In ICCV '11 Proceedings of the 2011 International Conference on Computer Vision, pages 2018-2025, 2011.
Михелев Владимир Михайлович, кандидат технических наук, доцент, доцент кафедры программного обеспечения вычислительной техники и автоматизированных систем
Мирошниченко Андрей Сергеевич, студент кафедры математического и программного обеспечения информационных систем
Mikhelev Vladimir Mikhaylovich, Candidate of Technical Sciences, Associate Professor, Associate Professor at the Department of Computer Software and Automated Systems
Miroshnichenko Andrey Sergeyevich, student of the department of mathematical and software information systems
P. 16-20.