Крышка опоры счетчик кадров постоянно отсутствует в модуле использованием OpenCV `cv2` питон



Как получить доступ к CAP_PROP_FRAME_COUNT из opencv в python?
Я попробовал это:



import cv2
cap = cv2.VideoCapture('myvideo.avi')
frames_count, fps, width, height = cap.get(cv2.CAP_PROP_FRAME_COUNT), cap.get(cv2.CAP_PROP_FPS), cap.get(cv2.CAP_PROP_FRAME_WIDTH), cap.get(cv2.CAP_PROP_FRAME_HEIGHT)


И это:



import cv2
import cv
cap = cv2.VideoCapture('myvideo.avi')
frames_count, fps, width, height = cap.get(cv.CAP_PROP_FRAME_COUNT), cap.get(cv.CAP_PROP_FPS), cap.get(cv.CAP_PROP_FRAME_WIDTH), cap.get(cv.CAP_PROP_FRAME_HEIGHT)


А также это:



import cv2
cap = cv2.VideoCapture('myvideo.avi')
frames_count, fps, width, height = cap.get(cv2.cv.CAP_PROP_FRAME_COUNT), cap.get(cv2.cv.CAP_PROP_FPS), cap.get(cv2.cv.CAP_PROP_FRAME_WIDTH), cap.get(cv2.cv.CAP_PROP_FRAME_HEIGHT)


Но я получаю эту ошибку:



AttributeError: 'module' object has no attribute 'CAP_PROP_FRAME_COUNT'


Я использую python 2.7.5 и OpenCV 2.4.9.

553   4  

4 ответов:

Константы в первой версии в формате OpenCV на Python модуль есть CV_ префикс. Таким образом, вы можете использовать либо cv.CV_CAP_PROP_FRAME_COUNT, либо cv2.cv.CV_CAP_PROP_FRAME_COUNT.

При запуске macports на OSX (opencv @3.0.0_1+python27+tbb)

Вы можете получить CAP_PROP_FRAME_HEIGHT и CAP_PROP_FRAME_WIDTH следующим образом:

#!/opt/local/bin/python
import cv2 
vcap = cv2.VideoCapture()
# set frame width and height
vcap.set(cv2.CAP_PROP_FRAME_WIDTH, 480)
vcap.set(cv2.CAP_PROP_FRAME_HEIGHT, 640)
vcap.open(0)

Http://docs.opencv.org/2.4/modules/highgui/doc/reading_and_writing_images_and_video.html#videocapture-get

#3. CV_CAP_PROP_FRAME_WIDTH
print "\t CAP_PROP_FRAME_WIDTH:     ",cap.get(3)
#4. CV_CAP_PROP_FRAME_HEIGHT
print "\t CAP_PROP_FRAME_HEIGHT:    ",cap.get(4)

Http://docs.opencv.org/2.4/modules/highgui/doc/reading_and_writing_images_and_video.html#videocapture-set

#3. CV_CAP_PROP_FRAME_WIDTH
cap.set(3,320)
#4. CV_CAP_PROP_FRAME_HEIGHT
cap.set(4,240)
import cv2

import cv2.cv as cv

Использование cv2:

stream = cv2.VideoCapture(filename)

print stream.get(cv.CV_CAP_PROP_FRAME_COUNT)

Comments

    Ничего не найдено.