親測opencv2.4.4 在win7 32/64位 vs2010
win8 32/64位 vs2012 可行
在VS2010環(huán)境中應用Opencv,網(wǎng)上找到了很多配置方法,但大多都是老版本的,很多新手面對最新版本的Opencv無從下手,就給新手童鞋寫了這么一篇超級詳細的配置攻略,貼上來共享。要強調(diào)一點的就是,這種配置方法里使用的Opencv庫是直接安裝Opencv時候自帶的dll庫,在你的VS里面是無法調(diào)試Opencv的。如果需要調(diào)試Opencv,必須應用自己編譯出來的Opencv庫,具體怎么編譯自己的Opencv庫,網(wǎng)上有很多例子,再此不再贅述。
(1)系統(tǒng)環(huán)境變量設置
右鍵單擊->我的電腦->選擇屬性->高級系統(tǒng)設置->環(huán)境變量
用戶PATH: D:\專業(yè)軟件安裝\opencv\opencv2.4.4\build\x86\vc10\bin;
用戶OPENCV: D:\專業(yè)軟件安裝\opencv\opencv2.4.4\build
系統(tǒng)PATH: D:\專業(yè)軟件安裝\opencv\opencv2.4.4\build\x86\vc10\bin;
(2)VS設置
1新建項目->win32控制臺項目->完成
2視圖->屬性管理器(VS2010再其他窗口中)
3單擊"Debuge|Win32"->雙擊"Microsoft.Cpp.Win32.user"
4單擊"VC++目錄"
配置如下:
a可執(zhí)行文件: D:\專業(yè)軟件安裝\opencv\opencv2.4.4\build\x86\vc10\bin;
b包含目錄:
D:\專業(yè)軟件安裝\opencv\build\include
D:\專業(yè)軟件安裝\opencv\build\include\opencv
D:\專業(yè)軟件安裝\opencv\build\include\opencv2
c庫目錄: D:\專業(yè)軟件安裝\opencv\opencv2.4.4\build\x86\vc10\lib
5單擊"鏈接器"->"輸入"
d輸入 opencv_core244.lib;opencv_highgui244.lib;opencv_imgproc244.lib
6確定完成
(3)測試程序:
#include "stdafx.h"
#include "opencv/cv.h"
#include "opencv/cxcore.h"
#include "opencv/highgui.h"
#include "opencv/cvwimage.h"
int _tmain(int argc, _TCHAR* argv[])
{
IplImage* img = cvLoadImage("E:\\songwentaosb.jpg");
cvNamedWindow("example1",CV_WINDOW_AUTOSIZE);
cvShowImage("example1",img);
cvWaitKey(0);
cvReleaseImage(&img);
cvDestroyWindow("example1");
return 0;
}
另:vs2012編譯錯誤:
error C4996: 'fopen': This function or variable may be unsafe.
解決方法:
在預編譯頭文件stdafx.h里(注意:一定要在沒有include任何頭文件之前)添加:
#define _CRT_SECURE_NO_DEPRECATE
(4)常用頭文件:
#include "opencv/cv.h"
#include "opencv/cxcore.h"
#include "opencv/highgui.h"
#include "opencv/cvwimage.h"
#include "CchoosDialog.h"
#pragma comment(lib,"opencv_core244.lib")
#pragma comment(lib,"opencv_highgui244.lib")
#pragma comment(lib,"opencv_imgproc244.lib")
VS2010+Opencv-2.4.0的配置攻略
1、下載軟件
下載OpenCV-2.4.0,雙擊解壓到%opencv%(凡是出現(xiàn)%opencv%的地方均替換為你自己opencv的路徑全名,如D:\program\opencv)。
下載VS2010,安裝。
2、配置OpenCV環(huán)境變量
計算機->(右鍵)屬性->高級系統(tǒng)設置->高級(標簽)->環(huán)境變量->(雙擊)path(用戶,系統(tǒng)里面的path任選其一)->在變量值里面添加” %opencv%\build\x86\vc10\bin”和”%opencv%\build\common\tbb\ia32\vc10”(里面的%opencv%記得換成自己的opencv路徑。例如我的:D:\program\ifly\bin;D:\Program Files (x86)\opencv\build\x86\vc10\bin;D:\Program Files (x86)\opencv\build\common\tbb\ia32\vc10)。
3、配置工程的opencv依賴(每次新建工程都要重新配置,要執(zhí)行此步驟請先跳到第4步建立工程)
1)、項目(菜單項)->…屬性->VC++目錄:需要配置“包含目錄”和“庫目錄”兩項。
2)、配置“包含目錄”項:添加行”%opencv%\build\include”即可。
但在運行別人的opencv項目時,可能別人直接引用了上述目錄的子目錄路徑,如果出現(xiàn)include錯誤,則再添加”%opencv%\build\include\opencv”和(或)”%opencv%\build\include\opencv2”,即可解決問題。
3)、配置“庫目錄”項:添加行”%opencv%\build\x86\vc10\lib”即可。
4)、配置連接器:項目(菜單項)->…屬性->連接器->輸入->附加依賴項
針對debug配置添加以下庫:
opencv_calib3d240d.lib
opencv_contrib240d.lib
opencv_core240d.lib
opencv_features2d240d.lib
opencv_flann240d.lib
opencv_gpu240d.lib
opencv_highgui240d.lib
opencv_imgproc240d.lib
opencv_legacy240d.lib
opencv_ml240d.lib
opencv_objdetect240d.lib
opencv_ts240d.lib
opencv_video240d.lib
如果是release配置(以后再說,只需要添加上面的debug配置就行了現(xiàn)在),則添加:
opencv_calib3d240.lib
opencv_contrib240.lib
opencv_core240.lib
opencv_features2d240.lib
opencv_flann240.lib
opencv_gpu240.lib
opencv_highgui240.lib
opencv_imgproc240.lib
opencv_legacy240.lib
opencv_ml240.lib
opencv_objdetect240.lib
opencv_ts240.lib
opencv_video240.lib
4、用VS2010新建控制臺工程測試:
1)、文件->新建->項目->Visual C++->Win32 控制臺應用程序(輸入名稱test)
2)、確定->下一步->附加選項選“空項目”->完成
3)、解決方案資源管理器->源文件(右鍵)->添加->新建項
4)、Visual C++->C++文件:輸入名稱test點添加
5)、粘貼下面的代碼,保存
1 #include <opencv2\opencv.hpp> 2 #include <iostream> 3 #include <string> 4 using namespace cv; 5 using namespace std; 6 int main() 7 { 8 Mat img = imread("pp.jpg"); 9 if(img.empty())10 {11 cout<<"error";12 return -1;13 }14 imshow("xx的靚照",img);15 waitKey();16 17 return 0;18 }
6)、把自己的靚照改名為pp.jpg,然后放到工程項目的test文件夾里面(是里面那個test文件夾)
7)、按照第3步驟的方法配置工程的opencv依賴。
8)、按F5,如果你的圖片出來了就OK了。