vscode配置opencv环境【完整版】-程序员宅基地

技术标签: C++  vscode  ide  opencv  

1.安装MinGW
并配置环境变量path
在这里插入图片描述

在终端输入gcc -v验证
在这里插入图片描述

2.安装cmake
3.官方下载opencv源码source
在cmake中编译,新建D:\opencv目录
先执行configure再执行generate
在这里插入图片描述
opencv目录下终端输入mingw32-make -j 8
完成后在输入
mingw32-make install
至此编译完成。
4.配置json文件
c_cpp_properties.json配置修改注释掉的两行

{
    
    "configurations": [
        {
    
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "D:\\opencv\\install\\include",
                "D:\\opencv\\install\\include\\opencv",
                "D:\\opencv\\install\\include\\opencv2"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.19041.0",
            //"compilerPath": "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/cl.exe",
            "compilerPath": "D:/mingw64/bin/g++.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            //"intelliSenseMode": "windows-msvc-x64"
            "intelliSenseMode": "clang-x64"

        }
    ],
    "version": 4
}

tasks.json配置在args下添加

{
    
    "tasks": [
        {
    
            "type": "cppbuild",
            "label": "C/C++: g++.exe 生成活动文件",
            "command": "D:\\mingw64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-I",
                "D:\\opencv\\install\\include",
                "-I",
                "D:\\opencv\\install\\include\\opencv",
                "-I",
                "D:\\opencv\\install\\include\\opencv2",
                "-L",
                "D:\\opencv\\bin",
                "-l",
                "libopencv_calib3d3416",
                "-l",
                "libopencv_core3416",
                "-l",
                "libopencv_dnn3416",
                "-l",
                "libopencv_features2d3416",
                "-l",
                "libopencv_flann3416",
                "-l",
                "libopencv_highgui3416",
                "-l",
                "libopencv_imgcodecs3416",
                "-l",
                "libopencv_imgproc3416",
                "-l",
                "libopencv_ml3416",
                "-l",
                "libopencv_objdetect3416",
                "-l",
                "libopencv_photo3416",
                "-l",
                "libopencv_shape3416",
                "-l",
                "libopencv_stitching3416",
                "-l",
                "libopencv_superres3416",
                "-l",
                "libopencv_video3416",
                "-l",
                "libopencv_videoio3416",
                "-l",
                "libopencv_videostab3416",
            ],
            "options": {
    
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
    
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}
#include <iostream>
using namespace std;
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
int main(int argc, char** argv){
    
    Mat image;
    image = cv::imread("1.jpg");
    imshow("image",image);
    waitKey(0);
    //if(image.data== nullptr)//nullptr是c++11新出现的空指针常量
    //{
    
    //    cout<<"图片文件不存在"<<endl;
    //    return 0;
    //}
    //else
    //    cout<<image<<endl;//你会发现图片就是一个矩阵
    return 0;
}
如果其间遇到问题
VScode:ERROR: Unable to start debugging. Unexpected GDB output from command “-exec-run“
原因:windows 环境变量中的设置顺序问题,导致 libstdc++ -6.dll 文件冲突了
简单来说就是 mingw64\bin 环境变量位置在后面, 导致 gdb 调试时选择的 libstdc++ -6.dll 不是 mingw64\bin 中的,而是前面的环境变量中的该文件
解决方法
方法一、将 mingw64\bin 中的 libstdc++ -6.dll 拷贝到项目目录
或者参考

测试代码
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_16792139/article/details/126262932

智能推荐

微信朋友圈+html+字体颜色,改变微信聊天字体颜色的方法?-程序员宅基地

文章浏览阅读8.1k次。小伙伴们如果经常使用微信聊天,发微信说说,看微信朋友圈。肯定曾经看到过一些字体带有不同的颜色,显得十分的华丽。面对这样漂亮的字体,小伙伴们看了之后怎么会不动心呢?俗话说心动不如行动,那么今天小编就来教大家如何发彩色字体!微信字体颜色修改方法第一步:我们先准备好html代码,如 安卓主题下载如下图输入第二步:等待我们发布成功后之 ,你发会现我们输入的安卓主题下载变成了红色了哦,如果你要其它色采我们也..._微信聊天红色字体代码多少

java json null或空字符串不传输到前台_@jsonfield(name = "dataset_id") 如果是属性是null 会传为json-程序员宅基地

文章浏览阅读7.2k次。java json null或空字符串不传输到前台转自:http://blog.csdn.net/xieyuntestshow/article/details/38495863大家平时用java对象转json字符串。null或者空字符串属性是不需要生成到json字符串里面的。如下方式生成,没有使用的属性也会生成json字符串属性。JSONArray jsonarra_@jsonfield(name = "dataset_id") 如果是属性是null 会传为json数据不

nginx php默认首页,iis、apache、nginx设置默认首页index.html方法图解 电脑维修技术网...-程序员宅基地

文章浏览阅读829次。文章简介一般来说,我们访问一个网站的首页如www.pc811.com就直接打开首页了,但是有些时间我们却发现输入网址后,却显示打不开网页404的错误提示,一般来说出现这种问题多是网站管理员未设置网站默认首页引起的问题。只需要在web服务器中进行默认首页的相关设置即可解决,本文就以国内比较常用的3款web服务器为例做一下设置说明,希望可以帮到这方面的网友。演示工具及注意事项演示系统:Windows2..._iis 默认 index.cshtml 改成 index.html

Android客户端与Java tomcat之间HTTPS通讯_jdk创建的tomcat公钥后安卓如何连接-程序员宅基地

文章浏览阅读3.6k次。Android客户端与Java tomcat之间HTTPS通讯,并实现post传值_jdk创建的tomcat公钥后安卓如何连接

pgadmin导出表及其数据_pgadmin的session怎么导出-程序员宅基地

文章浏览阅读8.6k次。以insert方式导出右键表–&gt;备份–&gt;格式(选择"无格式")–&gt;选择文件存放位置(存为.sql文件)–&gt;转储选项2(查询选择 使用字段插入、使用插入命令) --&gt;点击完成以COPY方式导出右键表–&gt;备份–&gt;格式(选择"无格式")–&gt;选择文件存放位置(存为.sql文件)–&gt;点击完成..._pgadmin的session怎么导出

多人 开源git服务器_Git 到底算不算程序员必备技能?-程序员宅基地

文章浏览阅读72次。因为各种原因,国内社交平台有关 Git 和其他版本管理工具的口水战一直没停,因为版本控制是必备需求,所以程序员热衷就此表达自己的看法:无论是自己写代码还是在企业工作,版本控制都是程序员的必备技能。经过多年发展,现在使用比较广泛的版本控制工具有 Git、SVN、Perforce、Hg、TFS 等。可能是由于 Github 和 Linus 的原因,Git 成为主流分布式版本控制系统,但国内不乏还在使用..._git代码必须开源吗

随便推点

使用epel和remi第三方yum源,安装指定常用版本php_remi-release-程序员宅基地

文章浏览阅读747次。使用epel和remi第三方yum源,安装指定常用版本php1、前言目前的生产环境中,CentOS服务器安装php的过程是最繁琐且依赖包众多,安装起来比较麻烦,又耗时间。用CentOS 7系统自带的yum源安装php时,版本型号较旧,为php5.4版本的。 其实,我们所遇到的问题,好多大神也遇到过,并且想出了解决的方法了!那就是我们可以通过第三方yum源来实现指定安装不同版本的php,并且不会替换自带的yum源。2、安装epel、remi第三方yum源2.1、 安装第三方源epel源]# _remi-release

Centos7升级Python2到Python3_centos 7下如何升级python2.7到python3-程序员宅基地

文章浏览阅读105次。在Centos7系统中,默认带的Python版本是Python2.7的,想用到Python3的新特性就需要升级.安装依赖包关于Python3.7以上的版本,需要多安装一个依赖包:> yum install -y libffi-devel否则会出现ModuleNotFoundError: No module named _ctypes的报错。安装python 3.7.3# 下载> wget https://www.python.org/ftp/python/3.7.3/._centos 7下如何升级python2.7到python3

计算机组成原理 第七章 习题_计算机组成原理习题7-程序员宅基地

文章浏览阅读285次。答案:BDCCBCAABBDAADA1617_计算机组成原理习题7

华为鸿蒙系统智能电视销量,鸿蒙系统不及预期效果?荣耀电视开售一月,被用户差评吐槽应用少...-程序员宅基地

文章浏览阅读88次。来源:雪球App,作者: 知顿,(https://xueqiu.com/1954740949/135103789)今年的华为,可是上热搜的“熟客”了,作为国际的通信巨头,华为的自主研发为企业带来巨额收入的同时,其研发的5G通信技术,都已经领先到世界的前线,就连对手的苹果手机都因为没有5G技术,让很多手机用户都大失所望。除了5G的先进技术之外,华为在核心部件-芯片领域上,也基本上可以拥有自主研发的技..._华为电视系统用户数

Mat矩阵设置目标感兴趣区域_python mat 兴趣区域 赋值-程序员宅基地

文章浏览阅读359次。cv::Rect rec;cv::Mat roi(hsv, rec);//生成一个目标感兴趣区域矩阵_python mat 兴趣区域 赋值

STM32堆栈溢出问题-程序员宅基地

文章浏览阅读2.3k次。通过map文件了解堆栈分配(STM32、MDK5)--避免堆栈溢出环境:STM32F103C8T6,MDK5在最近的一个项目的开发中,每当调用到一个函数,程序就直接跑飞。debug跟进去看不出什么逻辑错误,但发现函数内局部变量声明之后,全局变量的值被清零,后来查看局部变量地址已经超出栈的范围,于是确定是栈溢出。如果不稍微了解一下堆栈,在开发过程中可能碰到各种奇怪的错误。.map和sta..._stm32dsp库函数发现栈溢出