说明:以下是我在b站上听一位博主 霹雳吧啦Wz讲的目标检测yolov1到v3的视频,记录的笔记:
一、 目标检测的指标
上述计算得到的0.6694就是所有猫这个类别的AP,对所有类别求AP,然后加权平均就是mAP。
第一行AP,实际就是mAP,代表在IoU取0.5、0.55、0.60、0.65…、0.95十个值时分别对应的mAP,然后再计算这十个mAP的平均值。
第二行就是IoU=0.5时计算的mAP值
目标检测领域常用数据集:Pascal Voc和coco
二、 YoloV1
一张图像划分成七个网格,每个网格预测两个盒子,每个盒子要附带预测5个数值,(x,y)代表盒子中心相对这个网格的位置,w,h代表这个盒子相对整张图片的宽高占比,所以,x,y,w,h都是0到1之间的数。
三、YoloV2
- YoloV1中没有使用BN,YoloV2中在卷积层后面加了BN,mAP可以提升两个点,另外增加BN层就可以不用dropout层了。
- 补充一点Faster R-CNN中的损失计算知识:
- 继续yolov2的内容:
to就是YoloV1中的confidence值,预测框与真实框的交并比
四、 YoloV3
YoloV3较之前模型,推理时间最快,但是mAP指标并没有特别高
修改了backbone
我学习过程中自己的思考:
- 1、DarkNet-19的结构具体是什么样的?
- 2、为什么比ResNet快这么多?
DarkNet采用的卷积核个数比ResNet卷积核个数少
ResNet模型结构 - 3、DarkNet-53和DarkNet-19差异是什么?仅仅只是网络加深了吗?
DarkNet模型:卷积+(下采样卷积+1残差块)+(下采样卷积+2残差块)+(下采样卷积+8残差块)+(下采样卷积+8残差块)+(下采样卷积+4*残差块)
使用DarkNet-53模型提取特征的YOLOV3模型结构:
yolov3中利用DarkNet53结构中三个特征层进行预测
Predict1预测大目标,Predict2预测中等尺寸的目标,Predict3预测小目标 - 4、DarkNet-53深度比ResNet-101还浅,但是效果却比它好,为什么?
DarkNet-53中没有maxpooling,下采样都是通过卷积层来实现。如:卷积核大小:3x3,步距为2,
YoloV2、3中引入了anchor,通过RPN来生成anchor:
RPN网络结构就介绍到这里,总结起来就是:
生成anchors -> softmax分类器提取positvie anchors -> bbox reg回归positive anchors -> Proposal Layer生成proposals
目标边界框预测
SPP模块:对特征图进行不同尺度的融合。
更正:不相交时,IoU=0,-ln0=正无穷,1-IoU=1,所以不相交是loss不是0,不相交时无法衡量预测值与GT之间的距离,没法去调整参数了。
思考:既然不相交,那就舍弃呗,没目标,也不用调整了啊????
FCOS模型