我需要使用opencv阅读视频,对其进行一些处理并将其导出。我写的代码如下。目前,该过程正在将视频转换为灰度。
import cv2
# Define the codec and create VideoWriter object
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 25.0, (960,540))
cap = cv2.VideoCapture('input.mp4')
while(cap.isOpened()):
ret, frame = cap.read()
if ret == True:
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
out.write(gray)
else:
break
cap.release()
out.release()
输入文件'input.mp4'包含这些详细信息。我是新手,所以我不知道必然需要哪些属性,所以我会发布大部分属性。现在视频只写5.55 kb,如果点击它就不播放该文件,说“Windows Media Player在播放此文件时遇到问题”。
文件 项目类型:MP4视频 大小:2.51 MB 视频 时长:00:00:08 框架宽度:960 框架高度:540 数据速率:2634kbps 总比特率:2637kbps 帧速率:25帧/秒 音频 比特率:2kbps 频道:2(立体声) 音频采样率:48 kHz
这是我应该做的更具体的代码,但我不确定这是否被黑客攻击/伪代码所以我需要了解我在做这一步之前正在做什么。如果您了解如何使这项工作,请澄清此代码。我只需要找到一种打开,编辑和保存工作视频文件的方法,看起来很简单,但已经过了一周......
# Import everything needed to edit/save/watch video clips
from moviepy.editor import VideoFileClip
from IPython.display import HTML
white_output = 'white.mp4'
clip1 = VideoFileClip("solidWhiteRight.mp4")
white_clip = clip1.fl_image(process_image)
%time white_clip.write_videofile(white_output, audio=False)
HTML("""
<video width="960" height="540" controls>
<source src="{0}">
</video>
""".format(white_output))