VS code的C++ opencv环境搭建

 

目录

1 引言

2 环境

3 步骤

3.1 Visual Studio Code 配置

3.2 openCV 配置

3.3 MinGw 配置

3.4 cmake 配置

4 VS code项目配置

5 最后


1 引言

断断续续搭建VS code的C++ opencv环境花了三天时间,走了很多弯路,特此记录一下。前不久照着书上配置了qt的opencv环境,顺带着安装了MinGW、cmake,这次配置VS code也需要用到这些软件,跟着别人的博客操作先尝试了使用MinGW作为编译器,但是cmake opencv总是不能成功,后来尝试使用vs自带的编译器mscv,这样就不用编译opencv,但还是不行,就尝试安装vs2019的mscv,可能是因为电脑已经安装了vs2015,导致vs2019的mscv安装失败,最后看评论结合另外的博客安装成功了。

 

2 环境

Visual Studio Code 最新版

openCV - 3.4.5下载Windows包

MinGw - 5.3.0

cmake - 3.9.0 

 

3 步骤

3.1 Visual Studio Code 配置

安装 C/C++ 插件(C++ Intellisense 可选)

 

3.2 openCV 配置

将 opencv-3.4.5-vc14_vc15.exe 解压到 除C盘外的其他盘内(若是C盘,cmake 时很可能报错)

在 opencv\build\x64 路径下新建一个 文件夹(可自起,这里是 MinGW )

 

3.3 MinGw 配置

 

win10下的64位系统 建议选择 与图像上一致的选项。

配置环境变量 path :

新增 C:\Program Files\mingw-w64\x86_64-5.3.0-posix-seh-rt_v4-rev0\mingw64\bin

检查是否配置成功
win键 + R 输入 cmd 打开 dos 框, 输入 gcc --version

 

若出现上诉画面,则配置成功

 

3.4 cmake 配置

配置环境变量 path :

新增 C:\Program Files (x86)\cmake-3.9.0-rc3-win64-x64\bin

运行 cmake-3.9.0-rc3-win64-x64\bin\cmake-gui.exe

照下图设置源码地址和编译后保存地址,然后点击 configure 按钮

按照下图所示进行选择

 

选择 MinGW 中的 C 和 C++ 编译的exe程序

我的路径: C:\Program Files\mingw-w64\x86_64-5.3.0-posix-seh-rt_v4-rev0\mingw64\bin

C:gcc.exe
C++ : g++.exe

 

1.设置完毕点击 Finish,耐心等待进度条读完,直到输出窗口看到 Configuring done。

2.勾选ENABLE_CXX11,和build opencv world(我这里只生成一个dll文件),再次点击 Configure 等待进度条读完。

3.之后点击Generate 等待进度条读完,出现 Generating done。

4.在dos框(windows power shell 也可以)里,利用 cd /d  命令 切换到 D:\opencv\build\x64\MinGW,输入 minGW32-make 命令,这个时候大概花费 40 分钟左右的时间来编译,编译完成之后,

5.输入 minGW32-make install 来完成装载。
  
6.最后,配置环境变量 path :

新增 D:\opencv\build\x64\MinGW\bin
 

注意:
1、使用 cmake 时要求安装 python3(版本没有限制,比2高就行),并且python 必须配好了环境变量。

2、如果每一步都是和以上步骤保持一致,还会出错,建议重启电脑(可能是某些环境变量没有立即生效)
 

 

4 VS code项目配置

新建一个 VScode 的工作目录文件夹,在文件夹里面新建一个文件夹.vscode,然后在.vscode文件夹里面新建三个文件,分别是

c_cpp_properties.json

launch.json

tasks.json

然后用VS code软件打开文件夹VScode,分别在这三个文件里面写入以下代码,根据自己的配置地址稍做修改。

 

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "D:/Software/vscode_mingw_opencv/MinGW53/mingw64/x86_64-w64-mingw32/include/c++/",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/include",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/include/opencv",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/include/opencv2"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "D:/Software/vscode_mingw_opencv/MinGW53/mingw64/bin/gcc.exe",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

 

launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "opencv3.4.5 debuge",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\Software\\vscode_mingw_opencv\\MinGW53\\mingw64\\bin\\gdb.exe",
            "preLaunchTask": "g++",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

 

tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "g++",
            "command": "D:\\Software\\vscode_mingw_opencv\\MinGW53\\mingw64\\bin\\g++.exe",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-I",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/include",
                "-I",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/include/opencv",
                "-I",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/include/opencv2",
                "-L",
                "D:/Software/vscode_mingw_opencv/opencv/build/x64/MinGW/install/x64/mingw/bin",
                "-l",
                "libopencv_world345",
            ],
            "options": {
                "cwd": "D:\\Software\\vscode_mingw_opencv\\MinGW53\\mingw64\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build"
        }
    ]
}

 

5 最后

测试代码打开一张图片

#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
int main()
{
    Mat img=imread("D:/VSCode/1.jpg");
    imshow("image",img);
    waitKey();
    return 0;
}

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值