从实时视频流中获取帧

时间:2017-05-14 08:27:19

标签: python image video-streaming webcam live

要从实时网络摄像头Feed中获取单帧并重复更新,您需要做些什么?我之前已经看过这个,所以我知道这是可能的。如果可能的话,我想使用类似Python的东西,但欢迎任何帮助。也许这可以使用OpenCV?

2 个答案:

答案 0 :(得分:0)

这应满足您“保存视频供稿中的每一帧”的要求

import numpy as np
import cv2
import random

cap = cv2.VideoCapture(0)

i=0
while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()
    i+=1
    cv2.imwrite('database/{index}.png'.format(index=i),frame)


    cv2.imshow('frame',frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

在代码中。 数据库是将通过index(i)迭代保存每一帧的目录。

答案 1 :(得分:-1)

OpenCV应该能够很容易地做到这一点:

import numpy as np
import cv2

cap = cv2.VideoCapture(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)

    # Display the resulting frame
    cv2.imshow('frame',gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

来源:http://docs.opencv.org/3.0-beta/doc/py_tutorials/py_gui/py_video_display/py_video_display.html