簡體   English   中英

如何使用python opencv在jupyter筆記本上以正常速度播放mp4

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM