matlab movie2avi(movobj_I, filename, 'compression', 'None');改写成python
时间: 2024-01-27 16:06:32 浏览: 28
中的语句是什么?
在Python中,可以使用OpenCV库来创建视频。下面是使用OpenCV库将视频轨迹数组(或numpy数组)保存为AVI文件的代码示例:
import cv2
import numpy as np
from numpy import ndarray
def save_to_video(tracks: ndarray, filename: str):
"""
Save the tracks as a video.
:param tracks: A numpy ndarray with shape (frames, tracks, 2).
:param filename: The name/path of the output video file.
"""
h, w, _ = tracks[0].shape
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter(filename, fourcc, 20.0, (w, h))
for i in range(len(tracks)):
frame_tracks = tracks[i]
frame = np.zeros((h, w, 3), dtype=np.uint8)
for j in range(len(frame_tracks)):
pt1 = tuple(frame_tracks[j, 0])
pt2 = tuple(frame_tracks[j, 1])
cv2.line(frame, pt1, pt2, (255, 0, 0), 2)
out.write(frame)
out.release()
调用该函数与传递待保存的数组和要保存的文件名。例如:
save_to_video(movobj_I, 'output.avi')