通过云端自动生成openmv的神经网络模型,进行目标检测

通过云端自动生成openmv的神经网络模型,进行目标检测

  • OpenMV训练神经网络模型(目标识别)
    • 一、准备材料:
    • 二、软件下载
    • 三、准备数据集:
    • 四、数据集的上传与训练

OpenMV训练神经网络模型(目标识别)

一、准备材料:

1.OpenMV4 Plus(低版本的openmv可能算力不够不支持)
2.一根micro usb的数据线
3.电脑、网络

二、软件下载

在openMV官网下载openmv IDEhttps://book.openmv.cc/
通过云端自动生成openmv的神经网络模型,进行目标检测_第1张图片
下载完毕后进入IDE界面:
通过云端自动生成openmv的神经网络模型,进行目标检测_第2张图片

三、准备数据集:

1.首先在D盘里创建一个新的文件夹,用来放置一会要存放的数据集:
这里我创建的数据集名为new data
通过云端自动生成openmv的神经网络模型,进行目标检测_第3张图片

2.打开openmv的IDE,点开工具栏并选择数据集编辑器,点击新数据集:

通过云端自动生成openmv的神经网络模型,进行目标检测_第4张图片
选择刚刚新建的new data文件夹:
通过云端自动生成openmv的神经网络模型,进行目标检测_第5张图片
完成后的界面:
通过云端自动生成openmv的神经网络模型,进行目标检测_第6张图片
3.拍摄需要识别的图像,采集样本数据
连接上我们的openmv,然后运行程序(这个程序是新建文件后自动生成的默认程序),可以看到右侧出现了拍摄到的实时图像。
通过云端自动生成openmv的神经网络模型,进行目标检测_第7张图片

这里假设我们需要区分空调遥控板或是电视机遥控板,则我们需要新建两个不同的文件夹,例如air_conditioner_RCB和TV_RCB,点击左侧的新建文件夹按钮即可新建文件夹:
通过云端自动生成openmv的神经网络模型,进行目标检测_第8张图片
接下来就可以开始采集照片了!
通过云端自动生成openmv的神经网络模型,进行目标检测_第9张图片
(左为电视机遥控器,右为空调遥控器)
4.采集数据集照片:
在连接上openmv后,点击左侧的采集数据来保存当前帧缓冲区内的照片:
通过云端自动生成openmv的神经网络模型,进行目标检测_第10张图片
(右侧为实时图像,左侧为保存图像)
在拍照时尽量采用多角度的拍摄,并且大概每组数据在100-200张左右。
通过云端自动生成openmv的神经网络模型,进行目标检测_第11张图片
采集完毕之后进入下一步。

四、数据集的上传与训练

这里使用的是云端的edge impulse网站来进行模型的训练及自动生成。只需要将我们刚刚得到的数据集上传即可获得openmv可使用的训练模型,并进行目标识别。
通过云端自动生成openmv的神经网络模型,进行目标检测_第12张图片
1.用户的登录
点击右上角Login in进行登录。
新用户需要在这个网站上进行注册,只要邮箱就可以注册。
2.新建工程文件:
通过云端自动生成openmv的神经网络模型,进行目标检测_第13张图片
选择第一项,图片处理。
通过云端自动生成openmv的神经网络模型,进行目标检测_第14张图片
准备上传数据。
3.获得key,通过key在openmv上上传数据集:
通过云端自动生成openmv的神经网络模型,进行目标检测_第15张图片
通过云端自动生成openmv的神经网络模型,进行目标检测_第16张图片
复制这个API KEY(如果没显示完全,可以选中后右键进入检查,在网页源代码中复制这段文本)
复制完成后打开openmv IDE,找到上传入口(如图所示)
通过云端自动生成openmv的神经网络模型,进行目标检测_第17张图片
点开后将key粘贴进去。
如果没有显示错误的话(我这里报错了),可以正常上传至云端。
若报错,显示:
通过云端自动生成openmv的神经网络模型,进行目标检测_第18张图片
出现该错误时,可以直接在网页端直接上传照片文件。
通过云端自动生成openmv的神经网络模型,进行目标检测_第19张图片
在这上传文件,选项可以选择和图片一致。
通过云端自动生成openmv的神经网络模型,进行目标检测_第20张图片
右侧显示上传完成后,可以进行下一步。
4.选择处理对象和模式:
这里选择默认的处理模式
通过云端自动生成openmv的神经网络模型,进行目标检测_第21张图片
保存后左侧选择Image,并配置:
通过云端自动生成openmv的神经网络模型,进行目标检测_第22张图片
选择后保存后继续配置:
通过云端自动生成openmv的神经网络模型,进行目标检测_第23张图片

通过云端自动生成openmv的神经网络模型,进行目标检测_第24张图片
设置好之后点击下方开始训练:
通过云端自动生成openmv的神经网络模型,进行目标检测_第25张图片
完成训练后,发现数据的准确性还是非常高的(100%)
5.可以选择配置保存版本
通过云端自动生成openmv的神经网络模型,进行目标检测_第26张图片
通过云端自动生成openmv的神经网络模型,进行目标检测_第27张图片
保存了第一版,之后如果需要调用可以直接取该版本。
6.导出训练模型,移植到openmv中:
通过云端自动生成openmv的神经网络模型,进行目标检测_第28张图片
选择openmv后点击build,生成工程文件,下载并解压后得到以下文件。
通过云端自动生成openmv的神经网络模型,进行目标检测_第29张图片
将这些文件移动到openmv的U盘中:
通过云端自动生成openmv的神经网络模型,进行目标检测_第30张图片
将python文件拖入IDE中,运行:
通过云端自动生成openmv的神经网络模型,进行目标检测_第31张图片
可以看到识别的效果还是很不错的,既是在黑色的背景下依旧能够识别到空调遥控器。
通过云端自动生成openmv的神经网络模型,进行目标检测_第32张图片
识别效果还是很不错的。
当然,它也可以用来识别其他的东西。例如口罩识别,性别识别等等;也可以进行多目标检测,效果还是很不错的。
大家可以关注openmv的官网,也有较为详细的解释教程。

你可能感兴趣的:(openmv,python,目标检测,神经网络,stm32,计算机视觉)