python opncv2 图片转视频问题

码农三少_V 2018-04-14 12:01:36
把每一帧写入视频文件 output.avi 中,可是只有 6k ,他是不是不支持连续写入,他只保存一帧??(自己想实现写一个程序,传入两个视频0、1,然后他们合成一个大尺寸的视频2,然后2的左边是0的内容,右边是1的内容,同步播放。现在退而求其次,我先 提某视频的每一帧 ,合成图片集合,最后将这图片集合依次保存成视频,但是每次视频都是只有6K,是不是覆盖了?只保存最后一帧???大神们有好的实现方案欢迎指导。)



代码如下,新手,可能不太规范,还望指点(望指点更好的设计方案):
#coding:utf-8
import os
import cv2
import numpy as np
import time
from PIL import Image



cap = cv2.VideoCapture('E:\\00.mp4') #是对的,没问题的

# Define the codec and create VideoWriter object

fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (768,432)) #视频的每一帧高768 宽432

frames=[] #保存每一帧的图片集合
while(cap.isOpened()):

ret,frame=cap.read()#略过判断,实践表明无影响
frames.append(frame)
if cv2.waitKey(2)==27:
break

#frames=array(frames)
for frame in frames:

out.write(frame) #把每一帧写入视频文件 output.avi 中,可是只有 6k ,他是不是不支持连续写入,他只保存一帧??

# 释放窗口
cap.release()
out.release()
cv2.destroyAllWindows()



...全文
754 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
popo5254 2019-11-30
  • 打赏
  • 举报
回复
将*'XVID'换为'X', 'V', 'I', 'D',并注意每个文件是否存在。

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧