




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、OpenCV在Visual Studio中的屬性表配置方法(OpenCV3.0及之前版本,VS2013及之前版本)1. opencv環(huán)境變量設(shè)置可以先看一下第五章和第六章、第七章,稍微看一下有些許印象就行,然后再?gòu)念^看右擊我的電腦à屬性à高級(jí)系統(tǒng)設(shè)置à環(huán)境變量雙擊系統(tǒng)變量path,在最后填入解壓后的bin目錄D:Program Filesopencvbuildx86vc10bin(根據(jù)個(gè)人解壓opencv后的具體目錄填寫(xiě),最后為bin即可,注意與上一個(gè)目錄中間用英文半角分號(hào)隔開(kāi),)如:然后在用戶(hù)變量中新建OPENCV_DIR,變量值如下,到build目錄,環(huán)境變量
2、就這些就夠了,重啟電腦生效(不重啟也行,如果不行,再重啟試試) 2. 新建win32控制臺(tái)程序由于打開(kāi)屬性管理器的具體配置需要先打開(kāi)一個(gè)項(xiàng)目,這里我們先新建個(gè)項(xiàng)目,打開(kāi)文件à新建à項(xiàng)目àVC+àwin32控制臺(tái)應(yīng)用程序,在下面輸入名稱(chēng)testopencv,點(diǎn)擊下一步,選擇空項(xiàng)目永久配置opencv打開(kāi)視圖à屬性管理器,點(diǎn)開(kāi)如下圖一次性配置opencv網(wǎng)上有一種方法是直接修改Microsoft.Cpp.Win32.user,但是配置鏈接器的時(shí)候debug版本和release版本的附加依賴(lài)項(xiàng)都得一次性加進(jìn)去,我不知道會(huì)不不會(huì)出問(wèn)題,所以為保險(xiǎn)起見(jiàn),
3、我分別在debug|win32和release|win32下分別新建了屬性表opencv_debug和opencv_release,當(dāng)然,大家也可以試試網(wǎng)上的方法,具體配置的內(nèi)容都一樣,下面以opencv_debug為例,在debug|win32上右擊,然后點(diǎn)擊添加新項(xiàng)目屬性表,填入opencv_debug即可下面雙擊open_debug,選擇VC+目錄,點(diǎn)擊包含目錄,點(diǎn)擊右側(cè)下拉按鈕à編輯,點(diǎn)擊第一個(gè)新行按鈕,輸入$(OPENCV_DIR)include, 類(lèi)似添加$(OPENCV_DIR)includeopencv和 $(OPENCV_DIR)includeopencv2,點(diǎn)擊確
4、定,應(yīng)用點(diǎn)擊庫(kù)目錄,點(diǎn)擊右邊的下拉按鈕à編輯,添加新行$(OPENCV_DIR)x86vc10lib確定,應(yīng)用點(diǎn)擊鏈接器à輸入,右側(cè)附加依賴(lài)項(xiàng),下拉按鈕à編輯,輸入如下:opencv_calib3d247d.libopencv_contrib247d.libopencv_core247d.libopencv_features2d247d.libopencv_flann247d.libopencv_gpu247d.libopencv_highgui247d.libopencv_imgproc247d.libopencv_legacy247d.libopencv_ml
5、247d.libopencv_objdetect247d.libopencv_ts247d.libopencv_video247d.lib點(diǎn)擊確定,應(yīng)用,后面的d表示debug版,完成后在opencv_debug上右擊,點(diǎn)擊保存opencv_debug,opencv_release的基本配置同opencv_debug,只是鏈接器依賴(lài)項(xiàng)要換成opencv_calib3d247.libopencv_contrib247.libopencv_core247.libopencv_features2d247.libopencv_flann247.libopencv_gpu247.libopencv_hi
6、ghgui247.libopencv_imgproc247.libopencv_legacy247.libopencv_ml247.libopencv_objdetect247.libopencv_ts247.libopencv_video247.lib這樣,我們可以看到新建項(xiàng)目下有兩個(gè)屬性表opencv_ps和opencv_ps,我們可以把他們復(fù)制到別的地方,其他項(xiàng)目用到時(shí)只要附加進(jìn)來(lái)即可,當(dāng)然,如果是直接修改Microsoft.Cpp.Win32.user的話(huà),便無(wú)需再附加,每次環(huán)境會(huì)自動(dòng)加載。附加過(guò)程如下:在以上配置過(guò)程中,大家可以直接用我做好的屬
7、性表,只是需要把用戶(hù)環(huán)境變量OPENCV_DIR的值改成自己實(shí)際的build目錄即可,這就是配置時(shí)使用相對(duì)位置的好處。3. 測(cè)試下面點(diǎn)擊視圖à解決方案資源管理器,點(diǎn)開(kāi)testopencv,在源文件上右擊選擇添加à新建項(xiàng),選擇C+文件,名稱(chēng)輸入testopencv.cpp,輸入如下代碼#include <highgui.h>int main(int argc,char *argv)IplImage *img=cvLoadImage("lena.jpg");/*載入圖像;把lena.jpg復(fù)制到項(xiàng)目所在的目錄,一般為projectstestope
8、ncvtestopencv,或者寫(xiě)lena.jpg所在的絕對(duì)路徑*/cvNamedWindow("Example1",CV_WINDOW_AUTOSIZE);/創(chuàng)建窗口cvShowImage("Example1",img);/顯示圖片cvWaitKey(0);/等待操作cvReleaseImage(&img);/釋放圖片cvDestroyWindow("Example1");/銷(xiāo)毀窗口4. 個(gè)人總結(jié)以上內(nèi)容摘自某網(wǎng)友的良心總結(jié)。我使用的OpenCV版本是2.4.11,因此,只需將后綴改成2411就可以了,其他都一樣,下面總結(jié)一
9、下,總共有三種配置方法,當(dāng)然,前期的設(shè)置系統(tǒng)的環(huán)境變量這一步都是一樣的,不同的是進(jìn)入到vs項(xiàng)目中之后的設(shè)置。A. 方法一正如上文所說(shuō)的,如果在屬性管理表中(Property Manager)中,右鍵點(diǎn)擊Debug|win32,然后選擇添加新的屬性表,如下圖所示,那么這種方式,最后保存新建的屬性表時(shí),會(huì)保存到該項(xiàng)目下(當(dāng)前項(xiàng)目),如下圖示 這樣,以后,如果要再新建項(xiàng)目時(shí),必須都要從該項(xiàng)目中把這兩個(gè)屬性表拷進(jìn)來(lái),然后在屬性管理表中添加已有屬性表,這種方法,雖然看起來(lái),每次都要添加比較麻煩,但是,這個(gè)是比較穩(wěn)妥的,因?yàn)?,并沒(méi)有向系統(tǒng)加入文件;B. 方法二還有一種方式,是在Microsoft.Cpp.
10、Wps上右擊選擇添加新的屬性表,這種新增加屬性表之后,保存新添加的屬性表,系統(tǒng)不會(huì)將其保存到當(dāng)前項(xiàng)目中,而是會(huì)保存到C:UsersHappyAppDataLocalMicrosoftMSBuildv4.0下,也就是Microsoft.Cpp.Wps所在的地方,如下圖示。然后,在屬性管理表中,新添加的opencv2411_debug和opencv2411_release隸屬于Microsoft.Cpp.Wps,而不是和前面那種是與Microsoft.Cpp.Wps并列的,如圖示,這種配置方法,
11、是真正永久性的,以后再建新項(xiàng)目時(shí),不用再把這兩個(gè)屬性表拷進(jìn)到新項(xiàng)目中,只要建立新項(xiàng)目,就會(huì)自動(dòng)在屬性管理表中添加這兩個(gè)引用屬性表(當(dāng)然是在Microsoft.Cpp.Wps下,而不是與之并列)。C. 方法三還有一種方法是直接對(duì)Microsoft.Cpp.Wps進(jìn)行更改,不用新建,雙擊這個(gè),然后也會(huì)跳出一個(gè)設(shè)置框,設(shè)置方法和上面提到的一樣了,如果直接對(duì)該文件進(jìn)行設(shè)置,我想應(yīng)該得把debug和release的庫(kù)文件都放進(jìn)去,才能既有debug的,也有release的屬性表(Microsoft.Cpp.Win32.user只有一個(gè)),這種配置方法我
12、還沒(méi)試,應(yīng)該也是永久性的,以后建立項(xiàng)目不用拷來(lái)拷去,只是,這個(gè)方法有個(gè)缺點(diǎn)就是對(duì)vs的默認(rèn)屬性表做了更改,而且,需要把debug和release放入到同一個(gè)屬性表中,所以還是算了,就采用前兩中方法了。以上提到的Microsoft.Cpp.Wps,是vs2010 默認(rèn)的用戶(hù)屬性表。關(guān)于其的一些介紹:綜合考慮,第一種方法必須每次將這兩個(gè)屬性表拷入到當(dāng)前新建項(xiàng)目中,并在屬性管理表中添加引用,因此,需要將這兩個(gè)屬性表專(zhuān)門(mén)拷出來(lái),放在一個(gè)地方,以后新建項(xiàng)目時(shí)方便使用,也就是,有點(diǎn)麻煩;而第三種方法,之前提過(guò)了,需要對(duì)系統(tǒng)文件進(jìn)行更改。綜合考慮,還是方法二號(hào),雖然會(huì)將兩個(gè)屬性表保
13、存到C:UsersHappyAppDataLocalMicrosoftMSBuildv4.0(該文件夾默認(rèn)是隱藏文件夾),但時(shí)并沒(méi)有改變?cè)形臋n文件的值,還是可以的,而且,debug和release是可以分開(kāi)的,雖然每次新建項(xiàng)目時(shí),在屬性管理表中,不管在debug還是release下,都有這兩個(gè)文件,如圖示,但是我想,這也是很好解決的,如果在出現(xiàn)編譯問(wèn)題,直接在屬性管理表中,刪除其中一個(gè)引用就是了,多方便(以后如需要再添加,直接添加在Microsoft.Cpp.Wps上右鍵添加已有屬性表就可以了,如果沒(méi)有直接進(jìn)入到所在路徑,可以自己進(jìn)入到C:UsersHappyApp
14、DataLocalMicrosoftMSBuildv4.0中尋找)。而且,最重要的一點(diǎn)是,以后新建項(xiàng)目,再也不用不厭其煩的添加、引用屬性表了。關(guān)于OpenCV屬性表配置的其他鏈接:5. 其他1. 點(diǎn)擊opencv提取文件時(shí),不能直接添加到C盤(pán),如果要,得以管理員身份執(zhí)行(或者先添加到其他盤(pán),然后拷過(guò)去也行),如果不以管理員身份而直接添加到C盤(pán)中某個(gè)文件夾,提取文件,會(huì)找不到的,會(huì)提取到一個(gè)隱藏得很深的文件夾中:C:UsersHappyAppDataLocalVirtualStore,這個(gè)文件夾,也是一個(gè)默認(rèn)隱藏的文件夾。參考鏈接:2. 在opencv提取庫(kù)文件中,有x64和x86,但一般都選擇
15、x86, (可能最新版opencv和vs中會(huì)有改變OpenCV3.0之后(見(jiàn)下面第四條),VS2013之后,這種最新版的配置方法,不在本教程考慮范圍之內(nèi))3. VS編號(hào)的對(duì)應(yīng)關(guān)系:參考鏈接:4. OpenCV版本與VS版本問(wèn)題這個(gè)是OpenCV2.4.11下的一個(gè)庫(kù)文件夾(x86下),發(fā)現(xiàn)直到vc12(對(duì)應(yīng)VS2013),直觀(guān)感覺(jué)是只能配置到VS2013了,至于更新的版本,不知道可不可以,不甚了解,保守的話(huà),最好不用了。這個(gè)是OpenCV3.1.0的(好像是2015.12.21號(hào)才出的,非常新的了),這個(gè)只有x64,沒(méi)有x86,x64下有如下圖示的東西(最新版OpenCV里也許是保存庫(kù)文件的格
16、式不同,比如,多進(jìn)行了編譯過(guò)程之類(lèi)的,這樣,可以直接在程序中調(diào)用,不需額外編譯,總之,比2.4.11版本少了200多兆,具體不甚了解)貌似這個(gè)最新的,直觀(guān)上與時(shí)俱進(jìn)了,只能配置vs2013和2015的(能不能配置低的還不清楚的)。版本區(qū)別而且,好像配置方式還不一樣了,3.1.0的x64里的文件與2.4.11里不同,貌似要用到CMake之類(lèi)的東西,還沒(méi)試過(guò),不太確定之前的配置方法是否適合,目前網(wǎng)上,最多的好像是到3.0.0的配置,3.1.0的配置好像還沒(méi)看到(或許是沒(méi)看到吧),3.0.0的配置好像還是中規(guī)中矩的??梢詤⒖矗篛penCV3.0之前的版本大概都有300多兆(350兆左右),之后更新的
17、版本,越來(lái)越小,只有100多兆了,可見(jiàn),做了很大的改變,我想應(yīng)該是庫(kù)文件的形式是不同了,具體還未深入了解,以上總結(jié)都是基于網(wǎng)上各種方法的,適合opencv3.0及之前,VS2013及之前的,更新版本的配置就無(wú)能為力了再次感謝諸多網(wǎng)友提供的幫助,我也來(lái)反饋一下如有錯(cuò)誤,請(qǐng)不要見(jiàn)怪多多包涵2015.12.256. 改正之前提到,本教程只適合VS2013及之前的,其實(shí)不然,VS2015真的是太強(qiáng)大了,我之前還沒(méi)發(fā)現(xiàn),VS2015的編譯器兼容之前的版本,同時(shí),又有自己新的特點(diǎn)如圖示(OpenCV依然是3.0版本之前的,因?yàn)?.0之后的版本,庫(kù)文件有太大的變化,真正意義上的永久性配置應(yīng)該跟VS15新的M
18、icrosoft.Cpp.x64.user默認(rèn)屬性表有關(guān),這點(diǎn),之前都沒(méi)涉及到,下面也不涉及),VS2015不但有之前版本的默認(rèn)屬性表Microsoft.Cpp.Wps(對(duì)應(yīng)x86),還有新的默認(rèn)屬性表Microsoft.Cpp.x64.user(對(duì)應(yīng)x64),保存路勁是一樣的。因此,如果一臺(tái)電腦上,同事安裝了VS10和VS15,那么按以上方法配置完VS10之后,VS2015也配置好了,但是用到的是VS15提供兩種默認(rèn)屬性表中的的老版屬性表Microsoft.Cpp.Wps,這已經(jīng)足夠我們用了至于VS2015的新的默認(rèn)屬性表Microsoft
19、.Cpp.x64.user,還沒(méi)有試,估計(jì)對(duì)應(yīng)OpenCV里的x64庫(kù)文件(編譯器可能不是32為了,是64位了。之前版本的VS只提供32位的編譯器,VS15開(kāi)始有64位編譯器了,但是向下兼容,也有32位的,如果用上述同樣的方法配置VS15,因?yàn)閛pen3.0及之前的版本沒(méi)有vc14,那就隨便選擇一個(gè),比如vc12,或者vc10,我想這都是可以的,因?yàn)槲遗渲猛闢S10后,發(fā)現(xiàn)VS15也能用了,只是用到的編譯器可能是32位的,不是最新的可以是64位的,沒(méi)有發(fā)揮新版VS15的最大能力,但對(duì)于我這個(gè)小白來(lái)說(shuō),好像沒(méi)啥影響這些純粹是個(gè)人理解,可能有錯(cuò),勿怪,同時(shí)希望不用造成誤導(dǎo),本教程也僅僅是配置的一些
20、經(jīng)驗(yàn)之談罷了,至于深入的原理,這里就不作參考了)另外一點(diǎn),總結(jié)里提到的方法二,說(shuō)不對(duì)默認(rèn)屬性表的值作改變,好像是不正確的,因?yàn)槲遗渲猛曛?,打開(kāi)了看一下,發(fā)現(xiàn),其引用庫(kù)文件也有改動(dòng),包含了debug和release的,我想,這都不重要,只要配置好用就行了(對(duì)我這種小白來(lái)說(shuō),真的是只能這樣了,莫笑)7. 附錄OpenCV2.4.11的庫(kù)文件(將這些添加到附加依賴(lài)項(xiàng)中,第二章中給的不全,不同版本的OpenCV,將2411改成對(duì)應(yīng)版本就是了,比如在第二章中,用到的是2.4.7版本):Debug:opencv_ml2411d.libopencv_calib3d2411d.libopencv_contrib2411d.libopencv_core2411d.libopencv_features2d2411d.libopencv_flann2411d.libopencv_gpu2411d.lib
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 食品企業(yè)應(yīng)對(duì)飛行檢查注意事項(xiàng)及策略
- 教育培訓(xùn)課程定制與實(shí)施協(xié)議
- 生物制藥技術(shù)工藝知識(shí)習(xí)題集
- 物理電學(xué)原理試題庫(kù)
- 小學(xué)教育中的多元化評(píng)價(jià)方式
- 古漢語(yǔ)基礎(chǔ)練習(xí):初中英語(yǔ)語(yǔ)法技巧輔導(dǎo)
- 活動(dòng)安排表格-工作日程表管理
- 污染治理措施的有效性評(píng)估與改進(jìn)
- 國(guó)際商務(wù)文化與交流測(cè)試題
- 教育學(xué)歷及相關(guān)資格證書(shū)證明(5篇)
- 樓梯踏步玻璃槽的施工方案
- 11測(cè)量放線(xiàn)復(fù)核記錄報(bào)表(全自動(dòng)計(jì)算-只需要輸入坐標(biāo))
- 學(xué)校食堂食材配送服務(wù)方案(肉類(lèi)、糧油米面、蔬菜水果類(lèi))
- 信用修復(fù)申請(qǐng)書(shū)
- 木偶奇遇記 閱讀單
- 華為云桌面解決方案介紹
- 新時(shí)代中國(guó)特色社會(huì)主義理論與實(shí)踐(2021版)課后思考題答案
- 骨痿臨床路徑及表單
- 2023年江蘇省蘇州大學(xué)醫(yī)學(xué)部藥學(xué)院統(tǒng)招博士后招收(共500題含答案解析)高頻考點(diǎn)題庫(kù)參考模擬練習(xí)試卷
- 上海市閔行區(qū)2022-2023學(xué)年高一下學(xué)期期末數(shù)學(xué)試題(無(wú)答案)
- 2023年全國(guó)高考語(yǔ)文乙卷作文“一花獨(dú)放不是春百花齊放春滿(mǎn)園”寫(xiě)作
評(píng)論
0/150
提交評(píng)論