OpenCV Python - 图片视频

在上一章中,我们使用了 VideoWriter() 函数将来自摄像机的实时流保存为视频文件。 要将多个图像拼接成一个视频,我们将使用相同的函数。

首先,确保所有需要的图像都在一个文件夹中。 Python 内置的 glob 模块中的 glob() 函数构建了一个图像数组,以便我们可以遍历它。

从文件夹中的图像中读取图像对象并附加到图像数组。

下面的程序解释了如何拼接视频中的多个图像 −

import cv2
import numpy as np
import glob

img_array = []
for filename in glob.glob('*.png'):
   img = cv2.imread(filename)
   height, width, layers = img.shape
   size = (width,height)
   img_array.append(img)

通过使用 VideoWriter() 函数将图像数组的内容写入其中来创建视频流。 下面给出了同样的程序。

out = cv2.VideoWriter('video.avi',cv2.VideoWriter_fourcc(*'DIVX'), 15, size)

for i in range(len(img_array)):
   out.write(img_array[i])
out.release()

应在当前文件夹中找到名为 "video.avi" 的文件。