1、大部分都是暫時性配置工程,下次先建工程項目上次配置的環境全部失效,因為你配置的環境的是對於這個工程,所以當先建工程時會失效。
2、永久性配置,此方法簡單,但編譯時只能按照release與debug其中一種編譯,當你需要使用release或者debug編譯時需要將附加依賴項改成對應的lib文件名稱。(如果看不懂可以暫且略過,說到底還是永久性配置比一次性配置優點多多)。
好了廢話不多說了,進入正題"如何全局配置OpenCV+VS2013"。
說明:本環境配置是基於VS2013+OpenCv2.4.9+win7+32系統
一、 准備工作
1、OpenCV已經下載解壓完畢。例如解壓的路徑為D:\opencv 2、VS2013已經安裝成功。
注:OpenCV及VS2013在此不再提供,需要的朋友可以百度搜索下載。
二、 配置環境
1、打開VS2013,先建工程項目。("WIN32控制台應用程序")
2、項目建立完畢之后,點擊菜單欄"視圖"選項,找到"屬性管理器"(如下圖中1所示)這一項打開。(注:如果沒有找到,則從"其他窗口"(如下圖中2所示)中查找打開"屬性管理器")
3、此時在VS2013中會出現以下窗口,一般情況下在VS2013的右側,也有在左側。
4、展開Debug|Win32,右擊Microsoft.Cpp.Win32.user屬性,出現如圖5窗口。
5、配置包含目錄:點擊"VC++"目錄,如下圖所示操作。
5、點擊"編輯"之后會出現如圖7窗口。並添加以下目錄到包含目錄。?(以下目錄按照個人安裝位置不同而不同)
D:\opencv\opencv\build\include
D:\opencv\opencv\build\include\opencv
D:\opencv\opencv\build\include\opencv2
(圖8為添加完畢示意圖)
6、配置庫目錄,如圖9所示。
添加以下目錄:(以下目錄按照個人安裝位置不同而不同) D:\opencv\opencv\build\x86\vc10\lib
D:\opencv\opencv\build\x86\vc10
D:\opencv\opencv\build\x86\vc10\bin
注意:如果是64為系統,則添加以下目錄:
D:\opencv\opencv\build\x64\vc10\lib
D:\opencv\opencv\build\x64\vc10
D:\opencv\opencv\build\x64\vc10\bin
切記此目錄不可添加:
D:\opencv\opencv\build\x86\vc10\staticlib
添加完畢如下圖所示:
7、添加依賴項,如下圖所示。
8、在彈出的窗口中加入以下lib文件即可。
注意:如果您的opencv版本是241,則把249改為241即可。
說明:例如opencv_calib3d249d.lib中紅色標注的d表示當前配置的為
當配置release時只需要將d去掉即可
opencv_calib3d249d.lib;
opencv_contrib249d.lib;
opencv_core249d.lib;
opencv_features2d249d.lib;
opencv_flann249d.lib;
opencv_gpu249d.lib;
opencv_highgui249d.lib;
opencv_imgproc249d.lib;
opencv_legacy249d.lib;
opencv_ml249d.lib;
opencv_nonfree249d.lib;
opencv_objdetect249d.lib;
opencv_photo249d.lib;
opencv_stitching249d.lib;
opencv_ts249d.lib;
opencv_video249d.lib;
opencv_videostab249d.lib;
根據個人需要可以適當減少。
把上面的復制粘貼進去即可,如下圖所示。
到此全部全部配置完畢,有人會問為什么不需要配置
了?
答:此時你可以展開release|win32,然后打開Microsoft.Cpp.Win32.user屬性你會發現,它的包含目錄、庫目錄、鏈接器中的輸入依賴項已經全部配置完畢,所以你不需要配置了。?
同時到達此步驟也就可以回答你在本文的開頭提到的"永久性配置,此方法簡單,但編譯時只能按照release與debug其中一種編譯",因為當你配置完debug后發現release已被置成與debug一樣。
這兩者配置的不同之處就在於附加依賴項,其他的包含目錄、庫目錄都一樣。
三、測試配置環境
// TestOpenCV.cpp : 定義控制台應用程序的入口點。
//
#include "stdafx.h"
#include <cv.h>
#include <highgui.h>
int _tmain(int argc, _TCHAR* argv[])
{
IplImage* img = cvLoadImage("Lena.png");//加載圖片,並自動分配內存
cvNamedWindow("Example", CV_WINDOW_AUTOSIZE);//在屏幕上創建一個窗口名為Example1,窗口大小根據圖片實際大小自動進行拉伸或放縮
cvShowImage("Example", img);//顯示圖像
cvWaitKey(0);//使程序等待
cvReleaseImage(&img);//釋放圖像文件所分配的內存
cvDestroyWindow("Example");//銷毀顯示文件的窗口
return 0;
}
解決方法:只需要將
opencv_core249d.dll等文件從
D:\opencv\opencv\build\x86\vc10\bin目錄中拷貝到C:\Windows\System32 中即可。