【问题标题】:Can't read a video file using Videocapture() on android无法在 android 上使用 Videocapture() 读取视频文件
【发布时间】:2021-01-30 02:15:27
【问题描述】:

我是 android 新手,对在 android 中使用 opencv 知之甚少。我想从存储中读取视频并提取帧,但我无法读取视频。我使用了videocapture,但它总是显示失败。这是我正在使用的代码 sn-p。视频文件路径为/storage/emulated/0/Android/data/demoVid/Demo.avi。文件大小为 250MB

        VideoCapture cap = new VideoCapture();
//        cap.open(vpath.toString());
        cap.open(imFile);
        Mat frame = new Mat();
        int framecount = 0;

        if(cap.isOpened()){
            Log.d("VideoCapture","Videocapture successful");
        }
        else
        {
            Log.d("VideoCapture","Videocapture failed");
        }

【问题讨论】:

  • 如果您分享您看到的错误消息,就有更好的机会获得一些意见和反馈。
  • 我解决了这个问题。这是opencv版本的问题。我使用的是旧版本,将其更新到 4.5 版解决了这个问题。感谢您的回复。
  • 太棒了!如果您想在问题中添加更多关于您看到的错误的详细信息,然后将您找到的解决方案作为答案发布在下面,那么它也可能对其他人有所帮助。

标签: android video-capture opencv4android


【解决方案1】:

所以基本上我只是想使用 opencv 的 videocapture 在 android 中读取视频文件。我使用的是 opencv 3.4.10 版,它给出了找不到文件的错误。我尝试更改路径并检查路径是否正确定义但仍然无法读取文件。在浪费了很多时间之后,我升级到了 opencv 版本 4.5.0(升级到了 sift 功能),我的问题已经解决了相同的代码。所以也许一些旧版本的 opencv 不支持视频捕获。另外我想提一下,我从视频捕捉中读取的帧需要很长时间,因此我无法获得实时体验。

【讨论】:

    猜你喜欢
    • 2014-04-30
    • 1970-01-01
    • 2016-05-16
    • 2021-04-06
    • 2020-02-12
    • 2013-04-28
    • 1970-01-01
    • 2021-03-22
    • 2012-04-30
    相关资源
    最近更新 更多