提示:文章写完后,目录可以自动生成,如何生成可
案例来源于© Fu Xianjun. All Rights Reserved.
1.引入库
OpenCV提供了cv2.VideoCapture类来处理视频
1.初始化
2.cv2.VideoCapture.open()函数和cv2.VideoCapture.isOpened()函数
3.捕获帧
4.释放
代码如下(示例):
import cv2
cap = cv2.VideoCapture(0)
while(cap.isOpened()):
ret,frame = cap.read()#读取给他们两个
cv2.imshow("frame",frame)
if cv2.waitKey(1) === ord("q"):#按q键退出
break
cap.release()#释放摄像头的资源
cv2.destroyAllWindows()
2.读入数据
代码如下(示例):
import cv2
img = cv2.imread("t.png")
cap = cv2.VideoCapture(0)
w,h = cap.get(3),cap.get(4)
print(w,h)
img = cv2.resize(img,(int(w),int(h)))
while(cap.isOpened()):
ret,frame = cap.read()#看视频读帧
# #转化为灰度图
# gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
# #阈值处理
# ret,binary = cv2.threshold(gray,100,255,0)
# #Canny边缘检测
# canny = cv2.Canny(gray,70,200)
# canny = cv2.bitwise_or(img,frame)
# #显示视频
add = cv2.addWeighted(img,0.5,frame,0.5,1)
cv2.imshow("frame",add)
#
if cv2.waitKey(1) == ord("q"):#按q键退出
break
cap.release()#释放摄像头的资源
cv2.destroyAllWindows()
显示如下:
import cv2
import math
import numpy as np
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')
cap = cv2.VideoCapture(