数字图像处理的python实践(9)——图像锐化

        图像锐化是和平滑相反的操作,目的是为了使模糊的图像变得清晰。既然是相反的目的,那么操作应该也是相反的,平滑使用的是图像邻域的加权求和或者是积分运算,而锐化则是使用求导数(梯度)或有限差分来实现。

基于一阶导数的图像增强——梯度算子

       对于二维的连续函数f(x, y),在点(x,y)处的梯度为

\bigtriangledown f = \begin{bmatrix} \frac{\partial f}{\partial x}\\ \frac{\partial f}{\partial y} \end{bmatrix}

       其中两个偏导数的计算公式为

\frac{\partial f}{\partial x}=\lim_{\epsilon \rightarrow 0}\frac{f(x+\epsilon, y)-f(x, y)}{\epsilon}

\frac{\partial f}{\partial y}=\lim_{\epsilon \rightarrow 0}\frac{f(x, y+\epsilon)-f(x, y)}{\epsilon}

        梯度的幅值作为变化率的度量,其值如下。为什么要求梯度的幅值?想一下平滑的处理思路,最简单的平均平滑,在简单的一维情况下就是就某个位置上的数值替换成基于这个位置的邻域的积分值;而积分的逆变换就是微分,也就是将该位置的数值替换成这个位置的效斜率。所以二维情况下,就是将梯度幅值的值作为新的值。

|\bigtriangledown f(x,y)| = \sqrt{(\frac{\partial f}{\partial x})^{2}+(\frac{\partial f}{\partial y})^{2}}

      对应到我们的二维离散图像中,就用差分来代替求导

|\bigtriangledown f(x,y)| = \sqrt{[f(i+1,j)-f(i,j)]^{2}+[f(x,j+1)-f(x,j)]^{2}}

      上式中涉及平方和开方的运算,可以近似为绝对值的形式

|\bigtriangledown f(i,j)| =|f(i+1,j)-f(i,j)|+|f(x,j+1)-f(x,j)|

        而在实际应用中,经常被采用的是另一种近似梯度——Robert交叉梯度。可以将第一项和第二项都用模板的形式展示,如下所示。

  • 17
    点赞
  • 122
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值