2011-04-22 52 views
2

我试图从网络摄像头(jpgs)捕获一系列图像,并通过OpenCV/Python对它们进行动画处理。我知道我可以通过cv.CreateFileCapture和cv.QueryFrame播放预先录制的视频文件,但是如何处理静态图像文件夹?在OpenCV中动画图像序列

+0

cv.LoadImage(“路径/到/图像”) – Andrey 2011-04-25 12:29:09

回答

1

一种方法是把图像序列成AVI电影

writer = highgui.cvCreateVideoWriter('movie.avi', highgui.CV_FOURCC('M','P','E','G'), framerate, (width,height)) 

for i in range(len(images)): 
    highgui.cvWriteFrame(writer, images[i]) 


highgui.cvReleaseVideoWriter(writer) 
2

你可以简单地做一个cvShowImage,然后在循环中的cvWaitKey(delay)并设置延迟适合您所期望的帧率的东西。

import glob 
import opencv.highgui 

highgui.cvNamedWindow('mahMovie') 

# Assumes an ordered sequence of filenames (001.jpg, 002.jpg, etc) 
for filename in sorted(glob.glob('./*.jpg')): 
    img = highgui.cvLoadImage(filename) 
    highgui.cvShowImage('mahMovie', img) 
    highgui.cvWaitKey(33) 

highgui.DestroyWindow('mahMovie) 
+0

刚结束前添加一个微小的撇号的一个字符 – 2017-06-05 10:08:12