2011-04-22 10 views
2

웹캠 (jpgs)에서 캡처 한 일련의 이미지를 가져 와서 OpenCV/Python을 통해 애니메이션을 만들려고합니다. 나는 cv.CreateFileCapture와 cv.QueryFrame을 통해 미리 녹화 된 비디오 파일을 재생할 수 있다는 것을 알고 있습니다. 그러나이 방법은 여전히 ​​정지 영상 폴더에서 어떻게 작동합니까?OpenCV에서 이미지 시퀀스 애니메이션하기

+0

cv.LoadImage ('path/to/image') – Andrey

답변

1

한 가지 방법은 단순히 cvShowImage 다음 루프에서 cvWaitKey(delay)을하고 원하는 프레임 속도에 맞게 뭔가 지연을 설정할 수있는 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

으로 이미지의 순서를 설정하는 것입니다.

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

끝 부분 앞에 작은 아포스트로피를 추가하기 만하면됩니다. –

관련 문제