opencv4.5.4+VS2022開(kāi)發(fā)環(huán)境搭建的實(shí)現(xiàn)
一、下載安裝Visual Studio
1.進(jìn)入:Visual Studio2022的官網(wǎng),點(diǎn)擊Community2022進(jìn)行下載。
2.雙擊運(yùn)行VS2022安裝包,點(diǎn)擊繼續(xù),等待幾分鐘。
3.安裝程序下載安裝驗(yàn)證完畢,將會(huì)提示進(jìn)入這個(gè)界面:
選擇C++的桌面開(kāi)發(fā)和Visual Studio 擴(kuò)展開(kāi)發(fā),右上角打?qū)︺^,然后更改安裝位置。
注意:修改不了緩存和共享組件、工具和SDK的安裝位置的解決方案:
打開(kāi)注冊(cè)表編輯器WIN + R --> regedit(或者直接搜索注冊(cè)表編輯器,輸入regedit),找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup下的SharedInstallationPath項(xiàng),直接刪除。然后打開(kāi)vs installer就可以更改安裝位置了。
二、opencv 庫(kù)的下載
1、opencv官網(wǎng),點(diǎn)擊Library中的Releases
2、選擇Windows版本,讀秒完成即可開(kāi)始下載
3、雙擊安裝包進(jìn)行安裝
4、安裝完打開(kāi)文件夾是這樣的
- build是OpenCV使用時(shí)要用到的一些庫(kù)文件
- sources中則是OpenCV官方為我們提供的一些demo示例源碼
三、修改 path 環(huán)境變量
補(bǔ)充:VC14 和 VC 15 的區(qū)別
- VC14,Visual Studio 2015編譯器
- VC15,Visual Studio 2017編譯器
1.把OpenCV文件夾放好地方后,依次選擇此電腦—>屬性—>高級(jí)系統(tǒng)設(shè)置—>系統(tǒng)變量,找到Path變量,選中并點(diǎn)擊編輯,然后新建把你的OpenCV執(zhí)行文件的路徑填進(jìn)去,然后一路點(diǎn)確定,這樣環(huán)境變量就配置完了。
xxxx\opencv\build\x64\vc15\bin
xxxx\opencv\build\x64\vc15\lib
四、配置文件
如果環(huán)境變量配置的準(zhǔn)確,切配置之后經(jīng)過(guò)重啟,就沒(méi)有進(jìn)入這部的必要。即做完上面的配置,重啟一次,直接跳到“五、配置VS2019”即可,看是否配置成功。
當(dāng)然,若不想重啟而想馬上查看是否配置成功,就要進(jìn)行這一步的配置。
將目錄 xxxx\opencv\build\x64\vc15\bin
下面的opencv_world452.dll
和opencv_world452d.dll
文件(你的不一定是一模一樣的,你只要找到opencv_worldxxx.dll和opencv_worldxxxd.dll即可)復(fù)制到目錄:(我的系統(tǒng)為64位)C:\Windows\SysWOW64
中。
注:如果Windows安裝在C盤(pán)。
- 32位系統(tǒng)的路徑為:
C:\Windows\System32;
- 64位系統(tǒng)的路徑為:
C:\Windows\SysWOW64。
為什么要進(jìn)行拷貝呢?
當(dāng)VS進(jìn)行編譯的時(shí)候,會(huì)默認(rèn)的來(lái)到這個(gè)文件夾下來(lái)尋找對(duì)應(yīng)的庫(kù)文件。
五、VS配置
1、打開(kāi)vs2022軟件,新建一個(gè)c++空項(xiàng)目,然后添加一個(gè)main(自己隨意命名).cpp源文件。
2、依次點(diǎn)擊 視圖-> 屬性管理器
3、生成自己的配置文件
- Debug|64 :表示在64位操作系統(tǒng),Debug 模式的配置文件。
- 頭文件路徑、庫(kù)路徑、庫(kù)文件名稱。
4、然后對(duì)屬性表進(jìn)行配置:VC++目錄—>包含目錄。(頭文件路徑)
xxxx\opencv\build\include
xxxx\opencv\build\include\opencv2
VC++目錄—>庫(kù)目錄(庫(kù)文件路徑)
xxxx\opencv\build\x64\vc15\lib
鏈接器:添加庫(kù)的名稱:opencv_worldxxxd.lib
后面多一個(gè) d :代表是debug版本的庫(kù)。(如果配置為Debug,選擇opencv_world450d.lib如果為Release,選擇opencv_world450.lib)
后綴lib記得到寫(xiě)上
六、測(cè)試使用
//打開(kāi)攝像頭樣例 #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/core/core.hpp> using namespace cv; int main() { VideoCapture cap(0); Mat frame; while (1) { cap >> frame; imshow("調(diào)用攝像頭", frame); waitKey(30); } return 0; }
到此這篇關(guān)于opencv4.5.4+VS2022開(kāi)發(fā)環(huán)境搭建的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)VS2022 opencv環(huán)境搭建內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++?超詳細(xì)分析多態(tài)的原理與實(shí)現(xiàn)
這篇文章主要介紹了C++多態(tài)的原理與實(shí)現(xiàn),多態(tài)是一種面向?qū)ο蟮脑O(shè)計(jì)思路,本身和C++不是強(qiáng)綁定的,其他語(yǔ)言當(dāng)中一樣有多態(tài),只不過(guò)實(shí)現(xiàn)的方式可能有所不同。下面來(lái)一起了解更多詳細(xì)內(nèi)容吧2022-03-03C++實(shí)現(xiàn)產(chǎn)生隨機(jī)數(shù)和相應(yīng)的猜拳小游戲?qū)嵗a
C++中沒(méi)有自帶的random函數(shù),要實(shí)現(xiàn)隨機(jī)數(shù)的生成就需要使用rand()和srand()。下面這篇文章主要給大家介紹了關(guān)于C++實(shí)現(xiàn)產(chǎn)生隨機(jī)數(shù)和相應(yīng)的猜拳小游戲的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-09-09用Visual Studio2017寫(xiě)C++靜態(tài)庫(kù)圖文詳解
這篇文章主要介紹了用Visual Studio2017寫(xiě)C++靜態(tài)庫(kù)的圖文教程,需要的朋友可以參考下2017-04-04C++ 內(nèi)聯(lián)函數(shù)inline案例詳解
這篇文章主要介紹了C++ 內(nèi)聯(lián)函數(shù)inline案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-09-09C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)樹(shù)之后序遍歷的實(shí)現(xiàn)
這篇文章主要介紹了C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之后序遍歷的實(shí)現(xiàn)的相關(guān)資料,這里提供一個(gè)簡(jiǎn)單實(shí)例來(lái)實(shí)現(xiàn)后續(xù)遍歷,對(duì)于數(shù)據(jù)結(jié)構(gòu)樹(shù)的學(xué)習(xí)很有幫助,需要的朋友可以參考下2017-07-07Matlab控制電腦攝像實(shí)現(xiàn)實(shí)時(shí)人臉檢測(cè)和識(shí)別詳解
人臉識(shí)別過(guò)程主要由四個(gè)階段組成:人臉檢測(cè)、圖像預(yù)處理、面部特征提取和特征識(shí)別。這篇文章主要介紹了如何使用MATLAB控制筆記本電腦的攝像頭,并進(jìn)行實(shí)時(shí)人臉檢測(cè)和識(shí)別,需要的可以參考一下2022-10-10Linux下C語(yǔ)言的fork()子進(jìn)程函數(shù)用法及相關(guān)問(wèn)題解析
fork()函數(shù)在Linux下可以用于產(chǎn)生一個(gè)子進(jìn)程,這里我們挑選了兩個(gè)fork相關(guān)的面試題,來(lái)看一下Linux下C語(yǔ)言的fork()子進(jìn)程函數(shù)用法及相關(guān)問(wèn)題解析2016-06-06C語(yǔ)言中等待socket連接和對(duì)socket定位的方法
這篇文章主要介紹了C語(yǔ)言中等待socket連接和對(duì)socket定位的方法,分別為listen()函數(shù)和bind()函數(shù)的用法,需要的朋友可以參考下2015-09-09C++實(shí)現(xiàn)LeetCode(147.鏈表插入排序)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(147.鏈表插入排序),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07vector, list, map在遍歷時(shí)刪除符合條件的元素實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇vector, list, map在遍歷時(shí)刪除符合條件的元素實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12