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异常学习笔记
Feb 03 Python
python实现端口转发器的方法
Mar 13 Python
python实现机器学习之元线性回归
Sep 06 Python
python使用knn实现特征向量分类
Dec 26 Python
Python设计模式之命令模式原理与用法实例分析
Jan 11 Python
OpenCV 边缘检测
Jul 10 Python
python多进程并行代码实例
Sep 30 Python
opencv3/C++实现视频读取、视频写入
Dec 11 Python
pytorch方法测试详解——归一化(BatchNorm2d)
Jan 15 Python
基于python实现破解滑动验证码过程解析
May 28 Python
Python HTMLTestRunner如何下载生成报告
Sep 04 Python
python logging模块的使用详解
Oct 23 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 变量定义方法
2009/06/14 PHP
PHP 遍历文件实现代码
2011/05/04 PHP
php中批量替换文件名的实现代码
2011/07/20 PHP
6种php上传图片重命名的方法实例
2013/11/04 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
javascript options属性集合操作代码
2009/12/28 Javascript
jQuery 入门级学习笔记及源码
2010/01/22 Javascript
jquery photoFrame 图片边框美化显示插件
2010/06/28 Javascript
JS使用for循环遍历Table的所有单元格内容
2014/08/21 Javascript
jQuery中html()方法用法实例
2014/12/25 Javascript
js实现带圆角的多级下拉菜单效果
2015/08/28 Javascript
angular.js之路由的选择方法
2016/09/24 Javascript
微信小程序radio组件使用详解
2018/01/31 Javascript
vue.js使用v-pre与v-html输出HTML操作示例
2018/07/07 Javascript
一次Webpack配置文件的分离实战记录
2018/11/30 Javascript
JS实现点击按钮随机生成可拖动的不同颜色块示例
2019/01/30 Javascript
layer更改皮肤的实现方法
2019/09/11 Javascript
python以环状形式组合排列图片并输出的方法
2015/03/17 Python
Python的几个高级语法概念浅析(lambda表达式闭包装饰器)
2016/05/28 Python
python 使用get_argument获取url query参数
2017/04/28 Python
python利用有道翻译实现"语言翻译器"的功能实例
2017/11/14 Python
django框架基于模板 生成 excel(xls) 文件操作示例
2019/06/19 Python
Apache部署Django项目图文详解
2019/07/30 Python
Python实现微信翻译机器人的方法
2019/08/13 Python
python机器学习库xgboost的使用
2020/01/20 Python
Python读写Excel表格的方法
2021/03/02 Python
使用CSS3编写类似iOS中的复选框及带开关的按钮
2016/04/11 HTML / CSS
会话Bean的种类
2013/11/07 面试题
超市营业员求职简历的自我评价
2013/10/17 职场文书
驾驶员岗位职责
2014/01/29 职场文书
2015年教师节演讲稿范文
2015/03/19 职场文书
英文产品推荐信
2015/03/27 职场文书
社区扶贫帮困工作总结
2015/05/20 职场文书
Python 解决空列表.append() 输出为None的问题
2021/05/23 Python
OpenCV 图像梯度的实现方法
2021/07/25 Python
Android Rxjava3 使用场景详解
2022/04/07 Java/Android