AI大视觉(九) | Yolov3 如何进行预测?

本文来自公众号“AI大道理”。

这里既有AI,又有生活大道理,无数渺小的思考填满了一生。

yolo v3的预测结果就是我们想要的最终的预测框。

从原始图片到框出物体的图片,这中间经历了什么呢?

预测过程

(1)添加灰条

yolo v3需要输入416*416大小的图片,然而我们采集的图片未必都是这样的尺寸。

若直接resize,图片会被拉伸导致失真的。

给图像增加灰条,实现不失真的resize。

(2)获得预测参数

这样输入后就可以获得网格的预测结果,将结果保存到list里面。

预测结果即先验框的调整参数。

训练的就是这些调整参数。

AI大视觉(九) | Yolov3 如何进行预测?_第1张图片

(3)解码

对三个特征层进行循环解码,即对先验框进行调整的过程。

解码后得到很多的预测框。

13*13的特征层,就有13*13*3=507个预测框。

26*26的特征层,就有26*26*3=2028个预测框。

52*52的特征层,就有52*52*3=8112个预测框。

可以想象图片上密密麻麻的的画着这些预测框是什么样的场景。

AI大视觉(九) | Yolov3 如何进行预测?_第2张图片

(4)非极大值抑制

所以需要非极大值抑制来去除多余的预测框。

AI大视觉(九) | Yolov3 如何进行预测?_第3张图片

(5)去除灰条

非极大值抑制完成后去除添加的灰条。

(6)绘制预测框

呈现结果。

AI大视觉(九) | Yolov3 如何进行预测?_第4张图片

AI大视觉(九) | Yolov3 如何进行预测?_第5张图片


非极大值抑制

(1)置信度阈值过滤

可以在预测的时候根据需要设定一个置信度阈值。

(2)遍历种类

不同种类逐个进行非极大值抑制。

(3)取出最大置信度的框

取出某个类最大的置信度的框,这是第一个种类的第一个物体

(4)抑制其他框

最大置信度的框与其他置信度的框求IOU,重合度高的说明两个框指向一个物体。

已经有最大置信度的框框住这个物体了,就去除其他低置信度的框。

(5)继续取出剩下最大置信度的框

去除后,取出下一个最大的置信度的框,说明是第一个种类的第二个物体,继续抑制其他框,直到这个种类结束。

(6)循环其他种类

进行类似操作,直到结束。

AI大视觉(九) | Yolov3 如何进行预测?_第6张图片

总结

从原始图片到框出物体的图片,这中间经历了添加灰条进行resize、yolo v3网络进行特征提取特征融合进行预测输出、解码、非极大值抑制、去除灰条、绘制预测框等多个步骤,最终呈现出框出物体的图片。

   

 ——————

浅谈则止,细致入微AI大道理

扫描下方“AI大道理”,选择“关注”公众号

—————————————————————

AI大视觉(九) | Yolov3 如何进行预测?_第7张图片  

 —————————————————————

投稿吧   | 留言吧

你可能感兴趣的