zoey不种土豆 发表于 2024-9-24 11:42:30

【新课标】八年级 物联网实践与探索 第15课 面容钥匙

本帖最后由 zoey不种土豆 于 2024-10-16 14:32 编辑

日前,国家中小学智慧教育平台上线了《义务教育信息科技课程教学指南》及配套资源,为帮助大家更好的开展实验活动教学,蘑菇云针对“指南”里“物联网实践与探索 八年级全一册”部分制作了一个系列实操活动教程。主要选取“第三单元 简单物联功能实践”,重点介绍物联网基本功能,内容贴合“指南”学习活动中的实操项目和探究内容,旨在为老师提供更加清晰的操作步骤和教学内容,帮助老师更方便的开展课堂。

第15课 面容钥匙显智能
从传统的钥匙开锁,到刷卡开锁、远程门铃通知和远程控制开锁,门锁越来越智能。随着人脸识别技术的快速发展,刷脸开锁的应用越来越广,本节课我们将使用实验盒制作一个人脸门锁系统,体验人工智能的美妙。


15-2探究实现人脸匹配功能
学习目标
了解摄像头的基本功能,了解人脸采集的基本思路。
掌握加载安装扩展库的方法。
实操目标
使用摄像头采集人脸图片,形成数据集作为人脸库存储在实验盒中。

活动准备
硬件清单


软件使用:Mind+编程软件https://www.mindplus.cc
活动过程
本次活动主要体验人脸检测和人脸录入的过程,不需要完全理解代码的意思,只需要理解人脸采集的程序实现思路即可。
1. 硬件连线
长按ON/OFF按钮启动实验盒,使用USB连接线将实验盒连接到计算机。

将舵机3P线接到P21引脚,舵机可按上舵机盘便于观察。

2. 准备软件
按照下图步骤,设置Mind+软件编程方式为Python代码编程,并完成实验盒连接。

连接成功之后点击右上方的“库管理”按钮安装opencv需要的库。选择“推荐库”,在“图像处理”一栏中找到“opencv-Python”库并点击“安装”

3. 阅读并改写程序
实验盒带有usb摄像头,位于屏幕的正上方,可以拍摄实验盒上方的图像。

从文件夹中找到“15-2 探究实现人脸匹配功能.py”文件拖入“项目中的文件”并打开。

之后我们来看一下部分代码的作用。
首先是初始化部分:

之后我们要用摄像头反复拍照并把人脸给存储下来,及检测到人脸的话就将人脸框出并且保存下来,采集张数设为50张,当然你也可以根据实际效果修改张数。
关键程序注释如下:

4. 运行程序
点击界面右上方的运行按钮,运行程序。

运行程序后在终端输入我们之后要采集的人脸对应的ID号(例如:1) ,并回车确定。

之后就可以看到摄像头实时拍摄的图像了

拍摄完成后可以按B键退出程序,通过多次运行程序,填写不同的ID,可以采集不同的人脸。
采集完成后我们可以在mind+界面中找到拍摄图片存储的目录。按照下图操作在电脑上查看拍摄的照片。

5. 测试及活动记录
接下来,同学们可以根据上述步骤操作一下并将结果记在表中。
[实践操作]填写实践记录表:
(1) 我创建的用于保存照片的路径名:“”
(2) 我记录的人脸和对应的id(记录自己和同学的人脸):

15-3模拟实现面容钥匙功能
学习目标
了解摄像头、主控板和舵机之间数据交互的方式。
通过实践强化对系统的输入、计算和输出三个典型环节的认识。
实操目标
实验盒上摄像头识别到已采集人脸之后发消息给主控板,主控板控制舵机旋转模拟开门。

活动过程
本活动重点关注人脸识别的采集数据、处理数据、反馈控制门锁打开三个部分,已采集人脸,自动控制门锁打开。
1. 编写程序
程序中要循环读取摄像头画面,对画面处理后进行人脸查找(人脸检测),找到人脸之后和先前采集的人脸进行对比,识别到人脸库中的人脸后再控制舵机开锁。
1)训练人脸模型
我们需要先把之前采集的人脸图像集训练****脸模型,之后将摄像头查找到的人脸进行特征匹配后判断是否是主人。
从文件夹中找到“15-3 训练模型.py”文件拖入“项目中的文件”并打开。

运行程序,当看到“generate model done”提示,模型即可训练完成,在下右图中找到模型。

2)改写面容钥匙程序
从文件夹中找到“15-3 模拟实现面容钥匙功能.py”文件拖入“项目中的文件”并打开。

启动物联网服务,搭建服务器,然后创建主题。

下面是部分需要修改的程序:

其中路径名要与之前保存采集的人脸图像的路径一致。

得到的置信度confidence代表了拍摄图像和之前采集图像的人脸的相似程度,可以设置当得到置信度大于等于某值(如50)时就认为是主人的人脸。

2. 运行程序
重新运行程序,等待屏幕显示摄像头画面,用不同的人脸卡片对着摄像头观察实验盒和舵机的反应。

3. 测试及活动记录
接下来,同学们可以两两组队自行分配职责分工并根据下表步骤操作。
活动合作表格:

经过测试我们组认为最合适的阈值是(0~100)。

拓展
设计物联网考勤系统
学习目标
综合运用学过的知识,试着将人工智能融入物联网系统的数据处理环节中。
实操目标
考勤端通过摄像头识别到学生人脸后把人脸对应的id发给物联网服务器,教师端接收到消息后根据id在屏幕上显示对应学生已签到的消息。

活动过程
在作为考勤端实验盒上搭建SIoT服务器并且创建主题。

将课堂上使用的实验盒作为考勤端,增加接收学生信息的考勤端。
注意:可直接将第十五课资源文件夹中对应的程序文打开直接使用使用。

考勤端程序
考勤端的程序和上个活动的程序很相似,只需要把控制舵机改为向服务器发送消息即可,修改补充代码如下:

教师端
教师端的程序比较简单,我们通过编写该程序来复习强化下之前学习过的知识。

效果演示
运行程序后被采集过人脸的同学面对考勤端实验盒的摄像头,观察实验盒屏幕的反应。

同时我们可以在物联网上看到识别到的学号信息。

页: [1]
查看完整版本: 【新课标】八年级 物联网实践与探索 第15课 面容钥匙