opencv0014 索贝尔(sobel)算子

2024-02-03 11:04
文章标签 算子 sobel 贝尔 opencv0014

本文主要是介绍opencv0014 索贝尔(sobel)算子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前面学习的滤波器主要是用来模糊图像,今天一起来了解关于边缘识别的滤波吧!嘿嘿

边缘

边缘是像素值发生跃迁的位置,是图像的显著特征之一,在图像特征提取,对象检测,模式识别等方面都有重要的作用。

人眼如何识别图像边缘?
比如有一幅图,图里面有一条线,左很亮,右边很暗,那人眼就很容易识别这条线作为边缘也就是图像的灰度值快速变化的地方.

soble算子


sobel算子对图像求一阶导数。一阶导数越大,说明像素在该方向的变化越大,边缘信号越强。
因为图像的灰度值都是离散的数字,sozbel算子采用离散差分算子计算图像像素点亮度值的近似梯度.
图像是二维的,即沿着宽度/高度两个方向.

我们使用两个卷积核对原图像进行处理

这样的话,,我们就得到了两个新的矩阵,分别反映了每一点像素在水平方向上的亮度变化情况和在垂直方向上的亮度变换情况.
综合考虑这两个方向的变化,我们使用以下公式反映某个像素的梯度变化情况.

实例 

计算x轴方向的梯度,只有垂直方向上的边缘 

相似的,这是只有y轴的边缘

然后,把两个边缘拼到一起

这篇关于opencv0014 索贝尔(sobel)算子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/673943

相关文章

sobel_dir 方向图和sobel的一些想法

怎么使用呢! 1,通过方向图可以提取 直线 或水平线region区域,提出来的dirregion区域 2,通过sobel的幅度度,分割出变化剧烈的区域 fuduregion 3,两个region相交,可以准确定位幅度范围内+方向的边界 4,sobel算子是可以只做x,y方向的单项幅度图的,sobel_amp在一定场合有特别的用处,值得关注 5,关于大掩码超过3的size,要注意的

spark算子集锦

Spark 是大数据领域的一大利器,花时间总结了一下 Spark 常用算子,正所谓温故而知新。 Spark 算子按照功能分,可以分成两大类:transform 和 action。Transform 不进行实际计算,是惰性的,action 操作才进行实际的计算。如何区分两者?看函数返回,如果输入到输出都是RDD类型,则认为是transform操作,反之为action操作。 准备 准备阶段包括s

OrangePi AIpro 香橙派 昇腾 Ascend C 算子开发 与 调用 - Tiling实现 2

OrangePi AIpro 香橙派 昇腾 Ascend C 算子开发 与 调用 - Tiling实现 2 flyfish 前置知识 1 前置知识 2 Host侧CPU和Device侧NPU的主要区别 不同的硬件资源 CPU是为了执行通用计算任务而设计的,但在处理大量的并行计算(如矩阵乘、批数据处理)时效率不高。NPU是为了加速机器学习和深度学习任务而设计的,它擅长执行大量的并行计算。N

fpga图像处理实战-边缘检测 (Roberts算子)

Roberts算子         Roberts算子是一种用于边缘检测的算子,主要用于图像处理中检测图像的边缘。它是最早的边缘检测算法之一,以其计算简单、速度快而著称。Roberts算子通过计算图像像素在对角方向的梯度来检测边缘,从而突出图像中灰度变化最剧烈的部分。 原理             Roberts算子通过对图像应用两个2x2的卷积核(也称为掩模或滤波器)来计算图像在水平和垂直

图像边缘检测技术详解:利用OpenCV实现Sobel算子

图像边缘检测技术详解:利用OpenCV实现Sobel算子 前言Sobel算子的原理代码演示结果展示结语 前言   在数字图像处理的广阔领域中,边缘检测技术扮演着至关重要的角色。无论是在科学研究、工业自动化,还是在日常生活中的智能设备中,我们都需要从图像中提取有用的信息。边缘,作为图像中亮度变化最显著的地方,为我们提供了识别和理解图像内容的关键线索。因此,边缘检测算法成为了计算机视

OrangePi AIpro 香橙派 昇腾 Ascend C 算子开发 与 调用 - Tiling实现

OrangePi AIpro 香橙派 昇腾 Ascend C 算子开发 与 调用 - Tiling实现 flyfish 前置知识 基于Kernel直调工程的算子开发流程图 其中有一个Tiling实现 什么是Tiling、Tiling实现 计算API,包括标量计算API、向量计算API、矩阵计算API,分别实现调用Scalar计算单元、Vector计算单元、Cube计算单元执行计算的功

深度学习常用算子

深度学习常用算子 算子功能ReluReLU(x)=max(0,x)LeakyReluLeakyRelu(x) = (x >= 0 ? x : x*negative_slope)Relu6LeakyRelu(x) = max(max(x, 0), 6)Tantanh(x)=(exp(x)-exp(-x))/(exp(x)+exp(-x))sigmoidsigmoid(x) = 1.

计算机 软件 什么是算子

算法(algorithm)是为了达到某个目标,实施的一系列指令的过程,而指令包含算子(operator)和操作数(operand)。   算子:operator, 简单说来就是进行某种“操作“,动作。算法中的一个函数、几行可以重复使用的代码、一个数学中的平方操作,这些都可以认为是算子 操作数:operand,被操作的对象,称之为操作数。     广义的讲,对任何函数进行某一项操作都可以

Halcon提取边缘线段lines_gauss 算子

Halcon提取边缘线段lines_gauss 算子 edges_color_sub_pix和edges_sub_pix两个算子使用边缘滤波器进行边缘检测。还有一个常用的算子lines_gauss算子,也可以用于提取边缘线段,它的鲁棒性非常好,提取出的线段类型是亚像素精度的XLD轮廓。其原型如下: lines gauss(Image : Lines : Sigma, Low, High, Li

Sobel算子,Scharr算子和Laplacian算子

图像边缘检测大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性。有许多方法用于边缘检测, 绝大部分可以划分为两类:基于搜索和基于零穿越。 基于搜索:通过寻找图像一阶导数中的最大值来检测边界,然后利用计算结果估计边缘的局部方向,通常采用梯度的方向,并利用此方向找到局部梯度模的最大值,代表算法是Sobel算子和Scharr算子 基于零穿越:通过寻找图像二阶导数零穿越来寻找边