open cv & vs
原来基于vs和msdn一起读视频,结果发现现在的函数不能用了。找不到合适的解码器了,只好转战opencv。
具体怎么用,网上查吧,不过opencv读视频的例子,可以见这个。
http://blog.csdn.net/thefutureisour/article/details/7530344
作者不允许随便转载,只好在这里mark一下。
http://www.cnblogs.com/carekee/articles/2177822.html#!comments
把cv得到的图片转成bitmap。需要把图片内容完全拷贝,包括头文件信息,同时要坐标索引一致。
本来想用原来的程序跑一下的,原来读视频和图像时是用的vfw和mfc的东西,现在想跑起来原来的代码发现读视频时vfw的库函数不能用了,找了几个版本的都不行,装了暴风影音还是不行,解码器估计有问题。想着彻底解决这个问题,就改成opencv吧,可读视频是读进来了,但是读出来每一帧的格式和原来不一样了。原来是bitmap什么的格式,现在是opencv的mat格式,因此除了读进来的地方改成opencv之外,图像处理的主体部分也需要改动。于是现在就有两种思路:
1. 就按照opencv的模式来走,读进来后,就按照其格式走,把代码中凡是用到bitma的地方都改一下,这个工作量还是很大的,而且感觉容易出错。
2. 把opencv读进来的图像,写一个转换接口,转为bitmap的格式,然后其它地方不用改动。这种方式只需要在每一帧读进来后,改一下格式,然后别的地方都不动。
http://bbs.ednchina.com/BLOG_ARTICLE_205865.HTM
http://stackoverflow.com/questions/8501753/how-to-display-opencv-mat-on-mfc-view
http://opencv-users.1802565.n2.nabble.com/Convert-IplImage-to-Bitmap-td3784378.html
这里提到,怎么opencv读的图像在mfc里显示,也是把图像内容赋值给bmp,然后再显示,具体可以见里面的代码。
http://www.cnblogs.com/HappyXie/archive/2011/03/10/1980059.html
这里是怎么把bmp转成opencv的格式。
因此,为了保险起见,采用第二种方式,在以后的使用中,一定要用opencv走遍天下。
open cv & vs的更多相关文章
- 几个常用的CV知识点
刚结束一段实习,图像算法工程师.总结一下图像算法的几个基本的操作,图像操作算子各式各样,各显神通,光是滤波filter这一个专题就可以有很多的技巧和功能. 我从做过的两个小项目入手, 简单介绍一下该项 ...
- 基于Emgu CV的人脸检测代码
这个提供的代码例子是Emgu CV提供的源码里面自带的例子,很好用,基本不需要改,代码做的是人脸检测不是人脸识别,这个要分清楚.再就是新版本的Emgu CV可能会遇到系统32位和64位处理方式有区别的 ...
- 自己积累的一些Emgu CV代码(主要有图片格式转换,图片裁剪,图片翻转,图片旋转和图片平移等功能)
using System; using System.Drawing; using Emgu.CV; using Emgu.CV.CvEnum; using Emgu.CV.Structure; na ...
- 挣值管理(PV、EV、AC、SV、CV、SPI、CPI) 记忆
挣值管理法中的PV.EV.AC.SV.CV.SPI.CPI这些英文简写相信把大家都搞得晕头转向的.在挣值管理法中,需要记忆理解的有三个参数:PV.AC.EV. PV:计划值,在即定时间点前计划 ...
- Emgu.CV 播放视频
using Emgu.CV; using System; using System.Drawing; using System.Threading; using System.Windows.Form ...
- Emgu.CV/opencv 绘图 线面文字包括中文
绘图很简单 Emgu.CV.Image<Bgr, Byte> image; 使用image.Draw可以画各种图形和文字包括英文及数字,不支持中文 CircleF circle = ...
- yuv420p转为emgucv的图像格式Emgu.CV.Image<Bgr, Byte>
GCHandle handle = GCHandle.Alloc(yuvs, GCHandleType.Pinned); Emgu.CV.Image<Bgr, Byte> image = ...
- "Emgu.CV.CvInvoke”的类型初始值设定项引发异常 解决办法
系统win7 32位,只在这一台电脑上出现这种问题,已知VS编译是X86,在数台电脑上测试都正常. 后来把opencv的dll路径例如 E:\...\x86 加入到系统环境变量中就正常了. emgu ...
- EmguCV控件Emgu.CV.UI.ImageBox及C# picturebox显示图片连续刷新出现闪烁问题
在上一篇里,EmguCV(OpenCV)实现高效显示汉字及叠加 实现了视频叠加及显示,但存在问题,就是 Emgu.CV.UI.ImageBox及C# picturebox显示图片时都会出现闪烁,尤其 ...
- 国内外从事CV相关的企业
提示:本文为笔者原创,转载请注明出处:blog.csdn.net/carson2005 经常碰到朋友问我国内从事计算机视觉(CV)领域的公司的发展情况,产品情况,甚至找工作等问题,这里,我给出自己收集 ...
随机推荐
- HTML_DOM学习
HTML DOM 树 通过ID/类名/标号可以定位HTML元素,然后可用JS改变这些元素的样式内容,并对DOM事件作出反应 对HTML事件的响应: onmousedown 和onmouseup/onc ...
- Murano Weekly Meeting 2016.08.02
Meeting time: 2016.August.02 1:00~2:00 Chairperson: Valerii Kovalchuk, from Mirantis Meeting summar ...
- git如何使用
Git是分布式的,但多数时候仍然要使用中央仓库作为所有开发者的交互中心,和svn一样,开发人员仍要在本地写代码并提交到中央服务器.Git相较于svn最大的优势就在于其强大的分支系统,而git的工作流程 ...
- Andrew Ng 的 Machine Learning 课程学习 (week3) Logistic Regression
这学期一直在跟进 Coursera上的 Machina Learning 公开课, 老师Andrew Ng是coursera的创始人之一,Machine Learning方面的大牛.这门课程对想要了解 ...
- GitKraken使用教程-基础部分(1)
1. 首次打开程序 第一次打开GitKraken程序时, GitKraken会提示需要登陆,可以用github.com的账号登陆,或者用邮箱创建账号登陆(如图 1‑1). 图 1‑1登陆帐户界面 登陆 ...
- statfs获得硬盘使用情况 模拟linux命令 df
转自:http://blog.csdn.net/mociml/article/details/5335474 先说statfs结构:#include <sys/vfs.h> /* 或 ...
- ToDictionary写法
把List集合转化成Dictionary public ActionResult Dimo() { Dictionary<string, Object> param = new Dicti ...
- python--Time(时间)模块
要使用一个模块,首先要把模块导入进来 import time 我们先把这一篇文章需要用的模块导入进来 首先说一下time模块,time模块中的函数 --sleep:休眠指定的秒数(可以是小数) imp ...
- Android @1x,@2x,@3x 资源文件自动分包工具
version 1.2 1.修改不用输入扩展名 2.输出路径可选.默认会在输入路径下建文件夹 前沿: 现在开发中ios,android会使用一套图,但是ui设计师给的图命名是以@1x,@2x,@3x这 ...
- 最近项目需要用到AdminLTE,所以整理一份中文版的小教程
先介绍一下AdminLTE的官方网站:AdminLTE官方网站 和GitHub:AdminLTE的github,可以在上面自行下载. AdminLTE 是一个完全响应管理模板,主要依赖于 Bootst ...