实验结果汇总脚本说明.md 1.8 KB

实验结果汇总脚本说明

1. 脚本位置

  1. tools/summarize_results.py
  2. tools/summarize_results.sh

2. 脚本做什么

脚本会:

  1. 默认扫描 outputs/experiments/optimized/ 下的 best.pth
  2. 读取 checkpoint 中保存的 cfgmetrics
  3. 提取数据集名、实验模式、epoch、best metric、Dice 和 IoU
  4. 导出 CSV 和 Markdown 汇总表

3. 输出文件

默认输出:

  1. results/optimized/experiment_summary.csv
  2. results/optimized/experiment_summary.md

当前脚本不再生成单独的边界消融汇总表。

4. 汇总字段

每条结果包含:

  1. dataset
  2. mode
  3. ablation_case
  4. ratio
  5. epoch
  6. best_metric
  7. dice
  8. iou
  9. checkpoint

其中:

  1. dataset 优先从 checkpoint 内的 cfg.dataset.dataset_name 读取
  2. mode 根据路径中是否包含 supervised 推断
  3. ablation_case 当前保留占位符
  4. ratio 当前保留占位符

5. 使用方法

默认汇总:

bash tools/summarize_results.sh

指定目录:

OUTPUTS_DIR=outputs RESULTS_DIR=results bash tools/summarize_results.sh

直接调用 Python:

/opt/miniforge3/envs/xnet_mamba/bin/python tools/summarize_results.py --outputs-dir outputs/experiments/optimized --results-dir results/optimized

6. 没有结果时的行为

如果还没有任何 best.pth,脚本不会报错。

它会生成空表,并打印:

num_results: 0

7. 推荐工作流

DATASET=BUSI bash tools/run_optimized_supervised.sh
bash tools/summarize_results.sh
sed -n '1,40p' results/optimized/experiment_summary.md

后续可以继续扩展:

  1. 自动解析 XNet 消融 case
  2. 增加 HD95 / ASSD
  3. 增加按数据集分组的最佳结果表
  4. 增加跨数据集泛化结果表