OS:Win7旗舰版64位
平台:VS2010旗舰版 x86
安装包版本:OpenCV2.4.2 x86 下载地址:http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.2/OpenCV-2.4.2.exe/download
EmguCV2.4.2 x86 下载地址:http://sourceforge.net/projects/emgucv/files/emgucv/2.4.2/libemgucv-windows-x86-gpu-2.4.2.1773.exe/download
OpenCV:
1. 解压
为了便于管理,我在D盘根目录下新建了CV文件夹,然后解压至下面。
2. 设置系统变量
实际上我是在"用户变量"处,新建了PATH项,内容:
D:\CV\OpenCV2.4.2\build\x86\vc10\bin;
网上有说还需要新建OPENCV项,内容为D:\CV\OpenCV2.4.2\build,我没有加进去,也配通了。暂时没有发现其作用。
————————下面是每个项目的配置————————
3. 建立一个demo
在C++下,新建一个“win32控制台程序”,“空项目”即可,输入以下代码:
——————————————————————————————————
#include "highgui.h"
int main()
{
const char* imagename = "D:/Demo.jpg";//随便放一张jpg图片在D盘或另行设置目录
cv::Mat img = cv::imread(imagename);
if(img.empty()) return -1;//是否加载成功
if(!img.data) return -1;
cv::namedWindow("image", CV_WINDOW_AUTOSIZE);
cv::imshow("image", img);
cv::waitKey();
return 0;
}
————————————————————————————————————————
4. 配置
(1)、在“视图”中打开“属性管理器”;
(2)、在“属性管理器”中双击Demo的项目名称;
(3)、在“Demo属性页”->“VC++目录”->“包含目录”中添加下面一行(包括所有分号):
D:\CV\OpenCV2.4.2\build\include;
D:\CV\OpenCV2.4.2\build\include\opencv;
D:\CV\OpenCV2.4.2\build\include\opencv2;
(4)、在“Demo属性页”->“VC++目录”->“库目录”中添加下面一行(包括所有分号):
;D:\CV\OpenCV2.4.2\build\x86\vc10\lib
(5)、在“Demo属性页”(“配置”==“Debug”)->“配置属性”->“链接器”->“输入”->“附加依赖库”中添加下面一行(包括所有分号):
opencv_core242d.lib;
opencv_highgui242d.lib;
opencv_video242d.lib;
opencv_ml242d.lib;
opencv_legacy242d.lib;
opencv_imgproc242d.lib
(6)、在“Demo属性页”(“配置”==“Release”)->“配置属性”->“链接器”->“输入”->“附加依赖库”中添加下面一行(包括所有分号):
opencv_core242.lib;
opencv_highgui242.lib;
opencv_video242.lib;
opencv_ml242.lib;
opencv_legacy242.lib;
opencv_imgproc242.lib
至此配置基本完毕,我运行的时候发现报错:丢失tbb_debug.dll。安装TBB,配置用户变量,问题解决。
软件包名称:tbb40_20120613oss_win.zip (Intel TBB)
下载地址:
http://threadingbuildingblocks.org/uploads/77/187/4.0%20update%205/tbb40_20120613oss_win.zip
用户变量PATH添加:D:\CV\tbb40_20120613oss\bin\ia32\vc10;
至此,OpenCV2.4.2配置完成,程序顺利运行。
EmguCV:
过程类似。我安装在D:\CV下面,以便统一管理。
用户变量PATH添加:D:\CV\Emgu\emgucv-windows-x86-gpu 2.4.2.1773\bin;
调试运行时候,记得添加dll文件的引用。
有人说需要导入UI插件,我没有导入但还是跑通了。顺便记下以便备用: