Matlab的 fspecial 非锐化掩码使用拉普拉斯内核来实现图像的锐化。
据我所知,图像需要先模糊,然后从原件中减去模糊图像以获得更清晰的图像。拉普拉斯(Laplacian)部分恰好应该发生所谓的平滑处理。如果我错了,请纠正我,但拉普拉斯不会做任何平滑。
拉普拉斯如何帮助锐化图像?
答案 0 :(得分:4)
取自:http://www.imagemet.com/WebHelp/spip.htm#hid_filters_edge_enhancement.htm
它很好地解释了拉普拉斯滤波器;)
拉普拉斯滤波器将自己与其他边缘增强区分开 过滤器,因为它使用有关的二阶导数信息 通过差分方程改变图像的强度。
正在发生的是中心像素的差异 与每个周围的像素,然后平均。在这边缘 差异将很大,而在其他地方它会很小,留下 仅在尖锐差异或边缘区域突出显示 发生。在离散域中最简单的近似 连续拉普拉斯算子是计算每个斜率的差异 轴。
拉普拉斯算子可以在二维平面中定义为:
2D(x,y)=¶2I(x,y)/¶2x +¶2I(x,y)/¶2y
在离散情况下,它由4个连接的网格近似为:
L(x,y)= -I(x-1,y)-I(x + 1,y)-I(x,y-1)-I(x,y + 1)+ 4I(x ,y)的
这个四邻域拉普拉斯算子可以生成如下 内核:
答案 1 :(得分:0)
有不同的方法来锐化图像。
一种方法是从原始图像中减去图像的模糊版本。这称为unsharp masking。这是您描述的方法。
使用拉普拉斯算法是一种完全不同的方法。拉普拉斯算子用于强调边缘。 Smash已经很好地描述了它的内部运作,所以我不会在这里详细介绍。
其他方法包括deconvolution,focus stacking和others。这个领域有相当多的研究,所以如果你采用更先进的方法,请查看谷歌学术搜索。选择使用的方法通常取决于问题和任何相关的限制。