自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 收藏
  • 关注

原创 VS 项目属性配置(右键项目 → 属性)

vc15=VS2017,vc16=VS2019/2022/2026,vc17 是更高版本,看你下载的 opencv 包。分【Debug / Release】分别配置,平台区分 x64(现在 opencv 基本都是 x64)480 是版本号,你是 470 就写 470、490 就 490,新版 opencv 只写第一条。

2026-11-05 08:28:22 160

原创 交互式交通灯

【代码】交互式交通灯。

2026-07-29 00:30:00 14

原创 普通红绿灯

【代码】普通红绿灯。

2026-07-28 00:45:00 24

原创 光敏电阻的使用

模拟接口测量的是电阻的电压,光敏电阻发生变化,电阻的电压也会发生变化。

2026-07-27 00:45:00 25

原创 analogWrite函数

analogWrite()函数输出结束后,该引脚将产生一个稳定的特殊占空比方波,直到下次调用analogWrite()函数(或在同一引脚调用digitalRead()函数或digitalWrite()函数)。大多数Arduino开发板(ATmega168或ATmega328)只有引脚3,5,6,9,10和11可以实现该功能。在使用analogWrite()前,不需要调用pinMode()来设置引脚为输出引脚。:pin为用于输入数值的引脚;引脚5和引脚6的PWM输出将高于预期的占空比(输出的数值偏高)。

2026-07-26 10:18:21 234

原创 analogRead函数

Arduino开发板包含1个6通道(A0到A5)(Mini和Nano有8个通道,Mega有16个通道),10位模/数转换器。这意味着它将0~5V之间的输入电压映射到0~1023之间的整数值。这将产生读数之间的关系,5V/1024单位,或0.0049V(4.9mV)每单位。它需要大约100us(0.0001)来读取模拟输入,所以最大的阅读速度是每秒10000次。注意:如果模拟输入引脚没有连入电路,由analogRead()函数返回的值将根据多项因素(例如,其他模拟输入引脚,你的手靠近板子等)产生波动。

2026-07-26 10:04:53 179

原创 A4988驱动步进电机

【代码】A4988驱动步进电机。

2026-07-19 16:39:40 35

原创 arduino-超声波传感器

距离计算公式: 距离 (cm) = 高电平微秒数 ÷ 58。发射超声波后,遇到障碍物反弹接收,ECHO 输出高电平,测量高脉冲长度以获得距离,ECHO(回声接收脚,输出)

2026-07-19 12:47:14 48

原创 LCD-1602液晶显示

写入屏幕显存,屏幕会把数据转为文字显示。

2026-07-19 10:39:13 211

原创 7段数码管

【代码】7段数码管。

2026-07-12 16:26:20 34

原创 蜂鸣器-arduino

如果在调用tone()函数的过程中不指定持续时间(duration),那么tone()函数会一直持续执行,直到程序调用noTone()函数为止。noTone()函数用来停止tone()函数产生的方波,该函数原型为:noTone(pin)其中,参数pin表示方波输出的针脚.区分有源和无源蜂鸣器可以从外观来初步判断:无源蜂鸣器的电路板通常是裸露的,有源蜂鸣器的电路通常是被黑胶覆盖的。蜂鸣器又分为有源蜂鸣器和无源蜂鸣器两种,这两种蜂鸣器如图所示。蜂鸣器的正极连接即可,驱动有源蜂鸣器的代码如下所示。

2026-07-12 15:29:56 175

原创 三色LED灯控制

【代码】三色LED灯控制。

2026-06-21 13:47:27 35

原创 点位器试验

【代码】点位器试验。

2026-06-21 12:00:10 25

原创 arduino按键试验

在按键实验中,如果不使用上拉电阻或者下拉电阻,会发现正确代码下载到Arduino开发板后,LED已经亮起来了,但是按键并没有被按下,这不是程序的问题,而是电路出现了问题。上节我们设计的小灯实验都应用到了Arduino的 I/O口的输出功能,本节实验我们尝试使用Arduino的 1/O口的输入功能即为读取外接设备的输出值,我们用一个按键和一个LED小灯完成一个输人输出结合使用的实验。在上拉电阻连接方案中,按键按下时,Arduino会检测到低电平,下拉法刚好相反,按下为高电平,一般情况下多采用下拉法。

2026-06-21 11:44:00 37

原创 LED闪烁实验

本文介绍了发光二极管(LED)的工作原理及Arduino控制实验。LED是一种低功耗、长寿命的半导体发光器件,通过PN结正向导通时电子空穴复合发光。实验中选用1.7V工作电压的LED,通过220Ω限流电阻与Arduino数字接口连接(上拉接法),当输出高电平时LED点亮,低电平时熄灭。实验代码实现了LED以1秒间隔闪烁的功能,通过digitalWrite()控制电平状态,delay()实现延时。该实验验证了LED的基本特性和Arduino的数字输出控制方法。

2026-06-21 10:35:41 167

原创 arduino串口输入

屏幕收到换行符后,光标就会移动到下一行。所以你看到的下一次输出出现在新行,实际上是。在 Arduino IDE 的串口监视器右下角,有一个下拉选项(通常默认为。读者可以思考为何上述代码没有换行代码,而在监视器上输出的数据会自动换行?当你在输入框中输入字符并点击“发送”时,监视器会自动在你输入的字符。,即 ASCII 码 10)或回车换行符(你的代码循环读取缓冲区,当读到这个。会把这个换行符原样输出到屏幕上。,然后再发送字符(例如发送。你观察到的“换行”效果,的停顿,没有换行)。,所以屏幕不会换行。

2026-06-21 10:05:46 224

原创 arduino串口输出

通过单击arduino IDE 右上角图标打开串口监视器,运行结果。

2026-06-21 09:48:09 48

原创 arduino-舵机驱动

接到任意一个数字 I/O 引脚,例如。:接到 Arduino Uno 的。:接到 Arduino Uno 的。

2026-05-10 19:56:38 62

原创 arduino-跑马灯

arduion_跑马灯

2026-05-10 10:05:21 38

原创 9.1threshold实现图像阈值分割

在OpenCV中,threshold函数是一个非常基础且强大的工具,用于将图像转换为二值图像(即图像的每个像素点非黑即白)。这个函数在图像预处理、特征提取、边缘检测等任务中非常有用。下面,我将详细解释如何在C++中使用OpenCV的threshold函数。在计算机视觉和图像处理中,阈值分割(Thresholding)是一种常用的图像处理技术,用于将图像转换成二值图像(黑白图像)。这种方法可以简化图像分析过程,使得后续的特征提取更加容易。OpenCV 提供了一个名为的函数来实现这一功能。

2024-10-15 08:27:37 1006

原创 2.4多路径读取图像

函数imwrite用来输出图像到文件函数声明函数从指定的文件中加载图像并返回它。如果由于文件缺失、权限不当或格式不受支持或无效等原因无法读取图像,则该函数将返回一个空矩阵(即Mat::data为NULL两种方法用于检查cv::Mat(OpenCV 中的矩阵类)对象是否为空。

2024-10-09 08:40:40 460

原创 9.10Mean-Shift分割算法

你可以使用 OpenCV 在 C++ 中实现 Mean-Shift 分割算法。

2024-10-08 08:45:08 989

原创 7.8透视变换

通过这些示例,你应该能够理解如何在OpenCV中使用C++实现透视变换。透视变换是一个强大的工具,用于模拟复杂的视角变换。

2024-09-28 04:45:00 1087

原创 6.8方框滤波

能够理解如何在OpenCV中使用C++实现方框滤波。方框滤波器是一个简单但有效的工具,可用于图像平滑和噪声减少。

2024-09-28 01:00:00 739

原创 5.10直方图均衡化

直方图均衡化(Histogram Equalization)是一种常用的图像处理技术,用于改善图像的对比度。通过调整图像中像素值的分布,直方图均衡化可以使图像的动态范围更广,从而增强图像的细节可见度。直方图均衡化的基本步骤如下:1. 计算图像的灰度直方图:统计每个灰度级的像素数量。2. 计算累积分布函数(CDF):根据直方图计算每个灰度级的累积概率。3. 映射原始灰度级到新的灰度级:将每个灰度级映射到新的灰度级,使得新的灰度级分布尽可能均匀。

2024-09-27 01:00:00 1652

原创 8.7基于数学形态学的边缘检测

数学形态学(Mathematical Morphology)是一套用于图像处理的技术,它包括膨胀(Dilation)、腐蚀(Erosion)、开运算(Opening)和闭运算(Closing)等操作。通过组合这些基本操作,可以实现复杂的图像处理任务,比如边缘检测。

2024-09-27 00:00:00 621

原创 8.12DoG (Difference of Gaussians)

不同尺度的高斯模糊图像之间的差异(DoG),用于边缘检测。函数: cv::GaussianBlur() 结合 cv::Laplacian() 或者自定义DoG实现。在OpenCV中并没有直接提供一个名为“DoG”(Difference of Gaussians)的函数,但是你可以通过组合使用高斯模糊(Gaussian Blur)来实现DoG的效果。DoG技术通常用于边缘检测和特征检测,如SIFT(Scale-Invariant Feature Transform)特征提取算法中。

2024-09-26 04:45:00 561

原创 9.2自适应阈值分割

自适应阈值分割是图像处理中的一个重要概念,它可以根据局部区域的亮度来调整阈值,从而在光照不均匀或背景复杂的图像中获得更好的分割效果。这种方法特别适用于光照条件变化较大的场景,或者是背景与前景对比度不均匀的情况。

2024-09-26 01:00:00 1602

原创 8.13霍夫变换-直线检测

在OpenCV中,可以使用标准霍夫变换HoughLines或概率霍夫变换HoughLinesP函数来实现霍夫变换直线检测。前者用于检测无穷长的直线,后者用于检测有限长度的线段。

2024-09-25 05:30:00 2288

原创 8.11Zero Crossing Detection (零交叉检测)

使用 OpenCV 和 C++ 实现零交叉检测功能,并对图像中的边缘进行检测。注意,零交叉检测的效果会受到拉普拉斯算子参数的影响,因此可能需要根据具体的应用场景调整这些参数。

2024-09-25 00:45:00 2652

原创 9.6grabCut进行分割

grabCut 算法是 OpenCV 中一个非常强大的图像分割方法,主要用于前景与背景的分割。它基于图割(Graph Cut)算法,并通过迭代的方式优化能量函数,以达到更好的分割效果。在 OpenCV 中,grabCut 函数通常用于处理包含复杂背景的图片,以分离出感兴趣的前景对象。grabCut() 是 OpenCV 提供的一个高级图像分割算法,它可以用来自动地分割图像中的对象。

2024-09-24 08:00:00 671

原创 9.5HSV体系进行颜色分割

inRange() 函数是 OpenCV 中用于图像处理的一个非常有用的函数,即从图像中提取出介于指定范围内的像素值。这个函数在图像处理中特别有用,比如颜色检测、背景去除等应用。它主要用于图像的阈值处理,但与其他阈值方法(如 threshold())不同的是,inRange() 可以设定一个范围来过滤像素值,非常适合用于色彩空间的分割,如从视频或图像中分离出特定颜色的物体。该函数经常与 HSV 色彩空间结合使用,因为 HSV 色彩空间对颜色变化的反应更加直观和自然。使用示例。

2024-09-24 01:00:00 1563

原创 6.7泊松噪声

泊松噪声通常用于模拟光子计数过程中的噪声,例如在低光条件下拍摄的照片中,由于光子计数的统计特性,会产生这种类型的噪声。因此,在进行图像增强、图像去噪等处理时,添加泊松噪声可以帮助评估算法在实际应用中的鲁棒性。

2024-09-23 01:00:00 2227

原创 10.3拉普拉斯金字塔

拉普拉斯金字塔(Laplacian Pyramid)是一种图像表示方法,常被用于图像处理和计算机视觉领域。它是基于高斯金字塔的一种变换形式,主要用于图像融合、图像金字塔的构建等场景。

2024-09-23 00:45:00 1872

原创 11.2开运算 闭运算 顶帽 黑帽

•开运算:先腐蚀后膨胀,用于去除小的噪声点。•闭运算:先膨胀后腐蚀,用于连接接近的物体。•顶帽变换:原图像减去开运算的结果,用于突出细节。•黑帽变换:闭运算的结果减去原图像,用于突出阴影区域。

2024-09-22 05:30:00 1037

原创 9.3Otsu阈值分割

使用 OpenCV 和 C++ 实现 Otsu 阈值分割功能,并对图像进行二值化处理。

2024-09-22 00:45:00 1247

原创 9.7floodFill图像分割

Flood Fill(洪水填充)是一种常用的图像处理技术,用于填充一个连通区域的颜色或者灰度值。在OpenCV中,可以使用floodFill函数来实现这一功能。Flood Fill算法常用于图像分割,尤其是在用户交互式标记或自动分割任务中。这个函数常用于图像分割任务,例如填充选定区域、对象分割等。floodFill 函数的工作原理类似于绘画软件中的“油漆桶工具”,它会从给定的起始点开始,查找具有相似颜色的所有相邻像素,并将它们的颜色替换为新颜色。

2024-09-21 07:15:00 912

原创 11.1图像的腐蚀和膨胀

图像腐蚀 图像膨胀

2024-09-21 00:45:00 1676

原创 8.1差分边缘检测

垂直边缘 水平边缘 对角线边缘。

2024-09-20 04:15:00 666

原创 7.6opencv中(基于C++) 镜像图像

在OpenCV中,镜像图像指的是沿水平轴或垂直轴翻转图像。这对于预处理图像、数据增强或者实现某些视觉效果非常有用。OpenCV提供了flip函数来实现图像的翻转操作。

2024-09-20 02:45:00 665

MFC下CComboBox类组合框控件示例

CComboBox类组合框控件示例

2024-07-21

MFC联合halcon将图片显示在PictureControl控件上

MFC联合halcon将图片显示在PictureControl控件上

2024-07-21

MFC编写一个对话框应用程序CMFC-Li6-4-学生信息Dlg,对话框中有一个列表框,当用户单击列表框中的一个列表项(一位学生

编写一个对话框应用程序CMFC_Li6_4_学生信息Dlg,对话框中有一个列表框,当用户单击列表框中的一个列表项(一位学生)时,在5个编辑框中分别显示这个学生的姓名、学号、性别、年龄及班级,外加一个下拉框用于选择显示学制。单击添加按钮时,“姓名”编辑框中的文本将被添加到列表框中(用于作为索引);选中列表框中某一列表项,单击删除按钮时,当前的列表项将被删除。

2024-07-21

MFC-Li6-3位图按钮

MFC_Li6_3位图按钮, CBitmapButton类可以对按钮弹起、按下、获得焦点和无效状态具有不同的位图。

2024-07-21

基于对话框的MFC,用单选按钮和多选按钮来控制画笔颜色,将画笔颜色显示在picture控件上

基于对话框的MFC,用单选按钮和多选按钮来控制画笔颜色,将画笔颜色显示在picture控件上

2024-07-21

本文利用子对话框编辑框来修改主对话框编辑框内容

本文利用子对话框编辑框来修改主对话框编辑框内容

2024-07-18

基于对话框的MFC下,利用Cimage类将读取的图像显示在CPictureCtrl控件上

基于对话框的MFC下,利用Cimage类将读取的图像显示在CPictureCtrl控件上

2024-07-18

MFC下进度条控件的自定义开源类

MFC下进度条控件的自定义开源类,来自其它网站

2024-07-18

MFC下-Sin函数绘制

单文档MFC下_Sin函数绘制

2024-07-18

在基于单文档的MFC下练习太极鱼图

在基于单文档的MFC下练习太极鱼图

2024-07-18

基于单文档的MFC下练习太极图

基于单文档的MFC下练习太极图

2024-07-18

基于对话框的MFC下,练习单选按钮

基于对话框的MFC下,通过控制选择不同的单选按钮来选择打开不同的对话框

2024-07-18

在基于对话框的MDC下利用OPencv将图片显示在pictureCtrl控件内

在基于对话框的MDC下利用OPencv将图片显示在pictureCtrl控件内

2024-07-18

在基于对话框的MFC下练习单选和复选功能

在基于对话框的MFC下练习单选和复选,通过控制复选框来控制RGB颜色值,控制单选按钮来控制亮暗程度

2024-07-18

MFC下基于单文档的打印实例

View::OnPrint下编写打印内容

2024-07-17

MFC中编辑框保存为csv文件

基于对话框的MFC0中,将编辑框中的内容保存为csv文件,并通过提示框读取显示的csv文件

2024-07-17

重写进度条控件虚函数,为进度条添加实时显示百分条进度

重写进度条控件虚函数,为进度条添加实时显示百分条进度

2024-07-16

MFC简单运用单选框按钮、时间列表框、编辑框、下拉列表框等控件编写的学生基本信息管理界面,注意是界面

MFC简单运用单选框按钮、时间列表框、编辑框、下拉列表框等控件编写的学生基本信息管理界面,注意是界面

2024-07-16

2.11键盘事件 视频文件

2.11键盘事件 视频文件

2024-09-04

OpenCV 读取 MP4 视频

OpenCV 读取 MP4 视频

2024-09-01

2.11键盘事件 视频文件

2.11键盘事件 视频文件

2024-08-30

数字图像处理-人脸识别(解密)

数字图像处理-人脸识别(解密)

2024-08-23

人脸识别视频版视频资源

人脸识别视频版视频资源

2024-08-23

数字图像处理-正交变换(解密)

数字图像处理-正交变换(解密)

2024-07-22

数字图像处理-人脸识别(解密)

数字图像处理-人脸识别(解密)

2024-07-22

数字图像处理-图像增强(解密)

数字图像处理-图像增强(解密)

2024-07-22

数字图像处理-图像编码(解密)

数字图像处理-图像编码(解密)

2024-07-22

数字图像处理-图像分割

数字图像处理-图像分割

2024-07-22

数字图像处理-分水岭分割

数字图像处理-分水岭分割

2024-07-22

数字图像处理-图像增强

基于MFC单文档的数字图像处理-图像增强

2024-07-21

数字图像处理-图像编码

图像编码处理

2024-07-21

基于单文档的MFC下,对数字图像进行一系列正交变换处理

基于单文档的MFC下,对数字图像进行一系列正交变换处理

2024-07-21

数字图像处理-人脸识别,在VS2013中编译C++的.cpp源文件,调取opencv图形处理库,对lena照片进行人脸识别

数字图像处理-人脸识别,在VS2013中编译C++的.cpp源文件,调取opencv图形处理库,对lena照片进行人脸识别

2024-07-21

MFC下编辑框的简单运用,计算,几个编辑框的和

内容来自weixin_64146154的博客,博主

2024-07-21

MFC中进度条CProgressCtrl类示例

本文借用开源重写类,重新定义进度条变量,达到进度条变色填充

2024-07-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除