Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

我的開發環境

VS2021

Qt5。14。2

OpenCV4。5。5

配置目的:想用OpenCV開發影片相關軟體,並且Windows下C#已經開發完成,想把其轉化為QT下C++完成,所以想現在Windows下除錯、翻譯後,然後在直接移植到Ubuntu下。所以對Windows下的編譯環境要求不是很大。先完成後再在Ubuntu下配置環境

一、開始記錄之前先看下Windows下MSVC和minGW編譯器的區別:

MSVC

:即Microsoft Visual C++ Compiler,即微軟自己的編譯器我們下載Windows下的OpenCV時,會帶兩個資料夾VC14,VC15(分別與Visual Studio的版本有對應關係),這兩個資料夾下的庫可以直接執行不需要編譯將VS作為Qt的開發環境也是使用這個編譯器的緣故

MinGW

:我們都知道GNU在Linux下面鼎鼎大名的gcc/g++,MinGW則是指Minimalist GNU for Windows的縮寫它是將GNU開發工具移植到Win32平臺下的產物,即一套Windows上的GNU工具集用其開發的程式不需要額外的第三方DLL支援就可以在Windows下執行,相對地,不使用動態庫導致的就是編譯出來的程式大很多。也是可以設定使用靜態庫的

簡單概括就是用

MSVC編譯器不需要自己編譯OpenCV庫,用MinGW需要用Cmake編譯OpenCV庫(及其繁瑣)

所以暫且就用

MSVC編譯器

來配置和使用OpenCV,Qt的安裝過程中需要注意事項:

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

具體的安裝可以參考文章:https://www。dianyuan。com/eestar/article-2864。html

二、QT中配置MSVC:

安裝完QT之後,進入 工具->選項->Kits,會發現MSVC的前面會有黃色感嘆號,如下所示:

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

這是因為MSVC2017的構建套件裡面沒有配置除錯工具。

在vs裡面進行更改安裝項,選擇下列圖片上的專案安裝

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

安裝兩個。cdb偵錯程式,最新sdk下載地址:https://developer。microsoft。com/zh-cn/windows/downloads/sdk-archive/,值需要安裝debuging tools for Windows就可以

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

安裝完成後,開啟qt creator的工具–選項–kits–編譯器,這時候圖片中的劃線位置就可以選擇了,

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

二、下面就是opencv的使用:

1。新建一個Qt專案

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

2。建立專案檔名和選擇你需要的路徑

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

3。選擇編譯器(

這裡劃重點

圖中的二個編譯器分別是

1.微軟官方提供的編譯器

2。MinGW是一款開源的window下專用的編譯器

因為我們下載的opencv 已經提供好了對windows下opencv的編譯,如果我們選用其他的非微軟的編譯器,就需要重新編譯。例如工業上使用非常多的cmake進行編譯,之後就可以使用別的編譯器對我們的程式進行編譯。在這裡我們使用微軟自帶的編譯器。

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

4。後面就沒什麼需要注意的了,也不需要更改,一路下一步

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

第三步:

根據我們的opencv所在位置給我們的專案檔案新增標頭檔案和庫目錄

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

新增完成之後的圖片,配置和在vs中原理相同,方法不一樣而已。

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

新增的時候不要照抄,根據自己的環境來配置。

新增完之後先編譯一下,讓我們的opencv標頭檔案生效——左下角的小錘子。否則可能會產生新增標頭檔案沒有效果的狀態。

最後實驗我們的成果,顯示一張圖片

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

Windows下Qt安裝和配置OpenCV(vs2021+Qt5.14.2+opencv4.5.5)

可以看到成功顯示了圖片和Qt的ui介面。

過程中出現問題:msvc-version。conf loaded but QMAKE_MSC_VER isn‘t set

解決方案: 開啟檔案D:\Qt\Qt5。14。2\5。14。2\msvc2017_64\mkspecs\common\msvc-version。conf 在其中新增版本QMAKE_MSC_VER = 1900,就可以解決