将视频另存为帧OpenCV {PY}

Bio*_*ock 4 python opencv

我想创建一个程序来保存从网络摄像头(帧)中获取的.jpg图像.我的程序现在做的是,打开网络摄像头,只取一个帧,然后一切都停止.

我想要的是多个帧我的错误代码就是这个:

import numpy as np
import cv2
cap = cv2.VideoCapture(0)
count = 0

while True:
   # Capture frame-by-frame
   ret, frame = cap.read()

   # Our operations on the frame come here
   gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
   cv2.imwrite("frame%d.jpg" % ret, frame)     # save frame as JPEG file
   count +=1

   # Display the resulting frame
   cv2.imshow('frame',gray)
   if cv2.waitKey(10):
      break
Run Code Online (Sandbox Code Playgroud)

flo*_*y12 7

实际上听起来你总是使用相同的名称保存你的图像,因为你是连接ret而不是imwrite方法中的count

试试这个 :

name = "frame%d.jpg"%count
cv2.imwrite(name, frame)     # save frame as JPEG file
Run Code Online (Sandbox Code Playgroud)


prt*_*tkp 5

用这个 -

count = 0
cv2.imwrite("frame%d.jpg" % count, frame)
count = count+1
Run Code Online (Sandbox Code Playgroud)