《解密活体检测》教学案例

2023-11-12 11:25崔长华北京市通州区潞河中学
中国信息技术教育 2023年21期
关键词:活体关键点人脸

崔长华 北京市通州区潞河中学

●课程指导思想

课程的指导思想是《普通高中信息技术课程标准(2017年版)》指出的“关注学生个性化、多样化的学习和发展需求”“着力发展学生的核心素养”“通过解决实际问题体验程序设计的基本流程,感受算法的效率,掌握程序调试与运行的方法”,以及基于项目的学习、“从做中学”即“从活动中学”。

●教学内容分析

本课选自人教版高一信息技术选修4“3.1 计算机视觉”模块。笔者在相关教学内容的基础上进行了重构和加工,开展“基于人脸识别技术的门禁系统设计”(共6课时)。前两课时了解人脸检测和人脸识别的相关技术,利用人脸关键点体验人脸美颜效果。本课是项目的第3课时,主题是“解密活体检测”,核心内容是“基于人脸关键点进行活体检测”。通过对人工智能典型案例的剖析,引导学生发现问题,并尝试用人工智能的方法解决问题,让学生感受智能技术对生活和学习带来的影响。

●学情分析

学生思维活跃,乐于动手实践,在生活中体验过不少人工智能产品,愿意探究技术背后的原理。经过一段时间的Python编程学习,学生能够用编程解决简单的问题,但是将问题抽象成数学模型的经验略显不足,并且对活体检测的核心技术知之甚少。学生能够利用人脸关键点检测模型提取人脸的关键点信息,并体验用关键点给人脸美颜;用程序设计方法解决现实问题有初步的经验及一定的抽象能力,但将实际问题抽象成计算机解决问题的能力经验不足。

●教学重难点

重点:利用人脸关键点,建立眨眼、张嘴、点头、摇头的基础数学模型。

难点:依据建立的数学模型,设计算法,使用选择结构编写程序,验证实验结果。

●教学策略

整体设计思路:以解决问题为导向,重点围绕实验方案设计、实验探索、实验结果验证展开。采用探究式的教学策略,运用提问法、演示法、讲授法、小组探究法。

●教学准备

带摄像头的多媒体网络教室、OpenCv和Dlib库、教学指南、任务单等。

●教学过程

1.项目回顾,引出主题

教师首先让一名学生进行人脸识别程序测试(程序能准确识别出学生),接着用学生的照片进行程序测试(照片也能通过人脸识别程序)。学生发现程序还不完善,不能区分是不是真人,为了提高安全性,需要增加活体检测功能。

设计意图:主动出示问题抓住学生的注意力,强调活体检测的重要性,明确本节课主题——配合式活体检测。

2.头脑风暴,聚焦方法

师:配合式活体检测主要是四种动作(眨眼、张嘴、点头、摇头)的随机检测,人是如何识别各种动作的?(引导学生回想自己识别各种动作的过程)

学生小组讨论,结合生活经验,得出眨眼时黑眼球大小发生变化以及上下眼皮的距离发生变化、张嘴时上下嘴皮的距离发生变化、点头时以脖子为轴心旋转、摇头时向右转左脸朝前方、向左转右脸朝前方等,这些都是目前主流的配合式活体检测的一般方法。

师:(以眨眼为例再次抛出问题)如何让计算机识别眨眼动作?

此时学生迁移旧知想到,可以利用前面学过的人脸关键点中的眼部数据,得到眼睛上关键点纵向距离,进而用眼睛距离变化判断眨眼。

设计意图:师生通过问题的不断聚焦,将眨眼过程转换成距离变化的过程(如图1),形成计算机识别眨眼的思路。

图1

3.教师演示,操作示范

教师进行演示,讲授利用程序获取关键点欧式距离以及显示数据图表的方法,带领学生分析眼睛纵向的距离变化规律,并记录实验数据,如图2所示。点头和摇头动作的规律,不容易发现,教师适时给予点拨(先选取合适的关键点,再将关键点连成线段,观察线段或者图形的变化规律,如图3所示)。

图2

图3

各小组从眨眼、张嘴、摇头、点头四个常见活体检测的动作中选择其一开始探究实验,选择眨眼和张嘴实验的小组按照教师的操作示范进行实验操作,找到眼部和嘴部的数据变化规律。在教师的点拨和引导下,学生反复实验后找到点头、摇头的规律。

设计意图:教师示范的目的是让学生能够迅速上手实验,直奔实验主题。教师适时点拨和细化探究任务,可避免部分基础薄弱的学生因为探究目的不明确而难以下手。

4.小组探究,建立模型

有些学生发现实验结果靠近摄像头时距离值增大,远离摄像头时距离值减小,教师适时鼓励学生思考解决办法。

学生发现可以利用比值关系来解决距离发生近大远小的问题。在师生的共同研讨下得出用嘴部纵横距离比值的数学模型来预测嘴部动作,建模公式如图4所示。教师请发现规律的小组进行课堂展示,如图5所示。

图4

图5

设计意图:利用图形直观地呈现出动作的变化规律,降低学习难度,使抽象的动作更加直观,使思维过程可视,达成教学目标。教师适时对不完善的模型和思路进行点拨。

5.应用模型,编程验证

学生利用模型进行实验,并记录各种动作的实验数据。教师带领学生分析数据,设计算法。以嘴部实验为例,当嘴部比例大于均值时,嘴处于张开状态,小于均值时,嘴处于闭合状态(如下页图6),在发现数据的规律后,师生共同梳理各组的初步算法,以均值为阈值,利用阈值法编程验证动作的状态(如下页图7)。

图6

图7

设计意图:教师引导学生将所学数学知识融入到计算机解决问题的过程中,并适时捕捉课堂中生成的问题,及时给予解释和加以引导,推进课堂进程,促进学生的深度学习。

6.展示交流,拓展延伸

在学生编程验证后,请学生分享作品,将三种动作状态都识别出来。教师在总结环节帮助学生理清知识结构,构建完善的知识体系:人工智能典型案例需历经采集数据、特征提取、建立模型、训练模型、评估模型、应用模型等过程。教师鼓励学生进行应用迁移,学生想到了眨眼检测可以迁移到监测疲劳驾驶、表情识别等领域。

设计意图:通过模型方案的不断迭代,找到更符合实际需求的动作检测模型。在作品分享交流环节,给学生提供交流展示的平台,小组间相互取长补短,找到最优的解决问题的思路和方法。在提升环节鼓励学生进行应用迁移,这不仅能拓宽学生的视野和思维,还可提高学生解决问题的能力。

●教学反思

本课选取贴近学生生活的人工智能主题,使学生深入体会到在面对复杂问题时,如何化繁为简,拆解任务。整个教学过程以发展思维为核心,以“问题猜想—实验提炼—抽象模型—编程验证”为主线,使学生在轻松愉快的学习氛围中学习,实现教学目标,提升学生的计算思维。

点 评

本节课是以项目制作的形式开展的一节课,教学内容选自“人工智能模块”,执教教师对其进行了设计和重构,从教材中的表情识别过渡到解密活体检测,包含了对数学建模的设计,这是教材中没有涉及的,也是高中阶段学生学习的一个难点。本节课具有如下特点:

1.落实学科核心素养

本节课关注利用信息技术学科特有的方法分析问题和解决问题,从一开始就引导学生思考怎么区分点头和摇头这几个动作,引入计算机来识别,让学生关注数据在其中起到的作用,重点研究通过数据的关系进行相应的建模,进而解决问题,其中也让学生理解人和计算机解决问题的异同。整个学习过程,关注问题解决方法的引导,发展了学生的计算思维。

2.实验教学法,促进高效课堂

本节课采用实验教学的方式,通过问题猜想、实验提炼、抽象模型,最后编程验证,让学生经历项目的每一个环节,学生的思维也在活动中不断深入,从课堂表现看,学生的参与度非常高,而且学生想到的解决方法并不唯一。四种活体检测动作在本节课都有落实,不同的小组来实验不同的内容,互相学习、相互启发,这是一种非常有效的授课方式。

3.借助信息化工具,突破教学难点

教师考虑用相应的方法和手段来突破本节课的难点——数据建模。怎么让学生发现规律?怎么去建构模型?这都是比较难的,教师通过图形直观呈现动作变化规律,发现数据之间的关系,让学生把动作抽象成数据,再找到数据的规律,这使模型的构建更加自如,也相应降低了学生的学习难度,这种设计非常巧妙,最终达成解密活体检测的主题。

猜你喜欢
活体关键点人脸
聚焦金属关键点
肉兔育肥抓好七个关键点
有特点的人脸
张帆:肝穿刺活体组织学检查
让活体肝移植研究走上世界前沿
活体器官移植,你怎么看?
三国漫——人脸解锁
“汪星人”要打“飞的”——话说活体空运
马面部与人脸相似度惊人
医联体要把握三个关键点