YOLO预测阶段
预测阶段![Yolo](https://i-blog.csdnimg.cn/blog_migrate/65eba5a323eeeca2863c55c0f4029ff0.png)
Yolov1网络结构
1.输入:448×448×7图片
2.过卷积层
3.变成771024的feature map
4.把数据拉平,输入到4096个神经元的全连接层
5.输出4096个向量
6.把4096个向量输入1470个神经元中,输出1470向量(1470个数字)
7.1470reshape 成7730张量 (办好所有预测框的坐标,置信度和类别结果)
(只需要解析7730)
为什么, 是结果7730
在YOLOv1中将图片划分为77的网格,划分成49个网格gridcell
每一个gridcell预测出B个bounding box在YOLO1中b=2
这2个预测框中心点都落在gridcell中,标示由这个gridcell产生
预测框版阔xywh四个坐标,确定框的位置,是不是物体的置信度,用粗细线表示。
一共77*2=98个bounding box每一个包含4个坐标参数,1个置信度参数,可视化如上图中间黑色框\
- 7730表示7*7个gridcell +2个bound boxes(每个有5个参数)+20个类别概率
最后概率=置信度×包含物体下的类别概率
总结:输入一张图像,YOLO输出S×S个gridcell的信息,每一个gridcell包含两个bounding boxes和20个类别,每一个bounding box包含4个位置参数和一个置信度参数
再重复一便
首先把图像分成S×S个网格,上图7*7
对上图红色网格,有两个boundingbox 一个置信度高。另一个低(通过线的粗细判断)
预测出772=98个框,有的置信度高保存,有的置信度底丢弃。
每一个gridcell还能生成20个类别的条件概率,上图表示,条件概率最高的类别占有的框,紫色表示bicycle的条件概率比较高的区域,每一个gridcell只有一个类别,从20个类别中选概率最高的,说明每一个gridcell智能预测一个物体,77=49个gridcell预测出77=49个物体
在测试阶段,模型已经训练好,输入图像,模型输出7730张量,张量包含7*7个griecell,
强调文本 强调文本
后处理阶段
把预测出的98预测框筛选过滤,重复的框去掉,把底置信度的框去掉,
称为 NMS(非极大值抑制)
对20个类别向量×2个置信度获得每个预测框的类别概率,共98个长条,对长条将置信度小于某个阈值值为0,然后进行由高到低的排序,将后概率依次与第一个对比,如果产生的交并补大于某个值,就把后面的概率置为0