概述
import cv2 as cv
cap = cv.VideoCapture(0) # 视频进行读取操作以及调用摄像头
width = 640
ret = cap.set(3, width)
height = 480
ret = cap.set(4, height)
fourcc = cv.VideoWriter_fourcc(*'XVID')
out = cv.VideoWriter('out.avi', fourcc, 20.0, (width, height))
# 2.在每一帧数据中进行人脸识别
while(cap.isOpened()):
ret, frame = cap.read()
if ret==True:
# 把每一帧的图像都变成灰度图
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
# 3.实例化OpenCV人脸识别的分类器
face_cas = cv.CascadeClassifier( "Libsite-packagescv2datahaarcascade_frontalface_default.xml" )
face_cas.load('Libsite-packagescv2datahaarcascade_frontalface_default.xml')
# 4.调用识别人脸
# 检测gray灰度图中是否有人脸
faceRects = face_cas.detectMultiScale(gray, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32))
for faceRect in faceRects:
# x,y代表人脸的左上角的起点,w代表向x方向延伸的长度,h代表向y方向延伸的长度
x, y, w, h = faceRect
# 框出人脸
cv.rectangle(frame, (x, y), (x + h, y + w),(0,255,0), 2)
cv.imshow("frame",frame)
if cv.waitKey(1) & 0xFF == ord('q'):
break
# 5. 释放资源
cap.release()
cv.destroyAllWindows()
最后
以上就是成就小兔子为你收集整理的OpenCv使用摄像头捕捉人脸的全部内容,希望文章能够帮你解决OpenCv使用摄像头捕捉人脸所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复