VS2017+OPENCV3配置

VS2017+OPENCV3配置

來自專欄 OpenCV3自學札記

OPENCV下載並安裝:

從官網下載opencv:OpenCV library

安裝:

隨便找個地方解壓一下就行了。。。

只需要看build這個文件夾就行了,其它不用管。

VS2017下載並安裝:

下載VS2017:Visual Studio IDE、代碼編輯器、VSTS 和應用中心

如果是只用C++的話,就只選這個。默認下一步就可以了。

下載安裝搞定之後,測試一下:

1.新建項目:

建立一個空項目,位置隨意。。。

2.新建cpp文件:

3.配置屬性頁(編譯器和鏈接器):

這裡選擇debug | x64

ps:如果建立的是win32程序的話,就在win32裡面新建。另外,如果在配置完屬性頁後,卻仍然inlcude頭文件的時候出現「找不到源文件」情況,請轉至文末問題2。

新建屬性頁。

雙擊它,就出現了這個。

按照順序,然後添加包含目錄。

你opencv安裝在哪,就選擇哪裡。一直選到.../include這裡。然後就點確定。

然後是添加庫目錄。

選中……/vc15這個文件夾。

ps:vc15對應VS2017,vc14對應VS2015,如果用的是VS2015,那就選……/vc14。

然後配置鏈接器。

手動輸入opencv_world341d.lib。

這個341對應的是opencv的版本號。

別的版本的話需要做相應的修改。「341d.lib」這個d對應的是debug,如果使用的是release模式,那就不要加d。

註:千萬不要同時添加「341.lib」和「341d.lib」。否則編譯不會出錯,但是運行可能會出錯。詳見文末問題3。

4.配置環境變數:

在環境變數,Path,然後添加路徑。

opencv安裝在哪裡,就添加到哪裡,……/bin目錄下放的是鏈接器程序。同樣的,VS2017選擇vc15這個目錄。

5.全部搞定之後,做個測試:

#include <opencv2/opencv.hpp>using namespace cv;int main() { Mat srcImage = imread("image.jpg"); namedWindow("test"); imshow("test", srcImage); waitKey(0); return 0;}

把image.jpg放到這個目錄下,然後點Project10.exe運行一下試試。

這樣就全部OK了。

下面是我初次嘗試過程中遇到過的各種小問題:

問題1:

之前用dev c++搞的ACM,換了VS2017做開發之後,發現VS2017不支持單個cpp文件的編譯,必須先建立項目。然後生成解決方案(F7),生成解決方案,就是對全項目進行編譯。或者也可以編譯單個文件,但是同樣必須先建立項目,然後選擇文件進行編譯。

問題2:

配置完了屬性頁之後,還是查找不到include的源文件。

原因是這個:

這個玩意兒默認是x86,之前配置的是debug x64,所以要換成x64,就沒問題了。

問題3:

之前自己配的時候,查了一些資料,有些人說鏈接器依賴項那裡「opencv_world341.lib」和「opencv_world341d.lib」兩個都要添加,其實只要添加一個(媽的之前查了半天代碼沒問題,結果問題是這個)。

兩個都加可能會出問題。比如namedwindow()和imshow()衝突。。

還是之前的測試程序。兩個都添加之後,編譯依然能夠通過。但是運行後出現了兩個窗口。

問題4:

配置完一次屬性頁後,新建項目,結果發現原先配置的屬性頁沒了。

這是因為VS的屬性配置不是永久保存的,新建項目就會重置。如果想要省事,減少再次配置的麻煩,那就把之前配置的屬性頁保存一下,下次新建的時候重新添加就行了。

順著目錄可以找到這個,這個就是之前配置的屬性頁。把它挑出來隨便找個地方放著,比如放到桌面。下次進去重新添加即可。

康明與

kshenkey@foxmail.com

2018-5-15


推薦閱讀:

【機器視覺】1. 張正友平面標定法
【論文筆記】Unlabeled Samples Generated by GAN Improve the Person Re-identification Baseline in
使用三維信息優化搜索結果的嘗試
[CVPR2018筆記]Disentangled Person Image Generation
如何用flask部署pytorch模型

TAG:OpenCV | 計算機視覺 |