私はpython2なぜ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)
(...)
でビデオキャプチャ(mkvのファイル)を処理するためのOpenCVを使用しています。しかしほぼ一部errosを処理し、ビデオの最後には、表示されます。 エラー:(-215)scn == 3 || scv == 4 in function cv :: cvtColor
そして、エラーはcv2.cvtColor(frame、cv2.COLOR_BGR2GRAY)で発生します。 アイデアはありますか?悪いフレーム?しかし、私はcv2に関連するいくつかの関数の前に呼びました。それは大丈夫でした。
'ret、frame = cap.read(frame)' - 'read'が' read'が成功したかどうかをテストします。それが失敗すると(フレームがもう読み込まれなくなったら)、 'frame'(この場合は' None'の値を保持します)を実際のイメージを期待する他の関数に渡さないでください。 –