2016-05-17 88 views
1

我使用Python 2.7.11和OpenCV 2.4.9。我无法使用cv2.imread()或cv2.VideoCapture()来阅读视频。python阅读视频

import cv2 

cap = cv2.VideoCapture('cam.avi') 
print ("open = ",cap.isOpened()) 

OR

import cv2 

cap = cv2.imread('cam.avi') 
print ("open = ",cap.isOpened()) 

,将返回False。 我不知道为什么。我确信cam.avi在这里。

回答

1

尝试提供完整路径的视频,如:

import cv2 

cap = cv2.VideoCapture(r'C:\Users\e01069\Downloads\drop.avi') 
print ("open = ",cap.isOpened()) 

如果您在您的同一个文件之后,你就会知道,蟒蛇正在寻找你的一些其他位置的文件。

import os 
print os.path.abspath(__file__) #this is your current working directory 

注:.imread不会以这种方式工作。

+0

提供完整路径后仍然无法读取视频剪辑...... – VICTOR

+0

print(“open =”,cap.isOpened())的输出 – PradyJord

+0

cap.isOpened()= FALSE 我试着去阅读它 RET,帧= video_capture.read() 印刷框架 它返回NULL – VICTOR

2

imread()不支持直接从视频文件中读取。

另请参阅OpenCV的documentation

如果您想要使用imread阅读视频,您需要首先通过serperate程序(想到ffmpeg)或使用OpenCV将图像存储在内存中,然后将其转换为单个图像。