关于OpenCV在visual studio各版本中的配置网上教程很多,但大部分采取的是“The local method”,每次新建工程还得添加以前配置好的.props属性列表文件,其实官方文档中介绍了更好的“The global method”,只不过不够详细;随着新版本OpenCV 3.0的发布,其配置方式又有些微小的区别……
具体的配置过程这里也不详细讲解了,参考毛星云的博客:
http://blog.csdn.net/poem_qianmo/article/details/19809337
这里要强调几点的是:
1、OpenCV中选择x86还是x64文件夹,决定于编译器的位数;
2、vc11对应visual studio 2012,vc12对应visual studio 2013;据说vc**是代表编译器的版本,不要当成了IDE版本。
3、建议使用全局的配置方法: project->Debug|Win32->Microsoft.Cpp.Win32.user,一次配置好可永久使用 。
4、 OpenCV3.0在配置依赖项时只需要添加opencv_ts300d.lib、opencv_world300d.lib和opencv_ts300d.lib、opencv_world300d.lib;不用像之前版本一样添加一大串链接库。
最后贴上一份官方测试代码,代码详解参见:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/introduction/display_image/display_image.html#display-image
#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <iostream> using namespace cv; using namespace std; int main( int argc, char** argv ) { if( argc != 2) { cout <<" Usage: display_image ImageToLoadAndDisplay" << endl; return -1; } Mat image; image = imread(argv[1], CV_LOAD_IMAGE_COLOR); // Read the file if(! image.data ) // Check for invalid input { cout << "Could not open or find the image" << std::endl ; return -1; } namedWindow( "Display window", CV_WINDOW_AUTOSIZE );// Create a window for display. imshow( "Display window", image ); // Show our image inside it. waitKey(0); // Wait for a keystroke in the window return 0; }
-----------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------
2015年10月11日
补充:
全局配置的缺点:
全局配置方法(Microsoft.Cpp.Win32.user中配置的方法)虽然省去了每次新建OpenCV项目时添加.props属性表文件的麻烦,但是也存在着缺点;个人使用的体会是一旦更改了里面的设置(尤其是你不了解的)很难还原(无法在导入导出设置中还原),这将影响到你新建的每一个工程,甚至比如当你同时使用VS2012,VS2013时,你发现并没有配置VS2013,但是它已经继承了你对VS2012所做的配置!
更官方的解释是:“它们是针对每个用户、每台计算机来设置项目配置属性的。 特别是如果你在生成计算机上面向多个平台,此类“全局”设置会影响生成。例如,如果你同时拥有一个 MFC 项目和 Windows Phone 项目,则其中一个项目的 .user 属性将会无效。可重用的属性表(即局部配置方法,官方建议)更为灵活,而且更加可靠。”来自https://msdn.microsoft.com/zh-cn/library/669zx6zc.aspx
个人觉得如果是单纯学习而言,不考虑移植兼容性问题,选用全局配置方法省事,配置前最好将Microsoft.Cpp.Win32.user文件备份一下,文件在C:\Users\Yoymy\AppData\Local\Microsoft\MSBuild\v4.0目录下。做工程的同志还是选用局部配置方法为宜。