使用cv2中的VideoCapture类无法打开预先录制的视频

时间:2014-04-14 22:05:27

标签: python opencv

我无法使用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

0 个答案:

没有答案