Sto usando OpenCV per fare alcuni calcoli sui film che ho fatto negli esperimenti. Per fare questo ho bisogno di alcune proprietà dei film e sarebbe utile se potessi rilevarli automaticamente dal film stesso. Nel documentation trovo il seguente codice:Ottenere le proprietà del film con python e opencv
cv2.VideoCapture.get(propId) → retval
Nell'elenco sottostante si afferma che per il numero totale di fotogrammi propId
dovrebbe essere CV_CAP_PROP_FRAME_WIDTH
. Tuttavia quando provo il seguente ottengo un errore:
>> cap = cv2.VideoCapture('runoff.MOV')
>> print cap.get('CV_CAP_PROP_FRAME_WIDTH')
TypeError: an integer is required
Se io ingresso un intero nel codice:
>> cap = cv2.VideoCapture('runoff.MOV')
>> print cap.get(3)
1920.0
CV_CAP_PROP_FRAME_WIDTH
è il 4 ° elemento della lista nella documentazione e in effetti quando uso il contatore intero corretto 3
Ottengo questa proprietà. Mi chiedo se c'è un modo più ordinato per farlo, facendo uso della classe stessa e scrivendo un dizionario per esso con tutte le combinazioni chiave, intero.