zoukankan      html  css  js  c++  java
  • OpenCv中avi视频的读取问题,以及内部格式要求

    先写好了文章,网络不稳定,网站的自动保存竟然也没起作用…泪奔…

    正题:

    做图像处理经常会用Matlab来仿真,验证算法思路,进而用OpenCv来实现交付。

    最初用Matlab做仿真,读取avi基本没有问题,有问题的100个视频也内格式工厂搞定。不过转到Opencv后就出现了问题:那些Matlab能读的,Opencv读不了。

    这真是恼人。

    后来参考了:http://blog.sina.com.cn/s/blog_5728fc490100qq6v.html这篇文章,下载了Xvid解码器,解决了一部分问题。说是一部分问题,是因为,这时候有些视频Opencv可以读了,Matlab回过头来却读不了了…

    不过在当时那阶段,这个问题不大。待Opencv代码写好,便开始解决这个问题。

    在解决过程中,MediaCoder x64这个软件起到了决定性作用。

    先上图片:

    00.avib不能读

    figure1.Opencv读不了的视频信息(1)

    00.avib不能读1

    figure2.Opencv读不了的视频信息(2)

    可以读

    figure3.Opencv读的了的视频信息(1)

    可以读2

    figure4.Opencv读的了的视频信息(2)

    可以读3

    figure4.Opencv读的了的视频信息(3)

    对比一个“正常”和一个“不正常”的图片,发现几个不一样的地方,其中那个CodeId是嫌疑最大的了。因为按照上面链接博客指示,我电脑中已经安装了Xvid,那么Xvid能被读是肯定的,MJPG不被读,就有理由了。于是用MediaCoder 来转码 :

    11

    图片中区域1可以看详细信息,转码信息就在区域2,将格式选为Xvid,再转码。用Opencv再试试,果然成功!!

    1. 任何单位或个人认为本博的内容可能涉嫌侵犯其合法权益,可以及时的联系我(olenet#126#com),我会立即更正或删除。 2. 欢迎转载,记得贴链接^_^。www.cnblogs.com/OleNet
  • 相关阅读:
    css3 jQuery实现3d搜索框+为空推断
    simple_pool对象池——优化<二>
    微信支付v3开发(6) 收货地址共享接口
    一个简单的数据增量更新策略(Android / MongoDB / Django)
    cocos2dx 3.0rc怎样创建项目
    NYOJ 613 免费馅饼
    NLP系列(5)_从朴素贝叶斯到N-gram语言模型
    Swift开发图解入门
    java网络编程
    java多线程机制
  • 原文地址:https://www.cnblogs.com/OleNet/p/3075916.html
Copyright © 2011-2022 走看看