Files
REVOXELSEG_DICOM/工程分析/需求分析-2026-05-20-02-55-11.md

52 lines
2.1 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.
# 需求分析:修复头部 STL 导出后仍呈散点
开始时间2026-05-20-02-55-11
## 原始需求摘要
用户反馈在 ITK-SNAP 中打开导出的 `head-ct-demo-segmentation-label.nii` 后,“头部”类别仍呈散点形式;用户指出 STL 本体不是散点,头部 STL 在三维查看器中是完整实体表面,因此导出的分割影像也不应呈点云。
## 业务目标
- 分割影像导出必须基于真实 STL 网格生成实体 Label Map。
- 大面数构件(尤其 `头部.stl``头颅.stl`)不能因预览抽样导致闭合轮廓断裂。
- ITK-SNAP 中轴向、冠状、矢状视图应显示连续实体分割,而不是稀疏点云。
## 输入与输出
- 输入:
- 默认项目 `head-ct-demo`
- DICOM 原始序列。
- `Head_CT_ReConstruct/头部.stl` 等二进制 STL。
- 当前模型位姿、构件显隐与导出范围。
- 输出:
- 修复后的分割 NIfTI / NIfTI.GZ / 导出包。
- 工程分析文档与经验记录。
## 影响范围
- 后端 `WebSite/server.ts` 中 STL 到 NIfTI Label Map 的生成逻辑。
- 导出接口:
- `/api/projects/:projectId/export-mask`
- `/api/projects/:projectId/export-nifti`
- `/api/projects/:projectId/export-bundle`
- 前端下载入口原则上不需要改变,除非发现参数传递问题。
## 关键约束
- 保持 DICOM 维度、spacing、slice 数量与当前导出逻辑一致。
- 保持 labels JSON、位姿 JSON、压缩包结构兼容。
- 不将大型 DICOM/STL 数据或运行态导出文件纳入 Git 提交。
- 最终仍需重新部署并验证服务。
## 风险点
- 完整 STL 面数较大,不能把所有顶点长期存为大型 JS 数组造成内存膨胀。
- 需要避免继续复用预览抽样数据做医学导出。
- 若 STL 存在非闭合切口,仅靠扫描线偶奇填充可能仍出现孔洞,需要补充连通域填补。
## 默认假设
- 用户希望本次直接修复导出的 NIfTI 分割质量,而不是只解释原因。
- 头部散点的主要原因是后端导出使用了预览抽样网格,导致实体轮廓无法闭合。