【发布时间】:2016-09-30 00:38:22
【问题描述】:
This link 有一个简洁的小示例,说明如何使用 python 的 OpenCV 库 cv2 将数据从相机流式传输到 python shell。我正在做一些实验,并想使用以下 YouTube 视频供稿:https://www.youtube.com/watch?v=oCUqsPLvYBQ。
我已尝试将示例改编如下:
import numpy as np
import cv2
cap = cv2.VideoCapture('https://www.youtube.com/watch?v=oCUqsPLvYBQ')
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
# Display the resulting frame
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
产生错误的原因:
WARNING: Couldn't read movie file https://www.youtube.com/watch?v=oCUqsPLvYBQ
OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /tmp/opencv20160107-29960-t5glvv/opencv-2.4.12/modules/highgui/src/window.cpp, line 261
是否有一个简单的修复方法可以让我通过cv2 将此视频源流式传输到我的 python shell 中?也不是绝对致力于cv2,如果有其他库可以实现相同的目的。
【问题讨论】:
-
我认为不可能像这样打开
VideoCapture。在videocapture 上的openCV 文档中写道,参数应该是一个文件。但您可以在两者之间使用youtube-dl。 -
@incBrain:这看起来很有希望,谢谢。会尽快检查并通知您。
-
@incBrain:
youtube-dl是要走的路。感谢您的提示!
标签: python opencv video youtube