3.2 KiB
3.2 KiB
需求分析 - 2026-05-08-03-57-51
原始需求
【需求模块】:逆向工作区 -> 右侧“Mask 展示”面板
【触发条件】:用户在可视化工具栏点击执行“模型切分”操作后。
【当前表现】:“Mask 展示”区目前显示的仍是切分后的三维模型外壳/点云,呈半透明或空心状态。
【期望表现】:“Mask 展示”区需要切换显示为二维的实心截面图像。需要同时展示模型被切开处上、下两个视角的切面。
【数据源要求】:这两个实心切面不能仅仅是 3D 模型的截面封顶 Cap,而必须直接映射并渲染对应的 DICOM 语义分割影像 Segmentation Mask。
目标
- 模型切分执行后,右侧“Mask 展示”不再显示 3D 外壳、半透明点云、空心模型或几何封顶。
- “Mask 展示”改为二维图像区域,并同时展示切分位置上侧、下侧两张实心截面图。
- 两张截面图的数据源必须来自 DICOM 语义分割影像/Segmentation Mask,而不是由 STL 外壳临时封顶生成。
- 截面图需与当前 DICOM 切分范围和显示平面保持一致。
影响范围
- 前端:
- 逆向工作区或 DICOM 阅览弹窗中的“Mask 展示”条件渲染。
- 模型切分执行后的右侧双图布局、加载状态和无 mask 状态展示。
- 后端:
- 当前
web_backend.py已有 STL 上传、STL 与 DICOM 切片平面求交 mask 生成逻辑。 - 需要新增或接入真实 DICOM Segmentation Mask 数据读取、缓存和二维切片渲染能力。
- 当前
- 数据:
- 需要确认工程中是否已有 DICOM SEG、RTSTRUCT、NIfTI/NRRD mask、PNG mask 序列或其他语义分割数据源。
约束
- 必须遵循仓库
AGENTS.md中的项目修改工作流。 - 本轮使用统一开始时间戳
2026-05-08-03-57-51。 - 实现方案和测试方案写完后,必须等待用户二次人工审核确认;未经确认不得修改业务代码。
- 不得用 STL Cap、几何封闭面、点云投影或装饰性填充冒充 DICOM Segmentation Mask。
- 不得提交 DICOM 原始数据、STL 模型、mask 缓存图、构建产物或凭据。
风险点
- 当前仓库现有 mask 逻辑主要来自 STL 三角面与 DICOM 平面的交线填充,不等同于真实 DICOM Segmentation Mask。
- 如果本项目数据目录中没有现成 segmentation mask 数据源,则仅靠 STL 无法满足“直接映射 DICOM 语义分割影像”的要求,需要先补充数据上传/关联入口。
- DICOM SEG、RTSTRUCT、NIfTI、NRRD、PNG mask 序列的数据坐标系和 CT 坐标系可能不同,必须处理 spacing、origin、orientation、slice order 和标签值映射。
- “上、下两个视角”需要在实现中落到明确的切片端点:通常对应当前切分范围的起点帧和终点帧,或当前切割平面的上下两侧相邻 mask 切片。
待确认事项
- 当前项目是否已有真实 DICOM Segmentation Mask 文件或目录。如果没有,应由本次新增上传/关联入口,还是由用户先提供数据路径。
- “上、下两个视角”是指切分范围的起点帧/终点帧,还是同一切割平面上下两侧相邻切片。
- 需要展示的 mask 标签是否只有一个目标结构,还是多标签语义分割并按标签分别着色。