应用环境的配置.docx
《应用环境的配置.docx》由会员分享,可在线阅读,更多相关《应用环境的配置.docx(9页珍藏版)》请在冰豆网上搜索。
![应用环境的配置.docx](https://file1.bdocx.com/fileroot1/2022-12/16/0e21aadb-b1e6-4f51-b7cc-c18b731f2cab/0e21aadb-b1e6-4f51-b7cc-c18b731f2cab1.gif)
应用环境的配置
实验一:
应用环境的调试、配置和测试
指导老师:
王春利
学生:
张慧彬
时间:
2013年7月11日
目录
1实验目的4
2实验准备4
1.1什么是MicrosoftVisualStudio20084
1.2什么是Directshow4
1.3什么是OpenCV5
3应用环境的配置6
3.2OpenCV在VS2008中的配置7
3.3DirectShow在VS2008中的配置8
4调试程序9
4.1调试cvision19
4.2调试cvision29
4.3调试cvision311
4.4调试cvision411
4.5调试cvision512
4.6调试cvision6:
12
5.实验总结与心得:
13
1实验目的
调试我们最常用的开发环境。
1、安装MicrosoftVisualStudio2008的版本,并安装MSDN。
2、安装Directshow最新的版本。
3、安装OpenCV2.4.2。
4、通过调试程序(cvision1~cvision6)测试以上开发工具能够协同工作。
5、初步体会面向对象的调试程序的环境,熟悉vc2008在开发中的重大作用。
2实验准备
1.1什么是MicrosoftVisualStudio2008
MicrosoftVisualStudio2008是面向WindowsVista、Office2007、Web2.0的下一代开发工具,代号“Orcas”,是对VisualStudio2005一次及时、全面的升级。
VS2008引入了250多个新特性,整合了对象、关系型数据、XML的访问方式,语言更加简洁。
使用VisualStudio2008可以高效开发Windows应用。
设计器中可以实时反映变更,XAML中智能感知功能可以提高开发效率。
同时VisualStudio2008支持项目模板、调试器和部署程序。
VisualStudio2008可以高效开发Web应用,集成了AJAX1.0,包含AJAX项目模板,它还可以高效开发Office应用和Mobile应用。
1.2什么是Directshow
DirectShow是微软提供的DirectX软件开发包中的一员,主要以处理流媒体数据为重点开发的一套windows下的编程接口,为了高效地处理音视频数据,它向应用提供了直接访问系统底层功能的接口,可以使应用直接控制从数据采集到数据演播的各个中间环节,如数据压缩和解压缩格式等。
DirectShow是以一种比较新的概念来操作媒体流运行的,他有点类似于计算机硬件的管脚Pin的概念,并且引进了滤波器Filter和流图Graph等原理。
媒体流通过流图中的各个滤波器,最后到达输出界面,期间经过各个滤波器的转化和控制使最终数据达到一定的要求。
通过DirectShow的基本接口,应用可以自行设计自己的各种滤波器完成数据在流动中的特殊处理需求,比如视频数据流的格式从MPEG到RGB的变换(解压缩)或象素格式从YUV到RGB的变换等。
DirectShow本身是一个比较复杂的系统,其中包含了许多的概念,对于一个初涉的编程人员,需要学习许多新的知识,特别是对于使用非VC进行应用开发的人员,想要实际使用DirectShow的功能其困难程度是可想而知的。
为此,我这里提供一个折中的解决方案,使得非VC的开发人员也能方便的使用DirectShow提供的各种功能,同时也为所有希望进入视频编程领域的开发人员提供一个DirectShow的入门级引导。
1.3什么是OpenCV
OpenCV的全称是:
OpenSourceComputerVisionLibrary
OpenCV于1999年由Intel建立,如今由WillowGarage提供支持。
OpenCV是一个基于[1](开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上。
它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
[2]最新版本是2.4.5。
OpenCV拥有包括300多个C函数的跨平台的中、高层API。
它不依赖于其它的外部库——尽管也可以使用某些外部库。
OpenCV为Intel®IntegratedPerformancePrimitives(IPP)提供了透明接口。
这意味着如果有为特定处理器优化的的IPP库,OpenCV将在运行时自动加载这些库。
OpenCV是Intel®开源计算机视觉库。
它由一系列C函数和少量C++类构成,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV的重要特性
(1)OpenCV拥有包括300多个C函数的跨平台的中、高层API。
它不依赖于其它的外部库——尽管也可以使用某些外部库;
(2)OpenCV对非商业应用和商业应用都是免费(FREE)的;
(3)OpenCV为Intel®IntegratedPerformancePrimitives(IPP)提供了透明接口。
这意味着如果有为特定处理器优化的的IPP库,OpenCV将在运行时自动加载这些库。
应用领域:
物体识别、图象分割、人脸识别、动作识别、运动跟踪、人机互动等
3应用环境的配置
3.1OpenCV在VS2008中的配置
在“工具”-“选项”-“项目和解决方案”-“VC++目录”-“包含文件”中,添加:
D:
\ProgramFiles\OpenCV\build\include
D:
\ProgramFiles\OpenCV\build\include\opencv
D:
\ProgramFiles\OpenCV\build\include\opencv2
其结果如下图所示:
图1
3.2OpenCV在VS2008中的配置
在“工具”-“选项”-“项目和解决方案”-“VC++目录”-“库文件”中,添加:
D:
\ProgramFiles\Opencv\build\x86\vc9\lib
结果如下图所示:
图2
3.3DirectShow在VS2008中的配置
由于win864位系统不兼容装不上那个dx90bsdk软件。
在打开每个要调试的程序后(了解到事实上如果建立的是一个win32console项目,都应对项目所需要的lib进行设置)
选择菜单:
项目
属性
配置属性
链接器
输入,在附加依赖项加入cxcore.libcv.libml.libhighgui.libstrmbasd.lib等需要的库。
如下图所示:
图3
现在基本上已经完成配置。
4调试程序
4.1调试cvision1
将老师发给我们的小程序打开,直接运行出现找不到元件库的原因。
将这些库添加进去如下图:
图4
然后运行成功。
图5
4.2调试cvision2
打开直接运行得到下图:
图6
通过添加一些包含文件:
D:
\ProgramFiles\DXSDK\Include
D:
\ProgramFiles\DXSDK\Samples\C++\Common\include
D:
\ProgramFiles\DXSDK\Samples\C++\DirectShow\BaseClasses
库文件:
D:
\ProgramFiles\DXSDK\Lib
D:
\ProgramFiles\DXSDK\Samples\C++\DirectShow\BaseClasses\Debug
D:
\ProgramFiles\DXSDK\Samples\C++\DirectShow\BaseClasses\Release
然后运行结果如下:
图7
调试成功。
4.3调试cvision3
cvision3属性的附加依赖项缺失,重新添加进去即可运行成功。
图8
4.4调试cvision4
找到丢失文件“ProxyTransuids”“ProxyTransprop”“iProxyTrans”然后运行成功:
图9
4.5调试cvision5
进入运行存在的问题是找不到库文件,然后将可文件添加进去运行成功得到以下图:
图10
4.6调试cvision6:
在运行错误的项目下看到缺失了添加依赖项“strmbase.lib”将其添加然后运行成功:
图11
5.实验总结与心得:
本次的实验调试对我来说确实很困难,因为不懂这些软件的作用,不懂它们都是怎么用,通过同学的知道略微的知道一些小程序怎么调试了,但是还不是太明白其中具体的原理。
以及好多错误原因是如何产生的。
在实验开始的时候总是装不上DirectShow软件后来才知道是由于win864位系统不能装,然后就通过拷贝把同学装好的拷贝过来配置,结果在自己的努力下成功的配置好了。
在用过opencv之后懂了一点点它在视频处理技术的作用,但是自己还不够认真不能够迅速解决问题。
在以后的实验一定要做好准备,认真做实验。