运行yolov5的val.py进行验证时,更改打印的p、r、map50、map指标从0.825到82.50

❗❗❗ 兄弟姐妹们,如果看习惯了运行train.py时打印0.551这种的不超过1的小数点值,一定要把以下操作全部还原哟!

❗❗❗ 不然就会像我一样,当看到打印台那一行行的P、R、mAP50、mAP50-95超过1的值,心慌的不得了!错以为是自己数据集的问题,毁我心情,耽误我好几天不跑代码!

❗❗❗ 不过它只是影响的打印台中的显示值,不影响tensorboard中画曲线的值哈,也不影响result.txt中的值!


val.py中按住Ctrl+F检索定位到262行的Print results处,如下做更改:

在这里插入图片描述

  • 修改记录:按下快捷键Ctrl+F搜索定位到Print results per class处,然后在p[i]r[i]ap50[i]ap[i]后面都乘上了100,以此来实现对于每个单类也能打印出保留小数点后两位的数据
       # ---------lwd edit---------- #
    pf = '%20s' + '%11i' * 2 + '%11.2f' * 4  # print format
    LOGGER.info(pf % ('all', seen, nt.sum(), mp * 100, mr * 100, map50 * 100, map * 100))
    # --------------------------- #

    # Print results per class
    if (verbose or (nc < 50 and not training)) and nc > 1 and len(stats):
        for i, c in enumerate(ap_class):
            LOGGER.info(pf % (names[c], seen, nt[c], p[i] * 100, r[i] * 100, ap50[i] * 100, ap[i] * 100))

在这里插入图片描述

在这里插入图片描述

最后一行打印出了FPS,可以参考博客:yolov5-计算fps(新加入:4. 记录运行B导yolov7-tiny后计算fps的方法)

猜你喜欢

转载自blog.csdn.net/LWD19981223/article/details/127943994