一、实验目的及要求

【一】实现人脸识别
【二】实现云数据库应用
【三】实现测温数据mqtt上传至物联网云平台

二、实验原理与内容

基于二哈实现多人人脸学习和识别
基于TinywebDB实现云数据库应用
基于EasyIoT实现mqtt数据上传

三、实验软硬件环境

硬件:掌控板、二哈(HuskyLens)
软件:Mind+
平台:EastIoT、TinywebDB

四、实验过程(实验步骤、记录、数据、分析)

硬件环境连接:
注意掌控版插入方向以及插线连接

软件环境准备:
打开MIND+,连接好设备后,点击扩展,按照下图进行选择,切换到上传模式:
在这里插入图片描述在这里插入图片描述在这里插入图片描述

1.基于二哈实现多人人脸学习和识别

① 什么是二哈
二哈识图是一款简单易用的AI视觉传感器,内置7种功能:人脸识别、物体追踪、物体识别、巡线追踪、颜色识别、标签识别、物体分类。仅需一个按键即可完成AI训练,摆脱繁琐的训练和复杂的视觉算法,让你更加专注于项目的构思和实现。

大致使用的地方如上
② 人脸识别准备
a.首先如果二哈开机后不是中文或者版本不在V.0.5.1及以上需要进行调整以及升级烧录,具体步骤设置中文以及升级烧录步骤参照如下网址:https://wiki.dfrobot.com.cn/SKU_SEN0305_Gravity__HUSKYLENS%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E6%91%84%E5%83%8F%E5%A4%B4

b.接下来设置人脸识别模式:拨动至人脸识别–长按功能键–拨动至识别多个–短按功能键选中–打开识别多个的开关–短按功能键保存–拨动功能键至保存并返回–选中退出

c.最后进入人脸学习:先短按学习键(将已学习的人脸遗忘)–长按学习键(学习人脸)–学习完成(屏幕会出现“人脸ID[数字]”)–松开 “学习键”–(继续学习按照往后步骤)–在倒计时结束内短按学习键继续学习–重复步骤继续学习想要的人脸(这里不需要遗忘)–最终学习完成后等待倒计时结束或短按功能键即可

③ 代码编写:参照第4点

2.基于TinywebDB实现云数据库应用

① 官网注册帐后后并登录http://tinywebdb.appinventor.space/,进入后,点击数据浏览:
在这里插入图片描述
② 添加并设置的标签和值:(以供后续从后台数据库获取数据并显示在屏幕上)
在这里插入图片描述
③ 设置服务器参数,参照第①步图中红色框框里的值:
在这里插入图片描述
④ 具体代码编写:参照第4点

3.基于EasyIoT实现mqtt数据上传

① 官网注册帐后后并登录:https://iot.dfrobot.com.cn/,生成账号,并添加TOPIC0
在这里插入图片描述

② 设置MQTT初始参数,对应输入id和password以及topic0,具体如下:
在这里插入图片描述

⑤ 具体代码编写:参照第4点

4.原理以及代码编写

原理解析
首先设置WIFI连接,输入对应WIFI账号和密码,掌控版成功连接WIFI后,屏幕显示WIFI的IP地址在第一行;接着设置MQTT连接,按照第3点初始化对应的参数,连接成功后,屏幕第三行显示MQTT连接成功;然后设置TinywebDB数据库连接,按照第2点中的图设置服务器初始换参数,来建立连接。接下来进入人脸识别功能,一系列初始化后进行人脸识别,然后不断地开始循环进行人脸识别,并请求读取人脸数据结果,进入判断,如果当时在二哈中学习到的人脸出现在方框中(即获取到他的ID),表示人脸数据,接下来则用GetTag从数据库后台获取对应于此ID的人脸数据的值并显示在第二行,同时灯0对应的亮起属于他的颜色,并且发送关于这个人脸的数据消息到TOPIC0,并发送人脸识别成功到TOPIC0中。如果方框中识别的结果ID都不存在,则表示这个人人脸数据没有录入或者是摄像头没有拍摄人脸。如此循环。

源码仓库地址https://github.com/Spying5/Mind-/blob/master/HuskyLensFace
具体代码如下
在这里插入图片描述

五、测试/调试及实验结果分析

在这里插入图片描述TMxNzkwMg==,size_16,color_FFFFFF,t_70#pic_center)

一系列人脸识别成功后,TOPIC0收到的消息如下:
在这里插入图片描述

六、实验结论与体会

这次实验我学习了解到了二哈的一些基本知识,以及二哈的基本功能主要有哪些。同时掌握并实践使用了二哈中的其中一个功能“人脸识别”,接触到了数据库平台TinywebDB的使用,学会了数据添加和存储,以及如何设置服务器参数到对应的MIND+代码中以此来建立连接,复习巩固了关于EasyIoT平台的使用,并发送对应消息到TOPIC中。首先实验值得注意的就是开始的接线不要接错,然后就是人脸识别,进入学习人脸的时候,要记得遗忘人脸。屏幕应该有一个红色的十字出现,对准人脸按下学习键进行录入,然后就是关于参数的配置不要输错,同时要注意代码的逻辑性。这次实验锻炼了我的动手能力和提高了我的思考能力,总的来说受益匪浅。

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐