我使用的代码将输入作为视频文件,然后对视频进行图像处理(前景分割)。
我正在尝试保存已处理(输出)的帧,但无法弄清楚如何使用循环这样做。
while(1):
ret, frame = cap.read()
fgmask = fgbg.apply(frame)
cv2.imshow('frame',fgmask)
cv2.imwrite("frame.jpg", fgmask)
代码的最后一行保存框架。但是当前它仅保存最后生成的输出,因为没有循环保存所有生成的帧。
如何使用循环保存所有已处理的文件?
最佳答案
引入计数器来更改文件名将解决此问题
cnt = 1
while(1):
ret, frame = cap.read()
fgmask = fgbg.apply(frame)
cv2.imshow('frame',fgmask)
cv2.imwrite("frame" + str(cnt) + ".jpg", fgmask)
cnt += 1
关于python - 循环保存生成的多个帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41686972/