我正在使用openCV来处理带有python2的视频捕获(.mkv文件)
import cv2
(....)
videofile = 'a.mkv'
cap = cv2.VideoCapture(videofile)
(....)
t_frames, fps, t_time, w, h = getVideoInfo(cap)
(....)
cap.set(cv2.CAP_PROP_POS_FRAMES ,first_frame)
(....)
frame = 0
while (not stopped==1):
ret, frame = cap.read(frame)
(...some functions related with cv2 are here called...)
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
(...)
但是,几乎在视频处理结束时出现了一些错误:错误:(-215)scn == 3 ||函数cv :: cvtColor中的scn == 4
并且错误发生在cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)有什么想法吗?一个糟糕的框架?然而,我之前调用了一些与cv2相关的函数,它没问题。
加载资源后检查资源是否正确加载。
ret, frame = cap.read(frame)
(....)
if frame is not None
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)