如何在wxpython中显示每个视频帧的图像

时间:2018-01-12 09:05:56

标签: wxpython

我想在wxpython上显示视频帧中的每个图像,例如,在面板块中。就像我在opencv中使用imshow一样,但现在我可以在自己的窗口中控制输出。 有没有办法做到这一点?抱歉我的英文不好

1 个答案:

答案 0 :(得分:1)

基本上,您需要能够访问每个视频帧。例如,使用OpenCV,您可以遍历VideoCapture:

cam = cv2.VideoCapture("filename.mpeg")
while 1:
    (grabbed, frame) = cam.read()
    if grabbed:
        frame
        # frame is a numpy array containing the image from the video

现在您已经拥有了框架,您可以使用cv2.imshow显示该框架。使用wxpython,您需要将此位图转换为wxpython可以显示的内容,即wx.Bitmap。所以你可以这样做:

bitmap = wx.Bitmap.FromBuffer(width, height, frame)

如果您不知道如何显示wx.Bitmap,最好先使用wxPython文档和演示。