简单的Python人脸识别系统

所属分类: 脚本专栏 / python 阅读数: 2063
收藏 0 赞 0 分享

案例一 导入图片

思路: 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()

以上就是简单的Python人脸识别系统的详细内容,更多关于Python人脸识别的资料请关注脚本之家其它相关文章!

更多精彩内容其他人还在看

pandas的qcut()方法详解

这篇文章主要介绍了pandas的qcut()方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

从列表或字典创建Pandas的DataFrame对象的方法

这篇文章主要介绍了从列表或字典创建Pandas的DataFrame对象的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas.DataFrame的pivot()和unstack()实现行转列

这篇文章主要介绍了pandas.DataFrame的pivot()和unstack()实现行转列,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

pandas中的series数据类型详解

这篇文章主要介绍了pandas中的series数据类型详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas 时间格式转换的实现

这篇文章主要介绍了pandas 时间格式转换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

python中时间、日期、时间戳的转换的实现方法

这篇文章主要介绍了python中时间、日期、时间戳的转换的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas进行时间数据的转换和计算时间差并提取年月日

这篇文章主要介绍了pandas进行时间数据的转换和计算时间差并提取年月日,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法

这篇文章主要介绍了详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

python和c语言的主要区别总结

在本篇文章里小编给各位整理了关于python和c语言的主要区别的相关知识帖内容,有需要的朋友们学习阅读下。
收藏 0 赞 0 分享

选择Python写网络爬虫的优势和理由

在本篇文章里小编给各位整理了一篇关于选择Python写网络爬虫的优势和理由以及相关代码实例,有兴趣的朋友们阅读下吧。
收藏 0 赞 0 分享
查看更多