[英]How to play mp4 at normal speed on jupyter notebook using python opencv
有什么方法可以使用python opencv在jupyter笔记本上以与实际文件相同的速度播放mp4视频?
当我制作.py文件并使用cv2.imshow()时,速度是正常的,但是当我在jupyter笔记本上尝试下面的代码时,它变得非常慢。
我的代码:
import cv2
import matplotlib.pyplot as plt
from IPython import display
%matplotlib inline
cap = cv2.VideoCapture('video.mp4')
while(cap.isOpened()):
try:
ret, frame = cap.read()
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
plt.imshow(frame)
display.clear_output(wait=True)
display.display(plt.gcf())
except KeyboardInterrupt:
cap.release()
以我的经验,即使您在Jupyter笔记本电脑上工作,也最好使用OpenCV的显示功能。 可以这样实现:
fps = 30
title = 'normal speed video'
delay = int(1000 / fps)
for frame in frames(video):
cv2.imshow(title, frame)
if cv2.waitKey(delay) & 0xFF == ord('q'):
break
cv2.destroyAllWindows()
在这里, frames
发生器只是逐帧产生视频,可以在这里找到
也可以通过Video
以编程方式在Jupyter中显示Video
:
from IPython.display import Video
Video(‘https://archive.org/download/Sita_Sings_the_Blues/Sita_Sings_the_Blues_small.mp4’)
Video(‘path/to/video.mp4’)
Video(‘path/to/video.mp4’, embed=True)
Video(b’raw-videodata’, embed=True)
查看文档以获取更多信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.