【问题标题】:OpenCV Video Capture Not Loading FilesOpenCV 视频捕获不加载文件
【发布时间】:2013-04-01 00:44:27
【问题描述】:

这似乎是与 OpenCV 的特殊版本有关的问题。然而,当我几乎到处搜索,特别是 StackOverFlow 时,没有找到合理的答案。

我正在尝试使用 VideoCapture 句柄在 OpenCV 中加载带有 ffmpeg 的视频文件。如果该文件是 OpenCV 示例目录中的 tree.avi 示例影片,则会加载该文件,但每个其他 avi 文件都会导致以下错误:

警告:打开文件时出错 (../../modules/highgui/src/cap_ffmpeg_impl.hpp:526)

hpp 文件似乎是检测到错误的文件,而不是包含错误的文件。我只能假设 ffmpeg 与 OpenCV 不兼容,或者我应该开始寻找另一个库来打开视频文件,或者我应该假设 OpenCV 仅适用于它自己的示例。如果有人有任何想法,请分享。我应该使用另一个库来打开所有不同类型的文件,使用编码而不是 OpenCV 格式吗?

【问题讨论】:

  • 您是否尝试过使用视频的完整路径名?有时编译结果放在不同的文件夹中。
  • 是的,这行不通。仅适用于示例 avi。
  • 不要以为OpenCV使用FFmpeg就可以加载各种视频格式,因为这不是真的。 AVI 是一个简单的容器,可以存储各种音频/视频编解码器。
  • karl:是的,我认为这是正确的。不过,我想知道您对如何处理这种情况的看法。

标签: c++ opencv computer-vision video-processing


【解决方案1】:

OpenCV 似乎具有平台依赖性,最好为每个平台编译,总结一下我为我的问题所做的所有搜索。我对 VideoCapture 有问题,它不是来自编解码器,而是来自 OpenCV 本身。我在使用 OpenCV 时遇到了类似的问题,以至于它甚至无法打开 JPG 文件。通过重新编译它,一切都为我解决了。

对于那些不知道如何为 Visual Studio 编译 OpenCV 的人,这里有一个很好的教程: Installing OpenCV 2.4.3 in Visual C++ 2010 Express

【讨论】:

    【解决方案2】:

    不要假设仅仅因为 OpenCV 使用 FFmpeg 就可以加载各种视频格式,因为这不是真的

    AVI 是一个简单的容器,可以存储各种音频/视频编解码器。 OpenCV has page 列出了它支持的格式。

    【讨论】:

    • 我已经放下在线视频处理,开始处理不同JPG文件中的每一帧。但是,CV 也无法打开图像文件。甚至 baboon.jpg 在它自己的样本中也没有。我一直在搜索,发现您在帖子中遇到了类似的问题。请问你是怎么解决的?
    • 是的,在 Windows 上重新安装了 FFmpeg 和 OpenCV。有一次cv::imread()无缘无故抛出异常,所以放弃了C++接口,使用OpenCV的C接口没有问题。
    • Karl,我发现 opencv 需要在每个平台上独立编译,并且无法解决所有问题!即使在我的 PC 和笔记本电脑之间,我也需要重新编译整个 CV! VideoCapture的问题也通过重新编译解决了!
    【解决方案3】:

    在 OpenCV 2.4.4 中:只有 opencv_ffmpeg244.dll (release dll) 而没有 opencv_ffmpeg244d.dll (debug dll)

    所以尝试发布编译模式!

    【讨论】:

      【解决方案4】:

      你可能需要编译你自己的ffmpeg(从here获取最新的快照),然后再次编译opencv。在配置步骤检查你的输出,它应该是这样的:

      ...
      Video I/O--------------
      Use QuickTime      no
      Use xine           no
      Use ffmpeg:        yes
      Use v4l            yes
      ...
      

      【讨论】:

        猜你喜欢
        • 2016-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-19
        • 1970-01-01
        • 1970-01-01
        • 2022-11-02
        • 2020-12-19
        相关资源
        最近更新 更多