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

2.1 KiB
Raw Blame History

需求分析:修复头部 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 分割质量,而不是只解释原因。
  • 头部散点的主要原因是后端导出使用了预览抽样网格,导致实体轮廓无法闭合。