简单的Python人脸识别系统

作者:鹏懿如斯 时间:2023-01-26 23:31:57 

案例一 导入图片

思路: 1.导入库 2.加载图片 3.创建窗口 4.显示图片 5.暂停窗口 6.关闭窗口


# 1.导入库
import cv2

# 2.加载图片
img = cv2.imread('a.png')

# 3.创建窗口
cv2.namedWindow('window 1 haha')

# 4.显示图片
cv2.imshow('window 1',img)

# 5.暂停窗口
cv2.waitKey(0)

# 6.关闭窗口
cv2.destroyAllWindows()

案例二 在图片上添加人脸识别

思路: 1.导入库 2.加载图片 3.加载人脸模型 4.调整图片灰度 5.检查人脸 6.标记人脸 7.创建窗口 8.显示图片 9.暂停窗口 10.关闭窗口


# 1.导入库
import cv2

# 2.加载图片
img = cv2.imread('a.png')

# 3.加载人脸模型,opencv官网下载
face = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')

# 4.调整图片灰度:没必要识别颜色,灰度可以提高性能
gray = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)

# 5.检查人脸
faces = face.detectMultiScale(gray)

# 6.标记人脸for (x,y,w,h) in faces:  
 # 里面有4个参数 1.写图片 2.坐标原点 3.识别大小 4.颜色 5.线宽  
 cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),4)

# 7.创建窗口  
 cv2.namedWindow('window 1 haha')

# 8.显示图片
cv2.imshow('window 1', img)

# 9.暂停窗口
cv2.waitKey(0)

# 10.关闭窗口
cv2.destroyAllWindows()

案例三 调用摄像头

思路: 1.导入库 2.打开摄像头 3.获取摄像头实时画面 4.释放资源 5.关闭窗口


# 1.导入库
import cv2

# 2.打开摄像头
capture = cv2.VideoCapture(0)

# 3.获取摄像头实时画面
cv2.namedWindow('camera')
while True:  
 #3.1 获取摄像头的帧画面  
 ret,frame = capture.read()  
 #3.2 显示图片(渲染画面)  
 cv2.imshow('window 1',frame)  
 #3.3 暂停窗口  
 if cv2.waitKey(5) & 0xFF == ord('q'):
   break

# 4.释放资源
capture.release()

# 5.关闭窗口
cv2.destroyAllWindows()

案例四 摄像头识别人脸

思路: 1.导入库 2.加载人脸模型 3.打开摄像头 4.创建窗口 5.获取摄像头实时画面 6.释放资源 7.关闭窗口


# 1.导入库
import cv2

# 2.加载人脸模型
face = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')

# 3.打开摄像头
capture = cv2.VideoCapture(0)

# 4.创建窗口cv2.namedWindow('window 1')

# 5.获取摄像头实时画面
while True:  
 # 5.1 获取摄像头的帧画面  
 ret,frame = capture.read()  
 # 5.2 图片灰度调整  
 gray = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY)  
 # 5.3 检查人脸  
 faces = face.detectMultiScale(gray)  
 # 5.4 标记人脸  
 for (x, y, w, h) in faces:    
   # 里面有4个参数 1.写图片 2.坐标原点 3.识别大小 4.颜色 5.线宽    
   cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 4)  
 # 5.5 显示图片    
   cv2.imshow('camera',frame)  
 # 5.6 暂停窗口    
   if cv2.waitKey(5) & 0xFF == ord('q'):      
     break

# 6.释放资源
capture.release()

# 7.关闭窗口
cv2.destroyAllWindows()

来源:https://www.cnblogs.com/peng8098/p/python_basis_7.html

标签:Python,人脸识别
0
投稿

猜你喜欢

  • python numpy数组复制使用实例解析

    2023-06-22 07:27:06
  • sql server编写archive通用模板脚本实现自动分批删除数据

    2024-01-18 03:27:11
  • JavaScript实现图片放大预览效果

    2023-08-23 02:41:17
  • Python学习之循环方法详解

    2021-04-13 21:07:15
  • Python Matplotlib绘制动图平滑曲线

    2022-12-28 22:23:40
  • MySQL修改默认字符集编码的方法

    2024-01-26 01:18:52
  • 用python实现监控视频人数统计

    2022-04-03 16:01:31
  • Flyway数据库版本控制的教程详解

    2024-01-19 03:10:03
  • 你需要学会的8个Python列表技巧

    2023-11-19 09:36:21
  • python实现MD5进行文件去重的示例代码

    2021-12-13 02:28:23
  • 通过MySQL内置全文检索实现中文的相关检索

    2010-06-11 13:20:00
  • 解决SQLServer最大流水号的两个好方法

    2009-01-13 14:15:00
  • python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例

    2021-07-28 18:28:45
  • Vue项目之学生管理系统实例详解

    2024-04-28 09:31:57
  • SQL对数据进行按月统计或对数据进行按星期统计的实例代码

    2024-01-28 08:41:47
  • 一文学习MySQL 意向共享锁、意向排他锁、死锁

    2024-01-21 23:17:27
  • Python通过4种方式实现进程数据通信

    2023-11-04 15:13:48
  • 使用pyinstaller打包PySide2程序中遇到的问题

    2023-02-10 18:23:32
  • 解决Scrapy安装错误:Microsoft Visual C++ 14.0 is required...

    2023-03-06 19:48:57
  • Favicon图标小常识

    2010-04-01 12:01:00
  • asp之家 网络编程 m.aspxhome.com