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

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

【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第2张图片

然后就可以开始拍摄数据集了,注意角度要模拟你的小车摄像头拍到地上数字的角度,还有手持数字正面的角度。
示例:
【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第3张图片
大概每个数字拍200到400张 可以换数字方向,多拍几张效果比较好。
拍完后开始处理图像到合适的格式,这里我是用的
在这里插入图片描述
选择高级批量编辑 把图片全部改为224 * 224的分辨率
【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第4张图片
然后再批量重命名一次,让图片按顺序排列
处理完后整理一下文件夹,删掉处理前的图片,就可以开始打标记了
MX-YOLOV3自带一个打标记工具
【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第5张图片

数据集标注:

【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第6张图片
Open Dir打开你的img文件夹,ChangeSaveDir选择你要保存XML文件的地址

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

W 画框
D 下一张
A 上一张

【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第7张图片

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

训练

选择你之前的两个文件夹 然后 自动提取 计算Anchor 依次点一次 再点控制台开始训练
在这里插入图片描述

【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第8张图片
如果你的环境配置没问题,那应该正式跑起来了。

经过漫长的等待,你的模型跑完了,然后需要经过模型转换才能放进K210进行使用。
【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第9张图片
转换完后,把新的kmodel刷进K210 0X3000000以上的FLASH 或者放进SD卡进行读取

【电赛开发】2021-F题数字识别-YOLOV2(含无脑训练教程_第10张图片
刷好后就可以在程序里进行数字识别了
如果出现内存不足的情况,就把固件换成mini版的,并设置加大GC堆空间

你可能感兴趣的:(K210,目标检测,目标检测,机器学习,嵌入式)