当前位置: 首页 > article >正文

vscode配置opencv4.8环境

1 安装cmake

下载链接如下https://github.com/Kitware/CMake/releases/download/v3.27.7/cmake-3.27.7-windows-x86_64.zip

解压后放到指定目录后,添加bin目录到环境变量即可。

2 mingw安装

下载链接如下(下图的x86_64-posix-sjlj):

Download x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0.7z (MinGW-w64 - for 32 and 64 bit Windows)

解压后放到指定路径,并将bin目录添加到环境变量即可。

3 opencv安装

已经安装过的可以跳过此步!

win10使用mingw安装OpenCV4.8_opencv 4.8 mingw编译好-CSDN博客

4 在vscode配置opencv

先写一个测试代码test.cpp,内容示例如下:

#include <opencv2/opencv.hpp>
#include <iostream>

int main() {
    cv::Mat image = cv::imread("path/to/your/image.jpg");//绝对路径
    if (image.empty()) {
        std::cerr << "Could not open or find the image!\n";
        return -1;
    }
    cv::imshow("Display Image", image);
    cv::waitKey(0); // 等待按键
    return 0;
}

然后点击vscode左侧调试标识(小虫子),Run and Debug ->create a lauch.json file,接下来,选择C++ (GDB/LLDB)这个选项,配置好的launch.json如下:

{

    "version": "0.2.0",
    "configurations": [
        {
            "name": "C/C++: gdb Launch", // 配置名称,显示在调试配置选择器里
            "type": "cppdbg", // 调试器类型,cppdbg是C/C++的调试器类型
            "request": "launch", // 请求类型,表示启动调试器
            "program": "${fileDirname}/${fileBasenameNoExtension}.exe",
            //上面这个Debugger是我自己定义的,为了方便放置生成的exe文件
            "args": [],
            "stopAtEntry": false, //这里如果为 false,则说明调试直接运行。(反之则停止)
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,//是否调用外部cmd
            "MIMode": "gdb",
            "miDebuggerPath": "D:/Deps/mingw64/bin/gdb.exe",//自己进行设置
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": false
                }
            ],
            "preLaunchTask": "opencv4.8.0"
        }
    ]
}

然后配置tasks.json,如下:

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe build active file",
            "command": "D:/Deps/mingw64/bin/g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-ID:/Deps/opencv-4.8.0/build/include", // 替换为你的 OpenCV 头文件路径
                "-LD:/Deps/opencv-4.8.0/build/x64/mingw/lib", // 替换为你的 OpenCV 库文件路径
                "-lopencv_world480" // 注意版本号,可能是 opencv_world480.lib 或类似名称
            ],
            "options": {
                "cwd": "D:/Deps/mingw64/bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

配置c_cpp_properties.json,内容如下:

{
    "configurations": [
        {
            "name": "win32",
            "includePath": [
                "${workspaceFolder}/**",
                "D:/Deps/opencv-4.8.0/build/include", // 替换为你的 OpenCV 头文件路径
                "D:/Deps/opencv-4.8.0/build/include/opencv2" // 替换为你的 OpenCV 头文件路径
            ],
            "defines": [],
            "compilerPath": "D:/Deps/mingw64/bin/g++.exe",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "${default}"
        }
    ],
    "version": 4
}

 最后,点击调试或者运行,会生成对应的执行文件,需要提前将动态库libopencv_world480.dll拷贝到当前工作目录,如下图:

原文地址:https://blog.csdn.net/weixin_41041772/article/details/145155379
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/504941.html

相关文章:

  • 算法【有依赖的背包】
  • win32汇编环境,对话框程序中使用进度条控件
  • CentOS/Linux Python 2.7 离线安装 Requests 库解决离线安装问题。
  • Mybatis入门
  • SQL 指南
  • 【Linux】21.基础IO(3)
  • Open FPV VTX开源之嵌入式OSD配置
  • extends配置项详解
  • 深度学习中的模块复用原则(定义一次还是多次)
  • C语言数据结构编程练习-用指针创建顺序表,进行创销和增删改查操作
  • 屏幕轻触间:触摸交互从 “感知” 到 “智算” 的隐秘路径
  • 爬虫案例:python爬取京东商品数据||京东商品详情SKU价格
  • OpenSeaOtter使用手册-项目简介
  • # MyBatis 基础了解
  • camera 配置预览和拍照streams上报的可用尺寸列表
  • DevOps实用场景:在哪些业务中应用DevOps最有效
  • selenium操作指南,2万字总结
  • 【力扣Hot100】双指针
  • Linux磁盘存储与内存管理命令
  • 【C++学习篇】红黑树 从入门到进阶
  • Vue 开发者的 React 实战指南:表单处理篇
  • 微信小程序:跨页面数据修改全攻略
  • Web前端------HTML块级和行内标签之行内标签
  • Inxpect毫米波安全雷达:精准检测与动态保护,工业自动化可靠选择
  • 求 n 个数的最小公倍数(详解版)
  • Go语言编译的exe文件占用内存过大解决办法