边缘检测是计算机视觉畛域中的一个重要工作,它在图像处理、计算机视觉和模式识别等利用中具备宽泛的利用。本文将介绍边缘检测的基本概念、算法和利用,并举荐一些经典的相干开源代码和数据汇合集,以供研究者们学习和实际。
一、边缘检测的基本概念
边缘检测是指将图像中的边缘提取进去,作为图像处理和计算机视觉中的一个重要工作。通常,咱们所看到的图像都不是白璧无瑕的,而是蕴含许多噪声、烦扰和伪影等,因而须要将这些噪声去除,只保留图像中的边缘信息。边缘检测的次要目标是进步图像的清晰度和对比度,从而更好地了解图像中的内容。
二、边缘检测的算法
边缘检测的算法有很多种,其中比拟罕用的有以下几种:
1、Sobel 算子
Sobel 算子是一种基于梯度的边缘检测算法,它通过计算图像灰度值在 x 和 y 方向上的梯度来检测边缘。具体来说,Sobel 算子的计算公式如下:
h=1/2[c(1,0)+c(0,1)2];[h,c]
where[] 代表导数。将 y = x 表达式去除 b ==1 对后果造成的渺小影响后的值赋给 h,同样将 x = 0 对 a=0 和 a=1 的影响打消后失去 c 的值。h = cv2.Sobel(src, cv2.CV_64F, 1, 0, ksize=3) 是将 Sobel 梯度利用于输出图像,返回值为程度和垂直方向上的梯度值。
2、Canny 算子
Canny 算子是一种经典的边缘检测算法,它具备较高的边缘检测精度和抗噪性能。Canny 算子的计算公式如下:
- 非极大值克制 (NMS)
首先对输出图像进行非极大值克制,以去除大部分噪声。非极大值克制能够通过双阈值解决实现,行将大于阈值 0.1 的像素标记为噪声,小于阈值 0.1 的像素标记为前景。能够应用双阈值解决去除多余噪声。在训练模型时,将后果标记为 0(缺失值)和标记该输入张量索引指数增长或翻转两个位决策随机流类 683 dendrogram 函数 r/L 参数应用一个阈值进行标记。最初,应用该张量作为输出来训练模型。
- 部分加权均匀 (LBP)
LBP(Local Binary Pattern)是一种简略而无效的边缘检测算法,它将输出图像分成若干个小块(又称为窗口),而后在每个窗口内计算图像的部分像素权重。该算法采纳滑动窗口技术进行训练,并且能够通过对权重进行调整来进步边缘检测精度。
本文由 mdnice 多平台公布