VisualStudio2022 cmake配置opencv開(kāi)發(fā)環(huán)境
1. 環(huán)境與說(shuō)明
這里我用的是 widnows 10 64位
,Visual Studio
用的 Visual Studio Community 2022 (社區(qū)版)
對(duì)于Android
開(kāi)發(fā)工程師來(lái)說(shuō),為什么要使用Visual Studio
呢 ? 因?yàn)樵?code>Visual Studio中開(kāi)發(fā)調(diào)試OpenCV
方便,可以開(kāi)發(fā)調(diào)試好后,再移植到Android
中。
2. 下載OpenCV版本
官方地址在這里 : 官方下載地址
這里我們下載widnows
版本,對(duì)應(yīng)著就是opencv-4.8.0-windows.exe
2.1 安裝OpenCV
雙擊opencv-4.8.0-windows.exe
,將其安裝到指定目錄下,比如D:\Developer\opencv4.8.0
安裝 opencv-4.8.0-windows.exe
其實(shí)本質(zhì)上就是將其解壓到一個(gè)目錄下
3. 下載Visual Studio
這里下載 Visual Studio Community 2022 社區(qū)版就好了,免費(fèi)的,下載地址 : Visual Studio下載
3.1 配置所需的環(huán)境
Visual Studio
需要安裝配置所需的環(huán)境 ,具體在 工具 > 獲取工具和功能
中可以看到
我們需要勾選使用 C++的桌面開(kāi)發(fā)
和 使用C++的Linux開(kāi)發(fā)
在 單個(gè)組件中 SDK 、庫(kù)和框架
下勾選 Windows 10 SDK
和 Windows 通用 C
運(yùn)行時(shí)
在 編譯器、生成工具和運(yùn)行時(shí)
下勾選 用于 Windows 的 C++ CMake 工具
4 新建CMake項(xiàng)目
配置好環(huán)境后,我們打開(kāi)Visual Studio
,新建CMake
項(xiàng)目
這里我們把項(xiàng)目名命名為OpenCVTest
點(diǎn)擊創(chuàng)建,在選擇啟動(dòng)項(xiàng)這里,選擇OpenCVTest.exe
,然后點(diǎn)擊運(yùn)行
可以看到這樣一個(gè)命令行窗口,就表示運(yùn)行成功了
5. 驗(yàn)證OpenCV配置
5.1 復(fù)制 opencv_world480d.dll
將D:\Developer\opencv4.8.0\opencv\build\x64\vc16\bin\opencv_world480d.dll
復(fù)制到E:\WorkSpace\Demo\OpenCV\OpenCVTest\out\build\x64-debug\OpenCVTest
目錄下,即和OpenCVTest.exe
同一目錄下
oopencv_world480d.dll : Debug版本
opencv_world480.dll : Release版本
5.2 配置CMakeList.txt
在項(xiàng)目?jī)?nèi)(和cpp
同級(jí))的CMakeLists.txt
中,添加OpenCV頭文件的目錄,替換\
為/
,具體代碼如下
# CMakeList.txt: OpenCVTest 的 CMake 項(xiàng)目,在此處包括源代碼并定義項(xiàng)目特定的邏輯。 # 指定要引用的dll的頭文件所在路徑 include_directories("D:/Developer/opencv4.8.0/opencv/build/include") # 指定該dll的lib所在路徑 link_directories("D:/Developer/opencv4.8.0/opencv/build/x64/vc16/lib") # 將源代碼添加到此項(xiàng)目的可執(zhí)行文件。 add_executable (OpenCVTest "OpenCVTest.cpp" "OpenCVTest.h") # 指定鏈接庫(kù)的名字,即dll # 需要將opencv_world480d.dll復(fù)制到out\build\x64-Debug\OpenCVTest目錄下,即和OpenCVTest.exe同一目錄下 target_link_libraries(OpenCVTest opencv_world480d.lib) if (CMAKE_VERSION VERSION_GREATER 3.12) set_property(TARGET OpenCVTest PROPERTY CXX_STANDARD 20) endif()
5.3 編寫(xiě)cpp代碼
將一張圖片復(fù)制到D
盤(pán)根目錄,命名為ImageTest.jpg
然后在OpenCVTest.cpp
中編寫(xiě)如下代碼,將這張圖片分別以原圖和灰白圖片的形式展示出來(lái)。
#include "OpenCVTest.h" #include "opencv2/opencv.hpp" using namespace std; using namespace cv; int main() { cout << "Hello CMake." << endl; Mat img = imread("D:/ImageTest.jpg"); imshow("img", img); //顯示原圖 cvtColor(img, img, COLOR_BGR2GRAY); imshow("img2", img); //顯示灰色圖片 waitKey(); return 0; }
5.4 運(yùn)行效果
點(diǎn)擊運(yùn)行,顯示效果如下,兩個(gè)彈框分別顯示出了原圖和灰白圖片。
到此, Visual Studio
的項(xiàng)目中的 OpenCV
就配置成功了。
到此這篇關(guān)于VisualStudio2022 cmake配置opencv開(kāi)發(fā)環(huán)境的文章就介紹到這了,更多相關(guān)cmake配置opencv開(kāi)發(fā)環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解析內(nèi)存對(duì)齊 Data alignment: Straighten up and fly right的詳解
對(duì)于所有直接操作內(nèi)存的程序員來(lái)說(shuō),數(shù)據(jù)對(duì)齊都是很重要的問(wèn)題.數(shù)據(jù)對(duì)齊對(duì)你的程序的表現(xiàn)甚至能否正常運(yùn)行都會(huì)產(chǎn)生影響2013-05-05C++分析構(gòu)造函數(shù)與析造函數(shù)的特點(diǎn)梳理
本文對(duì)類的構(gòu)造函數(shù)和析構(gòu)函數(shù)進(jìn)行總結(jié),主要包括了構(gòu)造函數(shù)的初始化、重載、使用參數(shù)和默認(rèn)參數(shù),拷貝構(gòu)造函數(shù)和析構(gòu)函數(shù),希望能幫助讀者在程序開(kāi)發(fā)中更好的理解類,屬于C/C++基礎(chǔ)2022-05-0515種?C++?常見(jiàn)報(bào)錯(cuò)原因分析
這篇文章主要介紹了15種?C++?常見(jiàn)報(bào)錯(cuò),本文通過(guò)實(shí)例代碼給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01