更新日志:

2021-12-18更新:

OpenCV For Python入门14 RGB色彩空间基础上的alpha通道

OpenCV For Python入门15 几何变换之缩放与翻转

2021-12-20更新:

OpenCV For Python入门16 几何变换之仿射与透视

OpenCV For Python入门17 几何变换之重映射

2021-12-22:这几天放假回家,可能需要停更几天,希望谅解。

2021-12-26更新:

OpenCV For Python入门18 阈值处理简介及二值化阈值处理、反二值化阈值处理

OpenCV For Python入门19 阈值处理之截断阈值化处理、超阈值零处理及低阈值零处理

2021-12-28更新:

OpenCV For Python入门20 阈值处理之自适应阈值处理及Otsu处理

OpenCV For Python入门21 图像平滑处理介绍

OpenCV For Python入门22 平滑处理之均值滤波与方框滤波

2021-12-30:这几天家里有点杂事,我也换了个新电脑,需要配置,一堆软件需要重装,可能需要迟两天更新了。希望谅解。提前祝亲爱的你元旦快乐呀。
2022-1-26:学了将近一个月的数据库,我佛了靠,感兴趣的朋友可以看看。手把手零基础学习MySQL数据库笔记
2022-1-26更新:

OpenCV For Python入门23 平滑处理之高斯滤波及中值滤波

OpenCV For Python入门24 平滑处理之双边滤波及2D卷积

OpenCV For Python入门25 形态学概述及腐蚀操作

2022-1-27更新:

OpenCV For Python入门26 形态学的膨胀操作

OpenCV For Python入门27 开运算、闭运算及形态学梯度运算

2022-01-31:各位友友们,新年好

2022-02-02更新:

OpenCV For Python入门28 礼帽运算、黑帽运算和核函数

OpenCV For Python入门29 图像梯度概述及Sobel算法

2022-02-05更新:

OpenCV For Python入门30 Scharr算子及Laplacian算子

2022-02-07更新:

OpenCV For Python入门31 Canny边缘检测

2022-02-07更新:

OpenCV For Python入门32 图像金字塔及高斯金字塔实现

OpenCV For Python入门33 拉普拉斯金字塔

OpenCV For Python入门34 查找与绘制轮廓

OpenCV For Python入门35 图像轮廓之矩特征

OpenCV For Python入门36 图像轮廓之Hu矩

2022-02-13更新:

OpenCV For Python入门37 轮廓拟合

OpenCV For Python入门38 凸包与凸缺陷

OpenCV For Python入门39 利用形状场景算法比较轮廓

2022-02-23更新:

OpenCV For Python入门40 轮廓的特征值(第一部分)

OpenCV For Python入门41 轮廓的特征值(第二部分)

OpenCV For Python入门42 直方图之含义(了解)

OpenCV For Python入门43 绘制直方图

OpenCV For Python入门44 直方图均衡化

OpenCV For Python入门45 傅里叶变换(一)


OpenCV For Python入门1_安装及基本操作


OpenCV For Python入门2_图像的基本表示方法
本节主要讨论二值图像、灰度图像、彩色图像的基本表示方法。


OpenCV For Python入门3_图像的组成原理及像素访问修改
像素是图像构成的基本单位,像素处理时图像处理的基本操作,可以通过位置索引的形式对图像内的元素进行访问、处理。


OpenCV For Python入门4_基于numpy.array的像素访问
在上一节中,介绍了如何访问和修改像素值,基于纯数组的手动操作有些麻烦。numpy.array提供了item和itemset来访问和修改像素值。这两个函数都是经过优化处理的,使用起来比较高效。


OpenCV For Python入门5_感兴趣区域(ROI)
感兴趣区域(Region of Interest),指在一张图片中,我们需要研究的那一块地方。设定感兴趣区域之后,就可以对该区域进行整体操作,例如将这个区域整体复制粘贴到另一张图片中去。


OpenCV For Python入门6_通道操作及图像属性的获取
由前面的知识,我们知道,彩色的图片由RGB三个通道完成,在Opencv中,注意通道的顺序是B->G->R,在图像处理中,可以根据需要对通道进行拆分和合并。在图像操作时,有时还需要获得图像的属性,例如大小、类型等。


OpenCV For Python入门7_图像加法运算及加权和运算
图像的加法有两种,一种是通过运算符“+”对图像进行加法运算,也可以通过cv2.add()函数对图像进行加法运算。通常用一个8bit来表示,范围为[0,255]。两个像素值在相加时,求得的值很有可能超过255。下面介绍的两种方法对于超过255的数值处理方式不一样。


OpenCV For Python入门8_图像的逻辑运算:与、或、异或、按位取反
图像处理过程中,经常需要按照位进行运算。位运算,主要有与、或、异或、按位取反。


OpenCV For Python入门9_图像运算之位平面分解
将灰度图像中处于同一比特位上的二进制像素进行组合,得到一幅二进制值图像,该图像称为灰度图像的一个位平面,这个过程称之为位分解。


OpenCV For Python入门10_图像的加密与解密
通过按位异或运算就可以实现图像的加密与解密。加密:原始图像与秘钥图像按位异或运算。解密:将加密后的图像与秘钥图像进行按位异或,可以实现解密。


OpenCV For Python入门11_色彩空间基础_GRAY色彩空间、XYZ色彩空间等
RGB图像是一种比较常见的色彩空间类型,除此之外还有一些其他的色彩空间,比较常见的包括GRAY色彩空间(灰度图)、XYZ色彩空间、YCrCb色彩空间、HSV色彩空间、HLS色彩空间、CIELab色彩空间等。每种色彩空间都有自己擅长处理的问题。具体处理某个问题,就要用到色彩空间类型转换。本小节主要介绍各种色彩空间。


OpenCV For Python入门12_色彩空间类型转换函数及应用
在OpenCV中,有很多色彩类型。可以使用cv2.cvtColor()函数实现色彩空间的转换。本节讲述函数的用法。


OpenCV For Python入门13 详谈HSV色彩空间理论及应用
HSV提供了更加直观的方式来感知颜色。在前面的色彩空间中,已经简要介绍过HSV色彩空间。本节将详细介绍HSV色彩空间,讲述获取指定颜色、标定指定颜色、标记肤色等知识点。


OpenCV For Python入门14 RGB色彩空间基础上的alpha通道
在RGB色彩空间三个通道的基础上,再增加一个A通道,即alpha通道,这种四个通道的色彩空间称为RGBA通道。alpha通道表示透明度,alpha通道的赋值范围为[0,1],或者[0,255],表示从透明到不透明


OpenCV For Python入门15 几何变换之缩放与翻转
几何变换是指将一幅图像映射到另一幅图像内的操作。本节主要讲述缩放与翻转。


OpenCV For Python入门16 几何变换之仿射与透视
所谓仿,就是仿照、相似。仿射变换是指图像可以通过一系列的几何变换来实现平移、旋转等多种操作。变换后,直线仍然是直线,平行线仍然是平行线。仿射可以将矩形映射为平行四边形,那么透视可以将矩形映射为任意四边形。


OpenCV For Python入门17 几何变换之重映射
把一幅图像内的像素点放置到另一幅图像内的指定位置,这个过程称之为重映射。本节主要讲述重映射里的一系列变换操作,包括复制、翻转和缩放。重点需要加强对参数的理解。


OpenCV For Python入门18 阈值处理简介及二值化阈值处理、反二值化阈值处理
阈值处理是指将大于某一像素值的设为255,低于某一像素值的设为0。由此可以得到一幅二值图像,有效地实现了前景和背景的分离。OpenCV中提供了函数cv2.threshhold()和cv2.adaptiveThreshold()用于阈值处理。本节主要介绍第一个函数。


OpenCV For Python入门19 阈值处理之截断阈值化处理、超阈值零处理及低阈值零处理
本节介绍截断阈值化处理、超阈值零处理及低阈值零处理。重点是了解其含义及参数的用法。


OpenCV For Python入门20 阈值处理之自适应阈值处理及Otsu处理
自适应阈值处理可以使用变化的阈值完成对图像的处理,能够更好地处理明暗差异较大的图像。Otsu方法可以根据当前图像给出最佳的类间分割阈值。


OpenCV For Python入门21 图像平滑处理介绍
本节主要介绍图像平滑处理的基本概念、基本原理及算法的种类。在后面,会详细介绍每个算法的原理及使用。


OpenCV For Python入门22 平滑处理之均值滤波与方框滤波
本节介绍均值滤波与方框滤波的基本原理及函数的使用。


OpenCV For Python入门23 平滑处理之高斯滤波及中值滤波

本节介绍高斯滤波及中值滤波的基本原理及函数的使用。


OpenCV For Python入门24 平滑处理之双边滤波及2D卷积

双边滤波是综合考虑空间信息和色彩信息的滤波方式,在滤波过程中能够有效地保护图像内的边缘信息。2D卷积可以使用特定的卷积核实现卷积操作。


OpenCV For Python入门25 形态学概述及腐蚀操作

形态学,主要从图像类提取分量信息,该分量信息通常对于表达和描绘图像的形状具有重要意义。腐蚀是最基本的形态学操作之一。


OpenCV For Python入门26 形态学的膨胀操作

膨胀操作能对图像的边界进行扩张。将前景接触到的背景点合并到前景中。

如果图像内两个对象的距离较近,那么在膨胀的过程中,两个对象可能连通到一起。膨胀操作对填补图像风格后图像内所存在的空白相当于帮助。同腐蚀过程中,也是使用一个结构元来逐个扫描被膨胀图像的关系来确定膨胀结果。


OpenCV For Python入门27 开运算、闭运算及形态学梯度运算
腐蚀和膨胀操作室形态学的基础,将其组合就可以形成开运算、闭运算、梯度运算、礼帽运算等。本节主要介绍开运算、闭运算及梯度运算。


OpenCV For Python入门28 礼帽运算、黑帽运算和核函数

礼帽运算是用原始图像减去其开运算图像的操作。黑帽运算是用闭运算减去原始图像的操作。可用核函数构造一些形状特殊的核。


OpenCV For Python入门29 图像梯度概述及Sobel算法

图像梯度计算的是图像变化的速度,一般情况下图像梯度计算的是图像的边缘信息。本节重点讲述Sobel算法


OpenCV For Python入门30 Scharr算子及Laplacian算子

Scharr算子是Sobel算子的改进,同样的速度但是精度更高。Laplacian算子是一种二阶导数算子,可以满足不同方向的图像边缘锐化的要求。


OpenCV For Python入门31 Canny边缘检测

使用多级边缘算法检测边缘的方法。OpenCV提供了函数cv2.Canny()实现Canny边缘检测。


OpenCV For Python入门32 图像金字塔及高斯金字塔实现

图像金字塔是一幅图像的多个不同分辨率的子图所构成的图像集合。该组图像由单个图像通过不断采样产生,最小的图像可能仅仅有一个像素点。对原图像进行滤波,得到原始图像的近似图像,然后将近似图像的偶数行和偶数列删除,以获取向下采样的结果。采用高斯滤波器对原始图像进行滤波,得到高斯金字塔。


OpenCV For Python入门33 拉普拉斯金字塔

我们希望通过对金字塔中的小图像进行向上采样以获取完整的大尺寸高分辨率图像,这时就需要用到拉普拉斯金字塔。一幅图像在经过向下采样后,再对其向上采样,是无法恢复为原始状态的。拉普拉斯金字塔的第i层,等于“高斯金字塔的第i层”与“高斯金字塔中的第i+1层的向上采样结果”之差。


OpenCV For Python入门34 查找与绘制轮廓
图像轮廓是图像中重要的信息,通过对图像轮廓的操作,可以得到图像的大小、位置和方向等信息。本节介绍如何查找和绘制图像轮廓。


OpenCV For Python入门35 图像轮廓之矩特征
比较两个轮廓最简单的方法是比较二者的轮廓矩。轮廓矩代表了一个轮廓、一幅图像、一组点集的全局特征。
矩信息包含了对应对象不同类型的几个特征,例如大小、位置、角度、形状等。矩特征被广泛地应用在模式识别、图像识别中。


OpenCV For Python入门36 图像轮廓之Hu矩
Hu矩在图像旋转、缩放、平移等操作后,仍能保持矩的不变性,所以经常会使用Hu距来识别图像的特征。


OpenCV For Python入门37 轮廓拟合

在计算轮廓时,有时仅需要一个接近轮廓的近似多边形。OpenCV提供了多种计算轮廓近似多边形的方法。


OpenCV For Python入门38 凸包与凸缺陷

逼近多边形是轮廓的高度近似。有时候仅需要一个多边形的凸包来简化它。凸包与轮廓之间的部分,称之为凸缺陷。介绍如何判断某点与轮廓的位置关系。


OpenCV For Python入门39 利用形状场景算法比较轮廓
用矩形比较形状是一种高效的方法。从OpenCV3开始,专有模块shape中的形状场景算法能够更高效地比较形状。


OpenCV For Python入门40 轮廓的特征值(第一部分)

轮廓自身的一些属性特征及轮廓所包围对象的特征对于描述图像具有重要意义,本节介绍第一部分,包括宽高比、轮廓边界面积比、轮廓凸包面积之比、等效直径、椭圆轮廓的方向。


OpenCV For Python入门41 轮廓的特征值(第二部分)

轮廓自身的一些属性特征及轮廓所包围对象的特征对于描述图像具有重要意义,本节介绍第二部分,包括像素点的位置信息、最大值/最小值及其位置、平均值、极点。


OpenCV For Python入门42 直方图之含义(了解)

直方图从图像内部灰度级的角度对图像进行表述,包含十分丰富而重要的信息。从直方图的角度对图像进行处理,可以达到增强图像显示效果的目的。


OpenCV For Python入门43 绘制直方图

一般直接可使用matplotlib.pyplot中的hist()绘制直方图。OpenCV中的cv2.calcHist()函数能够计算统计直方图,还可以在此基础上绘制图像的直方图。


OpenCV For Python入门44 直方图均衡化

均衡化的图像具有高对比度和多变的灰度色调,灰度级丰富且覆盖范围较大。在外观上,这样的图像有丰富的色彩,不会过暗或过亮。


OpenCV For Python入门45 傅里叶变换(一)

本小节主要介绍傅里叶变换的理论部分。


还将持续更新,敬请期待

欢迎访问我的个人博客: 陶小桃Blog


欢迎访问我的资源导航: 多啦A桃


更多推荐

OpenCV For Python系列教程(第一部分)