一. 本文主要是在给出拉普拉斯锐化算子公式的情况下,在matlab上实现代码设计。拉普拉斯算子是最简单的各向同性微分算子,有几种常用的滤波模板,本文使用的是八邻域模板,如下所示
image.png
其对应的计算公式为:
image.png
因此最后得到的锐化后的图像表示为:
image.png
其中,g(x,y)是输出图像,f(x,y)是原图像,c是常数,取为1.
二. 代码实现如下
%拉普拉斯算子锐化滤波
%M,N是滤波器的模板,为方便,应为同型奇数,如3x3,5x5
function dstImg=laShapeFilter(oriImg,M,N)
[m,n,~] = size(oriImg);
dstImg = zeros(m,n);
%扩展
extendOriImg = zeros(m+M-1,n+N-1);
start = fix(M/2);
for i = 1:m
for j = 1:n