我试着用opencvforpython3来阅读视频,调整它们的大小,并用不同的编解码器编写它们。原始帧速率应该保持不变。在
如果我使用MJPG作为编解码器,这很好,但是对于其他编解码器,输出的帧速率设置为600 fps。(我试过XVID,DIVX,WMV1,WMV2)
有没有可能用原始帧速率的编解码器来写视频?在
import os
import numpy as np
import cv2
codec = 'XVID'
new_size = (256, 256)
for root, dirs, files in os.walk("UCF-101"):
new_root = root.replace('UCF-101', 'UCF-101_resized_' + codec)
if not os.path.exists(new_root):
os.makedirs(new_root)
for file in files:
cap = cv2.VideoCapture(root + '/' + file)
fps = cap.get(cv2.CAP_PROP_FPS)
fourcc = cv2.VideoWriter_fourcc(*codec)
out = cv2.VideoWriter(new_root + '/' + file, fourcc, fps, new_size, isColor=True)
while(cap.isOpened()):
ret, frame = cap.read()
if ret == True:
frame = cv2.resize(src=frame, dst=frame, dsize=new_size)
out.write(frame)
else:
break
cap.release()
out.release()
print('wrote ' + new_root + '/' + file)
尝试使用.mp4而不是avi将文件扩展名更改为输出文件名
{{cd2>替换为
相关问题 更多 >
编程相关推荐