码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Linux毕业设计:基于OpenCV和QT库实现的人脸识别考勤/门禁系统(arm嵌入式ubuntu)


            本文介绍:Linux上以opencv和qt库实现的人脸识别系统,可应用于考勤、门禁等场景,具有人脸录入、删除、人脸检测、识别、用户管理等完整功能。可运行于ARM嵌入式linux、ubuntu即纯软件、ARM+PC组合等多种方式,应用场景多样且易于移植各个平台。

    毕业设计题目汇总推荐参考:

    毕业设计:电子/通信/物联网/计算机专业选题目参考(嵌入式linux/单片机STM32/web/图像)_曾哥zengzr的博客-CSDN博客本文推荐的毕业设计题目涉及以下技术:嵌入式Linux、单片机STM32、Opencv、Qt、Web、百度AI、YOLO...等。 PS:更多相关的可私聊博主。以下为具体毕业设计题目实例:题目1:基于Opencv+Qt的人脸识别门禁系统(电脑端/电脑+开发板)项目简介:采用Opencv和Qt库实现的人脸识别门禁系统,Opencv主要实现人脸检测和人脸识别功能,Qt主要实现界面UI相关显示,还用到sqlite数据库存储用户数据。项目运行在Linux系统上,可在电............https://blog.csdn.net/qq_30155503/article/details/120339296

    资料/代做/答疑/辅导...等,请点如下链接:

    linux_face.txt · zengzr/share_contact - Gitee.com

    先以ARM+UBUNTU的设计为例介绍人脸识别门禁系统,具体如下:

    人脸识别门禁系统,简介:

    本设计基于linux操作系统,由客户端(门禁设备)和服务器(后台处理中心)组成,通过以太网形成组网,实现一个人脸识别门禁系统。客户端为嵌入式Linux设备,采用QT库显示界面,通过摄像头采集图像。服务器为PC上 Ubuntu系统,采用QT库显示界面,以OpenCV库为基础进行图像处理,采用基于Haar特征的人脸检测及LBPH人脸识别算法。客户端负责采集图像并上传服务器,以及控制门禁设备;服务器负责对图像进行人脸识别,以及增删人脸等的用户管理,是整个系统的处理中心。

    实物效果图:

     系统框架设计:

    2 系统整体设计方案及实现框架

    2.1 系统设计方案

    本系统整体上实现一个基于嵌入式技术和人脸识别技术的门禁系统,大致可分为两个大模块:客户端-嵌入式门禁设备、服务器-后台处理和管理中心。

    1. 客户端:核心采用ARM系列芯片-S5PV210(Cortex-a8),外围有USB摄像头、LCD显示屏、DM9000网卡及其他一些必要硬件。实现界面显示、图像采集、图像处理、与服务器网络通信(TCP连接)、控制门锁等功能。
    2. 服务器:采用PC机上运行的Ubuntu系统,外围有摄像头。实现界面显示、与客户端网络通信、图像处理、人脸识别、用户管理等功能,是整个门禁系统的管理中心。

    系统框图:

    图2.1 系统整体设计方案框架图

    系统的工作流程方案:系统启动,服务器加载人脸库数据,并与客户端连接;客户端通过摄像头采集图像并显示于LCD,同时通过网络将图像数据发送至服务器;服务器收到图像数据后,对图像进行处理(数据格式转换),人脸检测与识别,同时将图像显示于界面上,并将经人脸检测与识别后的结果反馈至客户端;客户端根据反馈结果选择控制门锁的开关。至此,完成一次完整的工作流程,大致流程如下:

    图2.2 系统的大致工作流程

    2.2 系统实现框架

    系统整体设计方案中已列出需求,现需对方案中的每个功能进行分析并确定其实现方法。通过查阅大量资料,功能及其实现整理如下:

    1. 客户端-嵌入式ARM板上的功能:
    1. 嵌入式平台:CPU采用三星公司的S5PV210(Cortex-a8),操作系统采用linux-2.6.35.7内核,选用粤嵌公司的GEC-210开发板符合上述条件;
    2. 图像采集功能:硬件使用USB摄像头,软件采用视频驱动V4L2子系统驱动架构;
    3. 图像处理功能:主要指V4L2采集的图像、OpenCV 图像、QT图像三者之间的格式相互转换,需要借助OpenCV 库、QT库及自编的函数实现;
    4. 界面显示功能:显示器为LCD屏,采用QT库进行界面的设计布局和显示;
    5. 网络通信功能:采用linux系统的socket套接字通信,TCP连接方式;
    6. 门锁控制功能:根据门锁的驱动方式,采用GPIO驱动来控制;

    1. 服务器-PC机上Ubuntu系统:
    1. PC系统平台:采用Ubuntu-14.04版本,运行于Win7上的虚拟机上;
    2. 界面显示功能:同样采用QT进行显示;
    3. 网络通信功能:同样采用linux的socket通信,TCP方式;
    4. 人脸识别功能:采用OpenCV 库进行人脸识别相关的算法,包括人脸库模型训练、人脸检测、人脸识别等功能;
    5. 图像处理功能:主要指V4L2采集的图像、OpenCV 图像、QT图像三者之间的格式相互转换,需要借助OpenCV 库、QT库及自编的函数实现;
    6. 用户管理功能:包括添加用户、删除用户等,以自编函数实现;

     5.2 实现功能的测试

    测试是项目开发中的一个重要环节,有利于对整个项目开发的完成情况作出分析,找出存在问题,有利于不断完善作品,提高其完整性及稳定性。

    对本设计中的预期功能作针对性测试,各功能模块的实际测试结果如下:

    2、客户端的图像采集及显示功能,ARM板上由摄像头进行采集、LCD显示,效果如图:

    图5.2 ARM板的图像采集及显示

    3、服务器的界面显示功能,在服务器Ubuntu上显示的主界面,如图:

    图5.3 服务器界面

    4、网络数据传输功能: 以图像传输为例进行测试,在ARM板上采集的图像,通过以太网传输到服务器Ubuntu上,功能正常表现为在Ubuntu上可显示实时画面,并与ARM板上显示的图像同步,如图:

    图5.4 图像传输

    5、人脸检测功能:当摄像头采集到一个完整的正脸时,ARM板上LCD显示如图:

    图5.5 人脸检测

    7、添加人脸功能:用一个未录入人脸库的人脸进行测试,为方便起见,将用上节中不能通过人脸识别测试的人脸进行添加。编辑输入框内容“ZengZhaorong”,点击添加人脸,现象如图:
     

    图5.7 添加人脸

     成功添加人脸后,再次到客户端ARM板上测试人脸识别功能,现象如图:

    图5.8 添加人脸后的人脸识别

    8、删除人脸功能:将上节添加的人脸再次删除。在删除人脸选择栏,选择名字 “ZengZhaorong”,点击删除,现象如图:

    图5.9 删除人脸

    上图中,提示是否确认删除,点击“Yes”,即提示删除人脸成功。再次用已删除的人脸测试人脸识别功能,现象如图:

    图5.10 删除人脸后的人脸识别

    人脸识别门禁系统详细见以下链接:

    开源毕业设计:基于嵌入式ARM-Linux的应用OpenCV和QT实现的人脸识别系统(源码+论文)_曾哥zengzr的博客-CSDN博客_嵌入式linux实现人脸识别毕业一载有余,把毕业设计作品分享一下,希望能帮助到有需要的同学们。资源下载:链接见底部(源码+论文)简介:本设计基于linux操作系统,由客户端(门禁设备)和服务器(后台处理中心)组成,通过以太网形成组网,实现一个人脸识别门禁系统。客户端为嵌入式Linux设备,采用QT库显示界面,通过摄像头采集图像。服务器为PC上 Ubuntu系统,采用QT库显示界面,以OpenCV库为基础进行........................https://blog.csdn.net/qq_30155503/article/details/102764838

    人脸识别考勤系统,简介

     系统主要功能实现介绍:

    OPENCV库:用于人脸检测、人脸识别、人脸库训练等;

    QT库:用于界面显示、包括摄像头图像显示、功能按钮等;

    SQLITE库:数据库,存储用户信息、考勤数据等;

    以下展示的为考勤系统,同时支持门禁系统,支持在PC端运行,也可ARM上运行。

    在PC端运行,系统框架如下:

    ​

     在PC+ARM端运行,系统架构如下:

    ​

    实现效果图:

    ​

    识别成功画面: 

    ​

    考勤表:

    ​

     ARM板运行:(未打开摄像头)

    ​

    人脸识别考勤系统详细介绍见以下链接:

    毕业设计教程:Linux上Opencv与Qt实现的人脸识别的考勤点名/门禁系统(PC/嵌入式ARM/树莓派)_曾哥zengzr的博客-CSDN博客_linux qt 人脸识别前言:原毕业设计作品:https://blog.csdn.net/qq_30155503/article/details/102764838,是一个人脸识别的门禁系统开源源码及论文,基本功能实现,但其教程较简略且有欠缺。本教程将从零开始,手把手教你如何一步一步实现人脸识别,意在打造一个升级完整版、全CSDN最详细版。本篇将有两个版本:PC端Ubuntu与嵌入式ARM版本。本教程将从基本..............................https://blog.csdn.net/qq_30155503/article/details/105352590

     资料/代做/答疑/辅导...等,请点如下链接:

    linux_face.txt · zengzr/share_contact - Gitee.com

  • 相关阅读:
    深度学习实战60-基于深度学习模型搭建人脸识别系统,用最简单的方式实现人脸识别。
    【数据结构】C++实现二叉搜索树
    Doris数据库使用记录
    MySQL
    tvdi遥感与envi,arcgis
    阿里妈妈API接口;item_search - 按关键字或网址搜索商品
    如何8步完成hadoop单机安装
    【C语言】每日一题(半月斩)——day2
    算法竞赛进阶指南 基本数据结构 0x14哈希表
    SpringCloud-4.服务网关(GateWay)
  • 原文地址:https://blog.csdn.net/qq_30155503/article/details/126652357
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号