2016-06-12 3 views
1

Я хотел бы сохранить видео в массиве кадров. Мое видео имеет 250 кадров. Я пытаюсь сохранить видео:Видеоролики Opencv. Я вижу только последний кадр

Mat array[250]; 
Mat frame; 
VideoCapture inputVideo(filename); 
int index=0; 
while(inputVideo.read(frame)) 
{ 
array[index] = frame; 
index++; 
} 

Но это не работает. Затем я пытаюсь воспроизвести видео в таймер, я вижу только последний кадр видео. Любой элемент массива [250] содержит последний кадр.

ответ

1

вы можете получить желаемый результат на

Mat array[250]; 
VideoCapture inputVideo(filename); 
int index=0; 
while(inputVideo.read(array[index])) 
{ 
index++; 
} 

или

Mat array[250]; 
Mat frame; 
VideoCapture inputVideo(filename); 
int index=0; 
while(inputVideo.read(frame)) 
{ 
array[index] = frame.clone(); 
index++; 
} 
+0

Спасибо. Удивительно. Это очень легко. – liric

Смежные вопросы