opencv在vc_6下安装与配置(正常安装)_第1页
opencv在vc_6下安装与配置(正常安装)_第2页
opencv在vc_6下安装与配置(正常安装)_第3页
opencv在vc_6下安装与配置(正常安装)_第4页
opencv在vc_6下安装与配置(正常安装)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

OpenCV_1.0 在 VC 6.0 下安装与配置 1. 安装 OpenCV 1.0 可以到 /下载最新的 OpenCV 程序。 按照默认选项安装就可以。在安装时选择“将OpenCVbin 加入系统变量” (AddOpenCVbin to the systerm PATH) ,否则需要在“我的电脑” “属性” “高 级” “环境变量”中添加上述变量,如:变量:Path,值:C:OpenCVbin; (为 OpenCV 的安装根目录,建议将 openCV 安装在 C 盘的 OpenCV 目录下) 2.安装 DirectX SDK 到 MS 网站下载 DirectX 9.0b 的 SDK,下载高版本的也可以,但要注意兼容性。 *.首先安装 DirectX SDK; *.打开 SDK 的安装目录(一般为 C:DXSDK),找到 BaseClasses 文件夹,一般在 C:DXSDKSamplesC+DirectShowBaseClasses,打开其中的 BaseClasses.dsw(vc 6.0 下的可执行文件);在“生成 ”目录下选择“批生成”在选项中选择“Debug”和 “Release”,然后生成该项目; *.打开 C:DXSDKSamplesC+DirectShowBaseClasses 文件夹,会发现两个文件夹 Debug 和 Release,将 Debug 中的 strmbasd.lib 文件和 Release 中的 STRMBASE.lib 文件拷到 C:DXSDKLib 目录下; 在 VC 的工程中加入如下库文件和包含文件: 在工具选项中选择目录 切换目录下拉至 Library files 添加以下路径 C:DXSDKLib 切换目录下拉至 Include files 添加以下路径 C:DXSDKInclude C:DXSDKSamplesC+CommonInclude C:DXSDKSamplesC+DirectShowBaseClasses 注意:有必要将上述目录移到最上方,以免在编译时发生访问库的冲突! 3.编译 OpenCV 的主要部分,加入必要的库文件及包含文件 *打开 OpenCV 安装目录下的 _make 文件夹,启动其中的 opencv.dsw 工程(如: C:OpenCV_makeopencv.dsw) ;进行批构建(batch build),注意只选择 Win32 debug 和 Win32 release 就可以了。 在生成过程中可能会出现如下错误: “fatal error LNK1181: 无法打开输入文件 “cvauxd.lib” “error C2039: “foreground_regions” : 不是“CvFGDStatModel”的成员” 解决的方法是:在“FileView”中打开“cvaux”项目的包含文件中 (IncludeExternal)的 cvaux. h 文件,找到上述 foreground_regions 成员,会发现此 成员已被注释掉了,只要将其上一行末尾的“/”改为“*/”使该成员可见,再次启动 项目,应该就可以编译通过了。 - 2 - *启动_make 目录下的另外一个工程 “opencv_directshow.dsw” ,使其编译通过; *按照步骤 2 中加入库文件及包含文件的方法将下列包含文件加入 C:OpenCVcvinclude C:OpenCVotherlibshighgui C:OpenCVcxcoreinclude C:OpenCVotherlibscvcaminclude (上述文件属于常用文件,如果需要可自行添加另外的包含文件) 加入库文件:C:OpenCVlib 4.在项目中运用 OpenCV 在 Open CV 中国里面描述的过与复杂,实际上可以按照 Open CV 动态链接库的隐式 链接方法来做,比较简单。 首先新建工程 ,然后 在 project - settings -all configurations (工程-选项- 设置全部)中选 择 Link,在对象/库模块中加入静态库 cvd.lib highguid.lib cvauxd.lib cxcored.lib cvcam.lib 最后在项目的头文件中加入所用到的包含文件,如:#include “cv.h” #include “highgui.h” (一般来说这两个文件是必要的,其它头文件在用到时可自行加入) 菜单Tools-Options-Directories :先设置lib路径,选择Library files,在下方填入路径: C:Program FilesOpenCVlib 然后选择include files,在下方填入路径: C:Program FilesOpenCVcxcoreinclude C:Program FilesOpenCVcvinclude C:Program FilesOpenCVcvauxinclude C:Program FilesOpenCVmlinclude C:Program FilesOpenCVotherlibshighgui C:Program FilesOpenCVotherlibscvcaminclude - 3 - 项目设置 每创建一个将要使用OpenCV的VC Project,都需要给它指定需要的lib。菜单:Project- Settings,然后将 Setting for选为All Configurations,然后选择右边的link标签,在 Object/library modules附加上 cxcore.lib cv.lib ml.lib cvaux.lib highgui.lib cvcam.lib 如果你不需要这么多lib,你可以只添加你需要的lib。 - 4 - 添加库后的错误; -Configuration: CalibFilter - Win32 Debug- Compiling. CalibFilter.cpp C:DXSDKSamplesC+DirectShowBaseClasseswxutil.h(530) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(437) : error C2504: IBasicVideo2 : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(904) : error C2146: syntax error : missing ; before identifier m_dwAdvise C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(904) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(904) : error C2501: m_dwAdvise : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(286) : error C2061: syntax error : identifier LONG_PTR C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(951) : error C2504: IPinFlowControl : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(982) : error C2061: syntax error : identifier IGraphConfig C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1067) : error C2143: syntax error : missing ; before * C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1067) : error C2501: IGraphConfig : missing storage-class or type specifiers - 5 - C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1067) : error C2501: m_pGraphConfig : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1340) : error C2504: IMemAllocatorCallbackTemp : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1444) : error C2143: syntax error : missing ; before * C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1444) : error C2501: IMemAllocatorNotifyCallbackTemp : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1444) : error C2501: m_pNotify : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1506) : error C2061: syntax error : identifier IMemAllocatorNotifyCallbackTemp C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(68) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(78) : error C2146: syntax error : missing ; before identifier m_dwAdvise C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(78) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(78) : error C2501: m_dwAdvise : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClasseswinctrl.h(103) : error C2061: syntax error : identifier LONG_PTR C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(24) : error C2146: syntax error : missing ; before identifier AddAdvisePacket C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(24) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(26) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(47) : error C2146: syntax error : missing ; before identifier m_dwAdviseCookie C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(47) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(47) : error C2501: m_dwAdviseCookie : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(85) : error C2146: syntax error : missing ; before identifier Cookie C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(85) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(86) : warning C4183: Cookie: member function definition looks like a ctor, but name does not match enclosing class C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(96) : error C2146: syntax error : missing ; before identifier m_dwNextCookie C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(96) : error C2501: m_dwNextCookie : missing storage-class or type specifiers - 6 - C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(102) : error C2146: syntax error : missing ; before identifier AddAdvisePacket C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(102) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesrefclock.h(103) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesrefclock.h(111) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesrefclock.h(121) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassessysclock.h(20) : error C2504: IAMClockAdjust : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesstreams.h(174) : fatal error C1083: Cannot open include file: audevcod.h: No such file or directory CalibFilterprop.cpp C:DXSDKSamplesC+DirectShowBaseClasseswxutil.h(530) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(437) : error C2504: IBasicVideo2 : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(904) : error C2146: syntax error : missing ; before identifier m_dwAdvise C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(904) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesctlutil.h(904) : error C2501: m_dwAdvise : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(286) : error C2061: syntax error : identifier LONG_PTR C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(951) : error C2504: IPinFlowControl : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(982) : error C2061: syntax error : identifier IGraphConfig C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1067) : error C2143: syntax error : missing ; before * C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1067) : error C2501: IGraphConfig : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1067) : error C2501: m_pGraphConfig : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1340) : error C2504: IMemAllocatorCallbackTemp : base class undefined C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1444) : error C2143: syntax error : missing ; before * C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1444) : error C2501: IMemAllocatorNotifyCallbackTemp : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1444) : error C2501: m_pNotify : - 7 - missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesamfilter.h(1506) : error C2061: syntax error : identifier IMemAllocatorNotifyCallbackTemp C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(68) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(78) : error C2146: syntax error : missing ; before identifier m_dwAdvise C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(78) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesrenbase.h(78) : error C2501: m_dwAdvise : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClasseswinctrl.h(103) : error C2061: syntax error : identifier LONG_PTR C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(24) : error C2146: syntax error : missing ; before identifier AddAdvisePacket C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(24) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(26) : error C2061: syntax error : identifier DWORD_PTR C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(47) : error C2146: syntax error : missing ; before identifier m_dwAdviseCookie C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(47) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(47) : error C2501: m_dwAdviseCookie : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(85) : error C2146: syntax error : missing ; before identifier Cookie C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(85) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(86) : warning C4183: Cookie: member function definition looks like a ctor, but name does not match enclosing class C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(96) : error C2146: syntax error : missing ; before identifier m_dwNextCookie C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(96) : error C2501: m_dwNextCookie : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(102) : error C2146: syntax error : missing ; before identifier AddAdvisePacket C:DXSDKSamplesC+DirectShowBaseClassesdsschedule.h(102) : error C2501: DWORD_PTR : missing storage-class or type specifiers C:DXSDKSamplesC+DirectShowBaseClassesrefclock.h(103) : error C2061: syntax error : identifier DWORD_P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论