Разработка алгоритма обнаружения заболеваний с помощью медицинских изображений и их экспериментальная проверка

Бесплатный доступ

В данной статье представлена разработка программы "Алгоритм обнаружения заболеваний через медицинские изображения", ориентированной на раннюю диагностику рака молочной железы с помощью маммографических изображений. Рак молочной железы является одним из наиболее распространенных онкологических заболеваний среди женщин, и раннее выявление опухоли существенно влияет на выживаемость пациентов. В рамках работы предложено использование Python и таких библиотек, как Tkinter, OpenCV, Pillow и NumPy, для создания эффективной системы диагностики. Важной частью работы является описание структуры молочной железы и роль различных типов тканей в диагностике опухолей. Также рассматриваются методы обработки изображений, такие как обнаружение краев, фильтрация и анализ текстур, которые применяются для повышения точности диагностики. Использование современных библиотек и алгоритмов для анализа изображений позволяет повысить точность и надежность диагностики рака молочной железы, а также снизить вероятность ошибок, связанных с человеческим фактором.

Еще

Классификация, рак молочной железы, маммография, диагностики, Tkinter, опухоль, медицинские изображения

Короткий адрес: https://sciup.org/14133012

IDR: 14133012   |   DOI: 10.47813/2782-2818-2025-5-1-2027-2039

Текст статьи Разработка алгоритма обнаружения заболеваний с помощью медицинских изображений и их экспериментальная проверка

DOI:

В последние несколько десятилетий методы медицинской визуализации, такие как компьютерная томография (КТ), магнитнорезонансная томография (МРТ), позитронноэмиссионная томография (ПЭТ), маммография, ультразвук и рентгенография, использовались для ранней диагностики, постановки диагноза и лечения заболеваний. В клиниках анализ медицинских изображений в основном проводится специалистами, такими как радиологи и врачи. Однако, учитывая широкие различия в патологиях и потенциальные ошибки специалистов, исследователи и врачи начали использовать компьютерный анализ, извлекая из этого ряд преимуществ.

Разработанная авторами программа “Алгоритм обнаружения заболеваний через медицинские изображения” используется для ранней диагностики рака молочной железы с помощью маммографических изображений. На сегодняшний день рак молочной железы входит в группу наиболее распространенных опухолевых заболеваний среди женщин. Болезнь чаще встречается у женщин старше 50 лет, имеющих генетическую предрасположенность, употребляющих алкоголь, не имеющих детей, ставших матерями в возрасте старше 30 лет, не кормящих грудью, принимающих гормональные препараты, содержащие эстроген, более одного года, а также подвергшихся воздействию радиации. Однако в последние годы болезнь наблюдается у более молодых женщин.

АНАЛИЗ ЛИТЕРАТУРЫ И МЕТОДОЛОГИЯ

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

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

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

В последние годы широко используются различные программные библиотеки, такие как OpenCV и Pillow, для обработки и анализа медицинских изображений. Например, в [5] описана библиотека OpenCV, которая поддерживает функции обработки изображений, такие как фильтрация, выделение контуров, изменение размера и другие операции. Эта библиотека активно используется в медицине для создания программ диагностики заболеваний.

Библиотека Pillow (обновленная версия Python Imaging Library) широко используется для обработки изображений в Python. Имеется ряд преимуществ использования Pillow для редактирования изображений, таких как изменение размеров, обрезка и применение фильтров. Эта библиотека удобна для выполнения различных операций с изображениями, таких как преобразование в черно-белый формат или добавление текста.

Маммография является важным методом для раннего выявления рака молочной железы, однако существует риск ошибок при интерпретации изображений [6-9]. В работе [10] были рассмотрены возможные ошибки в анализе маммографических изображений и предложены способы их минимизации. Применение автоматических алгоритмов анализа помогает снизить количество ошибок, повышая точность диагностики [11-13].

МАТЕРИАЛЫ И МЕТОДЫ

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

Уровень выживаемости пациентов с опухолью молочной железы зависит от раннего выявления заболевания и эффективности лечения. Раннее обнаружение опухоли является важнейшим и первым шагом. У пациентов, у которых болезнь была выявлена на ранних стадиях (на стадиях 0 и I), пятилетний уровень выживаемости составляет 100%, в то время как на стадии II этот показатель снижается на 8% и составляет 92%, на стадии III — на 29%, а на стадии IV выживаемость уменьшается в 4 раза и составляет всего 25%. Одним из основных факторов риска рака молочной железы является метастазирование. Поскольку рак молочной железы имеет различные патогенные формы, его нельзя всегда точно диагностировать с помощью одного метода.

Существуют различные патогенетические типы рака молочной железы, которые отличаются друг от друга по эпидемиологии, поведению, факторам риска, биологии и лечению. Эти характеристики могут также влиять на успешность лечения. Учет разнообразия рака молочной железы важен для выбора оптимальных результатов и диагностики. На сегодняшний день скрининг является единственным и наиболее эффективным методом раннего выявления заболевания и снижения уровня смертности у женщин старше 45 лет. Однако у женщин старше 38 лет возможности маммографии считаются ограниченными, что связано с возрастными изменениями молочных желез. Например, у женщин старше 40 лет с жировыми молочными железами вероятность обнаружения опухолей увеличивается, что позволяет выявить их на ранней стадии. В молочных железах с фиброзной тканью вероятность обнаружения опухолей будет ниже. Однако, если плотность молочных желез не меняется с возрастом, это также может быть признаком предраковых изменений. У женщин в пременопаузе риск увеличивается на 5,2%, а у женщин в постменопаузе составляет 4,1%.

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

На обрабатываемых изображениях, как правило, показывается внутренняя структура молочной железы анатомически и графически. Молочная железа (мамма) — это орган, производящий молоко, и её основные структурные компоненты следующие. Лобулы – это мелкие части молочной железы, которые производят молоко. Молочные протоки (дукти) - это каналы, которые проводят молоко от лобулов к соску. Структуры зелёного цвета — это лимфатические сосуды, которые играют важную роль в иммунной системе. Кровеносные сосуды и нервы обеспечивают нормальную работу железы и её питание. На изображении более чётко показывается внутренняя структура молочной железы, в центральной части видна структура, напоминающая чёрное пятно. Эта структура является опухолью молочной железы.

При создании программы “Алгоритм диагностики заболеваний с помощью медицинских изображений” использовался язык программирования Python [14]. Это объясняется тем, что Python обладает следующими особенностями. Python обладает относительно малым числом ключевых слов, простой структурой и четко определенным синтаксисом; Код на Python пишется очень ясно и легко запоминается. Работать с ним очень удобно. Успех Python заключается в том, что структура исходного кода очень проста и понятна. Python обладает большой стандартной библиотекой. Одним из самых мощных аспектов Python является то, что основная часть библиотеки очень портативна и совместима с платформами UNIX, Windows и Macintosh. Возможность работы в интерактивном режиме позволяет взаимодействовать через терминал, можно тестировать результаты прямо в нем. Этот язык считается достаточно гибким. Python работает на различных аппаратных платформах и имеет единый интерфейс на всех платформах, а также обладает возможностями расширения. В интерпретатор Python можно добавлять модули низкого уровня. При этом удобно работать с базами данных, так как Python поддерживает все базы данных. Python поддерживает создание GUI-программ для таких платформ, как Windows MFC, Unix, X Window. Python позволяет лучше адаптироваться и поддерживать большие программы по сравнению с командными файлами оболочки. Поддерживается функциональные и структурированные методы программирования, а также объектноориентированное программирование.

Python имеет множество GUI-приложений, однако Tkinter – это единственное приложение, которое встроено в стандартную библиотеку Python. Tkinter обладает несколькими сильными сторонами. Это кроссплатформенность, что означает, что один и тот же код работает на Windows, macOS и Linux. Визуальные элементы отображаются с помощью элементов локальной операционной системы, поэтому приложения, созданные с Tkinter, выглядят так, как будто они принадлежат платформе, на которой они работают.

Основным элементом Tkinter GUI является окно. Все остальные элементы GUI в Windows являются контейнерами, в которых располагаются виджеты. Другие элементы GUI, такие как текстовые поля, ярлыки и кнопки, известны как виджеты. Виджеты размещаются внутри окон.

При создании программы “Алгоритм диагностики заболеваний с помощью медицинских изображений” потребуется использовать несколько библиотек. Эти библиотеки включают: Tkinter, OpenCV, Pillow, numpy, а также модули math и sys.

OpenCV (Open Source Computer Vision Library) — это библиотека с открытым исходным кодом, используемая в области компьютерного зрения и искусственного интеллекта. Она поддерживает работу на C++, Python, Java и других языках. OpenCV используется для выполнения множества задач, связанных с обработкой изображений, видеоанализом и машинным обучением.

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

(OpenCV выполняет эту задачу с помощью некоторых встроенных алгоритмов); К задачам анализа видео относятся: анализ кадров видео, отслеживание объектов на видео и выполнение других задач анализа.

К задачам машинного обучения относятся инструменты для классификации, регрессии и других моделей машинного обучения. Отметим также калибровку камер и восстановление 3D-геометрии. Некоторые популярные функции OpenCV включают: обнаружение краев (Edge detection); распознавание лиц (Face recognition); отслеживание объектов (Object tracking); сопоставление признаков (Feature matching); использование в создании приложений дополненной реальности (Augmented Reality, AR).

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

Pillow — это библиотека для обработки изображений на языке программирования Python, являющаяся расширенной и обновленной версией библиотеки PIL (Python Imaging Library). С помощью Pillow можно читать, редактировать, создавать и сохранять изображения. Эта библиотека обычно используется при создании графических программ или манипуляции изображениями.

Рассмотрим некоторые важные возможности Pillow.

Открытие и сохранение изображений. С помощью Pillow можно читать и сохранять изображения в различных форматах (например, JPG, PNG, BMP, TIFF, GIF).

Фильтры и эффекты. С помощью Pillow можно добавлять фильтры и эффекты на изображения, например, затемнение, повышение яркости, создание уникальных эффектов.

from PIL import ImageEnhance enhancer = ImageEnhance.Brightness(image)

image_bright = enhancer.enhance(2)

Работа с цветами. С помощью Pillow можно анализировать или изменять цвета изображения, например, преобразовывать его в черно-белое (grayscale), инвертировать цвета и многое другое.

from PIL import ImageOps image_gray = image.convert("L")

Добавление текста и графики. Можно добавлять текст на изображения, используя шрифты разных размеров и цветов.

Классификация и работа с форматами. Pillow поддерживает работу с множеством форматов изображений, и также можно определить формат изображения.

Преимущества работы с Pillow. API Pillow очень простое и легкое в использовании.

Высокая производительность. Позволяет быстро обрабатывать изображения большого размера. Поддерживает чтение и сохранение таких форматов, как JPG, PNG, TIFF, BMP, GIF и других.

Pillow — это библиотека с открытым исходным кодом, которую можно использовать бесплатно. Пример.

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

NumPy (Numerical Python) — это библиотека с открытым исходным кодом для Python, которая упрощает вычисления и математические операции. NumPy предоставляет множество математических функций и оптимизированные массивы для эффективного хранения данных. Она используется в основном в научных вычислениях, статистическом анализе, анализе данных и машинном обучении.

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

new_arr = arr + 10 # Результат. [11, 12, 13, 14, 15]

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

Обнаружение рака молочной железы с помощью маммографических изображений — это один из самых распространенных и эффективных методов в современной медицине [15-18]. Маммография — это метод получения рентгеновских снимков молочных желез, с помощью которого можно выявить как небольшие, так и крупные изменения, включая опухоли (например, рак).

Рассмотрим использование маммографических изображений для обнаружения рака молочной железы на примере 2D маммографии. Обычно это изображения в двух измерениях, с помощью которых исследуются структура и изменения молочной железы. В методе 3D маммографии (томосинтез) изображения получаются с большей четкостью, что позволяет более точно выявлять рак молочной железы по сравнению с 2D изображениями.

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

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

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

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

Сверточные нейронные сети (CNN) — это вид искусственного интеллекта, используемый для обнаружения и анализа изображений, и они очень эффективны при обнаружении рака на маммографических изображениях [16,17]. Эта модель изучает изменения на изображении, например, микрокальцификации или опухоли.

С помощью глубокого обучения (Deep learning) можно достичь высокой точности при анализе маммографических изображений [18]. Эта технология позволяет более глубоко анализировать изображения и обеспечивает раннее выявление рака. С помощью какого-либо проекта или технологии можно анализировать маммографические изображения с использованием следующего кода для открытия и анализа изображения.

import cv2

Этот код использует библиотеки OpenCV и Matplotlib для открытия маммографического изображения и его отображения в черно-белом (gray-scale) формате. Этот метод используется для визуализации при анализе изображений.

Приведенный выше пример кода только отображает изображение, но в реальной клинической практике эти изображения необходимо анализировать с помощью дополнительных алгоритмов. Например, с помощью библиотек, таких как OpenCV, TensorFlow или PyTorch, можно создавать модели ИИ и осуществлять распознавание изображений.

РЕЗУЛЬТАТЫ И ОБСУЖДЕНИЕ

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

При создании программы “Алгоритм для определения заболеваний с помощью медицинских изображений” необходимо было установить несколько библиотек. Эти библиотеки включают Tkinter, OpenCV, Pillow, numpy, а также следовало использовать модели math и sys. Последовательность их установки следующая.

Копируется путь, указанный на изображении. Через комбинацию клавиш Win + R открывается меню “Выполнить”, затем выбирается команда cmd. В окно cmd вставляется скопированный путь, и таким образом библиотека устанавливается.

Библиотека Pillow может быть установлена через меню Выполнить в соответствии с вышеуказанной последовательностью.

Библиотека Numpy может быть установлена через меню Выполнить в соответствии с вышеуказанной последовательностью.

Программа “Алгоритм диагностики заболеваний через медицинские изображения” состоит из следующих разделов: окно регистрации; информация о заболеваниях; основная страница.

  • 1.    В окне регистрации пользователь вводит свои данные, такие как имя, фамилия, отчество, номер телефона и симптомы заболевания, которые у него наблюдаются. Эти данные отправляются в базу данных, созданную с помощью SQL-запросов.

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

  • 3.    На главной странице для проверки наличия заболевания у пользователя используются медицинские изображения, такие как маммография. Кнопка “Выбрать изображение” позволяет загрузить изображение из памяти компьютера в программу.

Для создания вышеуказанного окна регистрации будут использованы модели Image и ImageTk из библиотеки PIL, а также модели ttk, messagebox из библиотеки tkinter и модели mysql.connector для связи с базой данных.

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

Основная страница программы разделена на две части. Левая сторона - это изображение символа борьбы с раком молочной железы – розовая лента. Этот символ используется в мировом масштабе для повышения осведомленности о раке молочной железы. Правая сторона - это форма регистрации и кнопки. Пользователи должны заполнить следующие поля: Имя (Ваше имя) – Личное имя пользователя; Фамилия (Ваша фамилия) – Фамилия пользователя; Отчество (Отчество) – Имя отца (распространено в России и странах СНГ); Номер телефона (Номер телефона) – Телефонный номер для связи. Симптомы заболевания (Симптомы заболевания, которое вы испытываете) – Поле для записи симптомов, с которыми сталкивается пользователь; “О болезни” (О болезни) – Эта кнопка позволяет пользователям получить дополнительную информацию о раке молочной железы. Здесь могут быть представлены данные о признаках заболевания, факторах риска и важности ранней диагностики. Далее поле “Следующий” (Следующий) – Нажимается для перехода к следующему этапу процесса регистрации. После нажатия этой кнопки данные загружаются в систему, и пользователь направляется к следующей части процесса диагностики.

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

В программе с использованием tkinter создается графический пользовательский интерфейс (GUI), который позволяет пользователям выбирать изображения, редактировать их и просматривать результаты. В GUI доступны различные кнопки, слайдеры для изменения параметров и окна для отображения изображений, чтобы выполнить загрузку, улучшение и сегментацию изображений. Основные библиотеки. OpenCV (cv2) – основная библиотека для анализа и изменения изображений. PIL (Python Imaging Library) – используется для обработки изображений и работы с tkinter. Tkinter – используется для создания графического пользовательского интерфейса (GUI).

Пользователь загружает изображение маммограммы через кнопку “Выберите картинку”. Загруженное изображение отображается в центральной части интерфейса программы. Через кнопку “Улучшение изображения” повышается качество изображения. На этом этапе могут быть использованы алгоритмы для улучшения контраста, снижения шума и выделения контуров. Преобразование в градации серого. Для перевода изображения в серый формат используется функция cv2.cvtColor. Это облегчает анализ изображения, так как цвета рассматриваются только как черные и белые точки. Пороговая обработка (Thresholding) осуществляется с помощью cv2.threshold , изображение преобразуется в двуцветное (бинарное) изображение. Этот метод помогает обнаруживать изменения на изображении, так как в нем присутствуют только два цвета (черный и белый).

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

Обнаружение контуров осуществляется с помощью функции cv2.findContours. На изображении обнаруживаются отдельные формы (опухоли или другие важные объекты). Этот метод используется для определения границ существующих объектов на изображении.

При обнаружении минимального охватывающего круга (Min Enclosing Circle) для вычисления центра контура и его радиуса используется функция cv2.minEnclosingCircle. Это позволяет вычислить диаметр объекта, который подвергается сегментации.

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

На изображении далее (рисунок 1) представлены морфологические операции.

Программа также использует морфологические фильтры для более точного анализа изображений. Открытие (Opening) – используется для удаления мелких дефектов. Закрытие (Closing) – помогает улучшить контуры объекта. Эрозия (Erosion) – используется для удаления мелких объектов или для выделения контуров. После загрузки маммограммы на главную страницу, можно определить, есть ли опухоль и, если она есть, то где она расположена.

Рисунок 1. Изображение № 1 маммографии.

Figure 1. Image No. 1 of mammography.

Например, на изображении рисунка 1 присутствует рак молочной железы. После загрузки его в программу в нижней части экрана появятся данные о диаметре опухоли, объеме 2-d участка, а также её общей величине. Сбоку изображения будет отображено, где расположена опухоль, и её сегментное изображение.

Рисунок 2. Результат работы программы.

Figure 2. Result of the program.

В нижней части главной страницы можно узнать результат программы (рисунок 2). В этой части программы, если имеется опухоль, можно получить информацию о её состоянии. Можно узнать диаметр опухоли, площадь опухоли в 2D и стадию опухоли. Параметр “Диаметр опухоли” показывает приблизительный диаметр опухоли. Параметр “2-D область опухоли” рассчитывает её поверхность. С помощью поля “Стадия опухоли” программа предполагает стадию развития опухоли.

Диаметр опухоли рассчитывается на основе её максимального радиуса с использованием формулы площади круга (A = πr²). Эти расчёты используют размеры изображения и рассчитанную площадь для реального изображения. Площадь и объём страницы. В программе рассчитываются общая площадь и объём изображения, что играет важную роль при анализе изменений и качества изображений.

Стадия опухоли определяется следующим алгоритмом. Стадия T0 – Опухоли нет. Стадия T1, T1a, T1b, T1c – Диаметр опухоли очень маленький (0-2 см). Стадия T2. – Диаметр опухоли больше 2 см, но меньше 5 см. Стадия T3 – Диаметр опухоли больше 5 см. Этот алгоритм является основным ориентиром при определении опухоли и связан с её размером.

В другом примере (рисунок 3) проверим, есть ли опухоль или нет.

Рисунок 3. Изображение № 2 маммографии.

Figure 3.    Image No. 2 of mammography.

На вышеуказанном изображении рисунка 3 маммографии опухоль отсутствует. После загрузки этого изображения в программу результат появится на экране (рисунок 4). В нижней части экрана появится сообщение “Опухоль не обнаружена”.

Рисунок 4. Следующий результат работы ПРОГРАММЫ .

Figure 4.    The following result of the program.

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

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

Обработка изображения (Image Processing). Конвертация в градации серого (Grayscale):

resized_gray = cv2.cvtColor(np.float32(img), cv2.COLOR_BGR2GRAY).

Преобразование изображения из цветного в чёрно-белое (конвертация в градации серого). Пороговая обработка (Thresholding):

thresh,img_bin = cv2.threshold(resized_gray, 145,255, cv2.THRESH_ BINARY).

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

Морфологические операции:

opening = cv2.morphologyEx(img_bin, cv2. MORPH_OPEN, kernel)

closing = cv2.morphologyEx(opening, cv2. MORPH_CLOSE, kernel2)

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

Обнаружение контуров:

contours, hierarchy = cv2.findContours (thresh, 2, 1)

Обнаружение контуров на изображении, то есть разделение объектов на изображении.

Расчёт радиуса окружности.

(x,y), radius = cv2.minEnclosingCircle(cnt[i])

Определение минимальной окружающей окружности объекта на контуре. Это используется для нахождения диаметра объекта. В коде с использованием библиотеки Tkinter создано графическое пользовательское интерфейс (GUI) для отображения изображения и взаимодействия с пользователем. Пользователь может выбрать изображение, улучшить его и выполнить сегментацию с помощью различных кнопок и управляющих элементов. С помощью filedialog.askopenfilename() пользователь выбирает файл.

Отображение                  изображения.

self.browselabel.configure(image=imgtk). Для отображения изображения в GUI используется ImageTk.PhotoImage.

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

морфологическая обработка изображений (морфологическое открытие, закрытие и эрозия); анализ контуров и сегментация изображения; измерение изображения и математический анализ (диаметр, площадь и различные параметры); создание пользовательского интерфейса через Tkinter.

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

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

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

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

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

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

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

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

ЗАКЛЮЧЕНИЕ

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

Язык программирования Python и его библиотеки, такие как OpenCV, NumPy и Pillow, широко используются для обработки и анализа медицинских изображений. Эти программные подходы помогают врачам в диагностическом процессе, снижая вероятность ошибок.

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

Статья