【Python】初学者也可以实现的人脸识别系统-0x1

简介: 【Python】初学者也可以实现的人脸识别系统-0x1
  • 作者:20岁爱吃必胜客(坤制作人),近十年开发经验, 跨域学习者,目前于海外某世界知名高校就读计算机相关专业。
  • 荣誉:阿里云博客专家认证、腾讯开发者社区优质创作者,在CTF省赛校赛多次取得好成绩。
  • 跨领域学习,喜欢摄影、弹吉他、咏春拳。文章深入浅出、语言风趣;爱吃必胜客社区创立者,旨在“发现美 欣赏美



⭐️前言

人脸识别那么常用,为什么不自己手写一个呢?

日常生活中我们喜欢的就可以拿python写出来了,不要放弃,python很简单,很多时候我们可以先调用别人的API实现出来。

🌟 做什么

人脸识别拿来做个门禁系统、考勤系统、报警系统。

🌟 准备

☀️安装python,毫无疑问

https://www.python.org/

复制此链接到浏览器,下载安装吧!

☀️安装pycharm

这个是个付费软件,非常好用。

但是我们可以去pdd搜索pycharm安装,这样就可以几分钱安装永久免费版了。

☀️环境:Opencv模块

我们可以先下载丐版的用着,丐版下载也很容易,直接打开cmd,输入即可下载

自带乞丐版安装方法

满血版在官网下载opencv

毫无疑问,功能更全面。

注意事项:

安装的时候是 opencv_python,但在导入的时候采用 import cv2

# 导入cv模块
import cv2 as cv

⭐️做法

🌟 原理

  • 滑动窗口机制
  • 级联分类器
  • 特征分类器

别看了,太麻烦了,我们就写个人脸识别至于吗?

我们就先用上再说,光简单介绍一下意图让大家明白就够了,我觉得。

🌟 第一步:读取图片

当然要先读取到图片才能去处理图片,所以万事第一步,先读取到我们的图片。

☀️步骤

  1. 导入cv模块
  2. 读取图片
  3. 显示图片
  4. 等待一小下,不然图片一闪而过
  5. 释放内存

☀️代码

创建个文件,打上这些代码。不会的看上图。

# 导入cv模块
import cv2 as cv
# 读取图片
img = cv.imread("5a131e6fcaf97e615aeaef854cabf65.jpg")
# 显示图片
cv.imshow("read_img",img)
# 等待一小下,不然图片一闪而过
cv.waitKey(0)
# 释放内存
cv.destroyAllWindows()

🌟 第二步:灰度转换

☀️为什么进行灰度转换?

毫无疑问,彩色电视确实更好看,但是也难造啊。我们造不了彩电的时候,先做成黑白电视。

我们现在人工智能很厉害,但是还没进化到大彩电级别。我们先从黑白电视开始,黑白的图片数据更好处理啊

你说对吗?

我觉得OK。

☀️步骤

大公司给我们写好了,一个调用搞定。

我们有opencv这个工具怕什么,嘿嘿。

☀️代码

cv.cvtColor(img,cv.COLOR_BGR2GRAY)这个函数直接搞定

# 导入cv模块
import cv2 as cv
# 读取图片
img = cv.imread("5a131e6fcaf97e615aeaef854cabf65.jpg")
# 灰度转换
gray_img=cv.cvtColor(img,cv.COLOR_BGR2GRAY)
# 显示灰度
cv.imshow('gray',gray_img)
#保存灰度图片
cv.imwrite('gray_face11.jpg',img)
# 显示图片
cv.imshow("read_img",img)
# 等待一小下,不然图片一闪而过
cv.waitKey(0)
# 释放内存
cv.destroyAllWindows()

⭐️总结

这些就是我们要做一个人脸识别的前期工作。

要把数据尽量地裁剪、简化。

方便计算机处理。

我们让程序可以读取图片,把彩的图片转成黑白的,尺寸标准化

下一篇开始,我们让我们的程序可以干活,可以人脸检测!

跟上坤哥的节奏!

🌟 一个故事

python学习之路任重而道远,要想学完说容易也容易,说难也难。 很多人说python最好学了,但扪心自问,你会用python做什么了?

刚开始在大学学习c语言,写一个飞行棋的小游戏,用dos界面来做,真是出力不讨好。 地图要自己一点一点画出来,就像这样:

================
|       |
|       |
|===============
从此讨厌编程,不想继续学下去。每次作业应付。
算法考试,数据结构考试随便背代码,只求通过。
最后呢?我学会变成了吗?只能对一些概念侃侃而谈,但真的会几行代码,能写出实用工具吗?
答案变得模糊。
所以我们要从现在开始,学好python,不要再糊弄下去!!!

相关文章
|
1月前
|
人工智能 机器人 测试技术
【Python】Python房屋销售系统(源码)【独一无二】(课程设计)
【Python】Python房屋销售系统(源码)【独一无二】(课程设计)
|
1月前
|
存储 人工智能 机器人
【Python】Python医疗门诊系统(源码+报告)【独一无二】
【Python】Python医疗门诊系统(源码+报告)【独一无二】
|
1月前
|
存储 人工智能 搜索推荐
【python】python用户管理系统[简易版](源码+报告)【独一无二】
【python】python用户管理系统[简易版](源码+报告)【独一无二】
|
28天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
56 7
|
14天前
|
机器学习/深度学习 存储 监控
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
|
29天前
|
JavaScript 前端开发 关系型数据库
事件管理工具:用Python和Vue打造在线预订和票务系统
【4月更文挑战第11天】构建一个在线预订和票务系统,结合Python(Flask或Django)后端与Vue.js前端。准备工作包括设置Python环境、Node.js、数据库和Git。后端创建RESTful API,Flask适合轻量级,Django提供完整框架。前端使用Vue CLI、Vuex和Vue Router构建用户界面。通过Vuex管理状态,Vue Router定义路由,Axios与后端通信。这种架构支持团队协作,代码维护和扩展。
|
1天前
|
前端开发 UED Python
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
|
2天前
|
传感器 人工智能 前端开发
JAVA语言VUE2+Spring boot+MySQL开发的智慧校园系统源码(电子班牌可人脸识别)Saas 模式
智慧校园电子班牌,坐落于班级的门口,适合于各类型学校的场景应用,班级学校日常内容更新可由班级自行管理,也可由学校统一管理。让我们一起看看,电子班牌有哪些功能呢?
42 4
JAVA语言VUE2+Spring boot+MySQL开发的智慧校园系统源码(电子班牌可人脸识别)Saas 模式
|
3天前
|
运维 监控 Ubuntu
Python实现ubuntu系统进程内存监控
Python实现ubuntu系统进程内存监控
11 1
|
14天前
|
数据可视化 Python
Python的分子模拟动态促进DF Theory理论对二进制硬盘系统的适用性
Python的分子模拟动态促进DF Theory理论对二进制硬盘系统的适用性