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中使用md5sum检查目录中相同文件代码分享
Feb 02 Python
使用Python的Bottle框架写一个简单的服务接口的示例
Aug 25 Python
Python卸载模块的方法汇总
Jun 07 Python
Python 模块EasyGui详细介绍
Feb 19 Python
关于Python 3中print函数的换行详解
Aug 08 Python
对Python的zip函数妙用,旋转矩阵详解
Dec 13 Python
对python的unittest架构公共参数token提取方法详解
Dec 17 Python
python实现爬山算法的思路详解
Apr 09 Python
pycharm访问mysql数据库的方法步骤
Jun 18 Python
python实现图片插入文字
Nov 26 Python
pycharm如何实现跨目录调用文件
Feb 28 Python
python3用urllib抓取贴吧邮箱和QQ实例
Mar 10 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二维数组排序与默认自然排序的方法介绍
2013/04/27 PHP
php连接函数implode与分割explode的深入解析
2013/06/26 PHP
PHP使用Alexa API获取网站的Alexa排名例子
2014/06/12 PHP
PHP基于GD2函数库实现验证码功能示例
2019/01/27 PHP
php web环境和命令行环境下查找php.ini的位置
2019/07/17 PHP
一款JavaScript压缩工具:X2JSCompactor
2007/06/13 Javascript
DIV外区域Click后关闭DIV的实现代码
2011/12/21 Javascript
js 判断所选时间(或者当前时间)是否在某一时间段的实现代码
2015/09/05 Javascript
Bootstrap表格和栅格分页实例详解
2016/05/20 Javascript
ui组件之input多选下拉实现方法(带有搜索功能)
2016/07/14 Javascript
jquery+css3问卷答题卡翻页动画效果示例
2016/10/26 Javascript
浅谈pc端rem字体设置的问题
2017/08/03 Javascript
node+koa实现数据mock接口的方法
2017/09/20 Javascript
jQuery 禁止表单用户名、密码自动填充功能
2017/10/30 jQuery
angular2中使用第三方js库的实例
2018/02/26 Javascript
JS中touchstart事件与click事件冲突的解决方法
2018/03/12 Javascript
关于单文件组件.vue的使用
2018/09/20 Javascript
[00:48]DOTA2国际邀请赛公开赛报名开始 扫码开启逐梦之旅
2018/06/06 DOTA
Python程序中用csv模块来操作csv文件的基本使用教程
2016/03/03 Python
Python中random模块生成随机数详解
2016/03/10 Python
Python实现字典去除重复的方法示例
2017/07/31 Python
浅析Python 读取图像文件的性能对比
2019/03/07 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
Python基于read(size)方法读取超大文件
2020/03/12 Python
Pytorch模型迁移和迁移学习,导入部分模型参数的操作
2021/03/03 Python
CSS3实现伪类hover离开时平滑过渡效果示例
2017/08/10 HTML / CSS
精油和天然健康美容产品:Art Naturals
2018/01/27 全球购物
WiFi云数码相框:Nixplay
2018/07/05 全球购物
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
大学毕业自我鉴定范文
2014/02/03 职场文书
社会学专业学生职业规划书
2014/02/07 职场文书
11.9消防日宣传标语
2014/10/08 职场文书
会议邀请函
2015/01/30 职场文书
工作态度检讨书范文
2015/05/06 职场文书
实习单位鉴定意见
2015/06/04 职场文书
培训班开班主持词
2015/07/02 职场文书