Python tkinter 实现简易人脸识别系统(基于opencv)

简介: 从无到有,基于 opencv 模块,以及开源的正面检测器,用 tkinter 实现的一个简易人脸识别系统

简易人脸识别系统

从无到有,基于 opencv 模块,以及开源的正面检测器,用 tkinter 实现的一个简易人脸识别系统

其中正面检测器是用别人开源的数据,即仓库源代码中的 data_haarcascades_haarcascade_frontalface_default.xml 文件

代码仓库地址:小康2022 / face_recognizer · GitCode

效果展示

界面样式

左上为摄像头开启时实时显示的画面,右上为开启人脸识别后识别度的显示(以绘图的方式,随时间移动),图中左上为识别情况(开启人脸识别后显示),右下为鼠标在图上的坐标,以百分数显示,右下小图是人脸识别的人脸,左下是一些操作及选择,中间下方为当前已有的模型(trainner文件夹中的),最下方是状态栏,状态栏右侧两个按钮,可以调节右上显示图的属性,左侧是一些说明。

选择模型

那三个模型是我之前已经训练好的,大家也可以在”录入数据“中训练属于自己的模型,训练数据越大(建议1000),识别效果越好。当然,代码仓库里面没有现成的模型,毕竟高识别度模型对于每个人都是不一样的。

打开摄像头

摄像头的调用是通过 opencv 模块实现的,调用摄像头需要一会儿时间,在调用的同时会读取选中的模型,模型越大,调用时间越久,但大多都在几秒内完成。如果没有选中模型,则只会打开摄像头,而不进行人脸识别。

调节摄像头参数

这个调节器是 opencv 自带的,有些人的摄像头可能不是默认值,可在这里将其设为默认值。

人脸识别

人脸识别是持续的,绿色的识别框会随着人脸的移动而移动,而右上的图会实时显示相关的数据

还有其他更多功能!

录入数据

数据的录入到形成模型有两个过程,先收集数据,再对收集的数据进行训练。

其中,收集数据时,摄像头会保持开启并持续拍摄照片,通过开源模型解析人脸得到数据,然后再对训练的数据进行训练,最终得到模型。数据收集过程可能会很漫长,但训练速度很快。

训练好模型后,训练材料(源码中data文件夹下)会被自动删除,毕竟几千个数据有点大,不过模型本身也比较大,一万个数据训练的模型的大小已经达到了 1.27GB 了,而且调用起来非常慢,识别时特别卡(或许是我电脑不太好),摄像头显示画面的左上有 FPS 显示。

还想了解更多的朋友,可以去代码仓库(前面给了地址)下载源码,自己运行并体验一下。

运行环境要求

要求 Python3.8 及以上版本,Python3.10 以上会更好一点,因为不同版本的 GUI 界面略有差异。

同时,运行需要的第三方模块有:numpycv2(基础的opencv-python模块和人脸识别需要的opencv-contrib-python模块)、PILpillow模块)

目录
相关文章
|
1月前
|
算法 搜索推荐 JavaScript
基于python智能推荐算法的全屋定制系统
本研究聚焦基于智能推荐算法的全屋定制平台网站设计,旨在解决消费者在个性化定制中面临的选择难题。通过整合Django、Vue、Python与MySQL等技术,构建集家装设计、材料推荐、家具搭配于一体的一站式智能服务平台,提升用户体验与行业数字化水平。
|
1月前
|
存储 分布式计算 大数据
基于Python大数据的的电商用户行为分析系统
本系统基于Django、Scrapy与Hadoop技术,构建电商用户行为分析平台。通过爬取与处理海量用户数据,实现行为追踪、偏好分析与个性化推荐,助力企业提升营销精准度与用户体验,推动电商智能化发展。
|
1月前
|
人工智能 小程序 Java
电子班牌管理系统源代码,基于AI人脸识别技术的智能电子班牌云平台解决方案
电子班牌管理系统源码,基于AI人脸识别的智慧校园云平台,支持SaaS架构,涵盖管理端、小程序与安卓班牌端。集成考勤、课表、通知、门禁等功能,提供多模式展示与教务联动,助力校园智能化管理。
150 0
|
30天前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的台风灾害分析及预测系统
针对台风灾害预警滞后、精度不足等问题,本研究基于Python与大数据技术,构建多源数据融合的台风预测系统。利用机器学习提升路径与强度预测准确率,结合Django框架实现动态可视化与实时预警,为防灾决策提供科学支持,显著提高应急响应效率,具有重要社会经济价值。
|
1月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的青少年网络使用情况分析及预测系统
本研究基于Python大数据技术,构建青少年网络行为分析系统,旨在破解现有防沉迷模式下用户画像模糊、预警滞后等难题。通过整合多平台亿级数据,运用机器学习实现精准行为预测与实时干预,推动数字治理向“数据驱动”转型,为家庭、学校及政府提供科学决策支持,助力青少年健康上网。
|
2月前
|
机器学习/深度学习 数据采集 算法
【人脸识别】基于PCA的人脸识别系统(Matlab代码实现)
【人脸识别】基于PCA的人脸识别系统(Matlab代码实现)
218 6

热门文章

最新文章

推荐镜像

更多
下一篇
oss云网关配置