K210|【电赛开发】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用于保存标签
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

准备一个USB摄像头,在MX-YOLOV3(环境部署时装的那个软件)中打开,选择之前的创建文件夹中的img文件夹
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

然后就可以开始拍摄数据集了,注意角度要模拟你的小车摄像头拍到地上数字的角度,还有手持数字正面的角度。
示例:
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

大概每个数字拍200到400张 可以换数字方向,多拍几张效果比较好。
拍完后开始处理图像到合适的格式,这里我是用的
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

选择高级批量编辑 把图片全部改为224 * 224的分辨率
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

然后再批量重命名一次,让图片按顺序排列
处理完后整理一下文件夹,删掉处理前的图片,就可以开始打标记了
MX-YOLOV3自带一个打标记工具
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

数据集标注: K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

Open Dir打开你的img文件夹,ChangeSaveDir选择你要保存XML文件的地址
然后开始正式标注,快捷键:

W 画框
D 下一张
A 上一张
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

画框后注意修改物体名字,就这样一张张把你的两千多张图片全部按数字标完,然后就可以开始训练了。
训练 选择你之前的两个文件夹 然后 自动提取 计算Anchor 依次点一次 再点控制台开始训练
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

如果你的环境配置没问题,那应该正式跑起来了。
经过漫长的等待,你的模型跑完了,然后需要经过模型转换才能放进K210进行使用。
K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

转换完后,把新的kmodel刷进K210 0X3000000以上的FLASH 或者放进SD卡进行读取
【K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程】K210|【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程
文章图片

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

    推荐阅读