基于人脸识别的课堂签到管理系统(一)---环境设置以及简单的QT界面设计
一.前言
我做了个简单的思维导图,来展现本次工程项目最基本的三个阶段。
需求:能够实现管理学生人脸签到的系统
分析:
1、摄像头进行人脸检测
2、人脸识别判断
3、人脸库管理
4、人脸库添加、删除
5、数据库签到信息
6、导出签到数据
技术选型:
python:作为开发语言
Pycharm:作为IDE进行开发
opencv:数字图形处理库(摄像头操作)
sqlite3:签到数据存储
厂商提供成熟的人脸识别技术:
百度—提供的人脸识别
CNN卷积神经网络
二.Pycharm安装与环境配置
因CSDN要不能上传Pycharm安装包,所以我将下载地址以及安装说明放在这:https://www.jetbrains.com/pycharm/download/#section=windows
安装说明及环境配置:pycharm安装及配置说明.zip
2.1 Pycharm安装配置
双击打开 pycharm 安装包出现如下界面,点击 Next
先选择安装路径(注意不要出现中文路径,且要记住路径),然后点击 Next 继续
勾选 64-bit launcher,点击 Next 下一步
点击 Install 进行安装
安装过程如图所示
完成安装如图,点击 Finish 结束
2.2 Pycharm环境配置
双击桌面 pycharm 图标,打开软件,如图所示,进行勾选 I confirm ,然后点击 Continue
下一步
点击 Don’t Send
进行默认设置即可,点击 Skip
出现打开的软件界面
点击软件右下角的 Configure,选中第一个 Settings 进行点击
出现如下图界面,在左边找到 Project Interpreter 点击
点击右侧齿轮,如下图所示,然后在弹出的选择菜单中选择 Add 进行点击
在窗口中选择 Virtualenv Environment,点击 New environment,然后在 location 栏中删
除之前的内容,复制路径(D:\Program Files\Python\venv_py37_qt5_cv4_tf2)粘贴进
location 栏中,如图所示,最后点击 OK
等待加载完成,点击右侧的+号按钮
点击下方的 Manage Repositories
修改源地址,点击窗口右边的编辑 Eidt 按钮( 按钮),在弹出的窗体中修改为新的源
地址(https://pypi.tuna.tsinghua.edu.cn/simple),如图所示。点击 OK 按钮,回到上层
再点击 OK 按钮
点击如图所示的更新按钮进行更新,完成后会在每个包名后出现一个地址
进行包的安装,在搜索栏中输入 pyqt5-tools,在列表框中选择同名对应的一项,选中
后在左下角点击 Install Package
安装过程如下图所示,注意:有些时候可能没有中间的窗口,通过查看如图框出的标识
的转动的圆圈也说明正在下载安装。
安装成功如下图所示,如果没有出现下图的 Package xxx installed successfully,说明安
装出错,重复执行 13 步骤进行安装(多次重复后如果不行,过段时间再试)
安装 tensorflow 包,在搜索框输入 tensorflow,然后再列表框中选中同名的选项,选中
后在左下角点击 Install Package 进行安装,安装过程和结果与 13 步骤类似
安装失败如下图,重复执行再次安装
同样的方式安装 requests 包与 opencv-python 包
安装完成后点击右上角的 x 按钮关闭当前界面,如下图所示操作
安装结束后会在下方出现多个包内容,点击 OK 关闭结束
关闭 pycharm 软件,环境配置结束
三.QT界面设计
3.1 QtDesigner界面窗口设计
启动Qtdesigener有两种方法。
方法一:在Pycharm的命令行输入
pyqt5designer.exe
方法二:
在设置的工程翻译目录下点击pyqt5designer.exe
这里如前文环境配置所述,我的工程翻译目录为D:\Program Files\Python\venv_py37_qt5_cv4_tf2\Scripts
进入pyqt5designe,选择MaincWindow,点击create
我们先设置菜单栏,点击Type Here,输入信息,注意这里是不能直接输入中文的,后面我会将怎么改成中文。
接着我们将子菜单中的信息改为中文。选中一个子菜单,点击右侧的text,输入中文。
以此类推,可以做出你所想要的菜单栏。
接着我们是做基于人脸识别的课堂签到管理系统,就需要一个窗口来反馈摄像头所拍摄的人脸。
滑到最下,选中Label,拖进我们的Main Window.
这就是我们最简单的QT界面窗口了。
3.2 Pycharm设计界面程序
点击Create New Project创建工程
第二步除了要设置工程目录,还要注意选则Existing interpreter,选则我们前文配置的工程翻译。
点击Create ,创建新项目。
接着将我们所设计的Qt窗口界面ui文件保存至工程目录中。
把ui界面转换成python文件的界面程序
python只会解释.py文件,在项目中就不认识.ui
需要把.ui转换成.py。
输入以下命令
pyuic5 源UI文件.ui -o 目标文件.py
这里我输入的是 pyuic5 mainwindow.ui -o mainwindow.py
执行成功后就会生成相应的python文件。
由UI文件生成的项目界面程序类
类中就是UI界面中的各个窗口部件,以及布局设计
类中只有UI界面中的窗口中部件内容, 没有继承qt的界面类,没有界面
这里我就需要一个子类来继承Ui_MainWindow,以此展示所设计的界面。
新建一个python
接着输入以下代码就可以实现显示所设计的窗口。
import sys
from mainwindow import Ui_MainWindow
from PyQt5.QtWidgets import QMainWindow,QApplication
'''
子类,继承Ui_MainWindow,QMainWindow
Ui_MainWindow:
包含界面的设计,窗口的窗口部件
QMainWindow:
包含是整个界面窗口,窗口操作
mywindow:
完整的窗口类
'''
class mywindow(Ui_MainWindow,QMainWindow):
def __init__(self):
super(mywindow,self).__init__()
self.setupUi(self)#创建界面内容
#创建应用程序对象
app = QApplication(sys.argv)
#创建窗口
ui=mywindow()
#显示窗口
ui.show()
#应用执行
app.exec()
sys.exit(0)
点击运行,弹出窗口
四. 相关下载
Pycharm安装包:https://www.jetbrains.com/pycharm/download/#section=windows
安装和环境配置:pycharm安装及配置说明.zip
代码下载:Face_Recognition_Project_1.zip
(如出现错误可能是设置的工程翻译目录不同,或者是ui界面设计不同)