如何阅读Python中的实时视频提要或视频按需供稿



我需要阅读实时视频feed以及python中的任何视频供稿URL。这是机器学习项目的输入。我使用了cv.VideoCapture方法。它对我不起作用。我尝试了许多Stackoverflow链接,但没有找到解决方案。

请帮助阅读Python中的Live/Porrans视频URL I。我尝试了下面的摘要代码。

import cv2
url = 'https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_1mb.mp4'
camera = cv2.VideoCapture()
print("open:",camera.open(url)) # False
print("read:",camera.read()) # (False, None)

输出:

open: False
read: (False, None)

这是1分钟的Google搜索解决方案。有关更多信息,这里是链接。

您需要在VideoCapture(url)中传递URL。

对于您的问题:

>>> import cv2
>>> cv2.__version__
'3.4.2'
>>> cap = cv2.VideoCapture("https://sample-videos.com/video123/mp4/720/big_buck_bunny_720p_1mb.mp4")
")

>>> cap.read()
(True, array([[[ 46, 112, 104],
        [ 31,  97,  89],
        [ 21,  92,  83],
        ...,
       [[ 62, 153, 159],
        [ 68, 159, 165],
        [ 70, 158, 165],
        ...,
        [ 33, 121, 114],
        [ 28, 131, 113],
        [ 42, 145, 127]]], dtype=uint8))
>>> cap.release()
>>> cv2.destroyAllWindows()

以下代码从文档中引用

import cv2
import numpy as np
# Create a VideoCapture object and read from input file
# If the input is the camera, pass 0 instead of the video file name
cap = cv2.VideoCapture('chaplin.mp4')
# Check if camera opened successfully
if (cap.isOpened()== False): 
  print("Error opening video stream or file")
# Read until video is completed
while(cap.isOpened()):
  # Capture frame-by-frame
  ret, frame = cap.read()
  if ret == True:
    # Display the resulting frame
    cv2.imshow('Frame',frame)
    # Press Q on keyboard to  exit
    if cv2.waitKey(25) & 0xFF == ord('q'):
      break
  # Break the loop
  else: 
    break
# When everything done, release the video capture object
cap.release()
# Closes all the frames
cv2.destroyAllWindows()

最新更新