Python OpenCV 3.4 VideoWriter问题

时间:2018-05-12 17:57:17

标签: python opencv

我面对特别奇怪的事情。

fourcc = cv2.VideoWriter_fourcc(*'XVID')

for cls in classes:
    output_video.open( os.path.join( args.destinationDirForVideos, dirName + '.avi'), fourcc, 30.0, (640,480))
    #output_video = cv2.VideoWriter( os.path.join( args.destinationDirForVideos , dirName + '.avi' ),fourcc,30.0,(640,360))
    for frames in someImgFiles:
        output_video.write(frames)

    output_video.release()
    #del(output_video)

伪代码如上。视频会在循环中为第一个类生成并正确保存,后续视频根本无法打开。我使用output_video.isOpened()检查。我已经尝试了两种初始化方法(注释和未注释),并尝试在1次迭代结束时删除对象(1个cls)。但我只能写第一个视频。

任何解释都会有所帮助。

Python:2.7.12

OpenCV:3.4.0(通过点子安装)

1 个答案:

答案 0 :(得分:0)

试试这个

fourcc = cv2.VideoWriter_fourcc('X','V','I','D')
for cls in classes:
    output_video = cv2.VideoWriter( os.path.join( args.destinationDirForVideos , dirName + '.avi' ),fourcc,30.0,(640,360))
    for frames in someImgFiles:
        output_video.write(frames)

    output_video.release()