2016-06-03 11 views
0

ich vor kurzem Setup opencv 3.0 für Python auf meinem Ubuntu-PC mit dem folgenden Tutorial http://www.pyimagesearch.com/2015/06/22/install-opencv-3-0-and-python-2-7-on-ubuntu/OpenCV cap.get (cv2.CAP_PROP_FRAME_COUNT) liefert -1

Also lief ich den folgenden Code die Anzahl der Frames eines mp4 zu erhalten Video

import cv2 

    cap = cv2.VideoCapture('vid.mp4') 
    length = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) 
    print length 

Seltsamerweise bekomme ich "-1" als Ausgabe für "Länge". Das Video hat InFact Last und ich genaue Werte für

int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) #480 

und

int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) #640 

so ist es ein Wunder, warum Bildzählwertes funktioniert nicht. Bitte Hilfe.

+0

Haben Sie versucht mit vielleicht 'cv.CV_CAP_PROP_FRAME_COUNT' oder' cv2.cv.CV_CAP_PROP_FRAME_COUNT'. In opencv 3.0.0 sollte es jedoch ohne das Präfix 'CV_' sein. –

+1

Das CV-Modul/-Attribut existiert nicht. Anscheinend wurde es in opencv 3.0.0 entfernt – yudori

Antwort

1

Das Problem war mit dem OpenCV-Build (wie es auch in C++ vorkam). Ich habe meine opencv neu aufgebaut und alles hat gut funktioniert nach