资源简介
使用OpenCv检测用户人脸(支持内置、外置摄像头两种模式),检测到人脸信息后即可采集人来数据,填写用户信息,将采集到的数据集存储到数据库中。
代码说明:Python+OpenCv实现AI人脸识别身份认证系统(1)——人脸识别原理

代码片段和文件信息
#!/usr/bin/env python3
#CSDN:https://blog.csdn.net/m0_38106923
#邮箱:www.1345070491@qq.com
import cv2
from PyQt5.QtCore import QTimer QRegExp pyqtSignal
from PyQt5.QtGui import QImage QPixmap QIcon QRegExpValidator QTextCursor
from PyQt5.QtWidgets import QDialog QApplication QWidget QMessageBox
from PyQt5.uic import loadUi
import logging
import logging.config
import queue
import threading
import sqlite3
import os
import sys
from datetime import datetime
# 用户取消了更新数据库操作
class OperationCancel(Exception):
pass
# 采集过程中出现干扰
class RecordDisturbance(Exception):
pass
class DataRecordUI(QWidget):
receiveLogSignal = pyqtSignal(str)
def __init__(self):
super(DataRecordUI self).__init__()
loadUi(‘./ui/DataRecord.ui‘ self)
self.setWindowIcon(QIcon(‘./icons/icon.png‘))
self.setFixedSize(1011 601)
# OpenCV
self.cap = cv2.VideoCapture()
self.faceCascade = cv2.CascadeClassifier(‘./haarcascades/haarcascade_frontalface_default.xml‘)
self.logQueue = queue.Queue() # 日志队列
# 图像捕获
self.isExternalCameraUsed = False
self.useExternalCameraCheckBox.stateChanged.connect(
lambda: self.useExternalCamera(self.useExternalCameraCheckBox))
self.startWebcamButton.toggled.connect(self.startWebcam)
self.startWebcamButton.setCheckable(True)
# 定时器
self.timer = QTimer(self)
self.timer.timeout.connect(self.updateframe)
# 人脸检测
self.isFaceDetectEnabled = False
self.enableFaceDetectButton.toggled.connect(self.enableFaceDetect)
self.enableFaceDetectButton.setCheckable(True)
# 数据库
self.database = ‘./Facebase.db‘
self.datasets = ‘./datasets‘
self.isDbReady = False
self.initDbButton.setIcon(QIcon(‘./icons/warning.png‘))
self.initDbButton.clicked.connect(self.initDb)
# 用户信息
self.isUserInfoReady = False
self.userInfo = {‘stu_id‘: ‘‘ ‘cn_name‘: ‘‘ ‘en_name‘: ‘‘}
self.addOrUpdateUserInfoButton.clicked.connect(self.addOrUpdateUserInfo)
self.migrateToDbButton.clicked.connect(self.migrateToDb)
# 人脸采集
self.startFaceRecordButton.clicked.connect(lambda: self.startFaceRecord(self.startFaceRecordButton))
# self.startFaceRecordButton.setCheckable(True)
self.faceRecordCount = 0
self.minFaceRecordCount = 100
self.isFaceDataReady = False
self.isFaceRecordEnabled = False
self.enableFaceRecordButton.clicked.connect(self.enableFaceRecord)
# 日志系统
self.receiveLogSignal.connect(lambda log: self.logOutput(log))
self.logOutputThread = threading.Thread(target=self.receiveLog daemon=True)
self.logOutputThread.start()
# 是否使用外接摄像头
def useExternalCamera(self useExternalCameraCheckBox):
if useExternalCameraCheckBox.isChecked():
self.isExternalCameraUsed = True
else:
self.isExter
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 380 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\config\logging.cfg
文件 240 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\config\telegramBot.cfg.bak
文件 21342 2019-02-15 11:43 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\dataRecord.py
文件 930127 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\haarcascades\haarcascade_frontalface_default.xm
文件 1343 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\icons\error.png
文件 1905 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\icons\icon.png
文件 1409 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\icons\success.png
文件 772 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\icons\warning.png
文件 10860 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\ui\DataRecord.ui
文件 3971 2018-05-09 11:07 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\ui\UserInfoDialog.ui
目录 0 2019-02-15 11:45 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\config
目录 0 2019-02-15 11:49 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\datasets
目录 0 2019-02-15 11:47 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\haarcascades
目录 0 2019-02-15 11:45 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\icons
目录 0 2019-02-15 11:48 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储\ui
目录 0 2019-02-15 11:49 Python+OpenCv实现AI人脸识别身份认证系统(2)——人脸数据采集、存储
----------- --------- ---------- ----- ----
972349 16
相关资源
- Python 人脸识别
- python人脸识别(opencv)
- python 照片人脸识别
- 基于K210开发的人脸特征识别2020电赛(
- 人脸检测和识别(opencv3+python)
- python3.5 百度ai人脸识别
- python基于人脸检测和人脸识别
- Python-pytorch实现的人脸检测和人脸识别
- dlib-19.18.0-cp37-cp37m-linux_armv7l.whl
- 人脸识别算法,双2D2DPCALBP余弦相似度
- MATLAB版本的2Dpca和欧式距离算法
- Python-PCA降维人脸识别,已包含yale数据
- 人脸识别算法 python
- dlib18.17 编译好的python-dlib库 不需要
- python人脸识别截取
- 人脸识别图片集(刘德华吴彦祖)
- 利用python和opencv进行人脸识别
- 人脸识别-python-特征脸-PCA
- opencv3+python人脸检测和识别- 完整实战
- 人脸识别python代码187268
- opencv3+python人脸检测和识别- 完整实战
- opencv3+python人脸检测和识别 完整项目
- dlib-19.17.0-py3.7-win-amd64.egg.zip免去复杂
- 西电数据挖掘作业——VSM人脸识别算
- 基于Tensorflow的人脸识别源码
-
树莓派人脸识别python代码及xm
l模型 - python + opencv 人脸识别代码(可以跨平
- python人脸识别
- 人脸识别门禁系统 毕业设计 可移植
- Python人脸识别自动筛选抖音女神小姐
评论
共有 条评论