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

windows下的vscode + opencv4.8.0(C++) 配置

1.添加环境变量
D:\mingw64\bin

2.安装vscode

3.下载opencv 4.8.0

4.程序引用第三方库(opencv为例)

打开CMakeLists.txt,引入头文件,使用include_directories 加入头文件所在目录。静态链接库link_directories

# 头文件
include_directories(D:/opencv4.8.0/opencv/build/include)
# 静态链接库
link_directories(D:/opencv4.8.0/opencv/build/x64/vc16/lib)

在main 函数所在文件 添加 #pragma comment(lib,“xxx.lib”),如果当前程序是Debug
加 opencv_world480d.lib;否则加opencv_world480.lib

#pragma comment(lib, "opencv_world480d.lib")

5.测试代码

#include <opencv2/opencv.hpp>
#include <iostream>
#pragma comment(lib, "opencv_world480d.lib")
using namespace cv;
using namespace std;int main(int argc, char** argv) {Mat src = imread("D:/Work/opencv_test/images/1.jpeg");if (src.empty()) {cout << "could not load image..." << endl;return -1;}imshow("input", src);waitKey(0);return 0;
}

CMakeLists.txt

cmake_minimum_required(VERSION 3.28.0)
project(cpp_test)set(CMAKE_GENERATOR "MinGW Makefiles")
# 头文件
include_directories(D:/opencv4.8.0/opencv/build/include)
# 静态链接库
link_directories(D:/opencv4.8.0/opencv/build/x64/vc16/lib)
add_executable(app test01.cpp)
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)

tasks.json

{"version": "2.0.0","options": {"cwd": "${workspaceFolder}/build"},"tasks": [{"type": "shell","label": "cmake","command": "cmake","args": [".."]},{"label": "make","group": "build","command": "make","args": [],"problemMatcher": []},{"label": "Build","dependsOrder": "sequence","dependsOn": ["cmake","make"]},{"type": "cppbuild",//"label": "C/C++: g++ 生成活动文件","label": "Build",// "command": "/usr/bin/g++","command": "D://mingw64//bin//g++.exe","args": ["-fdiagnostics-color=always","-g","-o","${workspaceFolder}/bin/Debug/app.exe","-fexec-charset=GBK"],"options": {"cwd": "${workspaceFolder}"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "D://mingw64//bin//g++.exe"}]
}

launch.json

{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "(gdb) 启动","type": "cppdbg","request": "launch","program": "${workspaceFolder}/bin/Debug/app.exe","args": ["-I", "D:\\opencv4.8.0\\opencv\\build\\include",//改成你自己的"-I", "D:\\opencv4.8.0\\opencv\\build\\include\\opencv2",//改成你自己的],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": false,"MIMode": "gdb","setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true},],"preLaunchTask": "Build","miDebuggerPath": "D://mingw64//bin//gdb.exe", // 修改为你的 gdb 路径},]
}

参考文章:

VScode编写C++概述(VScode 使用opencv与Eigen为例)_vscode c++使用opencv msvc-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/euphorias/article/details/120783669

windows环境下cmake创建MinGW类型makefile报错_cmake error: error: generator : mingw makefiles-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_48876595/article/details/129414407

相关文章:

windows下的vscode + opencv4.8.0(C++) 配置

1.添加环境变量 D:\mingw64\bin 2.安装vscode 3.下载opencv 4.8.0 4.程序引用第三方库(opencv为例) 打开CMakeLists.txt&#xff0c;引入头文件&#xff0c;使用include_directories 加入头文件所在目录。静态链接库link_directories # 头文件 include_directories(D:/ope…...

微信小程序之多视频暂停播放,超出可视区域停止播放视频在自定义组件中实现案例

项目页面存在多个视频时&#xff0c;只播放视频可见范围内单个视频播放的解决方案 QQ录屏20240326175303 在自定义组件中无onPageScroll(e)监听页面滚动的函数所以在自定义组件中用<scroll-view>标签包裹所有组件&#xff08;以下为WXML页面源码&#xff09; <scroll…...

Java 加载外部 Jar 中的类并通过反射调用类中的方法

目录 问题 类加载器 获取外部 jar 包中的类以及方法 调用外部 jar 包中的方法 问题 工作中遇到一个需求&#xff0c;客户端将第三方的 jar 包上传到服务器中&#xff0c;系统需要解析出上传的 jar 中所有类以及类下的方法&#xff08;方法名&#xff0c;方法输入参数类型&…...

Arduino+ESP8266+华为云物联网平台实现智能开关

前言 最近在做一个物联网项目&#xff0c;涉及到智能开关的开发。目前已经实现简单的TCP通信远程控制&#xff0c;但是考虑到后期的设备管理以及设备通信所需要的技术和服务器的维护成本&#xff0c;我决定将设备接入云平台。本文将详细阐述如何利用华为云的物联网平台&#x…...

使用 python 拆分 excel 文件

文章目录 1、安装虚拟环境&#xff08;在特定文件夹内&#xff09;2、脚本 split.sh3、运行脚本&#xff08;在特定文件夹内&#xff09;4、结果 1、安装虚拟环境&#xff08;在特定文件夹内&#xff09; brew install python3 xcode-select --install python3 -m venv my_pan…...

uniapp小程序中onShareAppMessage(OBJECT)实现带参数的分享功能

一、引言 小程序中用户点击分享后&#xff0c;在 js 中定义 onShareAppMessage 处理函数&#xff08;和 onLoad 等生命周期函数同级&#xff09;&#xff0c;设置该页面的分享信息。 用户点击分享按钮的时候会调用。这个分享按钮可能是小程序右上角原生菜单自带的分享按钮&…...

5个免费的3D钣金CAD软件

如果你正在设计简单的折叠钣金零件&#xff0c;则只需设计一些具有圆角半径的法兰&#xff1a;一个简单的钣金模块。 首先&#xff0c;你可以采用老式方式绘图并以 2D 方式完成所有操作。 许多传统制造商仍在使用 2D DWG 和 DXF 图纸。 因此&#xff0c;你很有可能只需快速起草…...

3.26学习总结

java 实例变量和局部变量 实例变量是记录这个类中对象的特点的每一个对象的实例变量都可以不同(例如名字,性别等),其中一个对象的实例变量改变不会影响其他的变量. 类变量是一种特殊的实例变量,他的特殊在于所有的对象的类变量都是相同的,当一个对象改变了类变量那么所有对象…...

Cisco Catalyst3850交换机RTU license使用方法

1 情况说明 客户处采购了4台3850-14T交换机&#xff0c;在配置的时候发现OSPF不支持&#xff0c; 查询原因为当前license不支持 (lanbase, 只能支持2层功能&#xff09; 报错如下&#xff1a; Access-3850-1(config)#router ospf 100 Protocol not in this image2 如何处理&a…...

简明 Python 教程(第5章 函数)

本章介绍了函数的基本概念和使用方法&#xff0c;包括定义函数、传递参数、局部变量、全局变量、默认参数、关键字参数、返回值和文档字符串。 掌握这些概念对于编写结构化和可维护的Python代码至关重要。 定义函数 使用def关键字 定义函数始于def关键字&#xff0c;它告诉P…...

flutter 保存一堆多语言翻译词条,由key和value组成

原理&#xff1a; 1.从String列表里面获取某个value&#xff1a; List<String> jsonStrings [{"name": "John", "age": 30},{"name": "Jane", "age": 25},{"name": "Bob", "age…...

3月25日,每日信息差

&#x1f396; 素材来源官方媒体/网络新闻 &#x1f384; 京东汽车将和小米汽车进行深度合作 &#x1f30d; 百度将为苹果国行iPhone16提供AI功能&#xff1f;百度方面称暂无回应 &#x1f30b; 国产结核病新型mRNA疫苗即将问世 &#x1f381; 美国发布严重地磁暴预警&#xff…...

Git常用指令使用

摘要&#xff1a;之前代码管理都是借助于fork、sourceTree等图形工具&#xff0c;最近发现直接用命令也好用&#xff0c;就总结Git常用的指令 1、Git的介绍 1.1 git官网 安装: Git - Downloading Packagehttps://git-scm.com/download/mac Mac上安装&#xff0c;直接使…...

数据结构与算法 顺序表的基本运算

一、实验内容 编写一个程序实现&#xff0c;实现顺序表的各种基本运算&#xff08;假设顺序表的元素类型为char&#xff09;&#xff0c;并以此为基础设计一个程序完成下列功能&#xff1a; &#xff08;1&#xff09;初始化顺序表&#xff1b; &#xff08;2&#xff09;采…...

docker部署nacos(单机与集群)

拉去nacos镜像 [rootlocalhost keepalived]# docker search nacos NAME DESCRIPTION STARS OFFICIAL nacos/nacos-server This project contains a Docker image meant t… 464 …...

开启Safari手势支持

在使用Safari 的时候&#xff0c;大家有没有觉得不支持手势使用起来不是很方便&#xff0c; 触摸板只支持少量简单的手势&#xff0c;如缩放&#xff0c;滚动等。如果使用鼠标的用户&#xff0c;则完全无法使用手势。经过折腾研究&#xff0c;使用CirMenu应用可以完美解决这个要…...

Amuse:.NET application for stable diffusion

目录 Welcome to Amuse! Features Why Choose Amuse? Key Highlights Paint To Image Text To Image Image To Image Image Inpaint Model Manager Hardware Requirements Compute Requirements Memory Requirements System Requirements Realtime Requirements…...

Java冒泡排序详细讲解

冒泡排序是一种简单但效率较低的排序算法&#xff0c;它重复地走访过要排序的数列&#xff0c;一次比较两个元素&#xff0c;如果它们的顺序错误就把它们交换过来。具体实现如下&#xff1a; 算法步骤&#xff1a; 比较相邻的元素&#xff1a;从第一个元素开始&#xff0c;依次…...

python数据解析xpath

前言一、安装&#xff1f;二、使用步骤1.基本使用**【2】谓语&#xff08;Predicates&#xff09;**案例 前言 xpath在Python的爬虫学习中&#xff0c;起着举足轻重的地位&#xff0c;对比正则表达式 re两者可以完成同样的工作&#xff0c;实现的功能也差不多&#xff0c;但xp…...

工业镜头常用参数之实效F(Fno.)和像圈

Fno. 工业镜头中常用到的参数F&#xff0c;有时候用F/#&#xff0c;Fno.来表示&#xff0c;指的是镜头通光能力的参数。它可用镜头焦距及入瞳直径来表示&#xff0c;也可通过镜头数值孔径&#xff08;NA&#xff09;和光学放大倍率&#xff08;β&#xff09;来计算。有效Fno.…...

如何用免费AI助手提升3倍编码效率?DeepSeek-Coder-V2全解析

如何用免费AI助手提升3倍编码效率&#xff1f;DeepSeek-Coder-V2全解析 【免费下载链接】DeepSeek-Coder-V2 项目地址: https://gitcode.com/GitHub_Trending/de/DeepSeek-Coder-V2 在AI编程工具层出不穷的今天&#xff0c;开发者面临着一个关键选择&#xff1a;是为商…...

手把手教你恢复误删的xfce4面板(附备份还原完整流程)

深度解析XFCE4面板管理&#xff1a;从误删恢复到高效备份的全方位指南 XFCE4作为Linux桌面环境中轻量高效的代名词&#xff0c;其面板系统却常常成为用户操作的"高危区域"。我曾亲眼见证一位开发者同事在演示前夕误删所有面板&#xff0c;手忙脚乱地尝试各种恢复方法…...

RK3399pro固件逆向实战:3步提取文件系统(附完整命令)

RK3399pro固件逆向实战&#xff1a;从原理到实践的深度拆解 在嵌入式设备安全研究领域&#xff0c;固件逆向分析是获取设备内部运行机制的关键入口。作为Rockchip旗下的高性能处理器&#xff0c;RK3399pro广泛应用于智能硬件、边缘计算设备等领域。当我们拿到一个RK3399pro设备…...

FPGA实战:单总线协议解析与DHT11温湿度数据采集

1. 从零认识DHT11温湿度传感器 第一次拿到DHT11这个白色小方块时&#xff0c;我完全没想到这么便宜的传感器能有如此实用的功能。作为一款经典的数字温湿度复合传感器&#xff0c;DHT11通过单总线协议输出校准后的数字信号&#xff0c;省去了传统模拟传感器需要的ADC转换环节。…...

STM32磁悬浮平衡术(一):PID算法调校与硬件选型指南

1. PID算法&#xff1a;磁悬浮系统的"大脑" 磁悬浮系统的核心挑战在于如何让浮子稳定悬浮。想象一下&#xff0c;你要用手指顶着一根铅笔保持直立——这需要不断微调手指的位置来抵消铅笔的倾斜。PID算法就是STM32中扮演这个"微调手指"角色的关键程序。 PI…...

量化模型实测:百川2-13B-4bits在OpenClaw复杂任务中的精度损失

量化模型实测&#xff1a;百川2-13B-4bits在OpenClaw复杂任务中的精度损失 1. 测试背景与实验设计 去年在部署本地AI助手时&#xff0c;我遇到一个现实矛盾&#xff1a;大模型的能力与硬件成本难以兼得。当尝试用OpenClaw实现自动化办公流程时&#xff0c;发现13B参数的百川原…...

C#开发者的福音:用SqlSugar封装一个通用数据访问层,支持SQLite/SQL Server/MySQL一键切换

构建企业级数据访问层&#xff1a;SqlSugar多数据库适配架构实战 在当今快速迭代的软件开发环境中&#xff0c;数据访问层作为连接业务逻辑与持久化存储的关键桥梁&#xff0c;其设计质量直接影响着系统的可维护性和扩展性。对于C#开发者而言&#xff0c;SqlSugar以其轻量级和高…...

消息队列的缓冲作用:不止于临时暂存

在分布式系统架构中&#xff0c;消息队列常被提及的一个核心价值是“解耦”。然而&#xff0c;除了降低系统间的直接依赖之外&#xff0c;消息队列还承担着另一个关键角色——缓冲。很多人直观地感受到“消息队列能起到缓冲效果”&#xff0c;但这种缓冲究竟意味着什么&#xf…...

避开这些坑!个人免签支付平台实战对比:蓝鲸、V云、云免签到底怎么选?

个人免签支付平台深度评测&#xff1a;如何根据业务需求选择最优方案&#xff1f; 对于独立开发者和小型站长来说&#xff0c;支付接入一直是令人头疼的问题。没有企业资质无法直接对接官方支付渠道&#xff0c;而传统的第三方支付平台又往往门槛高、手续费昂贵。近年来兴起的个…...

实战指南:Whisper 的 `prompt` 与 `initial_prompt` 参数在语音转文字中的高效应用

1. Whisper 语音转文字的核心参数解析 第一次用 Whisper 做语音转文字时&#xff0c;我发现同样的音频文件&#xff0c;同事转出来的结果总比我的准确率高。后来才发现&#xff0c;原来他偷偷用了一个叫 prompt 的秘密武器。这就像考试时的"小抄"&#xff0c;给模型…...