1 视频处理
1.1 VideoCapture 类
捕获对象=cv2.VideoCapture("摄像头ID号")
retva1=cv2.VideoCapture.isOpend()
retval=cv2.VideoCapture.open(index)
retval=cv.VideoCapture.open(filename)
retval,image=cv2.VideoCapture.read()
None=cv2.VideoCapture.release()
捕获摄像头视频
cap=cv.VideoCapture(0)
while(cap.isOpened()):
ret,frame=cap.read()
cv.imshow('frame',frame)
c=cv.waitKey(1)
if c==27:
break
cap.release()
cv.destroyAllWindows()
播放视频文件
cv2.waitKey()
cap=cv.VideoCapture('out.avi')
while(cap.isOpened()):
ret,frame=cap.read()
cv.imshow('frame',frame)
c=cv.waitKey(25)
if c==27:
break
cap.release()
cv.detroyAllWindows()
1.2 VideoWriter类
1.2.1 构造函数
<VideoWrite> = cv2.VideoWriter(filename,fourcc,fps,frameSize[,isColor])
write函数
None=cv2.VideoWriter.write(image)
释放
None=cv2.VideoWriter.release()
1.2.2 保存视频
cap=cv.VideoCapture('out.avi')
fourcc=cv.VideoWriter_fourcc('I','4','2','0')
out = cv.VideoWriter('output.avi',fourcc,20,(640,480))
while(cap.isOpened()):
ret,frame=cap.read()
if ret==True:
out.write(frame)
cv.imshow('frame',frame)
if cv.waitKey(1)==27:
break
else:
break
cap.release()
out.release()
cv.detroyAllWindows()
2 视频操作基础
cap=cv.VideoCapture('out.avi')
while(cap.isOpened()):
ret,frame=cap.read()
frame=cv.Canny(frame,100,200)
cv.imshow('frame',frame)
c = cv.waitKey(1)
if c==27:
break
cap.release()
cv.destroyAllWindows()