我试图用python逐帧读取视频,对帧执行一些处理

2024-10-02 02:38:27 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的密码

import cv2
video_capture = cv2.VideoCapture("test.mpeg")
cv2.convertMaps

while True:
    # get frame by frame
    ret, frame = video_capture.read()
    cv2.imwrite('pic.png',frame)
    cv2.imshow('Video', frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

我得到以下错误:

^{pr2}$

有什么问题吗?在


Tags: testimporttrue密码getbyvideocv2
1条回答
网友
1楼 · 发布于 2024-10-02 02:38:27

我相信答案很简单。你的循环不能检测视频何时完成。最终,video_capture对象在尝试读取时将返回False。您应该在循环中检查该条件,以便优雅地退出。在

import cv2
video_capture = cv2.VideoCapture("test.mpeg")

while True:
    # get frame by frame
    ret, frame = video_capture.read()
    if not ret:
        break
    cv2.imwrite('pic.png',frame)
    cv2.imshow('Video', frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

相关问题 更多 >

    热门问题