本文来自公众号“AI大道理”。
这里既有AI,又有生活大道理,无数渺小的思考填满了一生。
yolo v3的预测结果就是我们想要的最终的预测框。
从原始图片到框出物体的图片,这中间经历了什么呢?
预测过程
(1)添加灰条
yolo v3需要输入416*416大小的图片,然而我们采集的图片未必都是这样的尺寸。
若直接resize,图片会被拉伸导致失真的。
给图像增加灰条,实现不失真的resize。
(2)获得预测参数
这样输入后就可以获得网格的预测结果,将结果保存到list里面。
预测结果即先验框的调整参数。
训练的就是这些调整参数。
(3)解码
对三个特征层进行循环解码,即对先验框进行调整的过程。
解码后得到很多的预测框。
13*13的特征层,就有13*13*3=507个预测框。
26*26的特征层,就有26*26*3=2028个预测框。
52*52的特征层,就有52*52*3=8112个预测框。
可以想象图片上密密麻麻的的画着这些预测框是什么样的场景。
(4)非极大值抑制
所以需要非极大值抑制来去除多余的预测框。
(5)去除灰条
非极大值抑制完成后去除添加的灰条。
(6)绘制预测框
呈现结果。
非极大值抑制
(1)置信度阈值过滤
可以在预测的时候根据需要设定一个置信度阈值。
(2)遍历种类
不同种类逐个进行非极大值抑制。
(3)取出最大置信度的框
取出某个类最大的置信度的框,这是第一个种类的第一个物体
(4)抑制其他框
最大置信度的框与其他置信度的框求IOU,重合度高的说明两个框指向一个物体。
已经有最大置信度的框框住这个物体了,就去除其他低置信度的框。
(5)继续取出剩下最大置信度的框
去除后,取出下一个最大的置信度的框,说明是第一个种类的第二个物体,继续抑制其他框,直到这个种类结束。
(6)循环其他种类
进行类似操作,直到结束。
总结
从原始图片到框出物体的图片,这中间经历了添加灰条进行resize、yolo v3网络进行特征提取特征融合进行预测输出、解码、非极大值抑制、去除灰条、绘制预测框等多个步骤,最终呈现出框出物体的图片。
——————
浅谈则止,细致入微AI大道理
扫描下方“AI大道理”,选择“关注”公众号
—————————————————————
—————————————————————