【问题标题】:cv2.VideoCapture on pythonpython上的cv2.VideoCapture
【发布时间】:2015-12-27 14:27:06
【问题描述】:

我正在运行以下代码:

import numpy as np
import cv2
import os

count = 0

cap = cv2.VideoCapture("/home/simon/PROJECT/real_data/00000020.mp4")

while not cap.isOpened():
    cap = cv2.VideoCapture("./00000020.mp4")
    cv2.waitKey(1000)
    print "Wait for the header"

pos_frame = cap.get(cv2.cv.CV_CAP_PROP_POS_FRAMES)
while True:
    flag, frame = cap.read()
    if flag:
        # The frame is ready and already captured
        cv2.imshow('video', frame)
        pos_frame = cap.get(cv2.cv.CV_CAP_PROP_POS_FRAMES)
        print str(pos_frame)+" frames"
    else:
        # The next frame is not ready, so we try to read it again
        cap.set(cv2.cv.CV_CAP_PROP_POS_FRAMES, pos_frame-1)
        print "frame is not ready"
        # It is better to wait for a while for the next frame to be ready
        cv2.waitKey(1000)

    if cv2.waitKey(10) & 0xFF == 27:
        break
    if cap.get(cv2.cv.CV_CAP_PROP_POS_FRAMES) ==       cap.get(cv2.cv.CV_CAP_PROP_FRAME_COUNT):
    # If the number of captured frames is equal to the total number of frames,
    # we stop
    break


if ret == True:
    frame = cv2.VideoCapture.grab()
    frame = 'frame%d' % count 

    cv2.imwrite('frame%d.png', frame)

    count += 1
else:
    print 'stopped at' + count
    break

每当我运行它时,它都会在 while not 循环上循环,打印“等待标题”。 从来没有错误代码或类似的东西。

我尝试将它作为一段更简单的代码运行,它没有进行所有这些检查,并且不会引发任何错误。

我正在尝试运行此代码来打开视频,然后在整个视频中将帧保存为 png 文件。

有人发现代码有什么特殊问题吗? 或者,有没有人知道一段代码可以更有效地完成我想要做的事情,因为我最近通过谷歌搜索和堆栈溢出进行了很多搜索,但没有找到任何东西

提前致谢 熊猫

【问题讨论】:

    标签: python loops opencv video ffmpeg


    【解决方案1】:

    您需要在 python 目录中包含几个 DLL 才能播放视频。详情请看这里:

    https://li8bot.wordpress.com/2014/07/09/opencvpython-part-1-working-with-videos/

    【讨论】:

    • 我已经安装了 ffmpeg,并且在我在这里发布之前检查了那些 :) 感谢您的建议。您知道处理时间是否与视频长度相同吗?
    • 据我所知,它应该立即开始阅读。据我所知,Header 问题是因为它无法解码视频,通常是因为 opencv 没有找到 DLL。
    猜你喜欢
    • 2022-01-25
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    • 2021-12-20
    • 2017-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多