电赛开发2021-F题数字识别-YOLOV2(含无脑训练教程

Posted Kamimiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了电赛开发2021-F题数字识别-YOLOV2(含无脑训练教程相关的知识,希望对你有一定的参考价值。

前言:

本教程采用K210跑模板进行数字识别,针对电赛的环境训练出来的效果更好
在比赛中对识别速度要求也不是很高,所以尽量追求正确率,我选择了K210跑YOLOV2模型
演示视频:BILIBILI

电赛f题高精度数字识别,任意角度

介绍:

YOLOv2采用了一个新的基础模型(特征提取器),称为Darknet-19,包括19个卷积层和5个maxpooling层,如图所示。Darknet-19与VGG16模型设计原则是一致的,主要采用33卷积,采用22的maxpooling层之后,特征图维度降低2倍,而同时将特征图的channles增加两倍。与NIN(Network in Network)类似,Darknet-19最终采用global avgpooling做预测,并且在33卷积之间使用11卷积来压缩特征图channles以降低模型计算量和参数。Darknet-19每个卷积层后面同样使用了batch norm层以加快收敛速度,降低模型过拟合。在ImageNet分类数据集上,Darknet-19的top-1准确度为72.9%,top-5准确度为91.2%,但是模型参数相对小一些。使用Darknet-19之后,YOLOv2的mAP值没有显著提升,但是计算量却可以减少约33%。
在K210中我们用的是剪枝后的YOLOV2,说白了就是运行速度更快,内存要求更低,准确度更低。

准备工作:

环境部署参考:链接
环境部署完后 ,准备数据集采集

数据集采集:

创建一个文件夹存放数据集,文件夹下再创建两个文件夹 (注意路径不要有中文和空格)
img用于保存你的图片,xml用于保存标签

准备一个USB摄像头,在MX-YOLOV3(环境部署时装的那个软件)中打开,选择之前的创建文件夹中的img文件夹

然后就可以开始拍摄数据集了,注意角度要模拟你的小车摄像头拍到地上数字的角度,还有手持数字正面的角度。
示例:

大概每个数字拍200到400张 可以换数字方向,多拍几张效果比较好。
拍完后开始处理图像到合适的格式,这里我是用的

选择高级批量编辑 把图片全部改为224 * 224的分辨率

然后再批量重命名一次,让图片按顺序排列
处理完后整理一下文件夹,删掉处理前的图片,就可以开始打标记了
MX-YOLOV3自带一个打标记工具

数据集标注:


Open Dir打开你的img文件夹,ChangeSaveDir选择你要保存XML文件的地址

然后开始正式标注,快捷键:

W画框
D下一张
A上一张

画框后注意修改物体名字,就这样一张张把你的两千多张图片全部按数字标完,然后就可以开始训练了。

训练

选择你之前的两个文件夹 然后 自动提取 计算Anchor 依次点一次 再点控制台开始训练


如果你的环境配置没问题,那应该正式跑起来了。

经过漫长的等待,你的模型跑完了,然后需要经过模型转换才能放进K210进行使用。

转换完后,把新的kmodel刷进K210 0X3000000以上的FLASH 或者放进SD卡进行读取


刷好后就可以在程序里进行数字识别了
如果出现内存不足的情况,就把固件换成mini版的,并设置加大GC堆空间

以上是关于电赛开发2021-F题数字识别-YOLOV2(含无脑训练教程的主要内容,如果未能解决你的问题,请参考以下文章

电赛开发2021-F题数字识别-YOLOV2(含无脑训练教程

电赛开发2021-F题数字识别-YOLOV2(含无脑训练教程

2021电赛F题送药小车视觉部分的一种思路(双OpenMV法)

2021电赛F题之openmv数字识别(附带视频,不看后悔)

2022电赛C题:小车跟踪(方案1+核心代码)

电赛题目a~f都是啥题