Files
Head_CT_Morph/工程分析/实现方案-2026-05-08-03-45-01.md

2.2 KiB
Raw Blame History

实现方案 - 2026-05-08-03-45-01

方案路径

围绕现有 DICOM 阅览弹窗调整右侧展示逻辑:普通阅览状态继续显示当前 DICOM 图;点击“模型切分”且 STL 已载入后右侧区域切换为“Mask 展示”,固定展示起点帧和终点帧两张由后端真实 STL mask 生成的图片。

涉及文件

  • WebSite/src/App.tsx
    • 优化模型切分启用时的右侧 Mask 展示 UI。
    • 明确展示标题、起点帧/终点帧两张图片和各自帧号。
    • 避免在 mask 展示中混入单张普通 DICOM 预览。
  • web_backend.py
    • 在已有重建预览接口中增加 maskOnly 输出模式,用同一 STL/DICOM 切面 mask 生成纯 mask 图片。
  • 工程分析/经验记录.md
    • 追加本轮关键问题和解决方案。

执行步骤

  1. 确认现有 modelStartPreviewmodelEndPreview 已通过 modelId 请求后端真实 mask 图。
  2. 调整后端 /api/library/reformat-preview
    • 增加 maskOnly=1 参数。
    • 参数存在且带有 modelId 时,输出 STL 切面 mask-only 图片,而不是普通 CT 叠加图。
    • 缓存文件名区分 mask-only避免复用旧 CT 预览缓存。
  3. 调整 App.tsx 中右侧预览区域:
    • 模型切分启用且 STL 存在时,显示 Mask 展示头部。
    • Mask 展示内容固定为起点帧、终点帧两张图片。
    • 两张图片均使用当前平面、窗宽窗位和范围端点请求结果。
    • 空交集或加载失败时,在对应图片区域显示状态。
  4. 保持未启用模型切分时的普通 DICOM 阅览图不受影响。
  5. 运行前端类型检查、构建和后端语法检查。
  6. 重启后端与前端服务,验证部署地址可访问。
  7. 更新经验记录,提交并推送 Giteacommit 信息使用 2026-05-08-03-45-01 调整Mask双图展示

回滚思路

若展示逻辑异常,可回滚 WebSite/src/App.tsx 中右侧预览区域的 JSX 调整,恢复此前模型切分条件渲染逻辑。

风险控制

  • 不改 STL 解析和 DICOM mask 计算核心算法,降低医学影像处理链路风险。
  • 保留普通 DICOM 阅览路径,避免影响原有冠状位/矢状位查看。
  • 使用现有 modelStartPreviewmodelEndPreview 状态,避免新增并发请求链路。