【发布时间】:2015-03-09 01:18:28
【问题描述】:
在运行 OpenCV 视频处理 python 教程中的示例时,它们都会在专用窗口中弹出。我知道 IPython notebook 可以显示来自磁盘和 YouTube 的视频,所以我想知道是否有办法将 OpenCV 视频播放定向到 Notebook 浏览器并让它在输出单元格而不是单独的窗口中播放(最好不保存它到磁盘,然后从那里播放)。
以下是 OpenCV 教程中的代码。
import cv2
cap = cv2.VideoCapture('/path/to/video')
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()
【问题讨论】:
-
我也在寻找这个,但还没有找到任何解决方案......我想这是不可能的,因为只要窗口存在,内核就会保持活动状态。因此,如果窗口在工作簿内,则我们无法关闭它,这意味着当前单元格将运行其代码等...
-
@EzerK 提供的链接可以作为解决方案
-
我尝试了@EzerK 提供的解决方案。它确实在笔记本电脑中显示视频,但帧速率非常低,因此视频看起来断断续续。我尝试使用 python3.5 和 opencv3 v3.1.0 从我的网络摄像头流式传输。我磁盘上的视频根本无法播放。
-
@moondra 不,但自从我上次发表评论以来,我一直没有积极追求这个,所以如果你环顾四周,你可能会找到一些东西。
标签: python opencv jupyter-notebook ipython jupyter