以固定 FPS 值提取帧
Frame Extraction at Fixed FPS Value
在使用 OpenCV 从视频中提取帧时,我如何设置一个特定值以进行帧提取?
我已经看到许多可用的图像提取示例代码,但它们没有显示任何帧速率选项。
提取帧的方式有很多种,一种是使用ffmg提取帧。
其他是,您可以尝试此代码,但我们不能使用您在尝试不同值时会理解的任何随机值。
根据您的系统更改目录 app。
import math
count = 0
videoFile = "train/train.mp4"
cap = cv2.VideoCapture(videoFile)
frameRate = cap.get(5) #frame rate
x=1
while(cap.isOpened()):
frameId = cap.get(1)
ret, frame = cap.read()
if (ret != True):
break
else (frameId % math.floor(frameRate) == 0):
filename ="train/frame2/frame%d.jpg" % count;count+=1
cv2.imwrite(filename, frame)
cap.release()
print ("Done!")
在使用 OpenCV 从视频中提取帧时,我如何设置一个特定值以进行帧提取?
我已经看到许多可用的图像提取示例代码,但它们没有显示任何帧速率选项。
提取帧的方式有很多种,一种是使用ffmg提取帧。
其他是,您可以尝试此代码,但我们不能使用您在尝试不同值时会理解的任何随机值。 根据您的系统更改目录 app。
import math
count = 0
videoFile = "train/train.mp4"
cap = cv2.VideoCapture(videoFile)
frameRate = cap.get(5) #frame rate
x=1
while(cap.isOpened()):
frameId = cap.get(1)
ret, frame = cap.read()
if (ret != True):
break
else (frameId % math.floor(frameRate) == 0):
filename ="train/frame2/frame%d.jpg" % count;count+=1
cv2.imwrite(filename, frame)
cap.release()
print ("Done!")