7063浏览
查看: 7063|回复: 2

[高级教程] N+小方舟——人脸识别考勤系统

[复制链接]
人脸识别的应用已经越来越广泛,例如:人脸签到,人脸考勤,人脸核验,人脸闸机等等,现在就制作一下人脸识别的考勤系统。


等了这么久,小方舟终于可以人脸识别了,开心到飞起。
使用人脸识别,一定要给小方舟更新固件!!!
使用人脸识别,一定要给小方舟更新固件!!!
使用人脸识别,一定要给小方舟更新固件!!!
重要的事说三遍

更新固件教程
提取码:ch2a


元器件:掌控板、百灵鸽、小方舟
软件:mpython






1.人脸学习

1)给小方舟接上数据线,打开开关,就可以进行人脸的学习与检测了。
N+小方舟——人脸识别考勤系统图1




2)出现的数字代表准确度。
N+小方舟——人脸识别考勤系统图2


3)按下右键,进行学习,学习成功后,出现ID号与准确度。ID 号与学习颜色的先后顺序是一致的,第一个学习的对象为ID0,第二个学习的对象为ID1,第三个学习的对象为ID2......以此类推。准确度达到85以上时,文字颜色会由红色变为绿色。
N+小方舟——人脸识别考勤系统图3

4)换个对象,按下右键,继续学习,学习成功后示ID号与准确度        。
N+小方舟——人脸识别考勤系统图4
5)如需清除已学习的模型,需要连接掌控板,通过程序进行删除        。


2.电路连接

配套杜邦线的一端是4P接口,接在小方舟上,另一端是两个3p口组成,接在百灵鸽P0P1,线的颜色与百灵鸽的颜色对应好,插上即可。

N+小方舟——人脸识别考勤系统图5N+小方舟——人脸识别考勤系统图6


3.人脸识别后,掌控显示对应人名。
1)小方舟一定要初始化,否则程序会报错,程序如下:
N+小方舟——人脸识别考勤系统图7

2)刷入程序后,前面学习的数据还在,可以直接进行识别。
N+小方舟——人脸识别考勤系统图8N+小方舟——人脸识别考勤系统图9

3.增加音频播放。
1)增加播放“签到成功”的音频。
导入准备好的音频(可以录音、网上文字转语音):
Step1:连接掌控板,点击“代码”,进入代码模式。
N+小方舟——人脸识别考勤系统图10

Step2:点击“掌控板”文件,随后出现“资源加载”画面。
N+小方舟——人脸识别考勤系统图11N+小方舟——人脸识别考勤系统图12

Step3:点击“导入”,随后找到存放音频的文件夹,按住“shift”键或“ctrl”键可以选择多个文件,最后点击“打开”。
N+小方舟——人脸识别考勤系统图13N+小方舟——人脸识别考勤系统图14

Step4:点击“同步”,后掌控板文件就出现了刚刚导入进去的音频。(所有音频加起来的大小最好不要超过100k,超出掌控板内存,将会报错。)
N+小方舟——人脸识别考勤系统图15N+小方舟——人脸识别考勤系统图16

2)增加播放音频后,程序如下:
N+小方舟——人脸识别考勤系统图17

3)如果需要:清除数据,可以按下A键,进行清除,程序如下:
N+小方舟——人脸识别考勤系统图18

4)学习更多的模型,并将程序进行完善即可。

PS:如果出现识别一下就重启的情况,需要给小方舟额外供电。
mpython中的图形化还不够完善,使用精准度模块会有问题,可以在代码模式下修改代码,或直接使用代码。

代码如下:

from nplus import *
from mpython import *
import audio
import time
ai = K210_AI()
import gc;gc.collect()
audio.player_init(i2c)
while True:
    oled.fill(0)
    oled.show()
    if ai.get_id_data(0):
        if ai.get_class_value() > 75:
            oled.fill(0)
            oled.DispChar('林峰', 0, 16, 1)
            oled.show()
            audio.play('sign.mp3')
            time.sleep(1)   
    if ai.get_id_data(1):
        if ai.get_class_value() > 75:
            oled.fill(0)
            oled.DispChar('黄宗泽', 0, 16, 1)
            oled.show()
            audio.play('sign.mp3')
            time.sleep(1)   
    if ai.get_id_data(2):
        if ai.get_class_value() > 75:
            oled.fill(0)
            oled.DispChar('韩雪', 0, 16, 1)
            oled.show()
            audio.play('sign.mp3')
            time.sleep(1)            
    if ai.get_id_data(3):
        if ai.get_class_value() > 75:
            oled.fill(0)
            oled.DispChar('张曼玉', 0, 16, 1)
            oled.show()
            audio.play('sign.mp3')
            time.sleep(1)            
    if ai.get_id_data(4):
        if ai.get_class_value() > 75:
            oled.fill(0)
            oled.DispChar('刘诗诗', 0, 16, 1)
            oled.show()
            audio.play('sign.mp3')
            time.sleep(1)

Prefenence  学徒

发表于 2021-7-23 21:05:27

请问出现K210_AI没有被定义该怎么办呢
FriJuly-202107232152..png
回复

使用道具 举报

真ikun  学徒

发表于 2023-2-13 19:53:03

太厉害了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail