*运用二阶微分算子检测边缘(边缘是二阶导数的过零点)
*Laplace算子
*Log算子
*利用图像强度二阶导数零交叉点求边缘点的算法对噪声十分敏感
*高斯-拉普拉斯
*LoG:Laplacian of a Gaussian 边缘检测算子
*优点:
*先采用高斯算子对原图像进行平滑,然后再施以Laplacian算子,可克服Laplacian算子对噪声敏感的缺点,减少噪声的影响。
*一维高斯函数的用途:
*统计学:描述正态分布
*信号处理:高斯滤波器
*图像处理:高斯模糊
*一维高斯函数的优点
*1.旋转对称性,用其对图像进行平滑运算时在各个方向上的平滑程度相同,边缘检测等操作中不会偏袒某一方向上的图像的细节
*2.随着离高斯模板中心点月圆,权值越小,这使得高斯滤波器比起普通的平滑滤波器更能更好地保留图像细节。如果距离越远的
*点权值越重的话,那图像会失真。
*3.在平滑图像去除噪声和保留噪声的信息间找到平衡点。sigma参数越大,高斯函数的图谱就越矮平缓,表现在频谱上就是频带越宽
*平滑程度高。反之sigma参数越小,平滑程度越低。
*4.卷积核越大,平滑程度越高
read_image(Image,'mreut')
laplace_of_gauss(Image, ImageLaplace1, 2)
zero_crossing(ImageLaplace1, RegionCrossing1)
*Canny算子
*先平滑后求导
read_image(Image,'fabrik')
edges_image(Image,ImaAmp,ImaDir,'canny',0.5,'nms',12,22)
threshold(ImaAmp,Edges,1,255)
skeleton(Edges, Skeleton)
gen_contours_skeleton_xld(Skeleton, Contours1, 1, 'filter')
dev_display(Image)
* dev_set_colored(Contours1)
*Step1.用高斯滤波器平滑图像
*Step2.用二阶偏导的有限差分来计算梯度的幅值和方向
*Step3.对梯度幅值应用*非极大值抑制*
*Step4.用双阈值算法检测和连接边缘
*亚像素级别的边缘提取
dev_close_window()
read_image(Image,'fabrik')
dev_open_window_fit_image(Image, 0, 0, -1, -1, WindowHandle3)
edges_sub_pix(Image, Edges1, 'canny', 1, 20, 40)
dev_set_part(160,250,210,300)
dev_display(Image)
dev_display(Edges1)
Halcon---边缘检测:二阶微分
最新推荐文章于 2024-08-06 08:40:19 发布