我无法使用python cv2模块中的VideoCapture类打开视频。我在运行我的python脚本的目录中有一个名为handShake_0001.avi的视频。以下是我的代码:
import numpy as np
import cv2
cap = cv2.VideoCapture('handShake_0001.avi')
while(cap.isOpened()):
ret, frame = cap.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
我一直在寻找cv2的python源代码,但我在/usr/local/lib/python2.7/dist-packages中找到的所有内容都是cv2(cv2.so)的.so文件。我在文档中注意到VideoCapture可以采用整数(对应于摄像机的索引)或文件名作为其构造函数的输入。当我将一个整数传递给VideoCapture时,我可以使用我的笔记本电脑查看图像(虽然我无法获取这些图像的视频以保存到磁盘)。任何帮助将不胜感激。
编辑: 下面是我关于视频I / O的构建信息(cv2.getBuildInformation()的结果:
Video I/O:
DC1394 1.x: NO
DC1394 2.x: NO
FFMPEG: NO
codec: NO
format: NO
util: NO
swscale: NO
gentoo-style: NO
GStreamer: NO
OpenNI: NO
OpenNI PrimeSensor Modules: NO
PvAPI: NO
GigEVisionSDK: NO
UniCap: NO
UniCap ucil: NO
V4L/V4L2: NO/YES
XIMEA: NO
Xine: NO