[英]Sequence of images to video in OpenCV
我有* .tif格式的一系列图像,我想用来制作视频。 我在Python 2.7中使用OpenCV 3.1.0。 以下是我的代码片段:
import cv2
import numpy as np
nIMAGES = 10
files = glob.glob(DIR + '\\' + tpname +'\\*.tif' )
image_stack = np.empty((500, 220, nIMAGES))
mov = DIR + '\\' + tpname + '\\' + tpname + '_mov.avi'
MOV = cv2.VideoWriter(filename=mov, fourcc=cv2.VideoWriter_fourcc('F', 'M', 'P', '4'), fps=2, frameSize=(220, 500)) # frame size is 220 x 500
for i in np.arange(0, nIMAGES):
print 'Working on: ' + files[i][-14:-4]
image = cv2.imread(files[i], 0)
crop_image = image[50:550, 252:472] #crop y:h, x:w
# now let's create the movie:
crop_image = cv2.applyColorMap(crop_image, cv2.COLORMAP_JET)
MOV.write(crop_image)
MOV.release()
当我运行此代码时,我创建一个0 Kb的AVI文件(它没有保存任何东西)。
我相信我错过了像frame = cv2.VideoCapture.read(crop_image)
类的东西,在这种情况下我会将写行转换为MOV.write(frame)
。 但是,我得到一个AttributeError
,因为VideoCapture.read
不是属性。
我使用这个OpenCV网页作为我的向导: http : //docs.opencv.org/2.4/modules/highgui/doc/reading_and_writing_images_and_video.html
我必须进行两项更改才能使其正常工作:
fmpeg.dll
文件复制到我的Python目录( C:\\Anaconda
)。 我还必须重新标记文件夹以包含我的opencv(3.1.0)版本,例如opencv_ffmpeg310_64.dll
非常感谢@Micka帮助我很快。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.