当前位置:   article > 正文

MaixHub平台部署物体识别模型到M2dock开发板上并通过串口发送数据到其他开发板_m2dock串口通信电脑接收数据并返回结果

m2dock串口通信电脑接收数据并返回结果

一、登录maixhub官网MaixHub

注册账号登录,点击模型训练创建训练——创建数据集——采集数据(这里推荐手机采集,扫码之后用手机拍照即可,会自动上传到maixhub平台)——标注数据——创建任务——开始训练  (部署到板子上注意将模型的运行平台选择awnn)

注:类别好像是不能少于五个类别,每个类别的图片不少于50张,什么训练集验证集的不用去管,平台会自动把数据按照比例分成训练集和验证集。

二、部署模型

首先将M2dock设备联网,我一般习惯在设备上调出wifi模块然后扫码联网,手机和Maixhub平台好像都可以根据wifi或热点生成二维码。

训练完成后也联网之后,点击maixhub平台上的部署模型——自动部署,会生成二维码,将M2dock设备左右按键切换到部署模型的界面,扫描该二维码,会自动下载模型到开发板上,然后就可以开始识别喽!!!

设备重启之后,可以调出模型部署界面,选择已部署模型,选择运行,开始识别。

三、数据传输

前面已经实现了物体识别/分类模型的部署,接下来把识别到的物体的位置和类型发送出去。

如何发送这些信息呢?需要我们将M2dock设备连到电脑上,电脑会把M2dock识别成U盘,我们打开U盘,在里面找到文件,然后修改此文件里面的maixhub_device_python文件夹下的maixhub文件下的demos里面的maixpy3_detection.py文件。

导入模块

import serial

 接下来创建一个接口对象参数1表示要创建的串口编号,其中/dev/ttyS1是V831规定的串口写法

ser = serial.Serial("/dev/ttyS1", 115200)  

在YOLO2中的draw函数中进行转换坐标(对坐标进行归一化),其中x1和y1是左上角坐标,x2和y2是右下角坐标 

  1. x = ((x1+x1+w)/2) * 1.09375 + 10
  2. y = ((y1+y1+h)/2) * 1.09375 + 10

之后发送数据,依次为物体的类别、物体中心的横纵坐标 。

  1. uart_data = bytearray([int(class_id), int(x), int(y)])
  2. ser.write(uart_data)

修改之后弹出U盘,将M2dock设备供电并接地、读和写串口连接到其他开发板(或者串口调试助手),调出m2dock设备的模型识别界面,M2dock检测到待识别物体就开始发送数据了!

大功告成喽!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/446109
推荐阅读
相关标签
  

闽ICP备14008679号