【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,不要再糊弄下去!!!

相关文章
|
14天前
|
机器学习/深度学习 算法 TensorFlow
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件,然后保存为本地格式的H5格式文件。再基于Django开发Web网页端操作界面,实现用户上传一张动物图片,识别其名称。
44 1
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
|
13天前
|
机器学习/深度学习 人工智能 算法
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
植物病害识别系统。本系统使用Python作为主要编程语言,通过收集水稻常见的四种叶片病害图片('细菌性叶枯病', '稻瘟病', '褐斑病', '稻瘟条纹病毒病')作为后面模型训练用到的数据集。然后使用TensorFlow搭建卷积神经网络算法模型,并进行多轮迭代训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地模型文件。再使用Django搭建Web网页平台操作界面,实现用户上传一张测试图片识别其名称。
65 21
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
|
13天前
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
60 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
13天前
|
机器学习/深度学习 算法 TensorFlow
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
交通标志识别系统。本系统使用Python作为主要编程语言,在交通标志图像识别功能实现中,基于TensorFlow搭建卷积神经网络算法模型,通过对收集到的58种常见的交通标志图像作为数据集,进行迭代训练最后得到一个识别精度较高的模型文件,然后保存为本地的h5格式文件。再使用Django开发Web网页端操作界面,实现用户上传一张交通标志图片,识别其名称。
43 6
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
|
9天前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
22 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
2天前
|
数据采集 存储 XML
构建高效的Python爬虫系统
【9月更文挑战第30天】在数据驱动的时代,掌握如何快速高效地获取网络信息变得至关重要。本文将引导读者了解如何构建一个高效的Python爬虫系统,从基础概念出发,逐步深入到高级技巧和最佳实践。我们将探索如何使用Python的强大库如BeautifulSoup和Scrapy,以及如何应对反爬措施和提升爬取效率的策略。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的知识和技能,帮助你在信息收集的海洋中航行得更远、更深。
15 6
|
10天前
|
机器学习/深度学习 数据挖掘 测试技术
自学Python的系统策略与步骤
通过遵循这些步骤和策略,你可以系统地自学Python,并有效地构建和深化你的编程知识和技能。
17 6
|
9天前
|
机器学习/深度学习 人工智能 算法
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台。果蔬识别系统,本系统使用Python作为主要开发语言,通过收集了12种常见的水果和蔬菜('土豆', '圣女果', '大白菜', '大葱', '梨', '胡萝卜', '芒果', '苹果', '西红柿', '韭菜', '香蕉', '黄瓜'),然后基于TensorFlow库搭建CNN卷积神经网络算法模型,然后对数据集进行训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地文件方便后期调用。再使用Django框架搭建Web网页平台操作界面,实现用户上传一张果蔬图片识别其名称。
28 0
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
14天前
|
机器学习/深度学习 存储 人工智能
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
使用Python作为开发语言,基于文本数据集(一个积极的xls文本格式和一个消极的xls文本格式文件),使用Word2vec对文本进行处理。通过支持向量机SVM算法训练情绪分类模型。实现对文本消极情感和文本积极情感的识别。并基于Django框架开发网页平台实现对用户的可视化操作和数据存储。
20 0
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
|
8天前
|
Shell Linux Python
python执行linux系统命令的几种方法(python3经典编程案例)
文章介绍了多种使用Python执行Linux系统命令的方法,包括使用os模块的不同函数以及subprocess模块来调用shell命令并处理其输出。
12 0
下一篇
无影云桌面