關(guān)于OpenCV在VS IDE下的安裝和配置,一些熱心的網(wǎng)友已經(jīng)分享了它們的成功經(jīng)驗(yàn),這里有一篇很好的文章。這里我無(wú)意重復(fù)這些內(nèi)容,我想強(qiáng)調(diào)的是,在配置OpenCV開發(fā)環(huán)境的時(shí)候,除了滿足能夠正常工作外,我們還可以從移植和維護(hù)的角度多考慮一下。我們可能需要注意以下幾個(gè)方面的問(wèn)題:
1. 配置的開發(fā)環(huán)境最好要獨(dú)立于OpenCV的安裝目錄。設(shè)想這樣的情況,我們需要將OpenCV工程轉(zhuǎn)移到另外一臺(tái)電腦,這臺(tái)電腦已經(jīng)安裝了相同版本的OpenCV,但是不幸的是,它安裝在另外一個(gè)目錄中。在這樣的情況下,如果想讓這個(gè)OpenCV工程能夠順利的編譯通過(guò),我們需要修改工程設(shè)置中任何引用到OpenCV安裝目錄的地方,并將它們修改成正確的OpenCV安裝目錄。解決這樣問(wèn)題的一個(gè)好的辦法就是設(shè)置一個(gè)保存OpenCV安裝目錄的環(huán)境變量,讓OpenCV工程引用這個(gè)環(huán)境變量。如果OpenCV的安裝目錄發(fā)生了變化,我們唯一需要做的就是修改環(huán)境變量的值。例如,我們可以設(shè)置兩個(gè)環(huán)境變量: OPENCVAP_LIB = C:\Program Files\OpenCV\lib OPENCVAP_INCLUDE = C:\Program Files\OpenCV 這兩個(gè)環(huán)境變量分別記錄了OpenCV的安裝目錄和lib目錄。
接下來(lái)當(dāng)我們需要為OpenCV工程設(shè)置附加包含目錄時(shí),我們就可以使用環(huán)境變量來(lái)替換絕對(duì)目錄: "$(OPENCVAP_INCLUDE)\cxcore\include"; "$(OPENCVAP_INCLUDE)\cv\include"; "$(OPENCVAP_INCLUDE)\otherlibs" 當(dāng)我們需要為OpenCV工程設(shè)置附加庫(kù)目錄時(shí),同樣的我們可以使用環(huán)境變量來(lái)替換決定目錄: "$(OPENCVAP_LIB)" 2.配這的開發(fā)環(huán)境最好也要獨(dú)立于VS IDE,即OpenCV開發(fā)環(huán)境不能保存在VS IDE中,而是保存在OpenCV工程設(shè)置中。同樣的設(shè)想這樣的情況,將OpenCV工程移植到另外一臺(tái)電腦中,這臺(tái)電腦雖然安裝了相同版本的VS IDE但是并沒(méi)有正確的配置OpenCV開發(fā)環(huán)境,很顯然OpenCV工程不能得到正確的編譯,我們只能在這臺(tái)電腦中重新配置一次OpenCV環(huán)境。如果OpenCV環(huán)境配置在工程設(shè)置時(shí),拷貝OpenCV工程的時(shí)候連同編譯環(huán)境也一同拷貝了,這樣即使VS IDE沒(méi)有設(shè)置也能正確的編譯。 3.當(dāng)我們連接必要的庫(kù)文件的時(shí)候,我們可以在代碼中指定需要連接那些庫(kù)文件,而不必在項(xiàng)目設(shè)置中設(shè)置它們。在一個(gè)頭文件中,例如staAfx.h中,添加: #pragma comment(lib,"cxcore.lib")
#pragma comment(lib,"cv.lib") #pragma comment(lib,"cvaux.lib") #pragma comment(lib,"highgui.lib") 剩下的工作就是在源文件中包含需要的頭文件,這樣就使用OpenCV代給我們的強(qiáng)大功能了: #include "cv.h" #include "cxcore.h" #include "cxtypes.h" #include "highgui\highgui.h" 附加1:VS IDE + Visual Assist X 相信Visual Assist X是很多Windows程序員的最愛,甚至是達(dá)到了沒(méi)有Visual Assist X就不能正常工作的程度。除了其中的"語(yǔ)法高亮"功能外,最讓我喜歡的就是"符號(hào)解析"和在符號(hào)聲明和定義之間自由的切換,這樣為我們閱讀源碼提供了很大的方便。為了使Visual Assist X幫我們解析OpenCV庫(kù)中各種符號(hào),我們需要在Visual Assist X中設(shè)置OpenCV的安裝目錄,這樣當(dāng)VS IDE被啟動(dòng)并且OpenCV項(xiàng)目被打開的時(shí)候,Visual Assist X會(huì)自動(dòng)尋找到OpenCV的安裝目錄,為我們解析各種符號(hào)。下面以Visual Assist X 10.3為例,說(shuō)明如何設(shè)置。啟動(dòng)Visual Assist X并選擇"Visual Assist X Options",在其中選擇"Projects->C/C++ Directories"。在"Platform"選項(xiàng)中選擇"Custom",在"Show Directories"中選擇"Stable include files",在其中添加OpenCV的各個(gè)模塊的頭文件目錄: C:\\Program Files\\OpenCV\\cv\\include; C:\\Program Files\\OpenCV\\cxcore\\include; C:\\Program Files\\OpenCV\\otherlibs\\highgui; 接下來(lái)在"Show Directories"中選擇"Source files",在其中添加OpenCV的各個(gè)模塊的源文件目錄: C:\\Program Files\\OpenCV\\cv\\src; C:\\Program Files\\OpenCV\\cxcore\\src; C:\\Program Files\\OpenCV\\otherlibs\\highgui; 有了這樣的設(shè)置,我們就可以很方便的查閱OpenCV函數(shù)的源碼。 歷史記錄
03/13/2007 v1.0 原文的第一版 03/16/2007 v1.1 添加如果在Visual Assist X中設(shè)置OpenCV目錄 本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/houdy/archive/2007/03/13/1528311.aspx
|
|