opencv-Python---动态人脸捕捉
本章重点内容:
1、python写人脸识别
2、选择OpenCv框架
案例1
导入图片并打开显示
思路:1、导入库 2、加载图片 3、创建窗口 4、显示图片 5、暂停窗口 6、关闭窗口
#1、导入库
import cv2
# 2、加载图片
img = cv2.imread("5.png")
# 3、创建窗口
cv2.namedWindow('windows_cv2')
# 4、显示图片
cv2.imshow('photo',img)
# 5、暂停窗口
cv2.waitKey(0)
# 6、关闭窗口
cv2.destroyAllWindows()
案例2
在识别的图片上面添加人脸识别:重点注意:需要添加模型库
思路:1、导入库 2、加载图片 3、加载人脸模型 4、调整图片灰度 5、检查人脸
6、标记人脸 7、创建窗口 8、显示图片 9、暂停窗口 10、关闭窗口
"""案例2、图片中人物脸部识别"""
#1、导入库
import cv2
# 2、加载图片
img = cv2.imread('1.jpg')
# 3、加载人脸模型
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# 4、调整图片灰度(人脸识别没必要识别颜色,灰度能提高性能)
gray = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)
# 5、检查人脸(scaleFactor=1.15,minNeighbors=5,flags = cv2.CASCADE_SCALE_IMAGE,minSize=(5,5)) 这几项都可以选择默认)
faces = face_cascade.detectMultiScale(gray,
scaleFactor=1.15,
minNeighbors=5,
flags = cv2.CASCADE_SCALE_IMAGE,
minSize=(5,5))
#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),2) # 7、创建窗口
cv2.namedWindow('windows')
# 8、显示图片
cv2.imshow('picture',img)
# 9、暂停窗口
cv2.waitKey(0)
# 10、关闭窗口
cv2.destroyAllWindows()
案例3
调用摄像头
思路:1、导入库 2、打开摄像头 3、获取摄像头实时画面 4、释放资源 10、关闭窗口
"""案例3、打开电脑摄像头实时画面"""
#1、导入库
import cv2
# 2、打开摄像头
capture = cv2.VideoCapture(0)
# 3、获取摄像头实时画面
cv2.namedWindow('xiong')
while True:
#读取摄像头的帧画面
ret,frame = capture.read()
#显示图片
print(ret)
cv2.imshow('picture',frame)
#暂停窗口
if cv2.waitKey(5) & 0xFF == ord('q'):
break
# 4、释放资源
capture.release()
# 5、关闭窗口
cv2.destroyAllWindows()
案例4
在识别的图片上面添加人脸识别:重点注意:需要添加模型库
思路:1、导入库 2、打开人脸模型 3、打开摄像头 4、创建窗口 5、获取摄像头实时画面 6、释放资源 7、关闭窗口
"""案例4、打开电脑摄像头实时捕捉人脸"""
#1、导入库
import cv2
# 2、加载人脸模型
# faces_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
faces_cascade = cv2.CascadeClassifier('haarcascade_frontalface_alt.xml')
# 3、打开摄像头
capture = cv2.VideoCapture(0)
# 4、创建窗口
cv2.namedWindow('xiong')
# 5、获取摄像头实时画面
while True:
#读取摄像头帧画面 ret打开成功为True ,frame是摄像头画面
ret,frame = capture.read()
#图片调整灰度
gray = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY)
#检测人脸
faces = faces_cascade.detectMultiScale(gray)
#标记人脸
for (x,y,w,h) in faces:
cv2.rectangle(frame,(x,y),(x+w,y+h),(0,255,0),2)
#显示图片
cv2.imshow('photo',frame)
#暂停窗口
if cv2.waitKey(5) & 0xFF == ord('q'):
break # 6、释放资源
capture.release()
# 7、关闭窗口
cv2.destroyAllWindows()
opencv-Python---动态人脸捕捉的更多相关文章
- OpenCV + python 实现人脸检测(基于照片和视频进行检测)
OpenCV + python 实现人脸检测(基于照片和视频进行检测) Haar-like 通俗的来讲,就是作为人脸特征即可. Haar特征值反映了图像的灰度变化情况.例如:脸部的一些特征能由矩形特征 ...
- 手把手教你如何用 OpenCV + Python 实现人脸识别
下午的时候,配好了OpenCV的Python环境,OpenCV的Python环境搭建.于是迫不及待的想体验一下opencv的人脸识别,如下文. 必备知识 Haar-like 通俗的来讲,就是作为人脸特 ...
- 手把手教你如何用 OpenCV + Python 实现人脸检测
配好了OpenCV的Python环境,OpenCV的Python环境搭建.于是迫不及待的想体验一下opencv的人脸识别,如下文. 必备知识 Haar-like Haar-like百科释义.通俗的来讲 ...
- Android 中使用 dlib+opencv 实现动态人脸检测
1 概述 完成 Android 相机预览功能以后,在此基础上我使用 dlib 与 opencv 库做了一个关于人脸检测的 demo.该 demo 在相机预览过程中对人脸进行实时检测,并将检测到的人脸用 ...
- opencv python训练人脸识别
总计分为三个步骤 一.捕获人脸照片 二.对捕获的照片进行训练 三.加载训练的数据,识别 使用python3.6.8,opencv,numpy,pil 第一步:通过笔记本前置摄像头捕获脸部图片 将捕获的 ...
- opencv+python+dlib人脸关键点检测、实时检测
安装的是anaconde3.python3.7.3,3.7环境安装dlib太麻烦, 在anaconde3中新建环境python3.6.8, 在3.6环境下安装dlib-19.6.1-cp36-cp36 ...
- opencv+python实时人脸检测、磨皮
import numpy as np import cv2 cap = cv2.VideoCapture(0) face_cascade = cv2.CascadeClassifier("d ...
- 使用OpenCV和Python进行人脸识别
介绍 人脸识别是什么?或识别是什么?当你看到一个苹果时,你的大脑会立刻告诉你这是一个苹果.在这个过程中,你的大脑告诉你这是一个苹果水果,用简单的语言来说就是识别.那么什么是人脸识别呢?我肯定你猜对了. ...
- Android+openCV 动态人脸检测
动态人脸检测前提是需要打开摄像头. 网上看了很多教程,我知道的有两种方式打开摄像头: JavaCameraView mCameraView = new JavaCameraView(this, -1) ...
随机推荐
- Ansible常用模块使用
Ansible官方提供了非常多的模块,还有若干第三方模块,我们也可以自己编写模块. Ansible对远程服务器的操作实际是通过模块完成的,先将模块拷贝到远程服务器,完成操作后,然后在远程服务器上删除该 ...
- 一个简单的demo学习Android远程Service(AIDL的使用)
这是milo很早之前写在论坛上的一个帖子,现在整理出来,milo也复习一下一般来说Android 的四大组件都是运行在同一个进程中的,但远程Service运行在不同的进程里.这进程间的通信是使用了An ...
- [iOS] 在 ios10 中使用 imessage
本文转载至 http://www.tuicool.com/articles/zIFvQn7 原文 http://www.bourbonz.cn/在ios10中使用imessage/ 主题 iOS ...
- 关于VC中的附加进程调试
今天领导要求在服务端添加一个获取会议参数的功能接口,接口写好后要自己测试,但是没有客户端的源码,只有客户端安装程序和客户端与服务端发送信令的底层库KSYSClient.dll,而我修改了客户端需要底层 ...
- SQL-游标-查询数据库中的所有表的数据个数
--sql语句-游标等使用 ) ) declare @i INT ) declare @cstucount INT --上方设置变量 --初始值 declare mCursor cursor --设置 ...
- kafka---->kafka的使用(一)
今天我们来学习一下kafka的简单的使用与配置.世上有可以挽回的和不可挽回的事,而时间经过就是一种不可挽回的事. kafka的安装配置 一.kafka的使用场景 活动跟踪:网站用户与前端应用程序发生交 ...
- echarts - 特殊需求实现代码汇总之【饼图】篇
2018-07-24 15:36:43 起 - 饼图单项不同颜色的设置 效果图: 实现: 说明: 其实很简单,就是设置全局的color属性即可.color属性可以是一套数组,里边的样式以字符串格式设置 ...
- Bat脚本实现监控进程功能
脚本不间断监控notepad.exe进程是否执行,若停止,则自动重启该进程,程序如下: @echo off set _task = notepad.exe set _svr = c:\windows\ ...
- [转]13 Hours: The Secret Soldiers of Benghazi
转:http://www.imfdb.org/wiki/13_Hours:_The_Secret_Soldiers_of_Benghazi The following weapons were use ...
- Pexpect学习:
pexecpt run用法:格式:run(command,timeout=-1,withexitstatus=False,events=None,extra_args=None,logfile=Non ...