基于深度学习的医学图像自动分割系统 — 上传 CT/MRI 影像,一键获取器官与病灶分割结果
🏆 第十八届上海市大学生计算机应用能力大赛 参赛作品
医学图像分割是疾病诊断、治疗规划中的关键环节,但传统手工标注效率低、主观性强,深度学习模型又部署复杂。
本平台将 nnU-Net 封装为 Web 服务,提供「上传 → 推理 → 对比 → 可视化」一站式工作流:
- 📤 上传 CT/MRI 影像(NIfTI / DICOM 格式)
- 🤖 nnU-Net 模型自动分割器官/病灶
- 📊 并排对比原始影像与预测结果
- 🔍 NiiVue 专业级 3D 医学影像浏览器交互查看
# 1. 安装依赖
pip install -r nnunet-web-platform/backend/requirements.txt
# 2. 准备模型(放在 nnunet-web-platform/models/ 下)
# 或使用预训练权重
# 3. 启动服务
cd nnunet-web-platform
python start.py
# 4. 浏览器访问
# http://localhost:8765┌──────────────────────────────────────────────────────┐
│ 前端 (HTML5 + JS) │
│ ┌──────────┐ ┌──────────────┐ ┌────────────────┐ │
│ │ 上传模块 │ │ NiiVue 3D浏览器│ │ 结果对比面板 │ │
│ └─────┬────┘ └──────┬───────┘ └───────┬────────┘ │
└────────┼──────────────┼──────────────────┼───────────┘
│ │ │
┌────────┴──────────────┴──────────────────┴───────────┐
│ 后端 (FastAPI) │
│ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │
│ │ 文件管理 │ │ nnU-Net │ │ DICOM/NIfTI处理 │ │
│ └──────────┘ │ 推理引擎 │ └──────────────────┘ │
│ └──────────┘ │
└──────────────────────────────────────────────────────┘
| 功能 | 说明 |
|---|---|
| 📤 多格式上传 | 支持 NIfTI (.nii.gz) 和 DICOM 系列文件 |
| 🤖 一键推理 | 基于 nnU-Net v2,KiTS19 肾脏肿瘤分割模型 |
| 📊 结果对比 | 原始影像 / 预测结果 / Ground Truth 同屏对比 |
| 🔍 3D 可视化 | 集成 NiiVue,支持三视图(轴/冠/矢)+ 3D 渲染 |
| 🎨 叠加显示 | 分割轮廓叠加在原始影像上,透明度可调 |
| 📁 批量处理 | 支持多病例队列推理 |
本平台使用 KiTS19(Kidney Tumor Segmentation Challenge 2019)数据集训练:
- 🫘 肾脏 + 肾肿瘤自动分割
- 📐 3D 全分辨率推理(
3d_fullres) - 🔄 5-Fold 交叉验证集成
| 层级 | 技术 |
|---|---|
| 深度学习框架 | nnU-Net v2 (PyTorch) |
| 后端 API | FastAPI + Uvicorn |
| 前端 | HTML5 + CSS3 + Vanilla JS |
| 医学影像可视化 | NiiVue 0.43.1 |
| 影像格式处理 | SimpleITK / NiBabel / pydicom |
| 任务队列 | Python asyncio |
medical_image_processing/
├── nnunet-web-platform/ # 主项目
│ ├── backend/ # FastAPI 后端
│ ├── frontend/ # Web 前端
│ ├── models/ # nnUNet 模型权重
│ ├── doc/ # 大赛文档
│ ├── start.py # 启动入口
│ └── test_model.py # 模型测试
├── niivue_viewer/ # NiiVue 独立查看器
│ ├── index.html
│ ├── server.py
│ └── lib/niivue.umd.js
├── 文档/ # 参考材料与截图
└── 模型权重文件/ # 训练好的模型权重
- 多器官分割模型(肺、肝、脑…)
- DICOM SR 结构化报告输出
- 用户登录与病例管理系统
- GPU 加速推理优化
- Docker 一键部署
- 微信小程序前端
- 参赛团队 — 第十八届上海市大学生计算机应用能力大赛
💡 让 AI 走进医学影像科,降低分割门槛,提升诊断效率。