边缘检测(3)
本节来介绍下canny边缘检测算子,算法步骤如下:
用高斯滤波平滑图像。
计算图像的梯度与角度。
对梯度图像进行非极大抑制。
用双阈值处理和连接分析来检测和连接边缘。
步骤1,图像处理中经常采用的预处理步骤,主要用来降噪,缓解噪声对边缘检测结果的影响。
步骤2,边缘检测中常用步骤,用梯度来反映像素值灰度变化情况,为后续筛选图像边缘做准备。
步骤3,根据梯度方向,在一定方向范围内,保留最大的梯度值(最有可能是边缘),其所对应的像素点为边缘上的像素点,这步主要是为边缘进行“瘦身”,防止检测出来的边缘过粗。
步骤4,对梯度值进一步筛选
双阈值筛选:给定两个阈值(高阈值,低阈值),大于高阈值,认为是强边缘,进行保留,强边缘是断断续续的。小于低阈值,非边缘,丢弃。介于两者之间,认为是弱边缘,保留,待处理。
连接分析:根据强边缘对弱边缘点进行筛选,对于每一个强边缘点,将其8个邻域像素内的弱边缘点均标记为边缘点, 依次检查每一个强边缘点的邻域,最终没有被标记过的弱边缘点进行抛弃。边缘检测结束。
边缘检测结果如下所示:
输入 canny边缘检测
总结:
本文主要介绍了canny边缘检测算子的基本步骤和实验结果。