使用OpenCV将视频写入文件 - Python代码示例
以下是一个使用OpenCV将视频写入文件的示例代码:
import cv2
# 打开视频文件
video = cv2.VideoCapture('input_video.mp4')
# 获取视频的参数
fps = video.get(cv2.CAP_PROP_FPS)
width = int(video.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))
# 创建VideoWriter对象,用于将视频写入文件
output = cv2.VideoWriter('output_video.mp4', cv2.VideoWriter_fourcc(*'mp4v'), fps, (width, height))
while True:
# 读取视频的帧
ret, frame = video.read()
if not ret:
break
# 在帧上进行操作,例如添加文字或绘制图形
# ...
# 将帧写入输出视频文件
output.write(frame)
# 显示帧
cv2.imshow('Video', frame)
# 按下q键退出循环
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放VideoWriter对象和VideoCapture对象
output.release()
video.release()
# 关闭窗口
cv2.destroyAllWindows()
在此示例中,我们首先使用cv2.VideoCapture打开输入视频文件,并使用get方法获取视频的帧率(fps)、宽度和高度。然后,我们使用cv2.VideoWriter创建一个用于将视频写入文件的对象,指定输出视频文件名、编码格式(使用cv2.VideoWriter_fourcc指定四字符编码)和参数(帧率、宽度和高度)。接下来,我们使用一个循环不断读取视频的帧,对每一帧进行操作(例如添加文字或绘制图形),然后使用write方法将帧写入输出视频文件。同时,我们还使用imshow方法显示每一帧,并在按下q键后退出循环。最后,我们释放VideoWriter和VideoCapture对象,并关闭窗口。
原文地址: https://www.cveoy.top/t/topic/dTZp 著作权归作者所有。请勿转载和采集!