Python | 人脸识别系统 — UI事件处理

这篇具有很好参考价值的文章主要介绍了Python | 人脸识别系统 — UI事件处理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

博客汇总:Python | 人脸识别系统 — 博客索引

GitHub地址:Su-Face-Recognition

注:阅读本博客前请先参考

工具安装、环境配置:Python | 人脸识别系统 — 简介

UI界面设计:Python | 人脸识别系统 — UI界面设计

一、 按钮触发事件

         创建类 UserMainWindow ,继承PyQt.QMainWindow类 以及 我们自己编写的UI类 UserMainUi 。初始化类方法 __init__() 中使用以下代码进行UI的初始化:

UI类 UserMainUi 类的界面设计部分在博客 UI界面设计  中

    def __init__(self, parent=None):
        super(UserMainWindow, self).__init__(parent)
        self.setupUi(self)

        这样,我们就可以在 UserMainWindow 类中使用 self 引用 UserMainUi 类的属性,如按钮、文本域等。按钮的触发事件通过以下方法绑定:

        self.按钮名.clicked.connect(方法名)

        如为按钮 login_button 绑定一个类方法 self.user_login() ,就可以使用下面的代码实现:

        self.login_button.clicked.connect(self.user_login)

二、信号槽

        当我们点击某一个按钮的时候,可能需要使用另一个类的方法或者打开某一个界面(这个界面的逻辑代码在另一个类中),我们就需要使用信号槽。

        信号槽是Qt的一种信息传输机制。当某一个界面发生变化的时候,可能需要通知其他对象进行相应的操作,这时候就使用信号槽机制,将通知的信息进行发射(emit)

        a.创建信号槽

        首先,我们需要在 发送的类中 创建一个信号槽,通过 pyqtSignal() 方法进行创建,如下面的代码创建了一个名为  signal_register (注册)的信号槽:

    signal_register = pyqtSignal()

        b.关联需要通知的对象

        接下来就需要使用信号槽去 关联 我们需要通知的对象,在 main 方法中,我们分别创建了 发送类的对象(如主界面的对象) 以及 接收类的对象(如注册界面的对象),通过如下代码进行连接:

    发送类的对象.信号槽.connect(接收类的对象.show)

       其中 xxx.show() 方法是 Qt 的方法,功能是打开这个界面。具体的代码如下:

if __name__ == "__main__":
    app = QApplication(sys.argv)

    # 主界面
    user_win = UserMainWindow()
    # 注册界面
    register = RegisterWindow()

    # 进行信号槽的连接
    user_win.signal_register.connect(register.show)
    # 展示主界面
    user_win.show()

    sys.exit(app.exec_())

       c.通过按钮的触发事件发射信号

        通过 emit() 方法实现事件的发射,如下:

    信号槽.emit()

         最后我们结合上面说的按钮触发以及信号槽,实现点击某一个按钮打开某个界面的功能。项目中具体代码如下:

    def __init__(self, parent=None):
        super(UserMainWindow, self).__init__(parent)
        self.setupUi(self)
        self.register_button.clicked.connect(self.send_signal_register)
        ... ...

    # 发射信号 打开注册用户界面
    def send_signal_register(self):
        self.signal_register.emit()

         d.整体结构

# 主界面
class UserMainWindow(QMainWindow, UserMainUi):
    signal_register = pyqtSignal()  # 用户注册 界面信号
    def __init__(self, parent=None):
        super(UserMainWindow, self).__init__(parent)
        self.setupUi(self)
        self.register_button.clicked.connect(self.send_signal_register)
        ... ...
    # 发射信号 打开注册用户界面
    def send_signal_register(self):
        self.signal_register.emit()


# 注册界面
class RegisterWindow(QMainWindow, RegisterMsgUi):
    def __init__(self, parent=None):
        super(RegisterWindow, self).__init__(parent)
        self.setupUi(self)
        ... ...


if __name__ == "__main__":
    app = QApplication(sys.argv)
    # 主界面
    user_win = UserMainWindow()
    # 注册界面
    register = RegisterWindow()
    # 进行信号槽的连接
    user_win.signal_register.connect(register.show)
    # 展示主界面
    user_win.show()
    sys.exit(app.exec_())

继续阅读:

摄像头画面展示:Python | 人脸识别系统 — 摄像头画面展示

用户端逻辑:

  • 人脸识别:Python | 人脸识别系统 — 人脸识别
  • 活体检测:Python | 人脸识别系统 — 活体检测
  • 背景模糊:Python | 人脸识别系统 — 背景模糊
  • 姿态检测:Python | 人脸识别系统 — 姿态检测
  • 人脸比对:Python | 人脸识别系统 — 人脸比对
  • 用户操作:Python | 人脸识别系统 — 用户操作

管理员端逻辑:

  • 管理员操作:Python | 人脸识别系统 —— 管理员操作

注:以上代码仅供参考,如需运行,参考GitHub源代码: Su-Face-Recognition文章来源地址https://www.toymoban.com/news/detail-517655.html

到了这里,关于Python | 人脸识别系统 — UI事件处理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 人脸识别系统OpenCV+dlib+python(含数据库)Pyqt5界面设计 项目源码 毕业设计

    Python语言、dlib、OpenCV、Pyqt5界面设计、sqlite3数据库      本系统使用dlib作为人脸识别工具,dlib提供一个方法可将人脸图片数据映射到128维度的空间向量,如果两张图片来源于同一个人,那么两个图片所映射的空间向量距离就很近,否则就会很远。因此,可以通过提取图片并

    2024年02月05日
    浏览(62)
  • Python PyQt5 人脸识别软件

    haarcascade_frontalface_default.xml 密码:JDBC 2

    2024年02月14日
    浏览(44)
  • 基于深度学习的人脸识别与管理系统(UI界面增强版,Python代码)

    摘要:人脸检测与识别是机器视觉领域最热门的研究方向之一,本文详细介绍博主自主设计的一款基于深度学习的人脸识别与管理系统。博文给出人脸识别实现原理的同时,给出 P y t h o n 的人脸识别实现代码以及 P y Q t 设计的UI界面。系统实现了集识别人脸、录入人脸、管理

    2024年01月20日
    浏览(52)
  • pyqt5实战-目标检测-图像处理-人脸检测之UI界面

    今天挖掘了一个很不错的界面,使用pyqt5实现,可以加载摄像头进行目标检测,也可以手动打开图片或者视频,进行检测,封装得很好。这里以人脸检测,人脸疲劳检测(检测眨眼),微笑检测三个功能为例子。 所使用的检测算法模型为MediaPipe。MediaPipe为我们日常使用的革命

    2024年02月06日
    浏览(48)
  • 【图像处理】使用Python进行实时人脸检测和识别

            你有没有想过用Python构建一个面部识别系统?不要再看了!在本教程中,我们将使用 face_recognition 库来检测和识别视频流、图像甚至使用网络摄像头实时检测和识别人脸。         人脸识别和人脸检测是计算机视觉领域的两个独立任务。         人脸检测

    2024年02月13日
    浏览(56)
  • 【深度学习】基于Qt的人脸识别系统,门禁人脸识别系统,Python人脸识别流程,树莓派

    在深度学习领域做人脸识别的识别准确率已经高到超出人类识别,但综合考虑模型复杂度(推理速度)和模型的识别效果,这个地方还是有做一些工作的需求的。 人脸识别的过程基本由下面的流程组成。 yolov5-face、yolov7-face等github项目都可以做到这一点,在公开数据集上训练

    2024年02月09日
    浏览(46)
  • Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之六 简单进行人脸训练与识别

    目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之六 简单进行人脸训练与识别 一、简单介绍 二、简单进行人脸训练与识别 1、LBPH(Local Binary Patterns Histograms)算法进行人脸训练和识别 2、实现步骤: 3、判断是谁的人脸: 案例中涉及的关键函数说

    2024年04月26日
    浏览(86)
  • Python | 人脸识别系统 — 活体检测

    博客汇总:Python | 人脸识别系统 — 博客索引 GitHub地址:Su-Face-Recognition 注:阅读本博客前请先参考 工具安装、环境配置:Python | 人脸识别系统 — 简介 UI界面设计:Python | 人脸识别系统 — UI界面设计 UI事件处理:Python | 人脸识别系统 — UI事件处理 摄像头画面展示:Python

    2024年02月02日
    浏览(43)
  • Python | 人脸识别系统 — 用户操作

    博客汇总:Python | 人脸识别系统 — 博客索引 GitHub地址:Su-Face-Recognition 注:阅读本博客前请先参考 工具安装、环境配置:Python | 人脸识别系统 — 简介 UI界面设计:Python | 人脸识别系统 — UI界面设计 UI事件处理:Python | 人脸识别系统 — UI事件处理 人脸识别:Python | 人脸识

    2024年02月02日
    浏览(41)
  • 利用PYTHON编写人脸表情识别系统

    最近闲来无事,和一个学妹完成了一个SRT,主要是关于元宇宙什么的,不过我在其中主要的工作是用python写一个人脸识别系统,发到这里和大家分享一下 注:我利用了几个包,包括opencv,dlib,numpy等,所有包都会显示在代码开头import后 第一步,利用PyCharm先做灰度图 想要识别

    2024年02月08日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包