2024年6月2日发(作者:)
边缘检测常用算子:
基于一阶微分的边缘检测方法:
Roberts 算子考虑图像的2*2邻域,是最简单的边缘检测算子,算法过程简述:
【1】,遍历图像(除去上边缘和左边缘),对每个像素做Roberts模板运算。
【2】,将结果保存到目标图像,结束。
Sobel算子考察的是3*3邻域,由两个卷积核组成,见上图,算法过程简述:
【1】,遍历图像(除去边缘,防止越界),对每个像素做Sobel模板卷积运算。
【2】,比较两个计算结果的大小,取较大者复制到目标图像,结束。
Prewitt算子和Sobel算子类似,所不同的是选用不同的模板而已,算法过程相同。
Krisch算子同样考究3*3邻域,所不同的是选用了八个卷积核,见上图,算法过
程简述:
【1】,遍历图像(除去边缘,防止越界),对每个像素做Krisch模板卷积运算。
【2】,比较八个计算结果的大小,取较大者复制到目标图像,结束。
基于二阶微分的边缘检测方法:
两种
Laplacian
模板
Gauss-Lanlancian
算子
Laplacian 算子是二阶导数边缘算子,考察的是3*3邻域,上图是两种比较常用
的模板,算法简述如下:
【1】,遍历图像(除去边缘,防止越界),对每个像素做Laplancian模板卷积运
算,注意是只做其中的一种模板运算,并不是两个。
【2】,复制到目标图像,结束。
Gauss-Laplacian考察的是5*5的邻域,检测的同时,引入了滤波,是噪声得以平
滑,上图是一种常用的算子,算法简述。
【1】,遍历图像(除去边缘,防止越界),对每个像素做Gauss -Laplancian模板
卷积运算。
【2】,复制到目标图像,结束。
Canny边缘检测是非常重要的一种边缘检测算法,主要过程如下:
【1】,用高斯滤波器平滑图像。
已经学习过,根据高斯函数,构造高斯模板,进行滤波,不在赘述。
【2】,用一阶偏导的有限差分来计算梯度的幅值和方向;
计算梯度作用模板,遍历像素,进行模板运算即可。
12
幅值和方向:
1
m,nfm,nH
1
m,n
2
m,nfm,nH
2
m,n
22
m,n
m,n
m,n
12
1
2
m,n
m,ntan
1
m,n
H
11
11
H
11
11
发布评论