2012-06-11 7 views
5

Ho provato molte combinazioni in opencv 2.3 e 2.4 per ottenere il conteggio fotogrammi di un video, ma senza alcun risultato. Sembra che semplicemente non ci sia.nessun accesso a GetCaptureProperty o una funzione simile in python opencv

stream = cv.VideoCapture(avsfilename) #stream.isOpened() returns True, everything's ok 
framecount = cv.GetCaptureProperty(stream, CV_CAP_PROP_FRAME_COUNT) #no 
framecount = cv.GetCaptureProperty(stream, cv.CV_CAP_PROP_FRAME_COUNT) #no 
framecount = stream.get(cv.CV_CAP_PROP_FRAME_COUNT) #no 
framecount = stream.get(CV_CAP_PROP_FRAME_COUNT) #no 

oggetto 'modulo' non ha alcun attributo 'CV_CAP_PROP_FRAME_COUNT'

Chiunque passato qualcosa di simile?

risposta

7

Hai avuto modo di essere un po 'attenti dei vostri cv2 e cv importazioni, entrambi questi lavori:

import cv2 
import cv2.cv as cv 

#Using cv2: 
stream = cv2.VideoCapture(filename) 
print stream.get(cv.CV_CAP_PROP_FRAME_COUNT) 

#using cv: 
stream = cv.CaptureFromFile(filename) 
print cv.GetCaptureProperty(stream, cv.CV_CAP_PROP_FRAME_COUNT) 
+0

Avevi ragione. È un bitbit che confonde per la prima volta, ma è così. – tookanstoken

+0

C'è documentazione su come "port" un'app che usa le API in stile cv nello stile cv2? L'importazione cv2.cv come cv non funziona più e quindi il codice che ho che usa cv non funziona e sarà necessario cambiarlo da quello che vedo qui. – MikeyB

Problemi correlati