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

2.2 KiB
Raw Blame History

需求分析-2026-05-20-02-32-47

开始时间

2026-05-20-02-32-47

原始需求摘要

用户要求优化“导出全部 NII.GZ”

  • 选择导出全部时,改为压缩包形式一次导出。
  • 如果选择分割影像,需要同时导出不同类别 ID 与名称/类别名对应的 JSON 文件。
  • 分割影像导出范围可选择“所有类别”或“可见类别”。

业务目标

  • 避免多文件连续触发下载,形成一个可归档、可转移的导出包。
  • 让分割影像与类别语义元数据成对导出,便于 ITK-SNAP 查看后再对照系统内 STL 构件层级。
  • 保留“只导出当前可见构件”的轻量检查场景,同时支持“导出全部构件”的完整交付场景。

输入与输出

  • 输入:
    • 导出内容选择DICOM 原始影像、分割影像、位姿数据。
    • 分割类别范围:所有类别或可见类别。
    • 当前模型位姿。
  • 输出:
    • 一个 .tar.gz 导出包。
    • 包内按选择包含 DICOM NIfTI、分割 NIfTI、位姿 JSON。
    • 若包含分割影像,同时包含类别映射 JSON。

影响范围

  • WebSite/server.ts
  • WebSite/src/lib/api.ts
  • WebSite/src/components/ReverseWorkspace.tsx
  • 本次工程分析文档和经验记录。

关键约束

  • NIfTI 导出仍必须使用真实 DICOM 维度、spacing 和当前模型位姿。
  • 分割类别范围不能影响 DICOM 原始影像和位姿数据导出。
  • 类别 JSON 必须与实际导出的分割标签值一致。
  • 前端仍使用后端直链下载,避免重新引入 blob URL。

风险点

  • DICOM NIfTI 和分割 NIfTI 都可能较大,包生成会有一定耗时。
  • 当前项目已有 tar.gz 归档工具,若强行实现 zip 可能引入额外复杂度;本轮默认使用 .tar.gz 压缩包。
  • “可见类别”需要读取项目持久化的 moduleStyles.visible,不能只看前端临时状态。

默认假设

  • “压缩包形式”按项目现有归档方式实现为 .tar.gz
  • 顶部“导出全部 NII.GZ”使用压缩包右侧单独 NII/NII.GZ 导出按钮继续导出单个分割 NIfTI。
  • 分割类别范围默认为“可见类别”,符合当前右侧映射视图的显示语义。