import cv2
import os
def img2video():
# 设置要转换的图片路径、FPS和输出视频文件名
img_folder = r'D:\3_data\image_folder'
fps = 30
video_name = 'output_video.avi'
# 获取所有图片文件名
img_files = sorted([os.path.join(img_folder, f) for f in os.listdir(img_folder) if
f.endswith('.jpg') or f.endswith('.png') or f.endswith('.tif')])
# 获取第一张图片的尺寸作为视频尺寸
img = cv2.imread(img_files[0])
height, width, channels = img.shape
# 创建VideoWriter对象,设置视频编码器和FPS
fourcc = cv2.VideoWriter_fourcc(*'XVID')
video_writer = cv2.VideoWriter(video_name, fourcc, fps, (width, height))
# 逐帧读取图片并写入视频文件中
for img_file in img_files:
img = cv2.imread(img_file)
video_writer.write(img)
# 释放资源
video_writer.release()
def get_video_frame():
# 打开视频文件
video_path = 'output_video.avi'
cap = cv2.VideoCapture(video_path)
# 获取视频的帧率和总帧数
fps = int(cap.get(cv2.CAP_PROP_FPS))
frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
# 打印帧率和帧数
print('FPS:', fps)
print('Frame count:', frame_count)
# 释放资源
cap.release()
if __name__ == '__main__':
img2video()
get_video_frame()
多张图片转视频
最新推荐文章于 2024-10-18 11:30:09 发布