- python 读取指定路径下的图像和视频文件
- OpenCV读取图片:cv2.imread(path);
- OpenCV读取视频::使用VideoCapture类和read()函数;
打开指定路径下的视频文件:cap =cv2.VideoCapture(path)
读取每一帧:flag,frame = cap.read()
举个栗子----打开视频并读取每一帧图片,将视频转换为4维的矩阵:
def load_video(video_filename):
cap=cv2.VideoCapture(video_filename)#通过VideoCapture函数对视频进行读取操作 打开视频文件
if cap.isOpened():
print("正确打开视频文件")
else:
print("没有正确打开视频文件")
frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
width, height = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
fps = int(cap.get(cv2.CAP_PROP_FPS))
video_tensor=np.zeros((frame_count,height,width,3),dtype='float')
while cap.isOpened():
flag,frame=cap.read()#读取每一帧图片 flag表示是否读取成功 frame是图片
if flag is True: #if flag == True:
video_tensor[x]=frame
else:
break
return video_tensor,fps
关于怎样进入到指定路径,可以看这篇文章
https://blog.csdn.net/love_withyou/article/details/99441666
- python 保存(写入)指定路径下的图像和视频文件
- OpenCV将图片写入到指定路径中:cv2.imwrite(path,frame);
- OpenCV将每一帧图片写入到视频中, 需要指定视频的格式, 使用VideoWriter类和write()函数;
VideoWriter类写入视频时, 需要提供路径, 格式, 码率(fps), 帧的尺寸等参数;
举个栗子:
def save_video(video, fps, save_filename='media/output.avi'):
fourcc = cv2.VideoWriter_fourcc(*'MJPG')
writer = cv2.VideoWriter(save_filename, fourcc, fps, (video.shape[2], video.shape[1]), 1)
for x in range(0, video.shape[0]):
writer.write(cv2.convertScaleAbs(video[x]))
本文介绍了如何使用Python的OpenCV库读取和保存指定路径下的图片和视频文件。通过cv2.imread()函数读取图片,使用VideoCapture类配合read()函数读取视频帧。同时,文章提供了将视频转换为4维矩阵的示例。在保存方面,利用cv2.imwrite()写入图片,使用VideoWriter类创建视频并用write()函数写入帧,需要指定路径、格式、码率和帧尺寸等参数。

5万+

被折叠的 条评论
为什么被折叠?



