基于OpenCV的人脸识别辅助课堂签到软件的设计毕业论文
2022-01-16 20:59:39
论文总字数:19509字
摘 要
课堂签到、教师提问、学生信息管理等是重要的课堂教学活动,是日常教学管理的重要手段,其核心在于如何进行学生身份鉴别。
论文基于开源视觉库OpenCV实现人脸识别,结合移动应用程序开发技术,设计出一种既能提高课堂效率,又能提高结果的可信度,同时又能节约成本的课堂签到管理方案。系统主要功能有人脸识别签到、课堂提问、信息记录、平时成绩统计等,满足一般大学课堂的教学管理需求。
论文使用了客户端/服务器架构,客户端包括教师客户端和学生客户端,服务器端包括管理员系统和软件后台。系统的主要开发语言为JAVA语言,使用Android Studio开发教师客户端和学生客户端,使用Eclipse开发工具编写管理员系统和软件后台,使用MySQL进行数据的存储和处理。
经实际测试,软件单张人脸检测时间不超过1秒、识别准确率约为80%。
关键词:课堂签到 人脸识别 OpenCV Android
Design of Face Recognition Assistant Classroom Check-in Software Based on OpenCV
Abstract
Class check-in, asking Question in class and students information management are important teaching activities, which are important means in daily teaching management. The core of these is how to identify students.
This paper uses OpenCV to realize face recognition. Combining with mobile application development technology, the aim is to design a scheme which can not only improve classroom efficiency, but also improve the credibility of the results and save costs. The main functions are check-in by face recognition, asking Question in class, information recording and estimating usual performance in class, which meet the teaching management needs in general university classes.
The paper uses the client/server architecture. The client includes a teacher client and a student client, and the server includes an administrator system and a software backend. The main development language of the software is Java. Android Studio is used to develop teacher client and student client. Eclipse development tool is used to write administrator system and software background. MySQL is used to store and process data.
The actual test shows that the time of single face detection is less than 1 second, and the recognition accuracy is about 80%.
Key Words: Class check-in; Face recognition; OpenCV; Android
目录
摘 要 I
Abstract II
第一章 绪论 1
1.1 需求分析 1
1.1.1 开发背景 1
1.1.2 可行性分析 2
1.1.3 系统功能需求 3
1.2 开发工具 3
1.3 运行环境 3
第二章 相关技术 4
2.1 OpenCV 4
2.2 ArcFace SDK 4
2.3 客户端、服务器之间的通信 5
2.3.1 JSON 5
2.3.2 OkHttp 5
2.4 JDBC 5
第三章 系统设计 7
3.1 功能设计 7
3.1.1 教师客户端功能 7
3.1.2 学生客户端功能 7
3.1.3 管理员系统功能 8
3.2 数据库设计 8
3.3 交互模型 13
第四章 系统实现 17
4.1 基础平台分析与实现 17
4.1.1 人脸识别 17
4.1.2 客户端连接服务器 22
4.1.3 连接数据库 24
4.2 功能模块分析与实现 24
4.2.1 人脸识别签到功能 24
4.2.2 教师提问功能 29
4.2.3 学生信息管理功能 31
4.2.4 班级旷课率查看功能 34
第五章 总结与思考 37
参考文献 38
绪论
需求分析
开发背景
随着高等教育的普及,越来越多的学生进入大学课堂进行学习深造。庞大的学生数量使得高校学生的教学管理工作往往不能非常快速、高效地开展。学生的课堂签到就是高校学生教学管理的一个重要部分。对于教师来说,课堂签到统计的学生到课率可以为学生平时成绩提供参考;对于高校辅导员来说,学生的签到工作不仅涉及到学生学习情况的判定,而且在很大程度上关系到学生个人的心理健康与人身安全。
课堂签到有许多传统的方法,如课堂点名、刷学生卡签到、扫码签到等等,但是这些方法有一些局限性,具体体现在以下三点:
(1)浪费时间:现在的大学课堂人数较多,如果采用上课点名或者刷卡签到的方式就会占据一部分上课时间,从而影响教学质量;
(2)易伪造:传统的课堂签到方法很难确认是否本人进行签到,使得一些人钻空子帮别人签到或找人代签;
(3)功能性不足:一些常用的如统计数据、信息交互等功能用传统课堂签到方法就不太方便。
以上这些问题的存在给学生管理带来了很多不必要的麻烦。因此人们不断探求新技术来改进课堂签到的方法。而随着人脸识别技术的流行,越来越多的人把目光投向这一技术。本课题就是对使用人脸识别技术进行课堂签到的一次尝试。
目前流行的人脸识别签到系统主要是以考勤机的形式投入使用的,即“硬件 软件”的形式。这种形式具有识别速度快、准确率高、数据存在本地安全性高的优点,其缺点也很明显,硬件的使用使得系统的应用成本增加,而且这些系统在使用时无法随身携带、便携性差。本课题的应用场景是在大学课堂,若为每个教室配上考勤机将是一笔不小的开支,而且还不利于系统维护和升级。为了解决使用硬件带来的问题,我们想到了另外一种形式——APP 人脸识别。这种方法的特点与第一种正好相反,只要用户有手机就可以“即安即用”,十分方便。而关于识别速度、数据安全等方面的问题则可以通过优化程序、信息加密等方式来解决。此外,“APP 人脸识别”开发的系统还能将一些常用的课堂功能如课堂提问、学生信息统计等功能整合进去,这样就可以利用人脸识别来验证回答问题的学生的身份,防止别人代替;也可以利用APP的便携性随时随地地了解学生课堂信息。综上所述,我们可以发现“APP 人脸识别”的形式具有更大的潜力,更适合教学使用。
可行性分析
一、技术可行性
与该课题相关的技术有人脸识别技术、Android程序开发技术、数据库应用技术等等。
请支付后下载全文,论文总字数:19509字