roboforum.ru

Технический форум по робототехнике.

Mp4 в opencv

Mp4 в opencv

Сообщение enemis » 11 окт 2011, 00:01

Доброго времени суток. Требуется помощь, подсказка, совет. Пишу магистерскую работу на тему распознавание видео. Есть необходимость использования не формата, avi а формат mp4 в opencv (перебор кадров нахождение необходимого и т.д.) Те одна из главных задач разбить видео ряд на сцены и захватить последний кадр каждой сцены и сохранить на диске и все это в mp4. Можно ли как либо использовать mp4 в opencv? Хотелось бы использовать mp4 таким образом:

while(1){
frame = cvQueryFrame( film);
if( !frame ) {
break;
}
SomeFunction(frame);
}
enemis
 
Сообщения: 3
Зарегистрирован: 10 окт 2011, 23:40

Re: Mp4 в opencv

Сообщение Angel71 » 11 окт 2011, 02:15

про avi и mp4 немного непонятно. это всего-лишь немного отличающиеся форматы медиаконтейнера.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Mp4 в opencv

Сообщение enemis » 12 окт 2011, 02:52

Вот пример кода с обучения.
#include "stdafx.h"
#include "highgui.h"

int _tmain(int argc, _TCHAR* argv[])
{
cvNamedWindow("Avi", CV_WINDOW_AUTOSIZE);
CvCapture* capture = cvCreateFileCapture("d:\\daesh.molodezh.(109).www.kvnforall.info.avi");
IplImage* frame;
while(1)
{
frame = cvQueryFrame( capture );
if( !frame ) break;

cvShowImage( "Avi", frame );
char c = cvWaitKey(33);
if( c == 27 ) break;
}
cvReleaseCapture( &capture );
cvDestroyWindow( "Avi" );
}
Вот так работает воспроизведение видео...Выводит следующий кадр с интервалом 33
А теперь если поменять вот эту строчку:
CvCapture* capture = cvCreateFileCapture("d:\\funny.mp4");
Работать не будет так как opencv не понимает формата mp4.
Как заставить его считывать формат mp4.
enemis
 
Сообщения: 3
Зарегистрирован: 10 окт 2011, 23:40

Re: Mp4 в opencv

Сообщение Angel71 » 12 окт 2011, 12:54

mp4 контейнер opencv раньше не поддерживал, как сейчас хз. в общем, если дело именно в формате контейнера, можно его преобразовать, с перекодированием или без. или декодировать (vlclib или ещё чем) файл и подсовывать opencv фреймы.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Mp4 в opencv

Сообщение enemis » 14 окт 2011, 21:23

VClib к сожалению qt-шная мне не подходит. Может подскажете помимо, ffmpeg, vlclib есть ли какие нибудь библиотеки позволяющие захватить кадр с видео в формате mp4?
enemis
 
Сообщения: 3
Зарегистрирован: 10 окт 2011, 23:40

Re: Mp4 в opencv

Сообщение Angel71 » 15 окт 2011, 02:30

библиотека, как библиотека. подключаете к проекту и используете. какая разница, qt, vs c++, c# или что другое? :oops:
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1


Вернуться в Алгоритмы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3