# mybloger **Repository Path**: pridelzh/mybloger ## Basic Information - **Project Name**: mybloger - **Description**: 这是我们的源代码,有需要的自取 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 3 - **Created**: 2025-04-29 - **Last Updated**: 2025-12-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 医标智绘 - 医学影像标注与分析平台 医标智绘是一个基于Django开发的医学影像标注与分析平台,集成了多种先进的AI模型,为医学影像的标注、分析和管理提供全面解决方案。支持常规医学影像、DICOM格式、WSI全切片影像等多种医学影像格式。 ## 项目概述 医标智绘平台旨在解决医学影像数据标注和分析的难题,通过集成SAM(Segment Anything Model)、YOLO等先进AI模型,实现医学影像的智能标注、分割和检测。平台支持多种医学影像格式,包括常规图像、DICOM医学影像、WSI全切片病理影像等,同时提供COCO和YOLO格式的数据导出功能,方便用户进行后续的深度学习模型训练。 ## 主要功能 ### 用户管理 - 用户注册、登录和个人资料管理 - 头像上传和个人信息编辑 ### 图像管理 - 多格式医学影像支持:常规图像、DICOM、WSI全切片 - 图像上传和分类管理 - 文件夹创建和管理 - 公共资源库共享 ### 标注功能 - 多种标注工具:矩形、圆形、多边形、自由绘制 - AI辅助标注(基于SAM模型) - 交互式标注和自动勾勒 - 相似目标查找 - 标注历史管理 ### 数据导出 - COCO格式导出 - YOLO格式导出 - 批量导出功能 ### 任务管理 - 任务创建和分配 - 任务进度跟踪 - 任务审核流程 ### 社区功能 - 医学病例讨论 - 技术交流 - 数据集共享 - 问答求助 ### AI模型集成 - SAM(Segment Anything Model)集成 - YOLO目标检测集成 - T-Rex API集成 - WSI智能分析和处理 - DICOM影像智能识别 ## 技术架构 ### 后端 - Django 5.1.6 - SQLite3 数据库(默认配置,支持直接迁移) - Django REST framework - 模型权重相对路径化,便于部署 ### 前端 - HTML/CSS/JavaScript - Bootstrap 5 - jQuery ### AI模型 - SAM (Segment Anything Model) - 模型权重相对路径化 - YOLO v5/v8 - 模型权重相对路径化 - T-Rex API - OpenSlide (WSI全切片支持) - OpenSeadragon (高性能图像查看器) ### 第三方集成 - DeepDataSpace API - T-Rex API - OpenSlide (WSI处理) - OpenSeadragon (图像查看器) ## 技术特性 ### 数据库配置 - **默认使用SQLite3**:无需额外配置,支持直接迁移 - **模型权重相对路径化**:便于项目部署和迁移 - **智能缓存机制**:WSI切片和DICOM影像的智能缓存 ### 医学影像支持 - **多格式兼容**:常规图像、DICOM、WSI全切片 - **高性能处理**:瓦片化加载、内存优化 - **专业级查看器**:OpenSeadragon集成,支持平滑缩放 ## 安装指南 ### 环境要求 - Python 3.8+ - SQLite3(默认配置,无需额外安装) - CUDA支持(推荐用于AI模型加速) - OpenSlide(用于WSI全切片支持,可选) ### 安装步骤 1. 克隆项目 ```bash git clone <项目仓库URL> cd mybloger ``` 2. 创建并激活虚拟环境 ```bash python -m venv .venv # Windows .venv\Scripts\activate # Linux/Mac source .venv/bin/activate ``` 3. 安装依赖 ```bash pip install -r requirements.txt ``` 4. 配置数据库 - 默认使用SQLite3,无需额外配置,支持直接迁移 - 如需使用MySQL,请修改`mybloger/settings.py`中的数据库配置 5. 迁移数据库 ```bash python manage.py makemigrations python manage.py migrate ``` 6. 创建超级用户 ```bash python manage.py createsuperuser ``` 7. 下载AI模型文件 - SAM模型:下载`sam_vit_b_01ec64.pth`到`models/`目录 - YOLO模型:下载`yolov5s-seg.pt`和`yolov8s.pt`到`models/`目录 - 模型采用相对路径配置,便于部署和迁移 8. 运行开发服务器 ```bash python manage.py runserver ``` ## 使用指南 ### 基本流程 1. **注册/登录**:访问首页,注册新账户或登录已有账户 2. **上传医学影像**: - 支持常规图像格式(JPG、PNG等) - 支持DICOM医学影像格式 - 支持WSI全切片病理影像格式 3. **创建文件夹**:组织图像到不同的文件夹中 4. **标注图像**: - 手动标注:使用矩形、圆形、多边形等工具 - AI辅助标注:使用SAM模型进行智能分割 - 交互式标注:点击目标区域进行智能标注 - WSI标注:支持超大病理切片的标注 5. **导出数据**:将标注结果导出为COCO或YOLO格式 6. **社区交流**:在论坛中分享病例、讨论技术问题 ### 高级功能 - **多格式医学影像处理**:支持常规图像、DICOM、WSI全切片 - **批量处理**:批量上传、标注和导出 - **任务管理**:创建标注任务并分配给团队成员 - **模型仓库**:访问和使用预训练的AI模型 - **数据集共享**:将标注好的数据集共享给社区 - **WSI智能分析**:超大病理切片的智能分析和标注 - **DICOM影像处理**:医学DICOM影像的读取、转换和标注 ## 项目结构 ``` mybloger/ ├── annotation/ # 图像标注应用 ├── app01/ # 主应用(用户界面、图像管理等) │ ├── wsi_*.py # WSI全切片处理模块 │ ├── dicom_utils.py # DICOM医学影像处理 │ └── templates/ # WSI和DICOM相关模板 ├── author/ # 用户认证和管理 ├── blog/ # 博客功能 ├── dds_integration/ # DeepDataSpace集成 ├── demo1/ # 演示功能 ├── media/ # 用户上传的媒体文件 │ ├── wsi_cache/ # WSI切片缓存 │ └── wsi_files/ # WSI文件存储 ├── models/ # AI模型权重文件目录 ├── mybloger/ # 项目配置 ├── static/ # 静态文件 n│ └── openseadragon/ # OpenSeadragon图像查看器 ├── templates/ # 模板文件 ├── trex_integration/ # T-Rex API集成 ├── YoloCellCounter/ # YOLO细胞计数功能 ├── wsi_*.py # WSI处理相关脚本 ├── manage.py # Django管理脚本 ├── requirements.txt # 项目依赖 └── db.sqlite3 # SQLite数据库文件 ``` ## API参考 平台提供了多个API端点用于图像标注和分析: ### 常规图像标注API - `/annotation/shapejsondata//` - 保存形状标注数据 - `/annotation/analyze///` - AI模型分析图像 - `/annotation/interactive//` - 交互式标注 - `/annotation/find_similar_objects//` - 查找相似目标 - `/annotation/export///` - 导出标注数据 ### WSI全切片API - `/app01/wsi//` - WSI切片查看器 - `/app01/wsi/tile/////` - 获取WSI瓦片数据 - `/app01/wsi/annotation//` - WSI标注管理 - `/app01/wsi/analyze//` - WSI智能分析 ### DICOM影像API - `/app01/dicom//` - DICOM影像查看 - `/app01/dicom/convert//` - DICOM格式转换 - `/app01/dicom/metadata//` - 获取DICOM元数据 ## 贡献指南 欢迎对项目进行贡献!请遵循以下步骤: 1. Fork项目 2. 创建功能分支 (`git checkout -b feature/amazing-feature`) 3. 提交更改 (`git commit -m 'Add some amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 创建Pull Request ## 许可证 本项目采用 [LICENSE](LICENSE) 许可证。 ## 联系方式 如有任何问题或建议,请通过以下方式联系我们: - 邮箱:pridelizihao@foxmail.com - 项目主页:[项目URL] ## 致谢 - [Segment Anything Model (SAM)](https://github.com/facebookresearch/segment-anything) - [YOLO](https://github.com/ultralytics/yolov5) - [Django](https://www.djangoproject.com/) - 所有贡献者和用户