Windows10:基於cmake-gui與Visual Studio 2019配置OpenCV4.2:完整過程

在這裏插入圖片描述

一、下載CMake和OpenCV庫

1.CMake下載地址:https://cmake.org/download/,下載windows版本即可,建議安裝v3.16及以上版本
2.下載opencv及opencv-contrib庫:
  https://github.com/opencv/opencv/releases
  https://github.com/opencv/opencv_contrib/releases
此外如果不想從源碼編譯,可以直接下載windows下的預編譯版本,然後直接跳到本博客第五小節開始配置。
pre-build binary

二、依賴庫的編譯

  想要獲取OpenCV4.2的完整功能,需要大量的依賴庫,比如OpenBLAS、Eigen、CUDA、cuDNN、Glog、Gflags、HDF5、OGRE、Boost、IPPICV IW、Caffe、ITT等,你需要提前編譯好這些庫,如果你缺少這些庫,你必須在之後的CMake中禁用相關的選項(有些會被自動禁用)。相關依賴庫的下載和編譯請自行百度或谷歌。

三、CMake中配置opencv

1. configure

打開cmake-gui,在opencv源碼所在的文件夾中創建一個build文件夾,然後按照如下圖方式配置:
在這裏插入圖片描述
然後點擊configure,首次點擊需要選擇VS版本,我這裏選擇visual sutdio 2019 ,然後再次點擊configure,出現configure done則表示configure過程結束,其中如果出現下面這個警告直接忽略就行:

CMake Warning at cmake/OpenCVGenSetupVars.cmake:54 (message):
CONFIGURATION IS NOT SUPPORTED: validate setupvars script in install directory
Call Stack (most recent call first):
CMakeLists.txt:947 (include)”

2. 提前下載相應的文件

  進行configure,會等好長時間,原因是在configure的過程中會下載很多文件(如下圖),經常是根本下載不下來,我們可以提前手動下載。
在這裏插入圖片描述
解決辦法:
  以上圖爲例,可以看到相應的下載文件名稱是:ippicv_2019_win_intel64_20180723_general.zip,根據紅色提示找到 3rdparty/ippicv/ippicv.cmake文件,裏面包含了ippicv_2019_win_intel64_20180723_general.zip文件的下載路徑,在瀏覽器中輸入路徑,然後回車就可以下載文件,下載好以後放入**.** cache文件夾中(. cache文件夾只有在configure之後纔會出現在opencv源代碼所在的目錄中)。
在這裏插入圖片描述
注意: 由於之前configure失敗,裏面的ippicv文件是0KB,文件名的開頭帶有"MD值-",將我們下載好的文件重命名,與 . cache中的文件名保持一致,然後替換掉它。
在這裏插入圖片描述
其他文件的下載和保存方式是一樣的,這裏就不贅述了。所有需要下載的文件在下面:
在這裏插入圖片描述

3. generate

  configure沒有問題的話,繼續點擊generate,會生成OpenCV.sln工程文件,這樣就可以在vs 2019中進行編譯了。點擊Open Project能直接打開該sln文件。

四、編譯

首先,選擇編譯方式:Release、X64或者Debug, X64,
然後,右擊ALL BUILD,選擇生成,開始漫長的編譯,耗時大約一個小時,可以抽根菸放鬆一下;
最後,如果編譯沒有錯誤,右擊INSTALL,選擇生成,會將相應的頭文件、庫文件、動態鏈接庫放到/build/install中。

五、Visual Studio中配置opencv

1.配置計算機環境變量

此電腦 -> 屬性 -> 高級系統設置 -> 高級 -> 環境變量 -> 系統變量 -> Path:
在這裏插入圖片描述

2.打開visual studio 2019創建一個控制檯程序

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

3.選擇平臺

在這裏插入圖片描述

4.配置包含目錄

首先打開屬性管理器,雙擊Microsoft.Cpp.x64.user,打開屬性頁對話框
在這裏插入圖片描述
在這裏插入圖片描述

5.配置庫目錄

在這裏插入圖片描述

6.配置附加依賴項

在這裏插入圖片描述

六、測試

代碼:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main()
{
	Mat image = Mat::zeros(300, 600, CV_8UC3);
	circle(image, Point(250, 150), 100, Scalar(0, 255, 128), -100);
	circle(image, Point(350, 150), 100, Scalar(255, 255, 255), -100);
	imshow("Display Window", image);
	waitKey(0);
	return 0;
}

運行後顯示如下,成功。
在這裏插入圖片描述
參考資料:
1.Adding OpenCV 4.2.0 to Visual Studio 2019 project in Windows using pre-built binaries
2.CMake opencv時Download: opencv_ffmpeg.dll、ippicv等失敗的解決方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章