1. 程式人生 > >Opencv3.0和contribute模組的下載 編譯 安裝

Opencv3.0和contribute模組的下載 編譯 安裝

一、 Opencv介紹和資源連結

              Opencv3.0版本已經發布了有一年左右的時間,在這段時間也是不斷的進行了更新和修復,最近看了一下3.0新增的一些功能,感覺還是蠻強大的,作為一個一直以  Opencv為開發環境的程式設計師來說是一定要體驗一下這個新版本的,特別看到說在tracking領域近年比較好的文章TLD和 KCF都有擴充套件包了,那更是要嘗試一下。

              可以看到在2015-06-04的時候Opencv3.0的gold版本已經發布了,並且該版本已經修復了很多bug,效能也有很大改善,而且這次Opencv還有很多最新的功能在opencv_contrib包中,這個包是需要額外安裝的,它並不在3.0的標準版本里面,因為這個擴充套件包中的很多程式碼並沒有通過大量的穩定性測試,但是其基本功能還是可以執行的,並且還在不斷的開發和更新中,我的這次安裝主要就是想看看這個擴充套件包裡面的功能,所以還需要將它也下載下來。

我們點選上圖紅框中的OpenCV3.0連結,就能找到3.0的原始碼下載連結和擴充套件包下載連結

        原始碼連結:    



      OK,到這裡我們已經下載好了Opnecv3.0.0的原始碼和和Opencv3.0.0_contribute原始碼了

二、 Opencv的編譯

             在編譯之前,我們還需要安裝兩個軟體,Cmake和Visual Studio 2013(推薦VS2010以上版本,一開始用2010編譯,最後會出現一些error,有些檔案編譯會出錯,所以最好使用高版本的VS)。Cmake也儘量下載版本高一點的,我以前一直用Cmake2.8.8,後來發現找不到2013的編譯器,反正就是有一些小問題,所以都儘量選擇高版本的,我現在用的是Cmake3.2.2,具體下載自行解決。

     這些軟體裝完後,我們就可以開始進行編譯了,先建立一個資料夾Opencv3.0.0,在裡面建立兩個資料夾build和source

     

        其中source資料夾放置我們剛下載的原始碼,build資料夾放置我們等會編譯的結果,將下載的Opencv3.0.0和opencv3.0.0_contrib-master資料夾放置在source下面。

     然後開啟Cmake3.2.2,仿照下面的兩個目錄進行新增,注意源目錄下面應該直接有一個CMakeLists.txt檔案。


                                      然後點選Configure按鈕,會出現編譯器的選項按鈕:

                     

                 我們選擇Visual Studio 2013版本的編譯器,然後配置一段時間後,會出現下面的介面:

注意上圖中黃色的框中的路徑需要自己設定,該路徑就是擴充套件包的具體路徑資訊,如果不需要新增擴充套件包,這一塊可以省略。


上面步驟完成後,我們就可以點選Generate按鈕,直至上述的紅色介面全部變為白色即表示生成結束。



      此時,在build資料夾下面應該已經生成了相應的檔案了:

   

          我們用VS2013開啟Opencv.sln,   選擇下圖的Rebuild按鈕,這可能需要花費一些時間

         

   成功Build之後,應該會在install資料夾下面生成我們需要的動態庫和靜態庫了,至此,編譯過程也已經完成了。


三、 Opencv執行環境的配置

    編譯完成後,我們可以通過建立一個示例程式來配置Opencv執行時需要的環境

1. 環境變數

設定環境變數中的系統變數,將執行時動態庫的路徑新增到Path中:E:\Project\opencv3.0.0\build\install\x86\vc12\bin(具體路徑參考自己的build資料夾的位置)

                              

2. 新增Opencv的標頭檔案及庫檔案目錄

      用VS2013新建一個空工程,找到屬性管理器,在Debug目錄下面雙擊Microsoft.Cpp.Win32.user

                                          

      配置紅色框中的可執行檔案目錄,標頭檔案和庫檔案目錄

可執行檔案目錄:E:\Project\opencv3.0.0\build\install\x86\vc12\bin

標頭檔案目錄:

  • E:\Project\opencv3.0.0\build\install\include
  • E:\Project\opencv3.0.0\build\install\include\opencv
  • E:\Project\opencv3.0.0\build\install\include\opencv2

庫檔案目錄:E:\Project\opencv3.0.0\build\install\x86\vc12\lib

注意:所有的目錄請參考自己所建的資料夾的目錄

3. 新增執行時依賴的lib檔案

點選Linker->Input-->Additional Dependencies,新增lib資料夾下面的檔案

opencv_aruco300d.lib
opencv_bgsegm300d.lib
opencv_bioinspired300d.lib
opencv_calib3d300d.lib
opencv_ccalib300d.lib
opencv_core300d.lib
opencv_datasets300d.lib
opencv_dnn300d.lib
opencv_dpm300d.lib
opencv_face300d.lib
opencv_features2d300d.lib
opencv_flann300d.lib
opencv_hal300d.lib
opencv_highgui300d.lib
opencv_imgcodecs300d.lib
opencv_imgproc300d.lib
opencv_line_descriptor300d.lib
opencv_ml300d.lib
opencv_objdetect300d.lib
opencv_optflow300d.lib
opencv_photo300d.lib
opencv_reg300d.lib
opencv_rgbd300d.lib
opencv_saliency300d.lib
opencv_shape300d.lib
opencv_stereo300d.lib
opencv_stitching300d.lib
opencv_structured_light300d.lib
opencv_superres300d.lib
opencv_surface_matching300d.lib
opencv_text300d.lib
opencv_tracking300d.lib
opencv_ts300d.lib
opencv_video300d.lib
opencv_videoio300d.lib
opencv_videostab300d.lib
opencv_xfeatures2d300d.lib
opencv_ximgproc300d.lib
opencv_xobjdetect300d.lib
opencv_xphoto300d.lib

4. 重啟計算機,測試環境

完成以上步驟後,我們重啟一下電腦,然後新增一段測試程式碼來檢視環境是否生效

#include <opencv2\opencv.hpp>  
#include<iostream>
using namespace cv;
void main()
{
	IplImage *src;
	src = cvLoadImage("lena.jpg"); //這裡將lena.jpg和lena.cpp檔案放在同一個資料夾下
	cvNamedWindow("lena",CV_WINDOW_AUTOSIZE);
	cvShowImage("lena",src);
	cvWaitKey(0);
	cvDestroyWindow("lena");
	cvReleaseImage(&src);
}
注意在工程資料夾中新增一張lena的圖片,若能正常顯示圖片表示環境配置正確。