Автоматический анализ рентгеновских изображений
Компания «С.П. Гелпик» - один из ведущих производителей рентгеновской техники в РФ. Основная номенклатура - аппараты для медицинского применения (флюорографы, маммографы и др.).
Для программного обеспечения рентген-аппаратов мы разработали модули для детектирования рамок коллиматора и контуров снимаемых объектов с помощью сверточных нейронных сетей.
Определение рамки коллиматора
Коллиматор - это фактически «диафрагма» рентгеновского аппарата. Его назначение ясно из рисунка:
Перед нами была поставлена задача определения границ коллиматора на снимке. Проблема заключается в том, что:
- Не всегда на снимке присутствуют все 4 шторки коллиматора - некоторые могут отсутствовать (были отключены оператором для данного конкретного снимка);
- Шторки все же немного просвечивают, поэтому цвет за ними не полностью черный. Зачастую через них немного просвечивает и сам снимаемый объект (другими частями тела);
- В некоторых случаях шторки не совсем перпендикулярны друг другу.
В этих условиях определение рамки коллиматора стандартными способами затруднено. Поэтому нами данная задача была решена с применением сверточных нейронных сетей на основе Tensorflow. В ходе экспериментов нам удалось «облегчить» структуру нейросети и значительно уменьшить требования к аппаратной части - в частности, вычисления могут проводиться на центральном процессоре без видеокарты.
Ниже приведено несколько примеров распознавания рамки коллиматора.
Просвечивающие шторки:
Отсутствует нижняя шторка:
Отсутствуют верхняя и нижняя шторки:
Отсутствует левая, правая и нижняя шторки:
Узкий объект и отсутствующая верхняя шторка:
Инверсная картинка (черное основное изображение и белый фон в области шторок):
Достигнутая точность:
- Правильное определение - 94%
- Обрезано лишнее - 2%
- Оставлено лишнее - 4%
Определение границ снимаемого объекта
Следующая задача - определение границ самого объекта (руки, ноги и др.). Несмотря на кажущуюся простоту, решение задачи нетривиально, поскольку на реальных снимках присутствуют тени, засветы, наложение других частей тела и другое. Нами также была применена сверточная нейронная сеть, но с иной структурой и другой обучающей выборкой.
Ниже показано несколько примеров изображений с распознанными объектами:
Для разметки обучающей выборки использовалось наше собственное программное обеспечение и штат надомных сотрудников.
Достигнутая точность:
- Правильное определение - 97%
- Неправильное определение - 3%