Files
Head_CT_Morph/工程分析/需求分析-2026-05-03-22-36-18.md

2.8 KiB
Raw Permalink Blame History

需求分析

开始时间2026-05-03-22-36-18

原始需求

用户提出三项修改:

  1. 左侧“下载四状态ZIP”描述变为“下载结果”。
  2. “四状态 DICOM 输出结果”中,原始序列、硬边界、高斯平滑、软过渡重建旁边都增加下载按钮,可以下载对应的 DICOM 文件。
  3. 在“数据影像库”中,“调阅”描述变为“变换”;右侧增加“阅览”按钮,可以看 CT 冠状位、矢状位,同时可以调节 DCM 影像显示模式。

目标

  • 调整已有按钮文案,使下载入口和变换入口更符合用户表达。
  • 在四状态结果区为每个状态提供独立 DICOM 下载入口。
  • 在影像库卡片中新增阅览入口,打开 DICOM 阅览弹层。
  • 阅览弹层支持冠状位、矢状位切换,并支持常见 DICOM/CT 显示窗宽窗位模式切换。

影响范围

  • WebSite/src/App.tsx
    • 修改按钮文字。
    • 增加四状态单项下载按钮。
    • 增加影像库阅览弹层状态、UI 和请求逻辑。
  • web_backend.py
    • 复用或扩展现有 DICOM 读取、窗宽窗位、预览缓存能力。
    • 增加影像库冠状位/矢状位阅览预览接口。
  • 工程分析/经验记录.md
    • 完成后追加关键问题和解决方案。

当前定位

  • 四状态单状态 ZIP 下载能力后端已存在:prepare_deformation_zip(job_id, target) 支持 originalhard_boundarygaussian_smoothsoft_transition
  • 前端现有 handlePackageDownload(target) 已支持传入 target并会轮询 ZIP job 完成后下载文件;当前仅全量 DICOM ZIP 按钮显式暴露。
  • 影像库目前只有轴位切片缩略预览接口 /api/library/preview,使用单张 DICOM 像素生成 PNG。
  • 影像库信息弹层已存在,可在其旁边新增独立阅览弹层,不必复用信息弹层。

约束

  • 修改业务代码前必须先等待用户确认实现方案和测试方案。
  • 不改变 DICOM 形变算法。
  • 单状态下载应下载对应状态完整 DICOM 序列的 ZIP而不是仅下载截图。
  • 阅览功能应尽量轻量,不引入大型医学影像前端库。

风险点

  • 冠状位/矢状位预览需要读取整套 DICOM 体数据,可能比单张轴位预览更耗时;需要做缓存。
  • DICOM 切片排序、窗宽窗位和方向显示若处理粗糙,可能导致阅览体验不稳定。
  • 四状态卡片空间有限,新增下载按钮需要避免文字拥挤或遮挡。
  • 单状态 ZIP job 与全量 ZIP job 共用 zipJobs 状态,需避免 target key 冲突。

待确认事项

建议实现为:四状态卡片标题旁增加图标下载按钮;影像库卡片按钮区从“调阅/信息/删除”调整为“变换/阅览/信息/删除”,阅览弹层支持冠状位、矢状位,以及默认/骨窗/软组织/脑窗/肺窗等显示模式。待用户确认后执行。