自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

邱小兵的博客

一个正在努力学习机器视觉图像处理的菜鸡学生

  • 博客(26)
  • 资源 (9)
  • 收藏
  • 关注

原创 OpenCV4学习笔记(37)——CAMShift(Continuously Adaptive MeanShift)算法

在上次的笔记《OpenCV4学习笔记(36)——基于均值迁移(MeanShift)算法和直方图反向投影的目标移动跟踪》中,整理记录了一种针对目标的移动跟踪算法,主要是基于均值迁移和直方图反向投影来实现的。而今天要记录的笔记内容,依然是一种针对目标的移动跟踪算法——CAMShift目标移动跟踪算法,这种算法是基于MeanShift目标移动跟踪算法的改进。CAMShift算法其实就是连续自使用的Me...

2020-03-31 18:03:30 661

原创 OpenCV4学习笔记(36)——基于均值迁移(MeanShift)算法和直方图反向投影的目标移动跟踪

在前几篇博文中,整理记录了一些对于视频流进行运动物体检测的方法,例如稀疏光流跟踪、稠密光流跟踪、帧差法等等,但是这些方法都是面向视频中所有物体而言的。而有时候,我们需要的是对某一个特定目标进行跟踪分析,所以这就需要针对目标的移动跟踪算法来实现这种需求。这就是今天要整理的笔记内容:基于均值迁移(MeanShift)算法的目标移动跟踪。在之前的博文《OpenCV4学习笔记(15)——图像边缘保留滤...

2020-03-28 18:28:51 1414

原创 OpenCV4学习笔记(35)——基于帧差法的运动检测

在之前的《OpenCV4学习笔记(33)——KLT稀疏光流跟踪算法》和《OpenCV4学习笔记(34)——Farneback稠密光流算法》这两篇博文中,整理记录了基于稀疏光流跟踪和稠密光流跟踪算法实现的运动检测,而今天要记录的是另外一种实现运动检测的方法,那就是基于帧差法的运动检测。帧差法,也叫做帧间差分法,这里引用百度百科上的一段定义:帧间差分法是一种通过对视频图像序列中相邻两帧作差分运算...

2020-03-26 18:03:26 2910 2

原创 OpenCV4学习笔记(34)——Farneback稠密光流算法

在上次的博文OpenCV4学习笔记(33)——KLT稀疏光流跟踪算法中,整理记录的OpenCV中对于KLT稀疏光流跟踪的实现,同时也提到了光流跟踪算法除了稀疏光流跟踪以外,还有稠密光流跟踪算法。所以今天要整理的笔记内容就是在OpenCV中对于稠密光流跟踪算法的实现。先来回顾一下KLT稀疏光流跟踪算法,它是基于shi-tomas角点检测来实现的,只需要每个特征角点的邻域空间窗口内的局部信息来实现光...

2020-03-25 21:14:03 4475 1

原创 OpenCV4学习笔记(33)——LK稀疏光流跟踪算法

今天要整理的笔记内容是基于上一篇笔记《OpenCV4学习笔记(32)——角点检测》的一个拓展应用,那就是基于shi-tomas角点检测的光流检测算法。首先我们需要知道,什么是光流? 这里引用百度百科上的一段定义:这种图像亮度模式的表观运动(apparent motion)就是光流。光流表达了图像的变化,由于它包含了目标运动的信息,因此可被观察者用来确定目标的运动情况。 由光流的定义可以引申出...

2020-03-23 22:27:55 2995 1

原创 OpenCV4学习笔记(32)——角点检测

今天要整理的笔记是关于图像的一种特征点提取方法——角点检测。对于图像而言,它的特征主要是点和边缘。而角点可以说是一幅图像上最明显和最重要的特征,因为角点的存在意味着在图像该处有着非常明显的变化。角点往往是两条边缘的交点,它是两条边缘方向变换的一种表示,因此其两个方向的梯度变换通常都比较大并且容易检测到。对于一阶导数而言,角点在各个方向上的变化都是最大的,而边缘区域则只是在某一方向有明显变化。...

2020-03-21 18:33:11 2164 2

原创 OpenCV4学习笔记(31)——视频背景、前景提取分离及运动检测

这次要整理的笔记是视频背景、前景提取及运动检测,是通过对视频前面的一系列帧图像来提取背景模型,从而分离出前景目标和背景,进而对运动的前景目标进行检测。OpenCV中实现的背景模型提取算法有两种,一种是基于自适应高斯混合背景建模(MOG2)的帧差法实现的背景提取,另外一种是基于最近邻KNN算法实现的。这两种算法相比之下,基于自适应高斯混合背景建模(MOG2)的帧差法所能达到的效果更好,所以使用频率也...

2020-03-20 22:46:22 5335 4

原创 OpenCV4学习笔记(30)——透视变换(投影变换)

今天要整理的笔记是关于图像的透视变换的内容。首先需要了解什么是透视变换,这里引用百度百科上的内容:透视变换(Perspective Transformation)是指利用透视中心、像点、目标点三点共线的条件,按透视旋转定律使承影面(透视面)绕迹线(透视轴)旋转某一角度,破坏原有的投影光线束,仍能保持承影面上投影几何图形不变的变换。emmmmmm从严谨的定义来看的话,可能会有一点点抽象,那...

2020-03-20 18:13:14 3616 1

原创 OpenCV4学习笔记(29)——图像的各种形态学操作

今天要整理的笔记内容是关于图像形态学的操作。图像形态学,也叫做数学形态学(Mathematical morphology) 是一门建立在格论和拓扑学基础之上的图像分析学科,是数学形态学图像处理的基本理论,在图像处理中占有相当重要的地位。在图像处理中,对于图像形态学的应用相当的广泛,主要应用在对于图像的预处理操作当中,尤其是在对二值图像的预处理和分析方面,图像形态学是二值图像分析的重要分支学科。...

2020-03-18 18:34:37 1197

原创 OpenCV4学习笔记(28)——图像霍夫变换(霍夫直线检测、霍夫圆检测)

今天要整理的笔记内容是:图像的霍夫变换。那么,什么叫做霍夫变换呢?这里引用百度百科上 “霍夫变换” 词条的解释:霍夫变换是一种特征检测(feature extraction),被广泛应用在图像分析(image analysis)、计算机视觉(computer vision)以及数位影像处理(digital image processing)。霍夫变换是用来辨别找出物件中的特征,例如:线条。他的...

2020-03-17 18:07:11 1224 1

转载 (转载) Scale Invariant Feature Transform(SIFT)——尺度不变特征变换匹配算法详解

----------------------------转载-------------------------------原作者太强了,本来我还在看SIFT算法的论文,结果被自己菜成狗的英语水平和万恶的翻译图片错位给折磨的欲仙欲死。。。突然看到了这篇博客,再感叹一句真的是大神太强了。转载过来慢慢看把~尺度不变特征变换匹配算法详解Scale Invariant Feature Transfor...

2020-03-17 10:21:32 1489

原创 OpenCV4学习笔记(27)——轮廓的最大内接圆

今天依然是研究图像特征检测算法的一天,不得不说,前辈的智慧真是无穷无尽,想出了那么多种算法,真是太强了,本小菜鸟只是学习一点皮毛都得研究好久。。。好了步入正题,今天要整理的笔记内容是获取轮廓的内接圆。内接圆的定义是:与多边形各边都相切的圆,就称为该多边形的内接圆,每个正多边形都存在一个唯一的内接圆。从定义上来看,内切圆是和多边形的边相切的,但是轮廓大多数都是不规则的,很难找到一个和轮廓各边都相...

2020-03-16 22:40:08 10669 3

原创 OpenCV4学习笔记(26)——轮廓拟合直线、寻找极值点、点多边形检测

今天周日终于是没课的一天,所以兴致勃勃的开始学习图像的特征提取及描述这方面的内容,然后肝了一天,才研究了级联检测器和一些特征提取描述算法的皮毛层次的内容。。。而且ORB特征算法虽然在OpenCV里有封装好了的检测器,可是其内部包含了很多特征检测的知识,甚至提取特征和描述特征都使用了其他不同的特征算法相结合,深入点拆解开来研究的话这个内容真是不少的。。。搞到晚上十点多才有时间来整理下之前的笔记,唯一...

2020-03-15 23:25:28 6774 3

原创 OpenCV4学习笔记(25)——凸包检测

今天要整理的笔记是关于图像凸包检测的内容,首先需要了解什么是凸包。1. 凸包的含义凸包,是图形学中的一个概念,指的是一个完全凸起、没有凹处的多边形,也叫凸多边形,一般来说,凸包都是伴随着某个点集存在的,也被称为某个点集的凸包。对于一个点集而言,如果存在一个凸多边形完全地包含了这个点集的所有点,也就是说该点集内的点要么在这个凸多边形的边上,要么就是在这个凸多边形的内部,那么就称这个凸多边形是这...

2020-03-14 23:06:22 7336 2

原创 OpenCV4学习笔记(24)——椭圆拟合

在之前的笔记中,我们提取了图像中的轮廓信息,那么我们就可以通过这些轮廓来做一些进一步的操作。今天要整理记录的是对轮廓进行椭圆拟合。轮廓的椭圆拟合,就是将一个轮廓近似表示为一个与该轮廓形状相近的椭圆,当这个椭圆的长短轴相等时就是一个圆。如果我们的目标本身是一个圆或椭圆,但是可能存在一些瑕疵,例如缺角、凹陷等等,那么进行提取轮廓、椭圆拟合后,就可以得到和目标物体近似的完整椭圆。这就是轮廓椭圆拟合的...

2020-03-13 16:49:42 5293

原创 OpenCV4学习笔记(23)——几何矩、中心矩、归一化矩和Hu矩的计算,以及基于Hu矩的轮廓匹配

在上次的笔记中,整理记录了有关轮廓发现及轮廓信息提取的一部分内容,同时还记录了Hu矩的计算方式,今天就来记录一下Hu矩的一个应用——轮廓匹配。在OpenCV学习笔记(19)中,我们提到了使用模板匹配来实现对图像中的目标物体进行寻找的方法,但是由于模板匹配的工作条件比较苛刻,而且当模板和目标物体的大小或角度出现偏差时就无法达到比较好的效果,所以模板匹配这种方法只能作为一种入门级别的模式识别方法。...

2020-03-12 22:49:57 2166

原创 OpenCV4学习笔记(22)——轮廓发现

本次要记录的内容是轮廓的相关内容,由于内容比较杂乱,就一点一点地根据代码来整理吧。轮廓发现: Mat connected_image = imread("D:\\opencv_c++\\opencv_tutorial\\data\\images\\contours.png"); imshow("connected_image", connected_image); Mat connec...

2020-03-10 10:38:02 744

原创 OpenCV4学习笔记(21)——图像连通域

本次要记录的内容是:连通组件标记算法(connected component labeling algorithm)及其信息统计。图像的连通组件(或者称为连通域更顺口一点)是针对于二值图像而言的,我们都知道二值图像只有0和255这两种像素值分布,当我们扫描二值图像中的每个像素点,并将像素值相同的而且相互连通的像素点分为相同的连通域, 最终得到图像中所有的像素连通组件。最后得到的结果中,每一个连通...

2020-03-09 12:13:02 1356

原创 OpenCV4学习笔记(20)——二值分割

本次要整理记录的内容是有关于图像二值化的知识,图像二值化是一种非常重要的预处理手段,这步操作所得到的二值图像对后续的图像处理过程会有非常大的影响。如果能够获得质量很高的二值图像,那么后续的处理操作也会简便得多。- 全局阈值分割要对图像进行二值化操作,首先需要将图像转换成灰度图像,然后设置一个用来进行二值分割的阈值,再遍历灰度图像的每个像素点,如果该像素点的灰度值大于阈值,就将该像素点设为255...

2020-03-06 12:14:37 2287

原创 OpenCV4学习笔记(19)——模板匹配

本次要整理记录的内容是:模板匹配。模板匹配可以说是一种最简单的模式识别方法,它的实现主要是通过模板图像在被匹配图像中的平移,在被匹配图像中逐个区域寻找和模板图像相似的区域,如果存在某区域的相似度大于一定的阈值,则表明该区域和模板图像是相匹配的。但是模板匹配这种方式具有很大的自身局限性,首先它利用一个规定好的模板进行匹配,这就导致了想要匹配出来的结果必须在大小和角度上和模板图像一模一样,一旦原图...

2020-03-05 11:01:30 1163

原创 OpenCV4学习笔记(18)——图像金字塔及拉普拉斯金字塔

本次要整理记录的内容是关于图像金字塔的部分知识,主要分为高斯图像金字塔以及拉普拉斯金字塔两种。(高斯)图像金字塔图像金字塔是指将一幅图像变换为不同的尺寸,并从底部到顶部按照图像尺寸从大到小的顺序排列,形成的金字塔状的图像集。构建图像金字塔时,首先对一张输入图像进行高斯模糊再进行下采样为原来尺寸大小的1/4(高、宽均缩小为原来的二分之一),这部分操作也称为reduce操作:从原图生成高斯金字塔...

2020-03-04 22:36:59 600

原创 OpenCV4学习笔记(17)——常用导数算子

本次笔记要整理记录一些常用的导数算子,包括一阶导数算子和二阶导数算子等,这些导数算子种类比较繁杂,统一记录起来会比较容易回顾。- 常见一阶导数算子对于图像求一阶导数,就是求图像灰度曲线的导数,所以在灰度曲线中变化较大的区域,在导数曲线中体现出绝对值比较大的值,而灰度曲线中变化平坦的区域,在导数曲线中体现出接近零的值,通过求一阶导数的处理,能突出图像中对象的边缘,并且还具有方向性。常用的一阶导...

2020-03-04 11:56:41 3533

原创 OpenCV4学习笔记(15)——图像边缘保留滤波

本次要整理记录的是关于图像边缘保留滤波算法(EPF)的相关内容,主要有高斯双边模糊、均值迁移模糊和快速边缘保留滤波算法。这些算法在OpenCV中都提供了完善的API可以调用,我只是对其基本原理做了些许了解,并在此基础上学习各个参数的调教,下面就逐一来进行整理。- 高斯双边模糊说到高斯双边模糊感觉有些高大上,但是说到高斯模糊就显得接地气多了,之前曾经整理过,高斯模糊就是利用一个不断移动的窗口来获...

2020-03-03 10:29:19 1148

原创 OpenCV4学习笔记(14)——图像修复

本次要记录的内容是:OpenCV中的图像修复函数inpaint(),以及OpenCV中的有关鼠标操作函数。图像修复函数首先是cv::inpaint()这个API,官方文档中的描述是:在图像中利用选取的区域邻域,来修复该区域。个人认为它的作用是:获取被选取区域的邻域的像素值,经过某种处理后,赋值给被选取区域,将被选取区域中原有的像素值覆盖掉,这就实现了修复图像中一些瑕疵的效果。鼠标操作...

2020-03-02 18:14:19 556

原创 OpenCV4学习笔记(13)——图像添加椒盐、高斯噪声及去噪

本次要整理的内容是基于OpenCV学习笔记(12)中的三种模糊方式,首先为一张图像添加噪声,分别添加椒盐噪声和高斯噪声,然后通过均值模糊、高斯模糊和中值滤波来分别对比这三种滤波方式对不同种类噪声的抑制效果如何。最后再记录一种新的滤波方式:非局部均值滤波。对图像添加噪声噪声主要有椒盐噪声和高斯噪声。其中椒盐噪声就是在图像上随机分布的一些黑白噪声点,椒噪声就是黑色噪声点,盐噪声就是白色噪声点,可...

2020-03-02 12:22:49 2897

原创 OpenCV4学习笔记(11)——直方图反向投影

本次要整理的内容仍然是与直方图相关的操作,分别是直方图反向投影,和基于直方图反向投影的简易视频实时追踪。这两个部分的内容是息息相关的,第一部分是基础知识点,而第二部分是在此基础知识上的应用,首先开始整理直方图反向投影的内容。直方图反向投影从之前的笔记中我们已经了解到直方图是一幅图像的像素统计,那么其中必然会包含图像的某些信息,而且针对图像中的某一特定区域,其统计信息肯定在整体的直方图中也会有...

2020-03-01 12:13:26 419 1

基于OpenCV中ArUco模块和QT实现的增强现实效果(AR)

基于OpenCV中ArUco模块和QT实现的增强现实效果(AR),内含演示视频,需要有aruco标记才可以使用,如果打印的是其他aruco标记则需要对其四个顶点按照标记的id重新获取坐标。

2020-05-29

基于OpenCV4+QT5实现口罩检测.7z

基于OpenCV实现口罩检测功能,可以实时检测人脸是否佩戴口罩,并使用QT设计GUI界面。需要环境:openVINO(加速)、OpenCV4、QT5

2020-05-24

.cache.7z(编译opencv时的缺失文件)

使用cmake编译opencv时很经常缺失的文件,如果网络不好无法通过cmake下载,可以下载这个资源然后放置到sources里的对应文件夹即可继续编译。 包含boostdesc、opencv_videoio_ffmpeg、vgg、ippicv、data等文件。

2020-05-07

0~9印刷体数字识别.7z

基于自定义特征向量和SVM线性分类器实现的印刷体数字识别,内含源代码和训练、测试图像(包括印刷体数字和字母图像)

2020-04-17

CAM-Shift对象移动跟踪.7z

基于OpenCV中的CAM-Shift算法实现绘制彗星尾巴效果路径的移动对象跟踪。文件内包含一个演示视频,也可以调用摄像头进行特定对象跟踪。

2020-04-16

HOG+SVM自定义对象检测.7z

通过图像HOG特征提取描述和SVM线性分类器的训练学习,得到对自定义对象的检测模型。内含两个自定义对象的正负样本图像和测试图像可供测试。

2020-04-16

KNN手写数字识别.7z

利用OpenCV中的KNN聚类方法来实现手写数字识别,可实时在创建的窗口画板上书写数字并进行识别。内含训练用的手写数字数据,如果缺失dll文件可以下载我的另一个资源“install文件”,其中包含了联合openVINO和CUDA编译的OpenCV4.2.0版本的各个模块和dll。

2020-04-15

TKinter创建登录界面.7z

利用Python的TKinter模块实现的简易登录界面,可实现管理员和用户的注册、登录、编辑等功能。

2020-04-15

woterLine_dll.zip

利用OpenCV实现的水平线段检测功能,并封装为dll文件。 调用接口时输入字符串类型的点集,返回水平线段的信息,可用于数据图的统计分析。

2020-04-15

空空如也

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

TA关注的人

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