边 缘 提 取 原 理 及 其 相 关 算 子 边缘提取原理及其相关算子 边缘提取原理及其相关算子
1.图像边缘提取原理
边缘的定义:边缘是图像中灰度发生明显变化的地方,是不同灰度区域之间的界限。
边缘的矩阵形式:
如何进行求取边缘:采用掩模的方式,在图像矩阵上进行移动,然后利用掩模内的掩模值进行运算,进而实现边缘的求取。
掩膜:
结果:
常用掩膜
Robert边缘:边缘定位准,但是对噪声敏感;适用于边缘明显且噪声较少的图像分割;边缘定位精度低。
Prewitt边缘:对噪声可以适当抑制,但是会起到边缘平滑,对边缘的定位不如Roberts 算子。
Sobel边缘:Sobel算子对于像素的位置的影响做了加权,可以降低边缘模糊程度。
Canny边缘:非极大值抑制与双阈值的思想,边缘的提取效果在目前边缘提取中是相对效果最好的。,
2.边缘提取相关算子
1.
dev_open_file_dialog ('read_image', 'default', 'default', Selection)
2.
read_image (Image, Selection)
3.
rgb1_to_gray (Image, GrayImage)
4.
roberts (GrayImage, ImageRoberts, 'gradient_sum')
5.
threshold (ImageRoberts, Region, 128, 255)
6.
7.
prewitt_amp (GrayImage, ImageEdgeAmp)
threshold (ImageEdgeAmp, Region1, 128, 255)
sobel_amp (GrayImage, EdgeAmplitude, 'sum_abs', 3)
* sobel_dir (GrayImage, EdgeAmplitude1, EdgeDirection, 'sum_abs', 3)
* 图像的边缘
edges_image (GrayImage, ImaAmp, ImaDir, 'canny', 1, 'nms', 20, 40)