76 lines
3.3 KiB
Markdown
76 lines
3.3 KiB
Markdown
# 需求分析 - 2026-04-29-21-51-19
|
||
|
||
## 需求来源
|
||
- 提出时间: 2026-04-29-21-51-19
|
||
- 需求类型: 全栈系统改造 / 架构重构
|
||
|
||
## 原始需求描述
|
||
将现有纯前端 React 静态 UI 彻底改造为前后端联动的全栈语义分割系统。打通数据流转,实现:
|
||
1. 本地多媒体资产(视频/图片/DCM影像)上传
|
||
2. 服务器端按帧解析(FFmpeg 拆帧)
|
||
3. AI 视觉大模型 SAM 3 实时交互式推理(点分割、box分割、语义分割)
|
||
4. 动态图层状态管理
|
||
5. 标注数据结构化导出
|
||
|
||
后端技术栈:Python + FastAPI + PostgreSQL + Redis + MinIO
|
||
AI 基座:SAM 3
|
||
输入数据:@Data_MyVideo_1.mp4、@Data_Dicom帧(DCM格式)
|
||
|
||
## 需求拆解
|
||
|
||
### 需求 1: 基础设施部署
|
||
- **详细描述**: 在 Ubuntu 22.04 上部署 PostgreSQL、Redis、MinIO 对象存储
|
||
- **优先级**: P0-阻塞
|
||
- **影响范围**: 系统级服务
|
||
- **验收标准**: 三个服务均可访问,有持久化数据目录
|
||
|
||
### 需求 2: Conda 环境 + SAM 3 模型部署
|
||
- **详细描述**: 新建 conda 环境 seg_server,安装 PyTorch + CUDA,部署 SAM 3 模型权重
|
||
- **优先级**: P0-阻塞
|
||
- **影响范围**: Python AI 推理层
|
||
- **验收标准**: conda 环境可激活,GPU 可被 PyTorch 识别,SAM 3 权重文件存在
|
||
|
||
### 需求 3: FastAPI 后端框架搭建
|
||
- **详细描述**: 替换现有 Express 后端,建立 FastAPI 服务,包含上传、项目、模板、AI推理、导出等模块
|
||
- **优先级**: P0-阻塞
|
||
- **影响范围**: 后端全部
|
||
- **验收标准**: FastAPI 服务可启动,Swagger UI 可访问
|
||
|
||
### 需求 4: 前端状态管理 + 网络层改造
|
||
- **详细描述**: 引入 Zustand 全局状态管理,Axios 替代 fetch,WebSocket 对接解析进度
|
||
- **优先级**: P0-阻塞
|
||
- **影响范围**: src/ 全部
|
||
- **验收标准**: 前端可正常与后端通信,状态跨组件同步
|
||
|
||
### 需求 5: Canvas Mask 渲染对接
|
||
- **详细描述**: Konva Canvas 接收后端 SAM 3 返回的 Mask 数据(Polygon/RLE),动态渲染遮罩图层
|
||
- **优先级**: P1-高
|
||
- **影响范围**: CanvasArea.tsx, AISegmentation.tsx
|
||
- **验收标准**: 点击画布后,后端返回 Mask,前端可正确绘制
|
||
|
||
### 需求 6: 视频/DCM 解析流水线
|
||
- **详细描述**: 上传视频后 FFmpeg 拆帧,DCM 影像逐帧提取,进度通过 WebSocket 推送
|
||
- **优先级**: P1-高
|
||
- **影响范围**: 后端任务模块 + 前端 Dashboard
|
||
- **验收标准**: 可上传文件,解析队列可显示进度,帧图片存入 MinIO
|
||
|
||
### 需求 7: 数据持久化(项目/模板/标注)
|
||
- **详细描述**: PostgreSQL 存储项目元数据、本体字典、标注结果;MinIO 存储原始媒体/帧/Mask
|
||
- **优先级**: P1-高
|
||
- **影响范围**: 后端数据库模型 + API
|
||
- **验收标准**: 数据重启后仍可读取
|
||
|
||
## 约束条件
|
||
- 使用 Ubuntu 22.04, sudo 密码 Wkmgc
|
||
- GPU: RTX 4090, CUDA 13.2
|
||
- 无 Docker,使用系统包管理 + 二进制部署
|
||
- 保持现有前端界面风格(深色主题、中文)
|
||
|
||
## 风险评估
|
||
| 风险点 | 影响 | 缓解措施 |
|
||
|--------|------|----------|
|
||
| SAM 3 权重下载慢/失败 | 高 | 使用国内镜像源,分段下载验证 |
|
||
| PostgreSQL/Redis 端口冲突 | 中 | 检查端口占用,使用非默认端口 |
|
||
| MinIO 磁盘空间不足 | 中 | 监控磁盘,配置清理策略 |
|
||
| 单次会议工程过大 | 高 | 分模块迭代,先跑通骨架再丰富 |
|