自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大坡3D软件开发

自主操作系统和CPU--用软件来改变世界

原创 老蔡学堂

比特币源码入门教程https://edu.csdn.net/course/detail/6998深入浅出Matplotlibhttps://edu.csdn.net/course/detail/6859深入浅出Numpyhttp://edu.csdn.net/course/detail/6149 ...

2016-06-24 07:13:24

阅读数 8402

评论数 0

原创 在OpenCV里Harris角检测2

Opencv中的Harris角点检测 Opencv中有一个函数cv2.cornerHarris()用来实现这个算法, 参数是: src- 输入图片,需要灰度图且类型float32 blockSize - 是角点检测考虑的邻域大小 ksize - Sobel所用参数 k - Harr...

2019-10-19 18:15:42

阅读数 3

评论数 0

原创 在OpenCV里Harris角检测

前面学习了很多关于图像的内容,以及变换,那么你有没有问过自己这样一个问题,什么才是图像的特征?如果我们把一个图像进行分割成一小块一小块的,然后打乱之后再想拼到一起,会寻找什么的规律呢?一般情况之下是找对应的条纹,边缘线等,其实最容易确定一般是有十字交叉的线条,因为这样交叉线条组成了角,而角的两条边...

2019-10-19 16:36:38

阅读数 4

评论数 0

原创 在OpenCV里使用GrabCut算法抽取前景

前面学习过分水岭算法来分离背景与前景,现在来学习另一个标记算法GrabCut,它也是通过标记来抽取前景的算法。这个算法与分水岭算法标记不一样,比如只要简单地标记一个前景的方框,就可以抽取出来,不过计算量就有点大了。如下图: 在这里使用红色的矩形把中间的烧鸭选出来,就这样就可以把它放到Open...

2019-10-18 11:43:59

阅读数 9

评论数 0

原创 在OpenCV里实现分水岭算法

目标:学习基于标记的图像分割算法,又叫做分水岭算法,以及使用cv.watershed()函数。 理论: 任何灰度图像都可以看作是一个地形表面,高强度表示山峰和丘陵,低强度表示山谷。你开始用不同颜色的水(标签)填满每个孤立的山谷(局部最小值)。随着水位的上升,根据附近的山峰(坡度),来自不同...

2019-10-18 09:37:16

阅读数 4

评论数 0

原创 在OpenCV里实现模板匹配

目标:使用模板匹配方法在图片里寻找目标对象,学会使用cv.matchTemplate(), cv.minMaxLoc()函数 模板匹配算法是从一个大图像里找到感兴趣的目标对象,OpenCV提供函数cv.matchTemplate()来实现相关的功能。模板匹配的原理其实很简单,就是不断地在原图...

2019-10-17 11:49:28

阅读数 10

评论数 0

原创 在OpenCV里为什么拉普拉斯变换是高通滤波

大家学习了拉普拉斯变换之后,老是喜欢问为什么拉普拉斯变换是高通滤波(HPF)? 在这里通过傅里叶变换来研究一下这些卷积核的本质,就可以清楚地了解它们到底是什么样类型的滤波。下面来把所有卷积核构造出来,然后每个都进行傅里叶变换,再查看它们的频谱图。 例子如下: #python 3.7.4,op...

2019-10-17 10:32:53

阅读数 5

评论数 0

原创 在OpenCV里Numpy傅里叶变换

前面学习使用OpenCV里的函数实现傅里叶变换,其实Numpy里也有相应的变换,它的变换与Matlab更加接近,如果你想从matlab代码转换过来,使用它可能更加容易一些。 好吧,理论就不多说了,直接来看例子: #python 3.7.4,opencv4.1 #蔡军生 https://blo...

2019-10-17 09:39:46

阅读数 45

评论数 0

原创 在OpenCV里实现直方图反向投影算法

目标:理解二维直方图投影算法 理论 本文算法来源于Michael J. Swain , Dana H. Ballard写的论文《Indexing via color histograms》,论文分为两个部分,前面一部分详细描述了颜色直方图以及通过颜色直方图交叉来实现对象鉴别。可以实现对象背...

2019-10-16 17:53:58

阅读数 12

评论数 0

原创 在OpenCV里实现二维直方图

目标:怎么样实现二维直方图 在前面我们学习过一维直方图,也有应用它来解决过很多问题。但是没有使用过二维直方图,那么它是怎么样实现,以及有什么作用呢。本文就来解决这些问题。在一维直方图里只关注了一个特征:灰度值。在二维直方图里,将要考虑两个特征,一般情况就是采用彩色图里的色调(H)和饱和度(S...

2019-10-16 12:03:45

阅读数 9

评论数 0

原创 在OpenCV里实现部分图像的直方图

在前面计算直方图时,总是计算整个图像的直方图,有没有办法计算部分区域的直方图呢?这时要使用函数: hist=cv.calcHist(images, channels, mask, histSize, ranges[, hist[, accumulate]]) 在这里要使用mask参数,就可以计...

2019-10-16 10:23:40

阅读数 9

评论数 0

原创 在OpenCV里轮廓层级的说明

目标:学习contours, hierarchy=cv.findContours(...)函数中的hierarchy层次关系。 在前面我们学习了很多关于轮廓的函数,发现使用cv.findContours()函数时,要向这个函数输入一个参数cv.RETR_EXTERNAL、cv.RETR_LI...

2019-10-16 09:08:06

阅读数 9

评论数 0

原创 在OpenCV里图像外形的比较

在图形里经常会用到比较两个图形的相似程度,因为这是目标识别的一种方法,比如轮胎是圆的,那么就可以拿一个圆来与轮胎的外形进行比较,如果相似度比较高,就有可能是轮胎。在OpenCV里使用cv.matchShapes()函数来进行比较,这个函数返回的值越低,说明匹配越好。其实它是使用图像Hu矩来实现的。...

2019-10-15 11:16:33

阅读数 20

评论数 0

原创 在OpenCV里图像上的点与轮廓的测试

前面学习轮廓一些函数,接着继续学习图像上一点与轮廓的关系,主要使用cv.pointPolygonTest函数: dist = cv.pointPolygonTest(cnt,(50,50),True) 这行代码就是表示点(50,50)与轮廓cnt的最近距离。pointPolygonTest函数...

2019-10-15 09:49:30

阅读数 14

评论数 0

原创 在OpenCV里凸包缺陷分析

凸包缺陷分析 凸包与轮廓的任何偏差都可视为凸包缺陷。OpenCV里提供cv.convexityDefects()函数来实现凸包缺陷检测: hull = cv.convexHull(cnt,returnPoints = False) defects = cv.convexityDefects(...

2019-10-15 08:52:33

阅读数 9

评论数 0

原创 在OpenCV里计算轮廓的特征

目标: 1)通过轮廓找出不同的特征,比如面积、周长、质心点、边缘包装盒 2)学习使用轮廓函数 图像矩(Image moments ) 图像识别的一个核心问题是图像的特征提取,简单描述即为用一组简单的数据(数据描述量)来描述整个图像,这组数据月简单越有代表性越好。良好的特征不受光线、噪点...

2019-10-14 17:37:19

阅读数 14

评论数 0

原创 在OpenCV里轮廓怎么样省内存

目的: 1)理解什么是轮廓 2)学习查找轮廓 3)明白cv.findContours(), cv.drawContours()的使用 什么是轮廓 轮廓可以简单地解释为连接所有连续点(沿边界)的曲线,有相同的颜色或者灰度。轮廓在形状分析、对象检测和对象识别中非常有用。 为了得到好的轮...

2019-10-14 10:40:42

阅读数 116

评论数 0

原创 在OpenCV里生成图像金字塔

今天介绍图像处理邻域中比较常用的一种方法,image pyramid, 也叫图像金字塔。就是将图像进行一层一层的下采样,图像金字塔是为了构建图像的多尺度,让模型能够更好的适应图像的尺度变化,图像金字塔可以广泛应用于图像识别,目标检测,还有光流配准,块匹配都能看到它的身影。图像金字塔主要有两种,一种...

2019-10-14 09:25:58

阅读数 64

评论数 0

原创 在OpenCV里数据类型不对导致边缘消失

在OpenCV里,有时候使用不对的数据类型,比如cv.CV_8U或np.uint8时,可能会出错的,下面就来举一个例子,如下: #python 3.7.4,opencv4.1 #蔡军生 https://blog.csdn.net/caimouse/article/details/5174957...

2019-10-13 18:16:00

阅读数 52

评论数 0

原创 在OpenCV里颜色空间的转换

颜色空间(Colorspace)也称彩色模型(又称彩色空间或彩色系统)它的用途是在某些标准下用通常可接受的方式对彩色加以说明。颜色空间从提出到现在已经有上百种,大部分只是局部的改变或专用于某一领域。科学研究中有不少逻辑性等方面比HSХ更高的颜色空间。用下面的代码,就可以获得当前OpenCV支持的所...

2019-10-13 14:59:16

阅读数 29

评论数 0

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