Files
2026-07-31 12:27:41 +08:00

143 lines
4.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 测试素材说明(图片集 + YOLO 权重)
本目录与 `data/weights` 已预置**可离线手动测试**的公开样例,供实训演示使用。
> ⚠️ 仅供教学 / 系统联调,**不能用于真实临床诊断**。
---
## 一、YOLO 权重位置
目录:
```
ai-service/data/weights/
├── yolov8n.pt # YOLOv8 Nano 检测(约 6.3 MB,推荐先用这个)
└── yolov8n-seg.pt # YOLOv8 Nano 分割(约 6.7 MB,可选)
```
| 文件 | 来源 | 适配说明 |
|------|------|----------|
| `yolov8n.pt` | Ultralytics 官方 COCO 预训练 | 与本系统 FastAPI `ultralytics.YOLO` 完全兼容;可在「YOLO 权重」页上传/激活 |
| `yolov8n-seg.pt` | 官方分割权重 | 本系统当前检测管线以 **detect** 为主,分割权重可作扩展试验 |
**说明:**
公开可直接下载、体积适中、协议清晰的医学专用 YOLO 权重较少;此处采用官方通用权重验证「上传 → 激活 → 真实推理」全链路。
医学影像上 COCO 类别不一定命中(可能 0 个框),属正常;此时系统仍可走报告逻辑,或回退演示检测。
若你有自己训练的胸片/结节 `.pt`,直接替换或上传覆盖即可。
### 在管理端激活
1. 登录 `admin / admin123`
2. 打开 **YOLO 权重**
3. 上传 `ai-service/data/weights/yolov8n.pt`(或直接在该目录已有文件时点刷新后激活)
4. 策略选 `auto` 或 `real`
5. **需安装** `ultralytics` 才能真实加载:
```bash
cd ai-service
.\.venv\Scripts\activate
pip install ultralytics torch torchvision
# 重启 AI 服务
uvicorn app.main:app --host 0.0.0.0 --port 8001
```
也可在 PowerShell 用接口激活(AI 服务已启动时):
```bash
# 若权重已在 data/weights 下,FastAPI 可直接 activate
curl -X POST http://127.0.0.1:8001/yolo/weights/activate -H "Content-Type: application/json" -d "{\"name\":\"yolov8n.pt\",\"demo_mode\":\"auto\"}"
```
---
## 二、图片集位置
### 1. 真实公开胸片(COVID 相关科研数据集子集)
```
ai-service/samples/medical/
├── chest_sample_1.jpeg ~ chest_sample_4.jpeg
├── covid_xray_1.jpg ~ covid_xray_3.jpg
```
- 来源:[ieee8023/covid-chestxray-dataset](https://github.com/ieee8023/covid-chestxray-dataset)(GitHub 公开)
- 建议在前端 **影像诊断** 中类型选 **X_RAY / CT**,部位填「胸部」后上传测试
### 2. 仿真医学图(本地生成,联调兜底)
```
sim_chest_xray_normal.png
sim_chest_xray_opacity.png
sim_chest_ct_nodule.png
sim_brain_ct.png
sim_knee_xray.png
sim_ultrasound.png
```
灰度仿真图,便于无外网时继续测 UI/报告链路。
### 3. 通用目标检测验证图(验证权重是否“真的在跑”)
```
ai-service/samples/bus.jpg
ai-service/samples/zidane.jpg
```
- 来源:Ultralytics / YOLOv5 示例图
- 用 `yolov8n.pt` 推理时应能检出 **person / bus** 等 COCO 类别
- 用于确认:权重激活成功 + ultralytics 安装正确
### 4. 业务端副本(方便对照)
已复制一份医学样例到:
```
smart-hospital/uploads/images/samples/
```
---
## 三、推荐手动测试流程
### A. 验证「真实权重」链路
1. 安装 `ultralytics` 并重启 AI 服务
2. 管理端激活 `yolov8n.pt`,模式 `auto`/`real`
3. 上传 `samples/bus.jpg` 到影像诊断并 AI 诊断
4. 查看报告:应出现检测框;引擎显示 `real`
5. 回到 **YOLO 权重** 页看可视化统计是否增加「真实权重推理」
### B. 验证「医学影像」业务链路
1. 上传 `samples/medical/covid_xray_1.jpg` 等
2. 类型选 X_RAY,部位「胸部」
3. 看标注图 + 诊断报告 + 置信度
4. (可选)无权重或 demo 模式下会出演示框,属预期
### C. 仅演示模式(不装 torch)
1. 不激活权重,或模式选 `demo`
2. 任意医学图均可出演示检测框与报告
---
## 四、目录速查
| 内容 | 路径 |
|------|------|
| 权重 | `ai-service/data/weights/` |
| 医学图片 | `ai-service/samples/medical/` |
| 通用测试图 | `ai-service/samples/bus.jpg` 等 |
| 权重配置(激活后生成) | `ai-service/data/yolo_config.json` |
| 推理统计(诊断后生成) | `ai-service/data/yolo_stats.json` |
---
## 五、许可与合规
- Ultralytics 权重:遵循 Ultralytics / AGPL 相关协议,仅作学习研究
- covid-chestxray-dataset:遵循原仓库许可证,仅作科研/教学
- 仿真图:项目内生成,无患者隐私
- **禁止将本素材与系统输出用于真实诊疗**