Files
CADx-4/research-wiki
iomgaa 1de88a5d0a fix(ceus): 降低长视频内存峰值,快照开跑即写,build 核对 CEUS 运行与交付包
- 内存:prepare_segmentation 改为流式解码,只留分屏和配准的抽样帧,绿框逐帧在两半上找;
  分割那一半由 SegmentationInput.target_frames() 到用时再解码,segment_video 边读边写 jpg;
  MedSAM2 init_state 的读帧换成直接在存放设备上建张量(不改 MedSAM2 源码,结果逐位相同);
  传播结果写进预分配数组。帧数最多的一段视频常驻内存峰值 11.2 GiB → 2.3 GiB,分辨率最大的
  一段原代码被 OOM 杀掉、现为 4.2 GiB;两段的掩码和全部产物与改前逐字节相同,33 段视频的
  第 1–2 步结果与改前一致,29 例配准与 review.csv 一致。
- 快照:ceus_quant 开跑时写 snapshot/(git、ceus.yaml、review.csv、uv.lock、segment.json),
  配置和核对表从快照副本读;收尾由新函数 runs.finish_snapshot 只新建 finished.json。
  build 与 ceus_align_review 同样改用 finish_snapshot 记结束时间。
- build:summary.json 加 video_sha256;装 CEUS 结果时核对快照里的 delivery_dir、逐例核对
  视频 SHA-256 和推注时间,不同就整次停下;新字段做类型检查,不进 tic.json。

来源:主会话任务(问题 1–3 及补充的 delivery_dir 比对)。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 09:01:44 -04:00
..

research-wiki

本项目的文档。读者是没参与过讨论的医学 AI 方向硕士生:懂 Python 和深度学习,不懂胰腺囊性肿瘤。

位置 内容 维护方式
explanation/ 系统由哪些环节组成、各环节的输入输出、为什么这样分。从 结构.md 读起 常青:改了就重写那一段
design/ 每次重要决策的来历,文件名 NNNN-简短主题.md 写完冻结;决策变了新写一份并注明取代关系
guides/ 怎么做某件事:建环境、跑某个环节 常青,随实际情况更新
reference/ 查得到的外部事实:术语表、算法参数的原始口径、临床方给的字段定义。每条自带出处;抄自 Linear 的写明抄自哪份、哪天同步 常青,随出处更新
待定问题/ 还没定、迟早要定的问题,一个问题一份文件:问题、为什么要紧、选项、倾向、等谁定 定了就删掉,结论写进 design/,同一个提交
任务书/ 每个模块动手前的任务书,文件名 NN-模块名.md:要做什么、依据哪些文档、怎么验收 负责人确认后交执行者;要改就在开头写「这一版改了什么」
survey/ 文献调研:同类工作怎么做、对我们意味着什么,引文带 PDF 页码(PDF 在根目录 reference-pdf/,不进 git) 写完冻结;有新调研另写一份
results/ 实验结果报告,每个数字标明来自哪次运行(runs/ 下的目录名) 写完冻结
scratch/ 讨论中的草稿、上下文压缩前的快照 由负责人清理,Agent 不删

几类文档的开头

不用 YAML 头,靠固定的开头段落:

  • design:# NNNN 标题 → 状态:负责人 YYYY-MM-DD 认可(「原话」) | 日期:… → 取代了谁就写一行 > 取代 NNNN 的第 X 条 → ## 先认识几个词 → ## 背景 → ## 决定(编号条目,写明哪条是负责人定的、哪条是 Agent 提的) → 需要时加 ## 不做的事。
  • 任务书:标题 → 一段目的 → 来源:(负责人原话) → ## 先认识几个词 → ## 开工前先读 → 分阶段的工作内容(每阶段写收尾点) → ## 测试 → ## 规模 → ## 审阅 → ## 报告(分开写已验证的事实、推断和未验证的部分,附运行目录、提交号、花费)。
  • results:日期 | 对应结构.md 第七部分第 N 步 | 原始记录:runs/… → ## 先认识几个词 → ## 一 跑了什么 → 结果,每个数字带运行目录。