- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
WindowsForm环境下使用OpenCV及DirectShow
Windows Form环境下
使用OpenCV及DirectShow
因为要做一个简单的摄像头蔽障,考虑用OpenCV做图像处理比较方便,用Windows Form做个简单的界面非常快速。就想在Windows Form里用OpenCV的函数库.我的编辑环境是VC++2005 VC++8/VS2005 。把我的一些经验发上来希望能给别人提供一点帮助。
首先安装OpenCV.
具体安装步骤以及OpenCV的下载可以去OpenCV 中文论坛 找到,网上也有非常多的博客和论坛有介绍。这里提醒一点,无论是否在安装时钩上了添加环境变量都要再手动添加一次。(是OpenCV的小BUG)。具体方法:右击我的电脑—属性—高级—环境变量—path—你OpenCV的安装路径下\OpenCV\bin.
在VC++2005下设置OpenCV
也不再啰嗦,去OpenCV 中文论坛 很好找,很详细.各种C++编辑环境下的都有.一步步照着来.
MOST IMPORTANT
在Win32控制台以及MFC下都可以直接添加cv.h以及OpenCV的其他头文件,但是在Windows Form似乎不可以.在论坛里也看到有人发问是不是在Windows Form里不能使用OpenCV.其实是可以的.很简单,Windows Form默认是纯 MSIL 公共语言运行库支持 /clr:pure 要改成公共语言运行库支持 /clr .具体位置:在解决方案里,右击你的工程—属性—配置属性—常规,然后就能看到公共语言运行库支持的配置了.
现在就可以在Windows Form下使用OpenCV的函数库啦!!
因为OpenCV 从视频设备采集图像的函数cvCaptureFromCAM 使用的是vfw,采用消息机制,速度较慢,测试发现fps只有 9-12左右,太慢了.使用DirectShow后速度可以提升到60帧/s.
首先下载DirectX
提别提醒:别下最新版的!!下DirectX 9.0b SDK或者DirectX 9.0a SDK,因为DirectX 9.0c SDK 之后的版本把DirectShow去掉了!!
配置DirectShow开发环境
我当时是参考一篇博客“LGS的BLOG” 设置的,里面写的很详细,在这里要向李大哥表示感谢.我把这篇博文贴过来,供大家参考。我对原文里一个地方有异议,所以在下面修改了 红色标注 。
以下转自LGS的BLOG
首先,就是编译baseclasses,什么是baseclasses?打开你的dx的sdk安装目录,例如:D:\DX90SDK\Samples\C++\DirectShow\这里就有一个叫baseclasses的工程,为安全起见,请先备份此工程。
1,双击baseclasses.sln打开,提示我们需要转换工程,按提示转换就是了,编译提示错误:1 D:\Microsoft Visual Studio 8\VC\PlatformSDK\include\winnt.h 222 : error C2146: syntax error : missing ; before identifier PVOID641 D:\Microsoft Visual Studio 8\VC\PlatformSDK\include\winnt.h 222 : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int1 D:\Microsoft Visual Studio 8\VC\PlatformSDK\include\winnt.h 5940 : error C2146: syntax error : missing ; before identifier Buffer1 D:\Microsoft Visual Studio 8\VC\PlatformSDK\include\winnt.h 5940 : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int1 D:\Microsoft Visual Studio 8\VC\PlatformSDK\include\winnt.h 5940 : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int1 d:\DX90SDK\Samples\C++\DirectShow\BaseClasses\ctlutil.h 278
您可能关注的文档
- VB窗体的常用属性.doc
- VC++实现自启动.doc
- VC中用通信控件开发串行通信程序.doc
- VC6的动态链接库.doc
- VB第三版实验B答案.doc
- VBA之Range对象在Excel单元格赋值示例.doc
- VC钱多多除了钱,VC还可以给你更多.doc
- verilog习题选答.doc
- VC中Windows常用控件的创建和使用.docx
- VFP菜单题专项训练.doc
- 河北省承德市隆化县2025届重点中学小升初数学入学考试卷含解析.doc
- 第十五章 轴对称 单元测试二-2025-2026学年人教版八年级数学上册.pdf
- 常用抢救药物相关知识.ppt
- 人教部编版三年级语文下册第六单元《语文园地》示范公开课第2课时教学课件.pptx
- 第四章 物质结构元素周期律 测试题(二)-人教版高中化学必修第一册.pdf
- 情绪管理课件命名原则.pptx
- 酒泉市玉门市2024-2025学年五年级数学第二学期期末达标检测试题含答案.doc
- 第四章 物质结构元素周期律 测试题-人教版高中化学必修第一册.pdf
- 西交利物浦大学《药事管理学》2023-2024学年第一学期期末试卷.doc
- 情绪管理课件制作方法.pptx
文档评论(0)