本文主要是介绍瑞芯微RV1126平台----yolov5输出后处理C++实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
1.前言
2.代码
2.1 padding resize 代码
2.2 瑞芯微yolov5后处理
2.3 坐标框的后处理
3.完整代码
3.1 postprocess.h
3.2 posrprocess.cc
1.前言
标准的yolov5-5.0的输出有三个,分别是
1x255x80x80
1x255x40x40
1x255x20x20
其中这里的255是85*3,这里的3是指3个anchor产生的3个box(不是RGB三个通道,最后输出那里已经没有RGB的概念了),而这里的85是指5+80=85,其中80是类别数量,每个类别数量对应一个label score,一共80个label score,而5是指box的四个坐标加一个box score.
如果是yolov5-6.0版本,6.0是把三个输出合到一起的,那么排列是x y w h box_score id Id1_score id2_score .... idn_score,那么如果3*80*80*12,则输出类别数是6不是7,因为里面有个id,相当于把id计算出来了,而yolov5-5.0版本三个输出没合到一起的,里面只有类别得分,没有类别。
瑞芯微目前移植的是三个没有合到一起的版本,也就是yolov5-5.0.
2.代码
这篇关于瑞芯微RV1126平台----yolov5输出后处理C++实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!