持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第21天,点击查看活动详情
总计:今天是十月更文计划第二十一天,第三十八篇
边缘检测分割的原理
区域之间:不连续性
做法:根据图像像素灰度值的不连续性,先找到点、线、边,再确定出区域。
做法:根据图像像素灰度值的相似性,通过选择阈值,找到灰度值相似的区域,区域的外轮廓就是目标对象的边
基本思想:通过寻找图像中不同区域的边界,从而实现图像的分割。它是基于边界的一大类图像分割方法。
一阶边缘检测算子 检测图像一阶导数的峰值或谷值确定边缘,可用一阶微分算子和图像卷积实现。
为了检测边缘点,选取适当的阈值T,对梯度图像进行二值化,则有
直接计算 、 可以检测到边的存在。
对沿着x轴方向的边产生的响应最强;
对沿着y轴方向的边产生的响应最强。
有的算子在微分的同时,具有平滑作用,能够滤除噪声。
、Roberts,Prewitt,Sobel等算子,只包含两个方向的模板,可检测边缘方向少。 微分模板方向越多就能检测更多方向的边缘。
使用方法:8个模板分别与图像卷积,检测8个方向的灰度变化,变化最大的方向即是边缘的方向。5×5的Kirsch算子的前4个方向模板如下:
(3) Canny算子
存在问题: 位置不准;非单像素宽等。
好的检测算子需满足三个指标
高准确性:多包含真边缘,少包含假边缘;
高精确度:检测到的边缘应该在真正边界上;
单像素宽:选择性很高,只对边缘有唯一响应。
Canny算子检测边缘的步骤: 用高斯滤波模板平滑图像; 计算平滑后图像的梯度的幅值和方向; 对梯度幅值应用费极大值抑制; 确保在梯度方向上是最大值。 用双阈值算法检测和链接边缘。 对不确定的部分借助邻域梯度判断。