python
复制代码
import cv2
import imageio
import numpy as np
if __name__ == '__main__':
video_path=r"D:\data\tmp\data_similar\box\153\1030_0930_0.mp4"
img_path=r"D:\data\tmp\data_similar\sample\bi_1.jpg"
img=cv2.imread(img_path)
img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
writer = imageio.get_writer(
"video.mp4", fps=30, codec="libx264", bitrate="8000k",
ffmpeg_params=["-crf", "18", "-preset", "slow"]
)
writer.append_data(img)
video = cv2.VideoCapture(video_path)
fps = int(video.get(cv2.CAP_PROP_FPS))
count = video.get(cv2.CAP_PROP_FRAME_COUNT)
while True:
ret, frame = video.read()
if not ret: break
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
writer.append_data(frame.astype(np.uint8))
writer.close()