Ich habe versucht, ein Video aus einer Datei zu spielen, wie in den Tutorials gegeben. Mein Programm war wie folgt:OpenCV-Fehler: (-215) scn == 3 || scn == 4 in der Funktion ipp_cvtColor
import numpy as np
import cv2
cap = cv2.VideoCapture('output.avi')
while(cap.isOpened()):
ret, frame = cap.read()
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('outVideo',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
Aber ich habe folgende Fehlermeldung:
Traceback (most recent call last):
File "playVideo.py", line 8, in <module>
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.error: /home/hp/opencv/modules/imgproc/src/color.cpp:7456: error: (-215) scn == 3 || scn == 4 in function ipp_cvtColor
Ich habe ret und es stellte sich heraus, falsch zu sein. So ist das eigentliche Problem mit dem Speichern von Video. Ich habe den folgenden Code speichern 'output.avi' mit VideoWriter Funktion:
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
fourCc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourCc,20.0,(640,480))
while(cap.isOpened()):
ret, frame = cap.read()
if ret==True:
frame = cv2.flip(frame,0)
out.write(frame)
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
break
cap.release()
out.release()
cv2.destroyAllWindows()
Ich bin zu öffnen 'output.avi' nicht in der Lage, auch VLC mit
Bekommen Sie diesen Fehler auf dem ersten Frame oder später in dem Video? Kannst du dir deinen 'frame' anschauen, bevor du'cvtColor' machst? Ist es das, was Sie erwarten würden? – Sunreef
@Sunreef Ich bekomme den gleichen Fehler, aber später im Video. Kannst du hier etwas vorschlagen? Danke – iDilip