我想预测视频的每 30 秒,如何调整 vid_stride 来实现这一点? 我的视频 fps 是 25,总帧数是 7478 帧(大约 5 分钟的视频) 当我将 750 作为 vid_stride 的值时,我只得到了不到第二个大约 9 帧的视频
from ultralytics import YOLO
model_path = "/content/best.pt"
model = YOLO(model_path)
for r in model.predict(source="/content/myvideo.mp4", save=True, stream=True,vid_stride=1):
pass
frames to skip = video fps × interval in seconds
因此,对于 25 fps 的 30 秒间隔:
frames to skip =25×30=750
您已将 vid_stride 正确设置为 750,但由于您只获得了 9 帧,这可能是因为您的视频有 7478 帧,而 750 的步幅导致它超出了总帧数。
我会将其设置为总帧数并进行测试。
from ultralytics import YOLO
model_path = "/content/best.pt"
model = YOLO(model_path)
for r in model.predict(source="/content/myvideo.mp4", save=True, stream=True, vid_stride=7478):
pass