OpenCV - win7+vs2013(2012)+opencv3.0.0 環境配置 (以及配置技巧)


1. opencv 3.0.0 庫下載地址, 這里的版本是3.0.0,其他的版本配置可能不一樣,請大家注意。

http://sourceforge.net/projects/opencvlibrary/files/latest/download?source=top3_dlp_t5

 

2. 下載完成之后是一個exe文件:

雙擊解壓它,會選擇解壓目錄,我這里選擇的是:D:\DevelopmentSoftware, 解壓之后為:

 

3. 配置系統環境變量:計算機 > 屬性 >  高級系統設置 > 環境變量

(1) 首先創建opencv的環境變量, 變量名:OPENCV,  變量值:D:\DevelopmentSoftware\opencv\build  (你的opencv解壓目錄的 build目錄)

(2)添加到Path變量。雙擊 Path, 在變量值末尾添加: %OPENCV%\x86\vc12\bin。(最后沒有 " ; " ,不要手賤哈)

ps: opencv/build目錄下有 x64和x86兩個目錄,里面都有 vc10, vc11, vc12。 這里注意一定要選x86目錄,因為編譯都是32位的。 vc12 對應 vs2013,不是vs2012,不要被誤導了。 (vc11-> vs2012, vc10->vs2010)

 

4. 到這里,就可以打開vs2013,開始創建項目了。

(1)創建一個win32空項目:


   

(2)打開屬性管理器:


    

(3)在debug上右鍵,添加新項目屬性表,創建一個屬性表: opencv_debug.props, 雙擊它開始編輯:

然后 點擊VC++目錄 ,我們需要分別添加包含目錄和庫目錄。

<1> 包含目錄 -> 編輯,添加這三個目錄到包含目錄下:

D:\DevelopmentSoftware\opencv\build\include

D:\DevelopmentSoftware\opencv\build\include\opencv

D:\DevelopmentSoftware\opencv\build\include\opencv2

<2> 然后添加庫目錄:

D:\DevelopmentSoftware\opencv\build\x86\vc12\lib

D:\DevelopmentSoftware\opencv\build\x86\vc12\staticlib

<3> 鏈接器 -> 附加依賴項 -> 編輯


   

直接拷貝進去:

opencv_ts300d.lib
opencv_world300d.lib
IlmImfd.lib
libjasperd.lib
libjpegd.lib
libpngd.lib
libtiffd.lib
libwebpd.lib
opencv_calib3d300d.lib
opencv_core300d.lib
opencv_features2d300d.lib
opencv_flann300d.lib
opencv_highgui300d.lib
opencv_imgcodecs300d.lib
opencv_imgproc300d.lib
opencv_ml300d.lib
opencv_objdetect300d.lib
opencv_photo300d.lib
opencv_shape300d.lib
opencv_stitching300d.lib
opencv_superres300d.lib
opencv_video300d.lib
opencv_videoio300d.lib
opencv_videostab300d.lib
zlibd.lib

這里鏈接時使用到的庫。 這里有兩點需要注意:

1. 各個版本的opencv鏈接的庫文件不一樣,這里只適用於 opencv3.0.0(alpha)版本。

2. 現在我們添加進的是 debug使用的庫, 可以發現每個lib文件文件名后有一個“d”,表示debug。所以下一步我們在添加release版本的時候,添加的鏈接庫和上面的一樣,只是后面沒有“d“。

 

(4) 做到這里,debug模式調試就可以使用了,為了使用release,我們需要將 步驟(3)的步驟再做一遍,創建一個opencv_release.props 。只是說我們選擇的屬性是release。而且剛剛已經說過了,添加鏈接庫的時候添加的是后面沒有 "d"的。

鏈接庫:

opencv_ts300.lib
opencv_world300.lib
IlmImf.lib
ippicvmt.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
libwebp.lib
opencv_calib3d300.lib
opencv_core300.lib
opencv_features2d300.lib
opencv_flann300.lib
opencv_highgui300.lib
opencv_imgcodecs300.lib
opencv_imgproc300.lib
opencv_ml300.lib
opencv_objdetect300.lib
opencv_photo300.lib
opencv_shape300.lib
opencv_stitching300.lib
opencv_superres300.lib
opencv_video300.lib
opencv_videoio300.lib
opencv_videostab300.lib
zlib.lib

 

(5)好了,到這里我們就已經配置完了。可以寫個程序來測試一下:

#include <opencv2\opencv.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main()
{
    Mat img = imread("FreeBamb.jpg");
    if (img.empty())
    {
        cout << "error";
        return -1;
    }
    imshow("FreeBamb靚照", img);
    waitKey();

    return 0;
}

 

 

可以看到加載了一張圖片,說明配置成功:

 

(6) 這里還有一個建議,每次創建項目都要這樣配置是是不是覺得很麻煩。不要忘了我們剛剛創建的項目配置文件, opencv_debug.props 和 opencv_release.props,其實這兩個文件是可以提取出來。直接到項目文件夾下,搜索配置文件,直接copy出來,下次就可以直接導入。

選擇添加現有屬性表,選擇我們以前創建好的就可以了。

這 樣配置簡單了一點,但是每次需要添加兩次,就是debug和release要分別導入。其實我們可以把兩個文件寫到一個屬性表中,這樣debug和 release都添加這個就可以了。大家自己把配置文件抓出來做拼接,我這里就不帶大家做了,很簡單,就是在 <Link> 標簽中添加了條件判斷:

<Link Condition="'$(Configuration)'=='Debug'">  .... </Link>

<Link Condition="'$(Configuration)'=='Release'">.... </Link>

 

好了,終於完結了。真是不容易啊。配置成功了給自己一個贊!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM