OpenCV 4 C++環(huán)境快速搭建
1 OpenCV概述
根據(jù)百度百科的定義,OpenCV是一個輕量級的開源庫,基于Apache2.0許可協(xié)議,可以免費使用(包括商業(yè)應(yīng)用)的跨平臺計算機視覺和機器學(xué)習(xí)軟件庫,可以運行在多種主流的操作系統(tǒng)上,如 Linux、Windows、Android和Mac OS操作系統(tǒng)上。 OpenCV由一系列 C 函數(shù)和少量 C++ 類構(gòu)成,同時提供了Python、Ruby、MATLAB等語言的接口,實現(xiàn)了圖像處理和計算機視覺方面的很多通用算法,具備執(zhí)行效率高的特點。官網(wǎng)地址為:https://opencv.org 。其中包含軟件的下載以及文檔說明,其中包含C++語言和Python語言版本的。
2 OpenCV C++開發(fā)環(huán)境搭建
開發(fā)環(huán)境這里選擇Windows 10操作系統(tǒng),其中已經(jīng)安裝了Visual Studio 2019 或 Visual Studio 2019 社區(qū)版(免費),其他版本的 Visual Studio應(yīng)該也可以,不過選擇組件時要勾選C++相關(guān)組件,這里主要需要用到Visual C++相關(guān)的編譯器環(huán)境。關(guān)于Visual Studio 2019的安裝這里不再贅述。下面我們從OpenCV官網(wǎng)下載OpenCV安裝軟件,地址為: https://opencv.org/releases,界面如下所示:
其中OpenCV主要有兩個版本,即OpenCV4.x和OpenCV3.x ,二者有些API是不兼容的。所有應(yīng)該需要根據(jù)自己的情況來選擇,如果是新學(xué)習(xí)的,建議還是選擇新版本,即OpenCV4.x ,最新的穩(wěn)定版為OpenCV4.5.4 。注意:當(dāng)前的OpenCV5.x已經(jīng)在開發(fā)階段,但是生產(chǎn)環(huán)境還不建議使用。點擊【W(wǎng)indows】按鈕,會跳轉(zhuǎn)到下載頁面進行下載,我們這里等待直至下載完成。下載的文件名為 : opencv-4.5.4-vc14_vc15.exe 。雙擊安裝即可,它本質(zhì)是一個壓縮文件,安裝過程即是需要解壓到一個目錄中,我這里解壓到 C:\opencv 。安裝目錄中包含build目錄和source目錄,其中的build目錄結(jié)構(gòu)如下所示:
其中的x64目錄中,包含兩個VC版本的編譯后的庫文件,即VC14和VC15。本文安裝的編譯器采用的是VC14。下面還需要配置環(huán)境變量,首先配置PATH環(huán)境變量,將 C:\opencv\build\x64\vc14\bin 添加到PATH環(huán)境變量中。關(guān)于安裝過程可以參考官方兩個文檔:
https://docs.opencv.org/4.5.4/d3/d52/tutorial_windows_install.html
https://docs.opencv.org/4.5.4/dd/d6e/tutorial_windows_visual_studio_opencv.html
如果VS2019要使用OpenCV庫構(gòu)建應(yīng)用程序,我們需要做兩件事:第一,就是告訴C++編譯器OpenCV庫的基本定義和結(jié)構(gòu)信息,這需要通過給定頭文件來實現(xiàn)這一點。第二,就是當(dāng)需要OpenCV的函數(shù)或數(shù)據(jù)結(jié)構(gòu)時,需要告訴C++鏈接器從哪里獲取詳細(xì)信息,這就需要指定OpenCV庫相關(guān)的路徑。在Windows 10操作系統(tǒng)上使用的DLL系統(tǒng),C++鏈接器需要知道DLL的位置,以便在運行時搜索數(shù)據(jù)結(jié)構(gòu)或函數(shù)。此信息存儲在lib文件中。下面給出bin目錄的相關(guān)文件,如下圖所示:
下面用VS2019新建一個C++控制臺項目,并配置OpenCV庫目錄及鏈接器等信息,下面給出具體的步驟。在項目上右擊,在彈出的界面中選擇【屬性】,并配置【VC++目錄】相關(guān)信息,即【包含目錄】和【庫目錄】如下所示:
其中的【包含目錄】添加C:\opencv\build\include\opencv2和C:\opencv\build\include(不可少),其中包含了opencv2的頭文件信息。而【庫目錄】C:\opencv\build\x64\vc14\lib則包含了opencv_world454d.lib和opencv_world454.lib。opencv2的頭文件信息如下所示:
接下來,點擊【鏈接器】,點擊【輸入】,點擊【附加依賴項】,點擊右邊的下拉三角形,點擊【編輯】,將opencv_world454d.lib輸入即可。如下圖所示:
注意:保存配置完成設(shè)置,并注意將項目的平臺改成【x64】。下面將如下幾個文件拷貝到C:\Windows\System32,示意如下所示:
opencv_world454.dll
opencv_world454d.dll
opencv_videoio_msmf454_64d.dll
opencv_videoio_msmf454_64.dll
opencv_videoio_ffmpeg454_64.dll
3 OpenCV C++ 示例
當(dāng)基本環(huán)境配置完成后,可以編輯項目文件,在VS2019中,編輯示例文件如下所示:
//C:\opencv\sources\samples\cpp\tutorial_code\photo\decolorization #include "opencv2/photo.hpp" #include "opencv2/imgproc.hpp" #include "opencv2/highgui.hpp" #include "opencv2/core.hpp" #include
成功運行后,前兩個顯示的圖片界面如下所示:
此圖來自O(shè)penCV官網(wǎng)的樣例庫Samples中,關(guān)于C++樣例目錄為 C:\opencv\sources\samples\cpp 。
C++ OpenCV
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。