mmdetection模型的评价工具

mmdetection训练模型之后,可用以下函数对模型进行评价

一、日志分析

1、tools/analyze_logs.py 利用给定的训练日志文件,可以打印出loss函数与map的曲线,运行pip install serborn来安装对应的依赖。
analyze_logs.py 可以绘制loss, loss_cls, loss_bbox, acc,mAP等等

  • 打印分类损失
python tools/analyze_logs.py plot_curve log.json --keys loss_cls --legend loss_cls
  • 打印分类与回归的损失,并保存为一个pdf文件
python tools/analyze_logs.py plot_curve log.json --keys loss_cls loss_bbox --out losses.pdf
  • 在同一个图中对比两个runs的map
python tools/analyze_logs.py plot_curve log1.json log2.json --keys bbox_mAP --legend run1 run2
  • 打印acc
python tools/analyze_logs.py plot_curve work_dirs/.../log.json --keys acc --legend acc --out acc.jpg
  • 在同一个图中比较两个模型mAP
python tools/analyze_logs.py plot_curve log1.json log2.json --keys bbox_mAP --legend run1 run2
  • 计算平均训练速度
python tools/analyze_logs.py cal_train_time work_dirs/....../20211008_215141.log.json

在这里插入图片描述
训练速度的单位是 s/iter,数值越低代表速度越高

二、误差分析

python tools/analysis_tools/coco_error_analysis.py \
    ${RESULT} ${OUT_DIR} \
    [--ann ${ANN}] [--types ${TYPES[TYPES...]}]

· result:json 预测结果文件的路径
· out_dir:设置输出分析结果文件的路径
· --ann:json 标注文件的路径,默认值为 data/coco/annotations/instances_val2017.json
· --types:设置预测结果类型,默认值为 bbox

示例:

python tools/analysis_tools/coco_error_analysis.py \
    work_dirs/faster_rcnn_r50_fpn_1x/results.bbox.json \
    work_dirs/faster_rcnn_r50_fpn_1x/results \
    --ann=data/coco/annotations/instances_val2017.json
    --types='bbox'

三、其他

  • 评价模型复杂度
python tools/get_flops.py configs/faster_rcnn/voc_faster_rcnn_r101.py

Params表示模型参数量
mmdetection模型的评价工具_第1张图片

你可能感兴趣的:(计算机视觉,python,人工智能,机器学习)