本系列文章记录本人硕士阶段YOLO系列目标检测算法自学及其代码实现的过程。其中算法具体实现借鉴于ultralytics YOLO源码Github,删减了源码中部分内容,满足个人科研需求。
本系列文章主要以YOLOv5为例完成算法的实现,后续修改、增加相关模块即可实现其他版本的YOLO算法。
文章地址:
YOLOv5算法实现(一):算法框架概述
YOLOv5算法实现(二):模型搭建
YOLOv5算法实现(三):数据集加载
YOLOv5算法实现(四):正样本匹配与损失计算
YOLOv5算法实现(五):预测结果后处理
YOLOv5算法实现(六):评价指标及实现
YOLOv5算法实现(七):模型训练
YOLOv5算法实现(八):模型验证
YOLOv5算法实现(九):模型预测
本文目录
0 引言
本篇文章实现目标检测评价指标的实现,主要包含以下几个指标:
空间复杂度
:参数量( Parameters )
时间复杂度
:浮点运算数( FLOPs )
精度
:精确率( P )、召回率( R )、混淆矩阵; 均值平均精度( mAP )
P = T P T P + F P P = {
{TP} \over {TP + FP}} P=TP+FPTP
R = T P T P + F N R = {
{TP} \over {TP + FN}} R=TP+FNTP
m A P = ∑ A P N {\rm{m}}AP = {
{\sum {AP} } \over N} mAP=N∑AP
T P TP TP表示预测为正样本且实际为正样本数量, F P FP FP表示预测为正样本但实际为负样本数量。在目标检测中,根据IoU阈值
和类别
对预测结果进行和实际标签的匹配,若匹配成功则该检测结果视为 T P TP TP,反之则视为 F P FP