通过前面的学习,我们会发现只要有训练好的模型,博派可以识别任何物体。
那这些模型从何而来呢?
这是Maixduino官方的一个模型网站,里面有很多现成的模型可以下载到博派的板子里直接用。
该网站暂时可以下载的模型不多,但是该网站支持个人训练的模型上传
随着使用的人越来越多,相信未来会有很多模型可以在该网站上下载。
该网站还支持在线训练模型,只要你准备好自己的图片集和标注集,上传之后它就会帮你训练好,然后你下载好训练的模型就可以直接用了。
虽然可以找到别人训练的模型,但是有时候无法满足我们的个性需求,这时候就要求我们自己训练模型。
但是模型该如何训练呢?
本节就来讲如何训练模型,这里要请出一个超级大神-广东省中山市三乡镇新圩小学袁运强老师。
就是上图中最右边的很帅的老师。
他做的事情也非常帅。
原本YOLO训练模型是一件很难的事情,要装很多的Python库,要用代码进行,这对于很多人来说难度太大了,而袁老师将这一切工作做成了一个软件,只需要点点鼠标就可以训练YOLO模型,小学生都可以独立操作,这实在是太酷了。
袁老师在论坛有发帖,介绍他的软件如何训练模型,大家可以移步去看看。
https://mc.dfrobot.com.cn/thread-307554-1-1.html
软件的获取:
大家关注袁老师微信公众号“Import 创客”,回复:“Mx3“即可获得下载链接。
下面我将详细的为大家介绍如何利用袁老师的软件训练模型。
步骤1 获取图片
我们要训练一个模型,必须给软件足够多的图片让其学习。
以口罩识别为例,我们必须准备最少60张以上戴口罩(最好各种颜色各种款式的口罩都有)的图片和至少60张没戴口罩的图片。
然后对这些图片进行标注,最后让机器去学习,图片越多识别率越高,当然工作量也越大。
获取图片的方式有两种:
第一种:自己用手机或相机拍摄。
第二种:上网下载。
第一种我们这里不讲,重点讲讲第二种。
袁老师的软件里有一个专门上网爬图片的软件,可以直接拿来用。
设置好关键词,保存位置,数量点击下载即可。
另外我自己也做了一个小工具,既然袁老师有了为什么我还要做呢?
因为图片下载后还要进行处理,我的小软件就是处理这个的。
我的小工具比较简陋,一切以实用为主。文章最后有下载
打开如图所示
点击爬虫,打开软件如下,用法和袁老师的软件一样,只是多了一个从哪个网站爬取图片,默认是百度。
要注意爬取图片的时候关键词设置很重要,以苹果为例,它会将苹果手机也爬下来,因此我们要设置多个关键词。比如水果 苹果
设置好关键词之后,再看,这才是我们需要的
步骤2 处理图片
图片准备好了,还不能就这样直接给软件去学习,需要对图片进行处理。
第一:处理好文件名。
第二:处理好大小。
我们要将所有的图片都放到同一个文件夹下,因此我们需要对图片进行改名。
新建一个文件夹命名为images,将香蕉和苹果的图片重命名之后,一起复制到images文件夹下。
接着要将这些图片设置好大小,YOLO训练的话最好是正方形,建议设置为224*224
太大了训练起来非常慢。
步骤3 标注图片
图片处理好之后,接下来就要标注图片了。
新建一个文件夹fruit,然后将images文件夹复制进去。在fruit下新建一个文件夹xml
打开袁老师的软件,找到lableimg
第一步:更改图片所在位置。
第二部:更改标签所在位置。
第三步:标注图片
第四步:保存标注
第五步:下一张
步骤4 开始训练
所有图片都标注好了,就可以开始训练了。
打开袁老师的软件,先择物体识别,具体操作步骤如下:
训练的时间几个小时到几十个小时不等,根据电脑性能而定,建议用GPU进行训练。
训练好之后的模型文件是这样的
我们还需要转换一下,在刚才训练模型的界面,有一个模型转换
设置好模型的路径和保存的路径,量化图片路径选择images文件夹即可,点击转换
几分钟之后就生成了一个kmodel模型,这就是我们需要的。
至此模型训练完成。
最后再次感谢袁老师,为人工智能教育普及所做的贡献。
如果你的机器比较慢,也可以将我们整理好的图片集和标注集发送到https://www.maixhub.com/mtrain.html,借助其强大的机器算力帮我们训练。
学生LHM2021.03.18
小软件[手动滑稽]