vs c++配置opencv(1)


1.vc++配置opencv

2.簡單常用的圖片處理函數

3.圖像修復函數

 

環境:

vs2013

opencv2.4.13 

准備工作:

1.安裝opencv。

opencv各版本間存在API差異,opencv提供相應版本的vc文件,在其安裝目錄 ..opencv\build\x86 目錄下,個人覺得引用與當前使用vs版本最接近的目錄文件就可以。opencv安裝目錄下的引用lib及bin文件 提供x86和x64

2.配置環境變量。

首先在 我的電腦 右鍵 屬性,在系統屬性中 選擇高級,打開設置環境變量的界面。其中 上半部分為用戶變量,下半部分為系統變量。

(1)在用戶變量中添加PATH變量,值為:安裝目錄\opencv\build\x86\vc12\bin;安裝目錄\opencv\build\x64\vc12\bin

(2)在用戶變量中添加OPENCV,值為:安裝目錄\opencv\build

過程中變量如果存在,將值添加至末尾,以;間隔

 

配置好了環境變量,接下來配置的是vc++的工程項目了,用來在vc++中使用opencv。

打開vs,新建項目,選擇vc++,32位控制台應用程序,工程命名為opencvTest。

 

在項目工程上右鍵,屬性,打開屬性頁面。

屬性中選擇配置信息,配置中配置選項選擇為Debug。點擊左側導航中的 vc++目錄。編輯其中的包含目錄和庫目錄。

注:此處為單獨的項目配置信息,如果想將此配置導出屬性文件供各個項目使用,選擇vs中的視圖-》其他窗口-》屬性管理器 

在屬性管理器項目上右鍵 =》添加新項目屬性表,為屬性表命名並存放於公共目錄下,以方便后面的項目引用,在屬性管理器中雙擊新建的屬性其具體配置和下面的一樣。配置好屬性表之后,下次使用就可以在屬性管理器中 右鍵=》添加現有屬性表,找到屬性文件,添加即可使用。此處以單獨項目的配置信息為例:

其中,包含目錄中引入的路徑是 opencv安裝路徑\opencv\build\include 及其子項。庫目錄是其lib文件的所在目錄,這里把x86和x64的都引入進來了。如出現“error C1083: 無法打開包括文件:“opencv2/core/core_c.h”: No such file or directory”類錯誤 說明包含目錄中的引用出現問題,可能是路徑錯了,調整引用路徑就ok。

這個地方要注意的是,根據當前項目的實際情況選擇相應版本的lib目錄,本次設置將兩個版本的lib文件全部引用了,但實際項目中系統如果發現有兩個一樣的引用,會默認使用第一個版本,所以如果為32位的應用程序,則x86的放在首位,如果為64位應用程序x64放在首位。如出現錯誤“ 無法解析的外部符號_XXXXX,該符號在函數_main 中被引用”則是此處位置的問題,調整位置后就ok了。

之后設置連接器的輸入項,設置其附加依賴項,此處為opencv的引用lib文件名稱。opencv3.4.13附加依賴項

 

點擊應用並確定。至此,opencv在vs中的配置完成,下面我們開始測試在vc++中調用opencv函數完成圖片操作。

(1)在項目源文件目錄下,點擊opencvTest.cpp,修改其代碼為:

// opencvTest.cpp : 定義控制台應用程序的入口點。
//

#include "stdafx.h"
#include "cv.h"
#include "highgui.h"

using namespace std;

int main()
{
    IplImage* test;
    test = cvLoadImage("圖片路徑", 1);
    cvNamedWindow("opencv_demo", 1);
    cvShowImage("opencv_demo", test);
    cvWaitKey(0);
    cvDestroyWindow("opencv_demo");
}

此處需要注意的是:

#include "stdafx.h" 需放在文件的第一行,否則會得到跳過引用的警告錯誤,和找不到相關引用方法的錯誤。 

運行項目,執行結果為打開了在項目中引用路徑的圖片文件。

 

 

運行期間 遇到“無法啟動此程序,因為計算機中丟失xxx.dll”文件問題,解決方法:項目=》c\c++=》預處理器  ,在預處理器定義中添加_CRT_SECURE_NO_WARNINGS,然后重新啟動vs,完成修改。

 


免責聲明!

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



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