【Mind+Huskylens趣味AI入门】系列课程—04 智能猫眼
本帖最后由 木子呢 于 2021-8-19 18:24 编辑【Mind+Huskylens趣味AI入门】系列课程—04 智能猫眼
https://www.bilibili.com/video/BV13h411i7Dm?share_source=copy_web
4.1项目介绍
4.1.1背景导入
家里大门都会装上猫眼,方便了解室外情况。但传统猫眼对于老人和小孩并不友好。小朋友如果身高够不到猫眼的位置,就有可能贸然开门;老人要是视力不好,也难以看清门外的状况。还存在夜间光线不足等一系列安全隐患。
随着AI技术的发展,智能猫眼应运而生。智能猫眼不仅克服了传统猫眼使用不便的问题,还实现了安全监控、可视对讲、远程控制、移动侦测等更多智能功能。现在就用Huskylens制作一个当主人在家时,可以监控门外状况的智能猫眼。
4.1.2任务拆解
当有人在家时,智能猫眼可以帮助我们了解门外是熟人还是陌生人,加强居家安全。
通过Huskylens学习多个人脸,保存人脸信息。然后让Huskylens实时监控门外情况,若识别到有人出现在屏幕中:如果是已学习过的人脸,根据ID判断人物身份,提醒主人开门;如果是没有学习过的人脸,就默认为陌生人,发出警报提醒门外是陌生人,确认安全再开门。
STEP1:使用Huskylens的人脸识别功能,学习多个人脸
STEP2:导入角色,初始化舞台场景
STEP3:通过Huskylens实时识别人脸,依据识别结果给出相应反馈
STEP4:根据反馈回应门铃,控制人物移动到门口位置
(目标功能实现效果示意)
4.2项目准备
4.2.1 软件设置
打开Mind+软件,确认软件为“实时模式”。点击“扩展”,在“功能模块”里加载“Huskylens教育版”。点击“返回”到主界面可以看到功能模块添加成功。
4.2.2 硬件连接
用USB线把Huskylens连接到电脑,接着点击扩展功能旁的橙色感叹号,进行连接。连接成功后感叹号会变成绿色对勾(如下图),“返回编辑器”就完成连接啦。
4.3 程序思路
在“智能猫眼”项目中,我们需要创建三个角色,分别为:人物-站立,人物-行走和Huskylens。程序的功能实现分四个部分:
1. 舞台场景初始化
2. Huskylens人脸识别
3. 回应门铃 和 4. 开门动画
4.4功能实现
4.4.1 Huskylens人脸识别
拨动“功能按键“切换至“人脸识别”模式,长按“功能按键”,进入人脸识别功能的二级菜单参数设置界面。
(1)学习多个人脸
拨动“功能按键”,选中“学习多个”,然后短按“功能按键”,接着向右拨动“功能按键”打开“学习多个”的开关:进度条颜色变蓝。再短按“功能按键”,确认该参数。
向左选中“保存并返回“,短按”功能按键“,屏幕提示”是否保存参数?“,默认选择”确认“,此时短按”功能按键“,即可保存参数,并自动返回到人脸识别模式。
将HuskyLens屏幕中央的“+”字对准需要学习的人脸,短按”学习按键“后,屏幕上会提示:”再按一次按键继续!按其他按键结束“。如要继续学习下一个人脸,则在倒计时结束前短按“学习按键”。如果不再需要学习其他人脸了,则在倒计时结束前短按”功能按键”,或者不操作任何按键,等待倒计时结束即可。
在本节课程中,请按以下顺序学习人脸,对应ID1、ID2、ID3。
(2)识别多个人脸
HuskyLens学习过的人脸信息会自动保存起来。当HuskyLens检测到学习过的人脸时,会将这些人脸用方框框选出来并标识ID,第一个学习的人脸标注为“人脸:ID1”,第二个学习的人脸标注为“人脸:ID2”,以此类推。不同的人脸ID对应的边框颜色也不同,边框大小会随着人脸大小而变化,并自动追踪人脸。
4.4.2 Mind+舞台场景布置
(1)添加背景
把鼠标移到“背景库”,点击“上传背景”,打开文件夹上传背景文件“室内”。在“背景”模块里编辑背景图片大小和位置,让图片覆盖整个画布。
(2)添加角色
删除默认的mind+角色,在“角色库”里选择”艾弗里“和”艾弗里-行走“;选择“上传角色”,打开本地文件夹上传“Huskylens”。
上传好角色文件后,调整角色的大小与位置,将Huskylens摆放在大门上。舞台场景布置完成效果如下图所示:
(3)设置角色初始位置
实现效果:点击绿旗,”艾弗里“和”艾弗里-行走“角色移动到初始位置。站立角色显示,行走角色隐藏。
”艾弗里“换成b造型,手背后站立的姿势显示。
”艾弗里-行走“ 与”艾弗里“移动到相同位置,面向方向设为-90,这样人物就会向左行走。但是当我们改变角色朝向后,点击运行模块,发现人物角色是倒过来的,还需要左右翻转才能让角色正常显示。将角色置于顶层避免遮挡。设置好了之后隐藏角色。
4.4.3 Huskylens人脸识别和反馈
实现效果:点击绿旗,Huskylens开始检测是否有人脸。如果识别到的人脸已经学习,则播放门铃声,并根据识别ID告知访客的身份。否则播放警报声,提醒来者是陌生人。
先新建一个变量ID,存储学习过的人脸ID号。
知识延伸
什么是变量,如何新建变量?
变量来源于数学,在计算机语言中,可以用来储存计算结果、表示值或存储可变状态。
在Mind+软件中,选择“变量”模块 ,点击新建变量,输入新变量名:
无论是学习过还是未学习过的人脸在Huskylens屏幕中都会出现人脸方框。所以先判断摄像头中是否有人出现。如果出现的人脸ID是已经学习过的,就播放门铃声,提醒有客人来了;否则,如果出现的人脸没有学习过,播放警报声提醒门外有陌生人。广播相应的事件,以便人物做出回应。
在识别到熟人的情况下,分别判断人脸的具体ID。因为我们是以快递小张、送菜小刘、外卖小梅的顺序进行学习的,得到ID后就能够获得对应的人物信息。
4.4.4 回应门铃并走去门口
实现效果:当收到Huskylens广播的消息之后,”艾弗里“角色根据广播信息做出回应。并给”艾弗里-行走“广播”走去门口“的信息,触发人物运动的动画。
在“艾弗里-行走”的角色中,我们通过设置右转角度,让角色从当前位置向左上行走到大门。控制角色行走的方式与上节课相同。当人物移动到大门之后,停止全部脚本。
用Huskylens对着提供的人物照片或任意人脸(甚至可以是自己!),看看程序会如何执行吧。(完整程序见附录)
4.5总结拓展
4.5.1 知识小结
硬件知识:Huskylens的多个人脸识别功能
编程知识:变量存储数据功能的理解与应用;多个角色间广播消息
4.5.2 项目拓展
还记得如何用Huskylens拍摄照片吗?试试看当门外有陌生人经过时,拍摄人物的照片,实现安全监控的功能。
4.6拓展阅读
4.6.1智能家居
智能家居(smart home, home automation),通过物联网技术将家中的各种设备(如音视频设备、照明系统、窗帘控制、空调控制、安防系统、数字影院系统、影音服务器、影柜系统、网络家电等)连接到一起,提供家电控制、照明控制、电话远程控制、室内外遥控、防盗报警、环境监测、暖通控制、红外转发以及可编程定时控制等多种功能和手段。,构建高效的住宅设施与家庭日程事务的管理系统,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。
4.6.2物联网
物联网(Internet of Things,缩写IoT)是互联网的一个延伸,互联网的终端是计算机(PC、服务器),而物联网的终端是硬件设备,无论是家电、工业设备、汽车、监测仪器,所有这些终端都可以互联,可以总结为万物互联。
物联网应用领域涉及到方方面面,在智慧城市、智能家居、无人驾驶、医疗、教育、旅游等领域,都有效推动了智能化发展。目前的物联网发展还不够完全,随着5G、AI、大数据等核心技术的发展成熟,一定会颠覆我们的生产生活,真正的进入万物互联的时代。
(部分图片来源于网络,只为课程内容配图,不做商用。如果您发现文章内有侵犯您知识产权的作品,请直接私信我们,我们会及时修改或删除。)
附录1:程序指令
附录2:程序示例
资源下载:
这个猫眼就相当于上一个的升级版哈{:5_179:}
页:
[1]