点云学习
吾生也有涯,而知也无涯
展开
-
opencv c++学习(长期更新中)
目录1.图像的基本操作2.图像的变换3.图像增强与像素变换4.图像上绘制几何图形1.Mat类图像的创建方式2.图像的算术运算3.图像的逻辑运算4.图像的读取、显示及保存5.图像的像素读写6.图像的色彩空间及转换7.图像的分离与合并8.图像的深拷贝与浅拷贝(复制)9.图像像素的最大值与最小值10.图像的平均值与标准差11.图像二值化(全局阈值法)12.图像二值化(OTSU和TRIANGLE自动阈值推导)13.图像二值化(局部阈值法)14.图像的连接15.图像尺寸变换16.图像的平移17.图像的翻转变换18.图原创 2023-08-02 21:15:56 · 313 阅读 · 0 评论 -
98.ORB角点检测
ORB特征描述算法的运行时间远优于SIFT和SURF,可用于实时性特征检测。ORB特征基于FAST的特征点检测与描述技术,具有尺度与旋转不变性,同时对噪声及透视仿射也具有不变性,良好的性能使得用ORB在进行特征描述时的应用场景十分广泛。ORB采用FAST(features from accelerated segment test)算法来检测特征点,FAST算法的核心思想就是比较当前点和周围的点,如果周围大部分的点都与当前点不同,就可以认为它是一个特征点。原创 2023-08-19 20:05:05 · 272 阅读 · 0 评论 -
97.SURF特征点检测
而在SURF算法中,采用的是统计特征点圆形邻域内的Harr小波特征,即在特征点的圆形邻域内,统计60度扇形内所有点的水平、垂直Harr小波特征总和,然后扇形以0.2弧度大小的间隔进行旋转并再次统计该区域内Harr小波特征值之后,最后将值最大的那个扇形的方向作为该特征点的主方向。在SURF算法中,不同组间图像的尺寸都是一致的,不同的是不同组间使用的盒式滤波器的模板尺寸逐渐增大,同一组不同层图像使用相同尺寸的滤波器,但是滤波器的尺度空间因子逐渐增大。它的缺点是实时性不高,并且对于光滑目标的特征点提取能力较弱。原创 2023-08-19 19:39:50 · 171 阅读 · 0 评论 -
96.sift特征点检测
SIFT 即尺度不变特征变换,用来侦测与描述影像中的局部性特征,它在空间尺度中寻找极值点,并提取出其位置、尺度、旋转不变量,此算法由 David Lowe在1999年所发表,2004年完善总结。其应用范围包含物体辨识、机器人地图感知与导航、影像缝合、3D模型建立、手势辨识、影像追踪和动作比对。SIFT的特点:1)SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变化、噪声也保持一定程度的稳定性。2)独特性好、信息量丰富,适用于在海量特征数据库中进行快速、准确的匹配。原创 2023-08-19 17:34:01 · 319 阅读 · 0 评论 -
95.图像特征点
对于每个物体,我们总能用一些词语描述它,比如人脸的特征:一个鼻子、两个眼睛、一个嘴巴等。对于计算机而言,图像的特征包括图像的颜色特征、纹理特征、形状特征等。我们希望计算机去理解图像、描述图像,这就需要计算机去取得图像的特征,这个特征也要是一些显著、良好的特征,比如局部不变性。局部不变性一般包括两个方面:尺度不变性、旋转不变性。尺度不变性: 人类在识别一个物体时,不管这个物体或远或近,都能对它进行正确的辨认,这就是所谓的尺度不变性。原创 2023-08-19 16:16:18 · 160 阅读 · 0 评论 -
94.Shi-Tomasi角点检测
Shi-Tomasi算子是Harris算子的改进版本,该算子是1994年J.Shi和C.Tomasi在其论文“Good Features to Track”中提出的。我们根据这个式子中的两个特征值的大小,去求得响应系数,最后根据响应系数的值去判断该点是不是角点,这样就导致Harris角点检测算法的稳定性与k值有关,而k值是一个经验值,不容易设定最佳值。Shi和Tomasi发现,角点的稳定性其实和矩阵M的较小特征值有关,于是直接用较小的那个特征值作为判断条件,这样就不用调整k值了。原创 2023-08-19 14:28:34 · 182 阅读 · 0 评论 -
93.harris角点检测
在每个像素点处,通过计算该点与邻域像素之间的灰度差异,以及随着像素位移的变化而引起的灰度变化,来评估该点是否为角点。2.在像素值的边缘区域移动滑动窗口,沿着垂直方向移动滑动窗口,移动窗口下的像素值灰度变化不大,但是如果在水平方向上移动滑动窗口,窗口下的像素值灰度变化剧烈。3.在两条直线的交点处,无论往哪个方向移动滑动窗口,窗口下的像素值的灰度变化都非常剧烈,因此两直线的交点是harris角点。“考虑这样一个小窗口,从不同方向移动窗口,观测窗口内像素值的变化,来区分(判断)当前窗口内的点是否是角点。原创 2023-08-19 14:08:58 · 124 阅读 · 0 评论 -
92.角点与特征点介绍
图像中的关键点指的是图像中具有显著性、重要性或独特性的位置或特征。这些关键点通常是图像中某个物体的边缘、角点、纹理等特征点,可以用来描述和表征图像中的局部结构。Harris 角点检测:Harris 角点检测是最早提出的角点检测算法之一。它通过计算图像中每个像素的灰度值的变化率,并结合窗口内的梯度信息,来判断该像素是否为角点。在实际应用中,可以根据需求选择适合的角点检测算法来提取图像中的角点信息。角点是图像中具有明显变化的位置,例如像素值的最大最小点、线段的顶点、孤立的边缘点等。原创 2023-08-19 09:58:56 · 438 阅读 · 0 评论 -
91.图像修复
图像修复的目标是通过使用局部和全局上下文信息,将缺失或损坏的区域填充或恢复为与周围环境相协调的内容。图像修复(Image Inpainting)是指通过利用图像中已有的信息,对其中缺失、损坏或被遮挡的部分进行恢复或填补的技术。图像修复是一种图像处理技术,旨在使修复后的图像看起来与原始完整的图像一致。图像修复算法:根据不同的修复需求和场景,可以选择使用基于偏微分方程、全变差、最小二乘等算法进行图像修复。上下文信息:通过分析和利用图像中已有区域的信息,如纹理、颜色和结构等,来推断和估计缺失区域的内容。原创 2023-08-13 15:47:55 · 268 阅读 · 0 评论 -
90.积分图像
快速计算矩形区域和:通过使用积分图像,可以在常数时间内计算任意大小的矩形区域内像素值的累加和。积分图像的主要用途之一是快速计算任意大小矩形区域内像素值的累加和,可以大大加速相关算法的计算过程,如目标检测、人脸识别等。下面以3×3的图像为例,根据计算规则,积分图像的每个像素点都包含了原始图像中相应位置及其左上方区域内所有像素值的累加和。线性空间开销:积分图像的大小比原始图像大小加1,即原始图像为N*N,积分图像为(N+1)首先生成的积分图像为4×4,并填补0,并计算第一个积分图像。根据计算规则继续计算。原创 2023-08-13 15:25:13 · 95 阅读 · 0 评论 -
89.基于聚类的kmeans图像分割
基于聚类的分割是一种图像分割方法,它通过将像素分成不同的群集或聚类来实现图像的分割。聚类算法可以根据像素的特征和相似度,将图像中的像素划分为具有相似属性的群集,从而实现对图像的分割。K-means的目标是通过最小化每个样本点与所属簇的质心之间的距离来实现聚类。OpenCV中提供了多个函数来实现基于聚类的分割,其中最常用的是K-means聚类算法。(2)分配样本点到簇:对于每个样本点,计算其与所有质心的距离,并将其分配到距离最近的簇。(3)更新质心:对于每个簇,根据簇中所有样本点的均值计算新的质心位置。原创 2023-08-13 14:32:53 · 450 阅读 · 0 评论 -
88.基于均值漂移法(mean-shift)的图像分割
在每次迭代时,均值漂移法会根据某个核函数来计算样本点对种子点的贡献权重,通常使用高斯核函数来衡量样本点与种子点之间的相似性。然后,对于每个种子点,它会计算该点周围样本点的平均位置(即均值),并将该均值作为新的种子点。判断收敛:判断新的种子点与当前种子点之间的距离是否小于某个阈值,如果小于阈值,则认为算法已经收敛,退出迭代。总结起来,均值漂移法通过迭代计算样本点的均值位置,从而找到数据分布的最大密度区域,实现聚类的目标。归类样本点:根据最终收敛的种子点,将每个样本点归类到与其最近的种子点所代表的簇中。原创 2023-08-13 11:28:08 · 1070 阅读 · 0 评论 -
87.基于图割的GrabCut
基于图论的图像分割方法是一种将图像分割成不同区域的技术,它通过建立图模型来表示图像,并将图像中的像素作为图中的节点。该方法使用图论中的最小割(Min-Cut)算法来找到图中的最小割,从而实现对图像的分割。算法将通过优化前景和背景模型,估计出前景和背景之间的分割边界,并将结果存储在输出的掩码图像中。这种方法的主要思想是将图像中的像素看作是一个图中的节点,通过计算节点之间的相似度或代价来构建图中的边。分割结果:最终,根据迭代过程中得到的前景和背景概率,将像素分为前景和背景两部分,得到最终的分割结果。原创 2023-08-13 10:59:59 · 186 阅读 · 0 评论 -
86.基于分水岭算法的分割
当水平面上升到一定高度时,水就会溢出当前山谷,可以通过在分水岭上修大坝,避免两个山谷的水汇集,因此图像就可以分为两个像素集合,一个是被水淹没的山谷像素集,另一个是分水岭线像素集。3.水平面在增长的过程中,会碰到周围的像素点,测量这些像素到起始点的测地距离,如果小于测地距离阈值,则将这些像素掩膜,否则在这些像素上设置大坝。分水岭间的水就是用于二值化的灰度阈值,二值化阈值可以理解为水平面,比水平面低的区域会被淹没,刚开始用水填充每个孤立的山谷(局部最小值)。它可以对标记图像进行连通区域的分析和标记。原创 2023-08-13 10:12:12 · 168 阅读 · 0 评论 -
85.漫水填充法
我们可以将图像的灰度值理解成像素点的高度,这样一幅图像可以看成崎岖不平的地面或者山地,向地面上某一个低的地方倾倒一定量的水,水将掩盖低于某个高度的区域。与向地面注水一致,漫水填充法也需要在图像选择一个注水”像素,该像素称为种子点,按照一定规则不断向外扩散,从而形成具有相似特征的独立区域,进而实现图像分割。漫水填充法是一种基于种子点的图像处理算法,它从种子点开始向相邻的像素扩散,并将符合条件的像素标记为指定的颜色或值。该函数接受输入图像、种子点位置、目标颜色、填充范围等参数,并输出填充后的图像。原创 2023-08-13 10:11:06 · 153 阅读 · 0 评论 -
84.基于区域生长分割
第三次生长后的区域均值为6.9,按照生长阈值为2,第三次生长的像素取值范围应为[4.9,8.9],周边已没有满足继续生长的像素点,到此我们停止生长。将生长后的区域标记为1,其他区域标记为0,最终的分割区域如下图所示。按照区域生长阈值为2,从像素值为9的种子点开始生长,因此生长的像素取值范围为[7,11],生长后的区域像素均值为7.8,第一次生长后效果如下图所示。第二次生长后的区域均值为7.1,按照生长阈值为2,第三次生长的像素取值范围应为[5.1,9.1],如下图所示,黄色部分为第三次生长的区域结果。原创 2023-08-13 10:08:04 · 396 阅读 · 0 评论 -
83.图像的分割介绍
选择适合特定任务的分割方法需要考虑图像的特点、应用需求以及算法的优缺点。它是计算机视觉和图像处理领域中的一个基础任务,旨在根据像素之间的某种特定属性或准则,将图像分成具有相似性质的子区域。:通过对图像进行分割,可以提取出各个区域的特征和属性,例如颜色、纹理、形状等。图像分割在许多应用中起着关键作用,如目标检测、图像分析、医学影像处理、机器人导航、视频监控等。通过将图像分割成不同的区域,可以对每个区域应用不同的处理,从而实现各种图像编辑效果。:通过聚类算法,将图像中的像素划分为不同的簇或类别。原创 2023-08-12 20:39:54 · 75 阅读 · 0 评论 -
82.凸包检测
计算凸包的常见算法有 Graham 扫描法(Graham's scan)、Jarvis 愚蠢算法(Jarvis march)、Andrew 的单调链(Andrew's monotone chain)和 QuickHull 算法等。原创 2023-08-12 18:06:06 · 563 阅读 · 0 评论 -
81.点到轮廓的距离
(2)如果measureDist设置为false,函数将返回一个正负值,表示点在轮廓内部(负值)还是外部(正值),点在轮廓上(0)。点到轮廓的距离是指一个点到给定轮廓的最短距离。(1)输入的轮廓必须是一个单个轮廓(即单个闭合轮廓),而不是包含多个轮廓的容器。特征提取:通过计算点到轮廓的距离,可以获得描述对象形状特征的信息。目标识别:通过比较点到轮廓的距离,可以判断两个对象是否相似或匹配。边界检测:通过检测点到轮廓的距离变化,可以找到轮廓的边界。原创 2023-08-12 17:41:58 · 348 阅读 · 0 评论 -
80.轮廓多边形拟合
曲线拟合:多边形逼近通过拟合一条直线或一组连续线段来逼近给定的曲线或轮廓。距离度量:多边形逼近的精度可以通过距离度量进行控制。通常使用欧氏距离或其他距离度量方法来衡量逼近结果与原始曲线之间的差异。具体的数学原理和推导公式涉及到曲线拟合、距离度量和优化问题,如果对数学原理感兴趣,建议查阅相关资料或学术文献。多边形拟合是指找到一个近似于给定轮廓的多边形。多边形逼近的数学原理主要涉及到曲线拟合和距离度量。特征提取:通过逼近轮廓来提取对象的形状特征。轮廓分析:用于简化和平滑对象的轮廓。原创 2023-08-12 17:33:10 · 212 阅读 · 0 评论 -
79.轮廓外接圆
然后通过调用minEnclosingCircle()函数计算轮廓的最小外接圆,得到圆心和半径。最后,绘制最小外接圆,并显示结果图像。数学上,求解最小外接圆的过程可以用迭代的方法进行近似计算。具体而言,每一次迭代都会更新圆心和半径,并将其调整为能够包含所有轮廓点的最小圆。轮廓的最小外接圆可以通过不断缩小一个初始圆的半径,直至完全包围住轮廓点集为止。其中,初始圆的半径可以是任意大于零的值,可以使用轮廓点集的最外层点的距离作为初始半径。它可以通过计算轮廓点集的几何特征来获得,通常用于轮廓的定位、识别和分析。原创 2023-08-12 17:18:34 · 171 阅读 · 0 评论 -
78.轮廓外接矩形
然后通过调用minAreaRect()函数计算轮廓的最小外接矩形,以及调用boundingRect()函数计算边界框。最后,绘制最小外接矩形和边界框,并显示结果图像。矩形的中心点可以通过计算轮廓点集的均值来获得。轮廓外接矩形是指能够包围一个轮廓的最小面积矩形。它可以通过计算轮廓点集的几何特征来获得,通常用于轮廓的定位、识别和分析。最小外接矩形(RotatedRect):以矩形中心点、矩形大小和旋转角度来定义的矩形。矩形边界框(Rect):以左上角坐标和矩形的宽高来定义的矩形。原创 2023-08-12 17:13:37 · 654 阅读 · 0 评论 -
77.轮廓面积与周长计算
OpenCV中的contourArea函数实际上会根据曲线的顶点坐标进行计算,得到轮廓的面积。在OpenCV中,可以使用contourArea函数来计算轮廓的面积,使用arcLength函数来计算轮廓的周长。在图像处理和计算机视觉中,轮廓面积是指一个封闭轮廓所包围的区域的面积大小。形状分析:通过计算轮廓的面积,可以得到关于目标形状的信息,如圆形度、长宽比等。目标分类和识别:通过比较不同目标的面积,可以进行目标的分类和识别。目标形状分析:通过比较不同目标的周长,可以进行形状的分类和描述。原创 2023-08-12 16:20:06 · 406 阅读 · 0 评论 -
76.图像轮廓检测
findContours函数基于边缘检测和连通性分析的原理,在输入图像中寻找像素强度变化明显的边界,并将它们组织为一系列闭合曲线表示的轮廓。轮廓可以是闭合的或开放的,闭合轮廓表示目标是连通且完整的,而开放轮廓则表示目标可能存在缺口或断裂。通过分析图像中像素值的变化,并将具有相似像素值的像素连接起来,就可以得到目标的边界轮廓。它通过分析像素之间的变化,找到对象的外形,并将其表示为一系列连续的曲线。使用drawContours函数时,需要确保传入的图像与轮廓数据具有相同的尺寸,以便将轮廓绘制在正确的位置上。原创 2023-08-12 15:50:01 · 498 阅读 · 0 评论 -
75.霍夫圆检测
霍夫圆检测的核心思想是将圆形表示为参数空间中的一个曲线,并通过累加器数组来记录曲线与图像中边缘点的交叉情况。由此我们可以得出: 直角坐标系中圆上的三个点,在极坐标中也是三个点,但是以这三个点为圆心,以R为半径,这三个圆将交于一点,该点就是要检测的圆的圆心点。进而更近一步,直角坐标系中圆上任意个点(>3),在极坐标中,以这些点为圆心,以半径R画圆,这些圆将交于一点,该点就是要检测的圆的圆心点。我们都知道在直角坐标系中,对于圆我们可以用解析式来表示。其中,a是圆心的x坐标,b是圆心的y坐标,R是圆的半径;原创 2023-08-12 15:34:35 · 3810 阅读 · 1 评论 -
74.图像的霍夫直线检测
现在我们假设直线的斜率k和直线的截距是未知的,我们知道直线上的两点A(x0,y0)、B(x1,y1)。但是根据这两个直线方程,我们可以看出,如果直线的y=kx+b的斜率k=0时,即直线是垂直的。为了解决竖直直线在参数空间中没有交点的问题,我们将直线映射到极坐标空间,假设已知直线上的点A(x0,y0)、B(x1,y1),并假设直线上的垂足点为(p,q),则有。(2)直线上的任意多个点在极坐标空间中形成的曲线都会交于一点,该点坐标就是r和θ,可以根据r和θ计算直线的斜率和截距。原创 2023-08-12 12:24:48 · 259 阅读 · 0 评论 -
66.图像的膨胀操作
我们还记得,像素范围是在[0-255],对于彩图来说,是一个六位的16进制数,如123456,其中12表示前两位,代表红色,34表示中间两位,代表绿色,56表示最后两位,代表蓝色。膨胀的作用: 膨胀是形态学操作中的一种基本操作,通过结构元素与图像进行最大值运算,扩展物体的边界并填充空洞,从而使物体的形状变大且更加粗大。在代码中,首先加载输入图像srcImage,然后定义了一个3x3的矩形结构元素kernel。最后,显示原始图像和腐蚀后的图像,并等待按键退出程序。原创 2023-08-10 20:30:33 · 97 阅读 · 0 评论 -
73.图像细化
Zhang细化算法是一种常用的二值图像细化算法,用于将图像中的粗线条细化为单像素宽度的骨架。该算法可以有效地保持原始图像的形状和拓扑结构,并提取出图像中的主要特征。初始化:将输入二值图像复制到输出图像。p1为当前像素。迭代细化过程:从左上角开始遍历输出图像的所有像素。如果当前像素为背景(像素值为0),则跳过。根据该像素的邻域情况,判断是否满足以下条件:像素周围8个邻域中的黑色像素数量大于等于2且小于等于6。顺时针前后两个像素是黑色和白色的对数为1。第2、4、6个邻域有黑色像素。原创 2023-08-10 22:22:37 · 284 阅读 · 0 评论 -
72.击中击不中变换
图像中的像素排列形状如果与结构元素的结构形状一致,就表示该像素被击中,则要保留下来,没有被击中的则去除。需要注意的是,击中/击不中变换是一种基于形态学的图像处理方法,它在处理图像时主要关注形状和结构,并不考虑像素的灰度值信息。图像的击中/击不中变换(Hit/Miss Transform)是一种基于数学形态学的图像处理技术,用于检测和分割图像中特定形状或模式的区域。最终,击中/击不中变换的结果将生成一个二值图像,其中像素值为1的区域表示匹配成功的目标区域,而像素值为0的区域则代表未匹配成功的区域。原创 2023-08-10 21:40:43 · 716 阅读 · 0 评论 -
71.图像的黑帽操作
接下来,使用morphologyEx()函数进行黑帽运算操作,并将结果保存在dstImage中。最后,显示原始图像和黑帽运算结果图像,并等待按键退出程序。黑帽操作(Black Hat)是形态学操作中的一种,它是闭运算与原始图像之差,其中闭运算是先进行膨胀操作,然后再进行腐蚀操作。黑帽操作可用于检测图像中的大尺寸目标或局部对比度变化。黑帽运算后的效果图突出了比原图轮廓周围的区域更暗的区域,且这一操作和选择的核的大小相关。在OpenCV中,可以通过morphologyEx()函数来实现图像的黑帽操作。原创 2023-08-10 21:30:06 · 75 阅读 · 0 评论 -
70.图像的顶帽操作
因为开运算带来的结果是放大了裂缝或者局部低亮度的区域,因此,从原图中减去开运算后的图,得到的效果图突出了比原图轮廓周围的区域更明亮的区域,且这一操作和选择的核的大小相关。当一幅图像具有大幅的背景的时候,而微小物品比较有规律的情况下,可以使用顶帽运算进行背景提取。接下来,使用morphologyEx()函数进行顶帽运算操作,并将结果保存在dstImage中。顶帽操作(Top Hat)是形态学操作中的一种,它是原始图像与开运算之差,其中开运算是先进行腐蚀操作,然后再进行膨胀操作。原创 2023-08-10 21:23:12 · 136 阅读 · 0 评论 -
69.图像的闭操作
以单通道的黑白图像为例讲解,也就是我们先通过膨胀操作,将白色区域膨胀扩大,再通过腐蚀操作,将黑色区域腐蚀扩大。如果我有一个小黑点,先通过膨胀操作,就会被周围的白色覆盖掉,再进行腐蚀操作,因为小黑点已经没有了,进行腐蚀操作,也不会影响到周围的白色,所以,闭操作,可以去掉小黑点。也就是合适的闭操作,可以填充小对象。接下来,使用morphologyEx()函数进行闭运算操作,并将结果保存在dstImage中。闭运算(Closing)是形态学操作中的一种,它是先对图像进行膨胀操作,然后再进行腐蚀操作。原创 2023-08-10 21:16:56 · 201 阅读 · 0 评论 -
68.图像的开操作
以单通道的黑白图像为例,先通过腐蚀操作,将黑色区域腐蚀扩大,再通过膨胀操作,将白色区域膨胀扩大。如果我有一个小白点,先通过腐蚀操作,就会被周围的黑色覆盖掉,再进行膨胀操作,因为小白点已经没有了,进行膨胀操作,也不会影响到周围的黑色,所以,开操作,可以去掉小白点。接下来,使用morphologyEx()函数进行开运算操作,并将结果保存在dstImage中。开运算(Opening)是形态学操作中的一种,它是先对图像进行腐蚀操作,然后再进行膨胀操作。开运算能够平滑图像、去除小的噪声点,并保持较大对象的形状。原创 2023-08-10 20:55:31 · 173 阅读 · 0 评论 -
67.图像的形态学梯度
接下来,使用morphologyEx()函数分别进行内梯度、外梯度和基本梯度操作,并将结果保存在对应的目标图像中。最后,显示原始图像以及内梯度、外梯度和基本梯度图像,并等待按键退出程序。OpenCV提供了morphologyEx()函数来实现图像的内梯度、外梯度和基本梯度操作。形态学梯度是形态学操作中的一种,用于提取图像中物体边缘或轮廓的信息。它通过计算膨胀和腐蚀操作之间的差异来获取物体边界的强度变化情况。形态学梯度常用于突出高亮区域的外围、为轮廓查找提供新思路、边缘检测、形状分析和物体定位等应用场景。原创 2023-08-10 20:45:47 · 135 阅读 · 0 评论 -
65.图像的腐蚀操作
腐蚀是形态学操作中的一种基本操作,通过结构元素与图像进行最小值运算,将物体边界内部的像素点进行磨损或消除,从而使物体的形状变小且更加平滑。还记得之前讲过的中值滤波吗,其实腐蚀操作可以看作是最小值滤波,对于结构元素下的图像的像素值进行排序,将中心像素替换为最小值。最后,显示原始图像和腐蚀后的图像,并等待按键退出程序。腐蚀的作用: 腐蚀类似 '领域被蚕食' ,将图像中的高亮区域或白色部分进行缩减细化,其运行结果图比原图的高亮区域更小.。对腐蚀过的图像,进行膨胀处理,可以去除噪声,并且保持原有形状。原创 2023-08-10 20:23:53 · 176 阅读 · 0 评论 -
64.图像的形态学操作
形态学一般指生物学中研究动物和植物结构的一个分支。用数学形态学(也称图像代数)表示以形态为基础对图像进行分析的数学工具。基本思想是用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的。形态学图像处理的数学基础和所用语言是集合论。形态学图像处理的应用可以简化图像数据,保持它们基本的形状特性,并除去不相干的结构。原创 2023-08-10 12:49:22 · 80 阅读 · 0 评论 -
54.图像的椒盐噪声
通过随机选择图像中的像素位置,并根据随机数的值选择将该像素设置为黑色(椒噪声)或白色(盐噪声)。椒盐噪声是一种常见的图像噪声,它表现为图像中的孤立的亮点和暗点。椒盐噪声会降低图像的质量和可视化效果,而去除椒盐噪声是图像预处理的重要步骤之一。椒盐噪声是在图像中随机出现的亮点和暗点,这些点可能是由于信号损坏、传输错误或图像采集设备故障引起的。这些方法可以通过对图像中的像素进行统计分析来恢复被椒盐噪声破坏的像素值,并使图像更加清晰和可视化。它得名于食物中的椒盐颗粒,因为图像中的椒盐噪声像是随机分布的黑白像素。原创 2023-08-08 21:14:53 · 946 阅读 · 0 评论 -
53.图像双边滤波
双边滤波方法是基于Gauss 滤波方法提出的,主要将Gauss 滤波中将Gauss 权系数直接和图像亮度信息进行乘积,优化后的权系数再与图像信息作卷积运算,这样就能在滤波的同时考虑到图像信息中的图像边缘信息,使图像在正常Gauss 滤波后很模糊的边缘信息得以保持清晰,并且图像边缘更加平滑。双边滤波是一种非线性的图像滤波技术,它可以在平滑图像的同时保留图像的边缘信息。与传统的线性滤波器相比,双边滤波考虑了像素之间的空间距离和像素值的相似性,因此对于去除噪声的同时能够保持图像细节。原创 2023-08-08 20:59:39 · 172 阅读 · 0 评论 -
63.Canny边缘检测算法
Canny边缘检测算子是John F. Canny于 1986 年开发出来的一个多级边缘检测算法。低错误率:能够检测到大多数真实边缘,并且尽量减少错误检测。高定位精度:检测到的边缘位置相对精确。最小响应:每个边缘只有一个响应点。原创 2023-08-09 21:03:33 · 359 阅读 · 0 评论 -
62.Laplance边缘检测算子
它与上面两种算子的不同是: sobel算子和scharr算子一般先算一个水平梯度,再算一个垂直方向梯度,然后把两个结果按照0.5的权重进行图像融合以得到完整的边界。但Laplace算子则不同,它本身就是一个二阶的算子,它的运算规则就是在水平方向运算两次,垂直方向运算两次,两个结果相叠加替换中心点(锚点)的像素值(灰度值)。拉普拉斯算子是二阶微分线性算子,在图像边缘处理中,二阶微分的边缘定位能力更强,锐化效果更好,因此在进行图像边缘处理时,直接采用二阶微分算子而不使用一阶微分。原创 2023-08-09 20:54:07 · 223 阅读 · 0 评论