我正在尝试使用OpenCV 3.2(来自menpo conda频道)读取.mov文件的帧.我在Ubuntu 16.04 64位设置上使用Python 3.5.3通过Anaconda.
问题是,当我遇到cap.read()调用时,我从OpenCV得到以下错误消息,并且循环立即中断并捕获if num == 0条件.
这是我正在运行的全部代码:
import cv2
import numpy as np
import sys
f = sys.argv[1]
cap = cv2.VideoCapture(f)
frames = []
num = 0
while cap.isOpened():
ret, frame = cap.read()
if not ret: break
gframe = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
frames.append(gframe)
num += 1
if num % 100 == 0:
frames.append(gframe)
if num % 1000 == 0:
print(num)
if num == 0:
print("Something went wrong: no frames found.")
exit(0) …Run Code Online (Sandbox Code Playgroud)