VisualStudio下如何編譯和使用最新版本的OpenCV(修正版)


OpenCV是托管於GitHub的開源項目,本文具體解決一個問題,就是“獲取最新版本的OpenCV,並且在自己的項目中使用起來"
 
最新版本 2017年3月31日 BY:jsxyhelu
 
目錄:
1 下載最新代碼;
2 編譯代碼(區分靜態庫/動態庫模式 32位和64位)
3 在自己項目中使用

一 下載最新代碼,可以通過GIT或Http直接下載
 
或(注意 github國內訪問通過修改host表可以提速)
 
二 編譯代碼(區分靜態庫/動態庫模式 32位和64位)
使用的方式都是CMake兩次Configure->一次Generate->Open Project打開vs進行編譯。參數的不同帶來了結果的不同。
 
64位和32位的選擇體現在選擇編譯器的時候是否選擇Win64。我認為一般意義上說,32位的程序可以以兼容模式運行在64位機器上,反過來不可以。那么也就是說32位以效能換取兼容性。使用時根據 實際情況選擇。新手選擇32位。
在32位系統下運行64位程序報這個錯
 
靜態庫和動態庫的選擇體現在是否選擇BUILD_SHARED_LIBS(默認是選中的)。如果選擇靜態庫,那么最后生成的程序和支持庫是打包到一起的,交付起來比較方便;如果是動態庫則是分開的。效能問題沒有研究過。新上手的選擇默認動態庫。同時建議將BUILD_opencv_world選中,這樣最后的結果是一個文件。
 
 
 
 
 
而后打開vs環境,選中install,生成。 也可以批量生成(release和debug都要)。
 
 
出現這個錯誤是正常的,因為allbuild本身就不可啟動。
 
三 在自己項目中使用(只介紹DEBUG模式,RELEASE模式是類似的)
 
選擇動態庫模式:
在VC++目錄中設定"包含目錄 " 為include地址; " 引用目錄"為提供的lib地址。注意這里的lib地址只是提供了接口信息。
鏈接器->輸入 填入lib名稱
將dll文件拷貝到PATH目錄能夠指向的地方,比如" C:\Windows\SysWOW64"
注意在交付的時候需要將支持的dll文件一並提供。
 
如果是靜態庫:
 
設置Include
設置引入"常規 附加庫目錄"
設置lib(注意填全)
注意,需要將"代碼生成"的"運行庫"改為"多線程調試"。這樣就將MFC自己的支持庫包含在最后生成的exe中了。
 
如果想要在程序設計的過程中,能夠直接修改OpenCV自己的代碼,添加相關功能,首先將Opencv項目引入
 
而后添加引用 設置項目依賴
 



end




免責聲明!

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



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