python实现图片,视频人脸识别(opencv版)


Posted in Python onNovember 18, 2020

图片人脸识别

import cv2

filepath = "img/xingye-1.png"
img = cv2.imread(filepath) # 读取图片
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 转换灰色

# OpenCV人脸识别分类器
classifier = cv2.CascadeClassifier(
 "C:\Python36\Lib\site-packages\opencv-master\data\haarcascades\haarcascade_frontalface_default.xml"
)
color = (0, 255, 0) # 定义绘制颜色
# 调用识别人脸
faceRects = classifier.detectMultiScale(
 gray, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32))
if len(faceRects): # 大于0则检测到人脸
 for faceRect in faceRects: # 单独框出每一张人脸
 x, y, w, h = faceRect
 # 框出人脸
 cv2.rectangle(img, (x, y), (x + h, y + w), color, 2)
 # 左眼
 cv2.circle(img, (x + w // 4, y + h // 4 + 30), min(w // 8, h // 8),
   color)
 #右眼
 cv2.circle(img, (x + 3 * w // 4, y + h // 4 + 30), min(w // 8, h // 8),
   color)
 #嘴巴
 cv2.rectangle(img, (x + 3 * w // 8, y + 3 * h // 4),
   (x + 5 * w // 8, y + 7 * h // 8), color)

cv2.imshow("image", img) # 显示图像
c = cv2.waitKey(10)

cv2.waitKey(0)
cv2.destroyAllWindows()

视频人脸识别

# -*- coding:utf-8 -*-
# OpenCV版本的视频检测
import cv2


# 图片识别方法封装
def discern(img):
 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
 cap = cv2.CascadeClassifier(
 "C:\Python36\Lib\site-packages\opencv-master\data\haarcascades\haarcascade_frontalface_default.xml"
 )
 faceRects = cap.detectMultiScale(
 gray, scaleFactor=1.2, minNeighbors=3, minSize=(50, 50))
 if len(faceRects):
 for faceRect in faceRects:
  x, y, w, h = faceRect
  cv2.rectangle(img, (x, y), (x + h, y + w), (0, 255, 0), 2) # 框出人脸
 cv2.imshow("Image", img)


# 获取摄像头0表示第一个摄像头
cap = cv2.VideoCapture(0)
while (1): # 逐帧显示
 ret, img = cap.read()
 # cv2.imshow("Image", img)
 discern(img)
 if cv2.waitKey(1) & 0xFF == ord('q'):
 break
cap.release() # 释放摄像头
cv2.destroyAllWindows() # 释放窗口资源

以上就是python实现图像,视频人脸识别(opencv版)的详细内容,更多关于python 人脸识别的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python 递归函数详解及实例
Dec 27 Python
深入理解Python中变量赋值的问题
Jan 12 Python
关于Python中浮点数精度处理的技巧总结
Aug 10 Python
windows 下python+numpy安装实用教程
Dec 23 Python
python 将列表中的字符串连接成一个长路径的方法
Oct 23 Python
Python中的heapq模块源码详析
Jan 08 Python
将python图片转为二进制文本的实例
Jan 24 Python
浅谈Scrapy网络爬虫框架的工作原理和数据采集
Feb 07 Python
Python3.5文件读与写操作经典实例详解
May 01 Python
python找出因数与质因数的方法
Jul 25 Python
Python实现决策树并且使用Graphviz可视化的例子
Aug 09 Python
在python中实现导入一个需要传参的模块
May 12 Python
最新pycharm安装教程
Nov 18 #Python
如何利用Python写个坦克大战
Nov 18 #Python
python3访问字典里的值实例方法
Nov 18 #Python
让你相见恨晚的十个Python骚操作
Nov 18 #Python
python搜索算法原理及实例讲解
Nov 18 #Python
python的数学算法函数及公式用法
Nov 18 #Python
python3中TQDM库安装及使用详解
Nov 18 #Python
You might like
php生成excel文件的简单方法
2014/02/08 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(七)
2014/06/23 PHP
php站内搜索关键词变亮的实现方法
2014/12/30 PHP
php实现微信公众号企业转账功能
2018/10/01 PHP
激活 ActiveX 控件
2006/10/09 Javascript
document.all与WEB标准
2020/05/13 Javascript
基于jquery ajax 用户无刷新登录方法详解
2012/04/28 Javascript
基于javascript实现判断移动终端浏览器版本信息
2014/12/09 Javascript
nodejs中操作mysql数据库示例
2014/12/20 NodeJs
了不起的node.js读书笔记之例程分析
2014/12/22 Javascript
js下拉选择框与输入框联动实现添加选中值到输入框的方法
2015/08/17 Javascript
探讨JavaScript语句的执行过程
2016/01/28 Javascript
angularjs实现文字上下无缝滚动特效代码
2016/09/04 Javascript
vue.js指令v-model实现方法
2016/12/05 Javascript
angular 用拦截器统一处理http请求和响应的方法
2017/06/08 Javascript
ExtJs异步无法向外传值和赋值的完美解决办法
2017/06/14 Javascript
详解VueJs中的V-bind指令
2018/05/03 Javascript
使用vuex解决刷新页面state数据消失的问题记录
2019/05/08 Javascript
Vue中使用matomo进行访问流量统计的实现
2019/11/05 Javascript
vue实现微信浏览器左上角返回按钮拦截功能
2020/01/18 Javascript
[00:48]完美“圣”典2016风云人物:xiao8宣传片
2016/11/30 DOTA
Python动刷新抢12306火车票的代码(附源码)
2018/01/24 Python
Python 读取指定文件夹下的所有图像方法
2018/04/27 Python
对python list 遍历删除的正确方法详解
2018/06/29 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
h5封装下拉刷新
2020/08/25 HTML / CSS
植村秀美国官网:Shu Uemura美国
2019/03/19 全球购物
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
英国排名第一的餐具品牌:Denby Pottery
2019/11/01 全球购物
应届毕业生自我鉴定范文
2013/12/27 职场文书
宝宝周岁宴答谢词
2014/01/26 职场文书
电子商务助理求职自荐信
2014/04/10 职场文书
某集团股份有限公司委托书样本
2014/09/24 职场文书
培训班开班主持词
2015/07/02 职场文书
vue实力踩坑之push当前页无效
2022/04/10 Vue.js