图像处理——边缘检测

边缘检测

  • 一、边缘检测的目的
  • 二、边缘检测算子有哪些?
  • 三、Canny算子
    • 3.1、简述Canny算子
    • 3.2、简述下Canny的计算过程
  • 四、sobel算子
    • 4.1 简述一下sobel算子
  • 五、深度学习下的边缘检测
    • 5.1 HED(整体嵌套边缘检测)
    • 5.2 CASENet


一、边缘检测的目的

边缘检测的目的就是找到图像中亮度变化剧烈的像素点构成的集合,表现出来往往是轮廓。如果图像中边缘能够精确的测量和定位,那么,就意味着实际的物体能够被定位和测量,包括物体的面积、物体的直径、物体的形状等就能被测量。

二、边缘检测算子有哪些?

一阶:Canny算子、Soble算子
二阶:Laplacian(拉普拉斯)算子,(在梯度方向的二阶导数过零点)

三、Canny算子

3.1、简述Canny算子

Canny算子主要有四个步骤:
1.图像降噪 :噪声和边缘一样,都是像素变化比较剧烈,所以在增强边缘前要去除噪声

2.计算图像梯度 :因为梯度是像素变化明显的地方,而边缘正是像素变化明显的地方,但同时也有一些像素变化明显、但不是边缘的地方。计算图像梯度可以得到所有可能是边缘的集合

3.非极大值抑制:获得梯度大小和方向后,将局部范围内的同一梯度方向上,灰度变化最大的保留下来,其余的不保留,这样可以去除一部分的点。将有多个像素宽的边缘变成一个单像素宽的边缘。

4.双阈值筛选:通过非极大值抑制后,仍有一些不是边缘的点。此时再设置一个双阈值(一个高、一个低)。灰度变化大于高阈值的,定为强边缘像素;低于低阈值的,去除。在高、低阈值之间的定为弱边缘,进一步判断这些弱边缘的领域内是否有强边缘,若有,则保留;否则去除。(这么做的原因是:若只保留强边缘像素,有些边缘可以不闭合,需要从高、低阈值内选取像素点进行补充)

3.2、简述下Canny的计算过程

1.首先将彩色图转换为灰度图,再使用高斯滤波器平滑图像
2.随后计算图像梯度的幅值和方向,再对其进行非极大值抑制
3.使用双阈值进行边缘的检测和连接(也称滞后阈值)

四、sobel算子

4.1 简述一下sobel算子

sobel算子结合了高斯平滑和微分求导,效率较高,但精度有时不高。Sobel算子包含两组3×3的滤波器,分别对水平及垂直方向上的边缘敏感

链接: link

五、深度学习下的边缘检测

5.1 HED(整体嵌套边缘检测)

	特点:多尺度、多层次特征学习,采用深度监督方法多层输出训练

5.2 CASENet

    一种基于ResNet的端到端深度语义边缘学习的架构

你可能感兴趣的:(图像处理,计算机视觉,人工智能)