站長資訊網
最全最豐富的資訊網站

淺談VSCode中怎么搭建和配置opencv環境

VSCode中怎么搭建和配置opencv環境?下面本篇文章給大家介紹一下VSCode中搭建和配置opencv環境的方法,希望對需要的朋友有所幫助!

淺談VSCode中怎么搭建和配置opencv環境

前段時間我想學習opencv,由于我一直都習慣于用vscode來編寫代碼,所以還是決定用vscode來搭建opencv環境。我查閱過許多文章搭建環境,而后選擇了一篇文章的方法,該文章確實詳細,但我覺得還是有一些細節沒能說清楚,我后來借助了其它一篇文章的一個步驟才成功把環境搭建完成。因此決定結合這篇文章及自身體驗來說一下opencv的環境搭建步驟。

【推薦學習:《vscode入門教程》】

資源下載

MinGW-w64離線包下載地址: https://sourceforge.net/projects/mingw-w64/files/.
在線包下載會很慢,所以可以直接下載離線包。

淺談VSCode中怎么搭建和配置opencv環境

CMake下載地址:https://cmake.org/download/

CMake要選擇二進制文件,即Binary distributions欄目。選擇對應自己電腦的文件下載

淺談VSCode中怎么搭建和配置opencv環境
opencv庫: https://sourceforge.net/projects/opencvlibrary/.

軟件安裝與配置環境變量

安裝?

MinGW-w64與CMake都不用安裝,只需要解壓到存放的自選路徑(類似于安裝路徑)即可

配置環境變量

找到下圖的MinGW-w64文件夾位置:

淺談VSCode中怎么搭建和配置opencv環境

添加該路徑到環境變量,如我配置:F:MINGW64mingw64bin。

添加環境變量方法:右鍵我的電腦–>高級系統設置–>環境變量–>選擇在用戶變量和系統變量都可以,雙擊path添加路徑–>確定即可

淺談VSCode中怎么搭建和配置opencv環境

找到下圖的CMake文件夾位置:

淺談VSCode中怎么搭建和配置opencv環境
添加該路徑到環境變量,如我的配置:F:CMAKEbin。

找到下圖的opencv文件夾位置:

淺談VSCode中怎么搭建和配置opencv環境

添加該路徑到環境變量,如:F:opencv4.5.1opencvbuildx64mingwbin。

目前應具備的環境變量path

淺談VSCode中怎么搭建和配置opencv環境

檢查環境變量是否添加成功:

win+R鍵輸入cmd到終端:

淺談VSCode中怎么搭建和配置opencv環境
淺談VSCode中怎么搭建和配置opencv環境

在終端的命令有點不同,我的是gcc -v和cmake –version,是-v還是–version我也不清楚

生成MakeFiles

在操作cmake-gui前,如果沒有翻過墻的話,要先在C:WindowsSystem32driversetchosts文件最后追加:

151.101.72.133 raw.githubusercontent.com

因為cmake-gui會下載一些文件,這些文件都在raw.githubusercontent.com上,如果不修改一下hosts,許多文件很可能會下載失敗。

修改方法:將hosts文件以記事本的方式打開進行編輯,或直接拖到vsocde打開修改即可。若修改了但保存不了這種問題可以先復制一份,將原來的那份文件刪除,將修改好的文件復制回原位置即可。

打開cmake-gui后選擇源文件路徑和MakeFiles保存路徑(自選路徑),如圖:

淺談VSCode中怎么搭建和配置opencv環境

點擊Configure,彈出窗口配置如下:

淺談VSCode中怎么搭建和配置opencv環境

要注意下拉框選擇的是MinGW,不要看岔了。之后點擊Next,選擇MinGW文件中編譯工具如下,最后點擊Finish。

淺談VSCode中怎么搭建和配置opencv環境

執行過程中消息框會出現一堆紅色信息,最后顯示Configure done,是正常的。如果執行時中斷,則存在其他問題。在執行完后,勾選BUILD_opencv_world,WITH_OPENGL和BUILD_EXAMPLES,不勾選WITH_IPP、WITH_MSMF和ENABLE_PRECOMPILED_HEADERS(如果有的話),CPU_DISPATCH選空。如果要編譯opencv_contrib,則需要在OPENCV_EXTRA_MODULES_PATH 把路徑選擇為解壓的opencv_contrib文件中的“modules”文件夾。

再次點擊Configure,這次執行完后仍有錯誤如下:

淺談VSCode中怎么搭建和配置opencv環境

也就是說前面雖然修改了hosts,但是有些文件仍然沒有成功下載,解決的方法就是手動下載它們。可以用瀏覽器訪問下載鏈接,或者使用迅雷等下載器進行下載。CMakeDownloadLog.txt文件中列出了所有丟失文件的下載鏈接,比如:

https://raw.githubusercontent.com/opencv/opencv_3rdparty/759a23e24ab787a0979f8a93103dcc3105ec10c1/ffmpeg/opencv_ffmpeg.dll

一個個訪問這些鏈接,下載后放到OpenCV源文件里.cache的相應子文件夾中替代原緩存文件(下載的文件重命名為相應地緩存文件名并刪除原緩存文件)。這樣從頭到尾下載CMakeDownloadLog.txt中列出的所有丟失文件,之后,再次Configure,理論上不會出現紅色的錯誤消息了。然后點擊Generate,正常的話會顯示非紅色的消息Generate Done。一般翻墻成功的話都可以直接下載成功

編譯opencv

CMD到MakeFiles所在文件夾,執行minGW32-make命令,或者使用多線程minGW32-make -j 4命令:

淺談VSCode中怎么搭建和配置opencv環境

如果報錯可查閱下面的網址幫助:

https://blog.huihut.com/2018/07/31/CompiledOpenCVWithMinGW64/

一般問題都是可以通過勾選和去勾選解決的,因為之前就Configure過,因此回頭再Configure一下花不了太多時間。

如果同時編譯opencv_contrib,可能會報如下錯誤:

淺談VSCode中怎么搭建和配置opencv環境

編譯完成之后,輸入minGW32-make install 來完成裝載。

minGW32-make install

vscode配置

在VScode中安裝C/C++擴展,添加以下三個json文件:

launch.json 需要配置miDebuggerPath項。

{     "version": "0.2.0",     "configurations": [         {             "name": "opencv4.5.1 debuge",             "type": "cppdbg",             "request": "launch",             "program": "${workspaceFolder}\${fileBasenameNoExtension}.exe",             "args": [],             "stopAtEntry": true,             "cwd": "${workspaceFolder}",             "environment": [],             "externalConsole": true,             "MIMode": "gdb",             "miDebuggerPath": "F:/MINGW64/mingw64/bin/gdb.exe",             "setupCommands": [                 {                     "description": "為 gdb 啟用整齊打印",                     "text": "-enable-pretty-printing",                     "ignoreFailures": false                 }             ],             "preLaunchTask": "opencv4.5.1 compile task"         }     ] }

c_cpp_properties.json 需要配置compilerPath項和includePath項。

{     "configurations": [         {             "name": "win",             "includePath": [                 "${workspaceFolder}/**",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/include",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/include/opencv2",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/include/opencv2/myself_all"             ],             "defines": [],             "compilerPath": "F:/MINGW64/mingw64/bin/gcc.exe",             "cStandard": "c11",             "cppStandard": "c++17",             "intelliSenseMode": "clang-x64"         }     ],     "version": 4 }

tasks.json 需要配置command項、args項和options項。

{     "version": "2.0.0",     "tasks": [         {             "type": "shell",             "label": "opencv4.5.1 compile task",             "command": "F:/MINGW64/mingw64/bin/g++.exe",             "args": [                 "-g",                 "${file}",                 "-o",                 "${workspaceFolder}\${fileBasenameNoExtension}.exe",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/x64/mingw/bin/libopencv_world451.dll",                 "-I",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/include",                 "-I",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/include/opencv",                 "-I",                 "F:/opencv4.5.1/opencv/build/x64/mingw/install/include/opencv2",             ],             "options": {                 "cwd": "F:/MINGW64/mingw64/bin"             },             "problemMatcher": [                 "$gcc"             ],             "group": {                 "kind": "build",                 "isDefault": true             }         }     ] }

注意:如果是復制我的文件配置的話記得把opencv4.5.1改為你的對應版本

驗證程序:Ctrl+Shift+B編譯即可生成對應exe文件,然后F5運行。

#include<opencv2opencv.hpp> #include <iostream> using namespace cv; int main(int argc, char** argv) {     Mat src = imread("image/girl.jpg"); //圖片路徑為同一文件夾     namedWindow("window_1",0);     imshow("window_1", src);     waitKey(0);     return 0; }

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久国产乱子精品免费女| 麻豆精品一区二区综合av| 久久热这里只有精品在线观看| 国产亚洲美女精品久久久2020| 国产精品被窝福利一区| 拍国产乱人伦偷精品视频| 无码中文字幕日韩专区视频| 久久国产精品鲁丝片| 亚洲色精品vr一区二区三区| 完整观看高清秒播国内外精品资源| 国产亚洲高清在线精品不卡| 麻豆国产精品入口免费观看| 国内精品伊人久久久久妇| 亚洲精品第五页中文字幕| 99热这里只有精品国产动漫| 无码精品A∨在线观看| 亚洲国产精品嫩草影院在线观看| 国产成人麻豆亚洲综合无码精品 | 国产精品爆乳在线播放第一人称| 色综合久久精品亚洲国产| 久久国产亚洲精品| 精品午夜国产福利观看| 国产精品美女久久久| 精品久久人妻av中文字幕| 久久久久久精品成人免费图片| 91www永久在线精品果冻传媒| 中国精品videossex中国高清| 在线精品91青草国产在线观看| 亚洲精品在线视频观看| 国产精品久久久久…| 精品香蕉在线观看免费| 1000部精品久久久久久久久| 在线精品一区二区三区| 精品日产一卡2卡三卡4卡自拍| 成人久久精品一区二区三区| 国产精品日韩一区二区三区| 国产成人精品一区二三区| 午夜亚洲国产精品福利| 在线观看日韩精品 | 精品97国产免费人成视频| 67194老司机精品午夜|