내가 python2와 비디오 캡처 (.mkv 파일)을 처리하기 위해 OpenCV의를 사용하고OpenCV가 비디오 처리 도중이 오류를 다시 시도하는 이유는 무엇입니까? 오류 : (-215) scn == 3 || 기능 이력서에서 SCN의 == 4 : cvtColor
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 || scn == 4 in function cv :: cvtColor
그리고 cv2.cvtColor (frame, cv2.COLOR_BGR2GRAY)에서 오류가 발생합니다. 아이디어가 있습니까? 나쁜 프레임? 그러나 cv2와 관련된 일부 함수를 호출하기 전에 괜찮 았습니다.
'ret, frame = cap.read (frame)'-'read'가'read'가 성공했는지 테스트합니다. 실패 할 때 (더 이상 프레임이 남아 있지 않으면 다시 일어날 것입니다.)'frame' (이 경우'None'의 값을 유지합니다)을 실제 이미지를 기대하는 다른 함수에 넘겨주지 마십시오. –