毕设项目-基于人脸识别的高校课堂考勤微信小程序及系统

基于人脸识别的高校课堂考勤微信小程序及系统

人脸识别、地图定位考勤微信小程序,调用百度云免费人脸识别API实现。

功能简介

教师学生信息管理,课堂考勤信息管理,人脸识别,地图打卡四大模块。

功能模块说明:

  • 注册登录:
    系统管理员、教师、学生
  • 个人信息:
    查看用户信息
  • 考勤发布:
    系统管理员和教师发布考勤,考勤地图位置、签到时间范围及签到说明。
  • 考勤打卡:
    学生用户必须按照老师发布的考勤要求,在一定的地图定位范围、签到时间内以及进行人脸识别打卡。
  • 考勤信息查询:
    教师用户可以查看到所发布考勤任务中,未打卡及已打卡的学生名单,方便教师记录学生平时成绩。管理员还拥有导出考勤数据为文件的功能。
  • 人脸识别:
    用户在注册后必须上传本人的真实图片,与用户考勤打卡时摄像头拍摄的人脸照片进行识别比对。
  • 地图打卡:
    学生根据教师发布课堂考勤的定位范围内进行打卡签到。

功能实现

  • 地图定位功能:

    • 前端Map_wrap定义了地图信息,微信小程序使用uni.getSetting()方法获取用户当前设置,每次进入程序都会判断当前是否获得用户授权,如果没有授权则调起弹窗请求获得授权,如果获得授权,就直接获取当前地理位置。
    • 教师发布考勤信息时,前端使用uni.getLocation() API方法直接调用map组件打开地图,获取教师用户当前所在位置经纬度,然后根据经纬度获取详细地址,再把控件定在地图中心点,然后手动拖动地图,从而实现手动选择定位地址的功能,最后前端将获取到的地址信息传递至后端处理保存于数据库。
    • 学生打卡考勤时,同样是uni.getLocation() API方法获取学生用户当前真实定位信息,根据经纬度和通过distance()方法(计算两点之间距离)来计算真实定位与考勤信息里的地址位置的直线距离,若学生用户真实位置离考勤定位点距离超过200米,则拒绝打卡请求。
  • 人脸识别功能:

    • 本系统采用的人脸识别功能是基于百度AI的人脸识别库而实现的,是对输入的人脸静态图像或视频流中采集的人脸图像,与数据库中图像进行人脸特征点信息对比,计算出相似度进行判断,从而达到人脸识别的目的。
      整体算法分为三个步骤:
      1. 根据百度Oauth的ClientCredenTIals授权方式,获取到的AppID、API Key(client_id)和Secret Key(client_secret)是作为本系统人脸识别功能的API接口。再通过API key和Secret Key获得参数accessToken。
      2. 调用百度AI平台提供的API函数,根据提供的图片的网络地址及base64编码,在人脸特征库得到的面部特征值face_token及json数组后返回。
      3. 再由面部特征值得出两张图片的相似度分数score,score=eval(response.text)[‘result’][‘score’],若相似度得分超过80,则说明是同一人的可能性极大。

静态人脸识别

效果图

  • 教师学生端微信小程序

    • 登录注册

登录

  • 考勤模块

考勤发布
考勤任务
课程打卡情况

  • 地图打卡

地图打卡

  • 人脸识别

人脸识别

  • 系统管理员端
    系统端

相关资源

文档: 毕业设计任务书(https://download.csdn.net/download/cheese0408/87530355)

基于人脸识别课堂考勤微信小程序设计与实现,需要使用PHP语言。首先,我们需要使用微信开发者工具创建一个新的小程序项目,并选择合适的模板。接下来,在后端服务器上搭建PHP环境,确保可以与微信小程序进行交互。 在设计小程序页面时,我们可以采用模块化设计,分为登录页、课程列表页和考勤记录页。在登录页,学生需要输入学生ID和密码进行登录验证,并使用微信官方提供的人脸识别API进行人脸识别验证。如果验证通过,小程序将跳转到课程列表页。 在课程列表页,学生可以查看当前课程的考勤状态,并进行签到。当学生点击签到按钮时,小程序将调用后端服务器的API接口,将学生的人脸信息和课程信息传递给后端进行考勤数据的处理和记录。考勤成功后,小程序将显示签到成功的提示信息。 在考勤记录页,学生可以查看自己的考勤记录,并可导出为PDF或Excel格式的文件。后端服务器可以将学生的考勤数据存储在数据库中,并提供相应的API接口供小程序调用。 在实现过程中,需要注意数据的安全性和用户信息的保护。可以使用加密算法对学生的密码进行加密存储,并在传输过程中使用HTTPS协议保证数据传输的安全性。同时,还可以设计一个权限管理系统,确保只有有权限的教师和管理员才能进行相关操作。 总之,基于人脸识别课堂考勤微信小程序的设计与实现需要使用PHP语言,并结合微信小程序的开发技术和人脸识别API,实现学生的登录验证、课程签到和考勤记录等功能,以提高教学管理的效率和准确性。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码字好累

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值