拉普拉斯图像锐化

拉普拉斯锐化

根据某个像素周围像素到此像素的突变程度进行锐化。

一阶微分: 梯度,图像变化方向,增长或降低
二阶微分: 变化速度,过渡比较急剧还是减缓

对laplace锐化而言
当邻域中心像素灰度低于它所在的领域内其它像素的平均灰度时,此中心像素的灰度应被进一步降低,当邻域中心像素灰度高于它所在的邻域内其它像素的平均灰度时,此中心像素的灰度应被进一步提高,以此实现图像的锐化处理。
进而让其图像灰度差异更大。

微分算子

一阶

∂ f ∂ x = f ( x , y ) − f ( x − 1 , y ) \frac{\partial f}{\partial x} = f(x,y)-f(x-1,y) xf=f(x,y)f(x1,y)

∂ f ∂ y = f ( x , y ) − f ( x , y − 1 ) \frac{\partial f}{\partial y} = f(x,y)-f(x,y-1) yf=f(x,y)f(x,y1)

全微分有

Δ f = ∂ f ∂ x + ∂ f ∂ y = 2 f ( x , y ) − f ( x − 1 , y ) − f ( x , y − 1 ) \Delta f = \frac{\partial f}{\partial x}+\frac{\partial f}{\partial y} =2f(x,y) - f(x-1,y) - f(x,y-1) Δf=xf+yf=2f(x,y)f(x1,y)f(x,y1)

二阶

∇ 2 f = 4 f ( x , y ) − f ( x − 1 , y ) − f ( x , y + 1 ) − f ( x + 1 , y ) − f ( x , y − 1 ) \nabla^2 f = 4f(x,y) - f(x-1,y) - f(x,y+1) - f(x+1,y) -f(x,y-1) 2f=4f(x,y)f(x1,y)f(x,y+1)f(x+1,y)f(x,y1)

四邻域模板矩阵

[ 0 − 1 0 − 1 4 − 1 0 − 1 0 ] \begin{bmatrix} 0&-1&0\\-1&4&-1\\0&-1&0 \end{bmatrix} 010141010

如果进行中心差分格式,有

∇ 2 f = 8 f ( x , y ) − f ( x − 1 , y − 1 ) − f ( x − 1 , y ) − f ( x − 1 , y + 1 ) − f ( x , y − 1 ) − f ( x , y + 1 ) − f ( x + 1 , y − 1 ) − f ( x + 1 , y ) − f ( x + , y + 1 ) \nabla^2 f = 8f(x,y) - f(x-1,y-1) - f(x-1,y) - f(x-1,y+1) - f(x,y-1) - f(x,y+1) - f(x+1,y-1) - f(x+1,y) -f(x+,y+1) 2f=8f(x,y)f(x1,y1)f(x1,y)f(x1,y+1)f(x,y1)f(x,y+1)f(x+1,y1)f(x+1,y)f(x+,y+1)

八邻域模板矩阵
[ − 1 − 1 − 1 − 1 8 − 1 − 1 − 1 − 1 ] \begin{bmatrix} -1&-1&-1\\-1&8&-1\\-1&-1&-1 \end{bmatrix} 111181111

锐化方式

按下式子、替换原像素处的数值

g ( x ) = { f ( x , y ) − ∇ 2 f ( x , y ) , ∇ 2 f ( x , y ) < 0 f ( x , y ) + ∇ 2 f ( x , y ) , ∇ 2 f ( x , y ) ≥ 0 g(x) = \begin{cases} f(x,y) - \nabla^2 f(x,y),&\nabla^2 f(x,y)<0\\ f(x,y) + \nabla^2 f(x,y),&\nabla^2f(x,y) \ge 0 \end{cases} g(x)={f(x,y)2f(x,y),f(x,y)+2f(x,y),2f(x,y)<02f(x,y)0

代码

function [ImageOut] = MyLaplace(I)

[m,n,c]=size(I);
A=zeros(m,n,c);

%分别处理R、G、B
%先对R进行处理
for i=2:m-1
    for j=2:n-1
        A(i,j,1)=I(i+1,j,1)+I(i-1,j,1)+I(i,j+1,1)+I(i,j-1,1)-4*I(i,j,1);
    end
end

%再对G进行处理
for i=2:m-1
    for j=2:n-1
        A(i,j,2)=I(i+1,j,2)+I(i-1,j,2)+I(i,j+1,2)+I(i,j-1,2)-4*I(i,j,2);
    end
end

%最后对B进行处理
for i=2:m-1
    for j=2:n-1
        A(i,j,3)=I(i+1,j,3)+I(i-1,j,3)+I(i,j+1,3)+I(i,j-1,3)-4*I(i,j,3);
    end
end
ImageOut=I-ceil(A);
end
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豆沙粽子好吃嘛!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值