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的Django框架下搭建的BLOG添加RSS功能的教程
Apr 08 Python
Python中几种操作字符串的方法的介绍
Apr 09 Python
Python使用minidom读写xml的方法
Jun 03 Python
Python 3.x 新特性及10大变化
Jun 12 Python
Tornado 多进程实现分析详解
Jan 12 Python
Python实现蒙特卡洛算法小实验过程详解
Jul 12 Python
python实现超市商品销售管理系统
Nov 22 Python
pytorch之添加BN的实现
Jan 06 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 Python
浅谈keras 模型用于预测时的注意事项
Jun 27 Python
python实现KNN近邻算法
Dec 30 Python
聊聊基于pytorch实现Resnet对本地数据集的训练问题
Mar 25 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
?生?D片??C字串
2006/12/06 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
PHP调用wsdl文件类型的接口代码分享
2014/11/19 PHP
php中define用法实例
2015/07/30 PHP
JAVASCRIPT车架号识别/验证函数代码 汽车车架号验证程序
2012/01/08 Javascript
jQuery实现点击标题输入详细信息
2013/04/16 Javascript
javascript学习笔记--数字格式类型
2014/05/22 Javascript
轻松创建nodejs服务器(4):路由
2014/12/18 NodeJs
setTimeout函数的神奇使用
2017/02/26 Javascript
Angular浏览器插件Batarang介绍及使用
2018/02/07 Javascript
Vue之Vue.set动态新增对象属性方法
2018/02/23 Javascript
vue项目中vue-i18n和element-ui国际化开发实现过程
2018/04/25 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
vue路由插件之vue-route
2019/06/13 Javascript
详解用async/await来处理异步
2019/08/28 Javascript
解决layui弹框失效的问题
2019/09/09 Javascript
js实现select下拉框选择
2020/01/11 Javascript
[02:51]DOTA2英雄基础教程 艾欧
2014/01/13 DOTA
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
跟老齐学Python之总结参数的传递
2014/10/10 Python
numpy的文件存储.npy .npz 文件详解
2018/07/09 Python
python 检查数据中是否有缺失值,删除缺失值的方式
2019/12/02 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
2020/02/28 Python
Python Django view 两种return的实现方式
2020/03/16 Python
python将音频进行变速的操作方法
2020/04/08 Python
python开发一个解析protobuf文件的简单编译器
2020/11/17 Python
意大利香水和彩妆护肤品购物网站:Ditano
2017/08/13 全球购物
美国Max仓库:Max Warehouse
2020/05/31 全球购物
应届大专毕业生个人自荐信
2013/09/22 职场文书
室内设计实习自我鉴定
2013/09/25 职场文书
运输企业安全生产责任书
2014/07/28 职场文书
幼儿园开学家长寄语(2015秋季)
2015/05/27 职场文书
php中pcntl_fork详解
2021/04/01 PHP
Python爬虫之爬取哔哩哔哩热门视频排行榜
2021/04/28 Python
MySQL 开窗函数
2022/02/15 MySQL