在Google Colab上以视频形式显示帧

问题描述

我正在Google colab上尝试视频处理。我的代码读取视频并将其分成帧,在对帧进行处理之后,我想在处理帧时显示视频。就像def myFunc(fairy_dust): for particle in fairy_dust: temp = glider(particle[0],particle[1],particle[2],particle[3]) temp = temp.move() particle[0] = temp.x particle[1] = temp.y particle[2] = temp.heading (在本地计算机上)所做的一样。但是cv2.imshow 给colab带来了错误,因此建议我使用cv2.imshow 使用cv2_imshow 。它显示的是帧,但显示在一列中(如单独的图像),但替换了先前显示的帧。这是我的合作实验室链接https://colab.research.google.com/drive/1RUOGahcGngTWG9nBoisrsPzCLQ1Jq88v?usp=sharing 您可以在页面末尾看到多个图像的输出。 任何帮助都非常感激:)

解决方法

试试:

from google.colab.patches import cv2_imshow
from IPython.display import clear_output
from time import sleep

clear_output()
cv2_imshow(img)
sleep(0.1)

它远非完美(因为由于某种原因有一些掉帧),但这是我能找到的最接近的东西。