Ниже приведены примеры серий КТ-сканов, используемых для обучения и тестирования модели.
| Серия | Диагноз | Метка (label) |
|---|---|---|
TestLoadCanser.zip |
Рак | 3 |
TestLoadCovid19.zip |
COVID-19 | 2 |
TestLoadCap.zip |
Пневмония | 1 |
TestLoadNormal.zip |
Норма | 0 |
Система для просмотра и автоматической классификации заболеваний легких по 3D сканам Компьютерной томографии(далее КТ) с использованием нейросети(далее планируется развить до нейросетевой системы) гибридной архитектуры 2.5D CNN + Transformer.
В репозитории папка c сервером: ServerApp, папка с кодом обучения, логами и моделью нейронной сети: Network CSANet2.5D, файлы с презентацией: Презентация MedVision AI.pptx и Презентация MedVision AI.pdf
Модель нейросети: CSANet2.5D - комбинация 3D сверточных блоков (ResidualBlock3D + SE3D) и кросс-срезного внимания (CSABlock) + Transformer
Препроцессинг: Пакетная интерполяция, нормализация КТ, работа с переменной глубиной сканов.
Интерфейс: Веб-сервис для загрузки, просмотра и анализа сканов КТ легких.
Загрузка ZIP-архива с папкой в которой находятся DICOM файлы, поддержка любого количества снимков(приводятся к 64 срезам КТ автоматически и равномерно по снимку)
Просмотр срезов с возможностью инверсии цвета и навигацией
Автоматическое предсказание класса заболевания(Нормал, Пневмония, Ковид-19, Рак) с указанием уверенности нейросети.
Возможность просмотра КТ загруженных ранее во время сессии(меню слева)
Онлайн доступ к веб-сервису(не локальный доступ)
Корректная обработка ситуаций загрузки неправильных форматов данных
Ограничения:
Только классификация (пока без сегментации)
Системные требования для запуска:
Для корректной работы веб-приложения и ИИ-модели:
- ОС: Linux (Ubuntu 20.04+/Debian) или Windows Server 2019+
- Python: 3.13+
- CPU: минимум 4 ядра, рекомендуется 8+ (для одновременной обработки и обслуживания запросов)
- GPU (опционально, для ускорения ИИ): NVIDIA RTX 3060 или выше (6+ GB VRAM)
- RAM: минимум 8 GB, рекомендуется 16 GB
- Диск: от 40 GB свободного места (хранение моделей, временные файлы и загружаемые архивы)
- Сеть: стабильное подключение 10 Мбит/с+
Если GPU недоступна, модель может работать только на CPU, но скорость анализа значительно снизится.
Требования к ПК конечных пользователей
Если сайт развернут на сервере, от клиента требуется только браузер:
- ОС: Windows, Linux, macOS
- Браузер: современный (Chrome, Edge, Firefox, Safari)
- CPU: 2 ядра (достаточно для работы интерфейса и загрузки файлов)
- RAM: 4 GB+
- Интернет: стабильное подключение (желательно от 10 Мбит/с для загрузки DICOM-архивов)
При наличии интернет-соединения и работоспособности сервера:
- Открыть сайт. Запасной сервер.
- Загрузить ZIP-архив, в котором содержится папка со снимками в формате
.dcm.
При отсутствии доступа к серверу проект можно развернуть локально. Инструкция:
- Установить Python версии 3.13+.
- Загрузить проект (ВСТАВИТЬ ССЫЛКУ TODO) и распаковать его в выбранную папку.
- Открыть терминал в папке проекта или перейти в неё командой:
cd путь_до_папки_проекта - Установить все зависимости из файла
requirements.txtкомандой:pip install -r requirements.txt
- Запустить локальный веб-сервер командой:
python server.py
- После в консоли появиться ссылка на локальный сайт
Основные файлы
server.py— запуск Flask-сервера, маршруты.moduleAI.py— загрузка модели (model1.pth), анализ снимков и формирование заключения.model1.pth— обученная PyTorch-модель.requirements.txt— зависимости.README.md— инструкция по запуску.
Интерфейс
templates/index.html— главная страница.static/js/— логика просмотра DICOM (загрузка, выбор серий, просмотр).static/styles/— оформление интерфейса.
Модель нейросети(CSANet2.5D)
- 3D CNN backbone с SE-блоками для spatial features
- Cross-Slice Attention для глобальных зависимостей
- CLS token для классификации
Обработка данных
- Поддержка сканов переменной глубины
- Пакетный ресэмплинг
- Надежная обработка ошибок при загрузке