【VS2019+OpenCV4.5.1+OpenCV_contrib4.5.1安装+配置保姆式教程】

2023-05-16

文章目录

  • 前言
  • 一、搭建环境
  • 二、OpenCV_contrib4.5.1安装步骤(正文来了,敲黑板!)
    • 1.OpenCV_contrib拓展包编译
    • 2.Visual Studio2019编译
    • 3.环境配置
      • 3.1 系统环境配置
      • 3.2 Visual Studio项目环境配置
      • 3.3 测试
  • 三、Reference


前言

背景:初入OpenCV的世界,没人指导没人教,我一开始就直接下了OpenCV4.5.1(当时还没了解3和4的区别,只知道技术的东西肯定新有新的优势,虽然也会伴随着更多的未知,但还是毅然下了4),配合着原本装好的VS2019使用。这几天需要用到SIFT特征点检测的一些函数需要contrib拓展包的一些头文件,故在已经装好VS2019+OpenCV4.5.1的基础上,继续安装OpenCV_contrib4.5.1拓展包,因为4.5.1版本又是最新的,所以很多东西都是自己实践亲测出来的,真就每次装个东西,各位前辈们碰到的问题都全部集中在我身上,这就是all in吗?爱了爱了。
时长:历时3天(当然不是完完全全的72小时,但至少每天10+小时堆在这上面)。
吐槽:我看到有些帖子写:VS2015、VS2019装OpenCV_contrib不稳定,最后重装VS2017才成功安装和配置contrib拓展包。拜托,都什么时代了,还信这些,我就一愣头青的,非就用着最新的版本照样安装成功,时代在进步,当然我们也要努力突破啊(小白内心独白自述,dalao们当笑话看看就好哈哈哈哈)。


一、搭建环境

操作系统:Windows 10
软件:Visual Studio 2019、OpenCV4.5.1、OpenCV_contrib4.5.1拓展包、Cmake3.19.3.

注释:OpenCV和contrib拓展包的版本一定要一致!!!上述各安装包有很多博主前辈都有教在哪里找,也有教怎么安装,我就不赘述了。
比较难找的就只有contrib4.5.1拓展包,实在找不到的话可以去我发布的资源上下载,找资源不易,请多多包涵。

二、OpenCV_contrib4.5.1安装步骤(正文来了,敲黑板!)

1.OpenCV_contrib拓展包编译

在这里插入图片描述

第一栏Where is the source code是指OpenCV4.5.1解压后得到的source文件的路径;
第二栏where to build the binaries是指编译后输出文件的路径,我是直接在opencv的同个大文件夹下创了一个名为“contrib_new”的文件夹,此点看个人喜好和此时心情。

这两个路径设置好之后就可以点击【Configure】按钮,选择将源码编译成与VS版本相应的工程文件,如下图所示。
在这里插入图片描述
第一栏:对应的VS版本;
第二栏:编译后工程文件适用的操作平台版本,我电脑是64位的,所以我选择的是编译成是64位的OpenCV_contrib工程文件;
第三栏:跳过;
选项:选择本地编译器“Use default native compilers”;
最后Finish走起,几分钟后即可完成编译。
:编译前,请打开你的vpn!而且编译对网络要求很高,如果网线不行,请开手机热点,换着试。
有些东西就是玄学,我以前刚玩ROS的时候各位大神也是这么教的。
在这里插入图片描述

如果你足够幸运,只有上面那一栏报错,下栏毫无红色字体错误,那恭喜你,直接按我的文字配置上栏的即可。然而大部分人可能会像我一样,并不是那么幸运,结果就是这样,上下都红:

在这里插入图片描述

行吧,我们先一栏一栏来解决问题(ps:即使上下栏都有错误,都需要按如下步骤操作;仅有上栏错误的只需要按“上栏操作”进行):
上栏操作:在上栏界面中的变量中找到“BUILD_opencv_world”和“OPENCV_ENABLE_NONFREE”两个变量,在变量后面的方框中勾选,即打上“√”(含义可自行百度,但没必要)。随后,找到“OPENCV_EXTRA_MODULES_PATH”变量,在此变量后面加上【opencv_contrib4.5.1】文件夹里的【modules文件夹】的路径。最后再次点击【Configure】,直到上栏所有的红色变量变成白色(来来来,保姆上图!)。
在这里插入图片描述
在这里插入图片描述

下栏操作:首先,我们按照下栏找到编译日志的路径,点开CMakeDownloadLog.txt,看你所缺失的文件,也就是下载失败的文件,你按着路径进去看,会看到你需要下载的那几个文件目前在文件夹里的都是0k,即失效文件,我们要做的就是手动下载正确的文件来替换掉他们。
来了来了,又敲重点了,我第一次打开这个时有一共缺了14个文件,好家伙,我是重新编译了好几次后才变得这么少的,为什么又编译了好几次呢,这就是我走过的坑了,希望大家看完不要再走我的老路,节约时间,献身科研
在这里插入图片描述

正文开始CMakeDownloadLog.txt文件打开后可能很多人不知道怎么看,我拿一个缺失文件的描述来举例解释一下吧。

#do_copy "boostdesc_bgm.i" "0ea90e7a8f3f7876d450e4149c97c74f" 
"https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm.i" 
"D:/OpenCV/opencv/contrib_new/downloads/xfeatures2d"
#missing "D:/OpenCV/opencv/contrib_new/downloads/xfeatures2d/boostdesc_bgm.i"
#check_md5 "D:/OpenCV/opencv/sources/.cache/xfeatures2d/boostdesc/0ea90e7a8f3f7876d450e4149c97c74f-boostdesc_bgm.i"
#copy "D:/OpenCV/opencv/contrib_new/downloads/xfeatures2d/boostdesc_bgm.i" "D:/OpenCV/opencv/sources/.cache/xfeatures2d/boostdesc/0ea90e7a8f3f7876d450e4149c97c74f-boostdesc_bgm.i"

你的缺失文件是:boostdesc_bgm.i,其MD5值是:0ea90e7a8f3f7876d450e4149c97c74f,你需要做的是把这个文件下载回来,并改成相应的文件名放到指定的文件路径下。
下载的网址是:https://raw.githubusercontent.com/opencv/opencv_3rdparty/34e4206aef44d50e6bbcd0ab06354b52e7466d26/boostdesc_bgm.i
下载后文件要改成的名字是:MD5值+“-”+文件名,即例子中最后一行的:0ea90e7a8f3f7876d450e4149c97c74f-boostdesc_bgm.i
存放文件的路径是:D:/OpenCV/opencv/sources/.cache/xfeatures2d/boostdesc

按着这个方法,去下载所缺失的文件,并放到相应的路径替换掉他们。
上面这个只是例子,不是MD5值全部一模一样按着这个改,是教你怎么看!!!

注意(请认真看,这也是为什么编译了好几次的原因):

  1. 下载这些文件时,请打开你的VPN!打开你的VPN!打开你的VPN!如果打开了vpn还是打不开网页,请你换个vpn的服务器或者换个时间段,或者换个网络再打开这个网页(不要质疑我,我就是第一次打打不开,疯狂质疑各位dalao让我在浏览器打开这些网址的做法,走了很多弯路)。
  2. 后缀为.cmake.i的文件在浏览器中打开会显示出源码,请直接在网页上找到另存为的选项,将这些文件直接保存成对应的文件格式,不然使用不了。即,不要将代码复制下来,保存在新建的.txt文件中,再改名,这样没用!没用!没用!
  3. 全部替换完后,记得打开VPN,再回到CMake中,点击【Configure】。

如果实在搞不定这些文件,也可以在我过两天整理后上传的资源中下载,寻找和整理不易,勿喷(如果你搞得定,你也不会找资源了哈哈哈哈哈,我就是那个没钱下载只能疯狂自己探索的人哈哈哈哈哈哈哈)。

待下栏中出现Configuring done,且上下两栏都没有红色的错误文字提示时,恭喜你,你度过了最艰难的一步了。随后即可点击【Generate】,等待下栏出现Generating done,就基本完成了对OpenCV_contrib拓展包的编译,编译完之后文件夹会变得很大,小事情,不要慌,很大才说明编译成功了,很小的话说明有问题(此处无图,因为太激动了,没保存)。


我当初缺失的文件:
在这里插入图片描述
我一开始一共缺了16个,所以不要放弃,加油吧。
注:如果找不到可以到我发布的资源下载,鼓励自己找。

2.Visual Studio2019编译

进入刚刚编译好的.sln文件,可以从【Generate】后CMake界面进入,点击Generate旁边的【Open Project】直接进入,也可以从刚刚你创建用于存放编译项目工程文件的文件夹中找到.sln文件直接进入。
在这里插入图片描述
进入VS界面后,选择生成->批生成,勾选如下四个项目,点击【生成】。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

生成的时间会比较长,如果你上述所有步骤都没错的话,生成后的结果会是全都成功,有些步骤可能在CMake中【Configure】和
【Generate】都通过并没有警告字样,但有错误的话,在VS2019中生成是会有错误的(注:生成的数量因人而异)。

生成的数量因人而异

3.环境配置

注:以下添加文件的路径都是你刚刚自己创建用于存放编译项目工程文件的文件夹里文件,我的是在D:\OpenCV\opencv\contrib_new,“contrib_new”是我创建用于存放编译项目工程文件的文件夹
。环境配置的过程与配置OpenCV的过程很像。

3.1 系统环境配置

在“此电脑”-“属性”-“高级系统设置”-“高级”-“环境变量”-“系统变量”-“Path”,添加“...\install\x64\vc14\bin”,我的是D:\OpenCV\opencv\contrib_new\install\x64\vc16\bin。然后重启VS。
(注:我看有些博主是选择改“用户变量”,这个我是直接把整个系统变量的PATH配置了,一劳永逸。)

在这里插入图片描述

3.2 Visual Studio项目环境配置

在VS中新建一个空项目,进入后,右击,打开该项目的【属性】。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

① 在该属性页中,将“配置”和“平台”分别改为“所有配置”和“所有平台”;
② 在“VC++目录”中:
③ 在包含目录中加入:

...\install\include
...\install\include\opencv2

我自己的路径是:
D:\OpenCV\opencv\contrib_new\install\include D:\OpenCV\opencv\contrib_new\install\include\opencv2

在这里插入图片描述

④ 在库目录中加入:

...\install\x64\vc16\lib

我的路径是:
D:\OpenCV\opencv\contrib_new\install\x64\vc16\lib

在这里插入图片描述
⑤ 将“配置”改成“Debug”模式;
⑥ 选择“链接器”-“输入”
⑦ 在“附加依赖性”中加入:

opencv_world451d.lib

在这里插入图片描述

在这里插入图片描述
⑧ 同理,配置“Release”模式,在“附加依赖性”中加入:

opencv_world451.lib

在这里插入图片描述

在这里插入图片描述
注:可能很多博主在附加依赖项这一步的时候加了很多依赖,实际上我加了很多依赖后反而用不了,不加更能够使用。

附一堆附加依赖项
Debug模式:

opencv_aruco451d.lib
opencv_bgsegm451d.lib
opencv_bioinspired451d.lib
opencv_calib3d451d.lib
opencv_ccalib451d.lib
opencv_core451d.lib
opencv_datasets451d.lib
opencv_dnn451d.lib
opencv_dnn_objdetect451d.lib
opencv_dpm451d.lib
opencv_face451d.lib
opencv_features2d451d.lib
opencv_flann451d.lib
opencv_fuzzy451d.lib
opencv_gapi451d.lib
opencv_hfs451d.lib
opencv_highgui451d.lib
opencv_imgcodecs451d.lib
opencv_imgproc451d.lib
opencv_img_hash451d.lib
opencv_line_descriptor451d.lib
opencv_ml451d.lib
opencv_objdetect451d.lib
opencv_optflow451d.lib
opencv_phase_unwrapping451d.lib
opencv_photo451d.lib
opencv_plot451d.lib
opencv_quality451d.lib
opencv_reg451d.lib
opencv_rgbd451d.lib
opencv_saliency451d.lib
opencv_shape451d.lib
opencv_stereo451d.lib
opencv_stitching451d.lib
opencv_structured_light451d.lib
opencv_superres451d.lib
opencv_surface_matching451d.lib
opencv_text451d.lib
opencv_tracking451d.lib
opencv_video451d.lib
opencv_videoio451d.lib
opencv_videostab451d.lib
opencv_xfeatures2d451d.lib
opencv_ximgproc451d.lib
opencv_xobjdetect451d.lib
opencv_xphoto451d.lib

Release模式:

opencv_aruco451.lib
opencv_bgsegm451.lib
opencv_bioinspired451.lib
opencv_calib3d451.lib
opencv_ccalib451.lib
opencv_core451.lib
opencv_datasets451.lib
opencv_dnn451.lib
opencv_dnn_objdetect451.lib
opencv_dpm451.lib
opencv_face451.lib
opencv_features2d451.lib
opencv_flann451.lib
opencv_fuzzy451.lib
opencv_gapi451.lib
opencv_hfs451.lib
opencv_highgui451.lib
opencv_imgcodecs451.lib
opencv_imgproc451.lib
opencv_img_hash451.lib
opencv_line_descriptor451.lib
opencv_ml451.lib
opencv_objdetect451.lib
opencv_optflow451.lib
opencv_phase_unwrapping451.lib
opencv_photo451.lib
opencv_plot451.lib
opencv_quality451.lib
opencv_reg451.lib
opencv_rgbd451.lib
opencv_saliency451.lib
opencv_shape451.lib
opencv_stereo451.lib
opencv_stitching451.lib
opencv_structured_light451.lib
opencv_superres451.lib
opencv_surface_matching451.lib
opencv_text451.lib
opencv_tracking451.lib
opencv_video451.lib
opencv_videoio451.lib
opencv_videostab451.lib
opencv_xfeatures2d451.lib
opencv_ximgproc451.lib
opencv_xobjdetect451.lib
opencv_xphoto451.lib

3.3 测试

测试代码什么的我是不会给的了,自己写!
其实哪里需要测试什么,你在编程的时候试一试能不能找到xfeature2d.hpp头文件即可,如果配置失败,你这个头文件编译器是找不到的,如图即成功。
在这里插入图片描述
如果你加入了一堆附加依赖项后,反而最后生成解决方案找不到.hpp文件时,你不妨删掉试试?版本越高或许并不需要那么多花里胡哨的东西。

这是我调用SIFT测试的图(嗯,原图我也是偷来的,应该是安装OpenCV时偷哪位博主的,忘了哈哈哈哈哈):
在这里插入图片描述

祝君成功,献身科研!!!


三、Reference

https://blog.csdn.net/GIS_feifei/article/details/102531891
https://blog.csdn.net/weijifen000/article/details/93377143
https://blog.csdn.net/weixin_42331201/article/details/111560667
《OpenCV4 快速入门》人民邮电出版社出版

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【VS2019+OpenCV4.5.1+OpenCV_contrib4.5.1安装+配置保姆式教程】 的相关文章

  • Opencv中内存Mat表示

    我知道在内存中opencv将Mat对象表示为一个大数组 因此 如果我有 3 个尺寸为 200x200 的通道垫 那么在内存中它将将该垫存储在尺寸为 3x200x200 的数组中 或者更一般地说 内存中的任何 Mat 都将存储为channel
  • 如何在 OpenCV 中删除 mouseCallback

    在使用 C 的 OpenCV 中 有没有办法删除 mouseHandler int event int x int y int flags void param 通过函数添加到窗口 image window cv setMouseCallb
  • 将 RGB 转换为黑色或白色

    我如何在Python中获取RGB图像并将其转换为黑白图像 不是灰度 我希望每个像素要么是全黑 0 0 0 要么是全白 255 255 255 流行的 Python 图像处理库中是否有任何内置功能可以完成此任务 如果不是 最好的方法是循环遍历
  • 如何在没有 OpenCv Manager 的情况下运行 OpenCV 代码

    我正在使用 OpenCV4Android 版本 2 4 10 并在 Samsung Galayx GT I9300 上测试我的代码 我遇到的问题是 我必须从 Play 商店下载 Opencv Manager 以便我的 opencv 代码运行
  • 如何在 CMake Makefile 中包含 OpenCV 库

    我希望你可以帮助我 我有一个简单的 CMakeLists txt 以便在 Leopard 10 5 8 上构建我的项目 我正在使用 CMake 2 8 1 目前这是代码 cmake minimum required VERSION 2 8
  • 针对不同相机(RGB 和红外)的 StereoCalibrate

    我在校准两个摄像头时遇到问题 第一个是 RGB 第二个是红外 它们有不同的分辨率 我调整了大小并裁剪了更大的图像 焦距等等 例子 RGB 1920x1080 Infrared 512x424 如何相互校准它们 我应该在stereoCalib
  • 如何计算立体视觉的基本矩阵

    我正在尝试编写一些代码来计算基本矩阵以确定立体图像之间的关系 我从大多数人推荐的 Hartley 和 Zisserman 书开始 但它没有任何实际示例 并且示例代码是在 MATLAB 中 而我没有 然后我切换到这个比较实用 里面有实际例子
  • 从 2 个摄像头捕获(OpenCV、Python)[重复]

    这个问题在这里已经有答案了 所以我试图从 openCV 中的两个摄像头 python 和 windows 7 进行捕获 我用一台相机拍摄的效果很好 你也会注意到我正在对图像做一些时髦的事情 但这并不重要 这是尝试使用两个的代码 import
  • ValueError:当数组不是序列时设置带有序列的数组元素

    您好 此代码旨在存储使用 open cv 绘制的矩形的坐标 并将结果编译为单个图像 import numpy as np import cv2 im cv2 imread 1 jpg im3 im copy gray cv2 cvtColo
  • 如何在 opencv 3.0 Beta 中从文件读取 UMat?

    我想用UMat所以我的代码可以使用 OpenCL OpenCV 3 0 0 Beta 在 GPU 和 CPU 上运行 但我找不到将图像文件读入的方法UMat或转换一个Mat to UMat 如何将图像读入UMat 样品用于Mat to UM
  • Haar训练时正样本和负样本使用多少张图片?

    我已经阅读了大量有关 Haar 训练的内容 但我不清楚应该为正样本集和负样本集使用多少图像 我看到建议使用很多图像 有些人推荐数千张 我也不清楚正负样本图像的数量是否应该相同 这是关于 Haar 训练的最佳教程 你试过这个吗 http no
  • OpenCV 机器学习算法的 CSV 格式

    OpenCV 中的机器学习算法似乎使用以 CSV 格式读取的数据 参见示例这个 cpp文件 https code ros org trac opencv browser trunk opencv samples c tree engine
  • OpenCV 旋转图像而不裁剪澄清

    我想扩展这个主题 参考用户 Lars Schillingmann 给出的这个 SO 问题和接受的答案 在 C 中的 OpenCV 中旋转图像而不裁剪 https stackoverflow com questions 22041699 ro
  • 如何在 OpenCV 中将 Float Mat 写入文件

    我有一个矩阵 Mat B 480 640 CV 32FC1 包含浮点值 我想将此矩阵写入一个可以打开的文件Notepad https en wikipedia org wiki Windows Notepad or 微软Word https
  • 如何将k4a_image_t转换为opencv矩阵? (Azure Kinect 传感器 SDK)

    我开始尝试使用 Azure Kinect Sensor SDK 我经历了官方操作指南 https learn microsoft com en us azure Kinect dk about sensor sdk sensor sdk 我
  • 使用 OpenCV 和 Python 叠加两个图像而不丢失颜色强度

    如何叠加两个图像而不损失两个图像的颜色强度 我有图像1和图像2 2 我尝试使用 0 5 alpha 和 beta 但它给我的合并图像的颜色强度只有一半 dst cv2 addWeighted img1 0 5 img2 0 5 0 但是当我
  • OpenCV 读取视频文件时内存不足

    此示例从文件中读取视频cv2 VideoCapture在 python OpenCV 中内存不足 import cv2 cap cv2 VideoCapture file mp4 while True ret frame cap read
  • 在 Python 中使用音频流 RTMP 通过管道和 OpenCV 到 FFmpeg

    我正在尝试使用音频流式传输 FFmpeg 我将在下面展示我的代码 导入模块 import subprocess as sp 创建变量 rtmpUrl rtmp a rtmp youtube com live2 key camera path
  • 使用 pygtk3 将 GUI 窗口添加到 python opencv2 程序

    我已经使用Python和Opencv2完成了一个程序 现在 我想向我的程序添加一个 GUI 窗口 我对 PyGtk3 有一些经验 因此 我修改了代码以采用 PyGtk3 但是 我遇到了错误 因此 我尝试了一个简单的程序来找出实际的错误 我的
  • 类型错误:只有长度为 1 的数组可以转换为 Python 标量

    我是 openCV 的初学者 正在尝试分析数独求解器的现有代码 有这一段代码会引发错误 samples np float32 np loadtxt feature vector pixels data responses np float3

随机推荐

  • HTTP请求/响应报文结构

    HTTP请求报文 一个HTTP请求报文由四个部分组成 xff1a 请求行 请求头部 空行 请求数据 1 请求行 请求行由 请求方法字段 URL字段 和 HTTP协议版本字段 3个字段组成 xff0c 它们用空格分隔 比如 GET data
  • AStar寻路算法

    概述 AStar算法是一种图形搜索算法 xff0c 常用于寻路 他是以广度优先搜索为基础 xff0c 集Dijkstra算法和最佳优先 best fit 于一身的一种算法 示例1 4向 示例2 8向 思路 递归的通过估值函数找到最佳路径 x
  • ECCV2022 | 多模态融合检测新范式!基于概率集成实现多模态目标检测

    点击下方卡片 xff0c 关注 自动驾驶之心 公众号 ADAS巨卷干货 xff0c 即可获取 点击进入 自动驾驶之心技术交流群 后台回复 ECCV2022 获取ECCV2022所有自动驾驶方向论文 xff01 说在前面的话 标题 xff1a
  • 什么是地址映射

    ARM体系结构 地址映射 一 什么是地址映射 1 ARM Cortex A8架构 xff0c 32位CPU xff0c CPU设计时就有32根地址线和32根数据线 2 32根地址线决定了CPU的地址空间为4G xff0c 那么这4G空间如何
  • 寄存器和GPIO

    一 什么是GPIO 1 GPIO的英文全称General Purpose Input Output Ports 中文意思是通用I O端口 2 GPIO就是芯片的引脚 xff08 芯片上的引脚有些不是GPIO xff0c 只有一部分是 xff
  • 什么是I2C通信

    ARM体系 I2C通信 一 什么是I2C 1 I2C总线是由Philips公司开发的一种简单 双向二线制同步串行总线 它只需要两根线即可在连接于总线上的设备之间传送信息 2 主设备用于启动总线传送数据 xff0c 并产生时钟以开放传送的设备
  • 什么是AD转换

    ARM体系 ADC 一 什么是ADC 1 ADC xff1a analog digital converter xff0c AD转换 xff0c 模数转换 xff08 也就是模拟转数字 xff09 2 模拟信号只有通过A D转化为数字信号后
  • 什么是SPI通信

    ARM体系 SPI通信 一 什么是SPI通信 1 SPI是串行外设接口 Serial Peripheral Interface xff0c 可以理解为一种通信协议 xff0c 也就是用来传输数据的 2 SPI 是由摩托罗拉 Motorola
  • petalinux uboot源码在哪的问题

    petalinux uboot源码在哪的问题 提出问题解决问题注意 xff1a 要知道自己的版本 1 uboot2 kernel 提出问题 petalinux 源码目录存放在哪里的问题 xff0c 也就是petalinux工程的uboot和
  • petalinux uboot源码怎么打补丁

    petalinux的源码 petalinux工程对于我来说 xff0c 就是有一点不能直接起修改源码 xff0c 你需要间接的修改源码的内容 xff1f 这个修改你还需要遵从petalinux的规章流程 当你不知道的时候你会感到无从下手 x
  • 嵌入式Ubuntu根文件系统移植带桌面

    1 为什么要移植Ubuntu根文件系统 相信到达这一步的人 xff0c 都已经对根文件系统有了个充分的认识 xff0c 已经自己从无到有创建过根文件系统了 xff0c 玩过busybox的了 xff0c 也可能移植过别的嵌入式文件系统了 但
  • Keil5在已有项目中导入文件夹(文件或模块),后编译,头文件找不到问题

    Keil5在已有项目中导入文件夹 文件或模块 后编译 头文件找不到问题 如果你是以及成功导入文件后 但是编译时发现头文件找不到 可以直接从第二部分看起 第一部分导入文件 第二部分导入头文件 导入头文件时注意 注意 注意路径问题要和导入文件时
  • stm32之串口使用和串口中断

    1 定义 串口通讯 Serial Communication 是一种设备间非常常用的串行通讯方式 xff0c 因为它简单便捷 xff0c 因此大部分电子设备都支持该通讯方式 xff0c 其通讯协议可分层为协议层和物理层 物理层规定通信协议中
  • 万字长文解析CV中的注意力机制(通道/空间/时域/分支注意力)

    点击下方卡片 xff0c 关注 自动驾驶之心 公众号 ADAS巨卷干货 xff0c 即可获取 点击进入 自动驾驶之心技术交流群 后台回复 transformer综述 获取2022最新ViT综述论文 xff01 注意力机制是机器学习中嵌入的一
  • 5. STM32——串口发送字符、字符串 + printf 的重定向

    STM32 串口发送字符 字符串 43 printf 的重定向 基本框架1 配置时钟 xff1a 配置GPIO时钟 窗口时钟 引脚复用时钟2 配置GPIO结构体在 stm32f10x gpio h 头文件中查找相关函数函数 3 配置串口结构
  • Linux命令发送Http GET/POST请求

    Get请求 curl命令模拟Get请求 xff1a 1 使用curl命令 xff1a curl span class token string 34 http www baidu com 34 span 如果这里的URL指向的是一个文件或者
  • move_base做路径规划时,利用程序设置机器人在RVIZ环境下的初始位置坐标。

    在rviz仿真环境下 xff0c 可以通过2D Pose Estimate实现车辆或机器人的初始位置 xff0c 实际车辆或机器人不在rviz仿真环境下 xff0c 如何通过程序指定机器人的初始位姿呢 xff1f 2D Pose Estim
  • 运行node报错:Error: Cannot find module ‘body-parser‘

    在powershell中 xff0c 后端启动node app js时报错 xff0c 显示Error Cannot find module body parser 解决方案 xff1a 安装body parser模块 xff0c npm
  • 【OpenCV4.5.1】0x00007FFF1A789129 处(xxx.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置xxx。

    在学习的过程中 xff0c 偶尔遇到 0x00007FFF1A789129 处 xxx exe 中 有未经处理的异常 Microsoft C 43 43 异常 cv Exception xff0c 位于内存位置xxx 的错误 xff0c 按
  • 【VS2019+OpenCV4.5.1+OpenCV_contrib4.5.1安装+配置保姆式教程】

    文章目录 前言一 搭建环境二 OpenCV contrib4 5 1安装步骤 xff08 正文来了 xff0c 敲黑板 xff01 xff09 1 OpenCV contrib拓展包编译2 Visual Studio2019编译3 环境配置