2013-09-13 5 views
4

Вот ситуация:OpenCV с веб-камерой c930e Logitech

нам удалось получить камеру для работы с OpenCV 2.4.0 и Qt 5.0.2. Камера должна записывать видео 1080p со скоростью 30 кадров в секунду.

Однако мы застреваем 10 кадров в секунду при записи в 1920x1080.

Вот код, который мы используем:

Capture cv::VideoCapture; 
Capture.open(0); 
Capture.set(CV_CAP_PROP_FRAME_WIDTH, 1920): 
Capture.set(CV_CAP_PROP_FRAME_HEIGHT, 1080); 

Мы уже пытались использовать эту команду (что мы получили от Capturing 1080p at 30fps from logitech c920 with openCV 2.4.3):

Capture.set(CV_CAP_PROP_FOURCC, 'M', 'J', 'P', 'G'); 

, но без какого-либо успеха.

Мы полагаем, что поток камеры можно записать в h264 (благодаря внутреннему преобразованию камеры) или в mjpg.

Как мы уже говорили, мы немного смущены/потеряны.

Любые предложения приветствуются! Благодаря

+0

были вы успешно с этой камерой? вы получили растровые изображения в нижнем разрешении со скоростью 30 кадров в секунду? – dashesy

+0

@ dashy, к сожалению, нет, я перешел на другую камеру ... – Greg

+0

Вы используете waitKey (10)? –

ответ

1

Решение вашей проблемы уже упоминалось в другой вопрос вы связаны с: Вы должны установить кодек, прежде чем установить желаемое разрешение:

Capture cv::VideoCapture; 
Capture.open(0); 
Capture.set(CV_CAP_PROP_FOURCC, CV_FOURCC('M','J','P','G')) 
Capture.set(CV_CAP_PROP_FRAME_WIDTH, 1920): 
Capture.set(CV_CAP_PROP_FRAME_HEIGHT, 1080);