图像锐化 订阅
图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。 [1] 展开全文
图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。 [1]
信息
外文名
Image sharpening
中文名
图像锐化
图像锐化原理
图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这类不利效果的影响,这就需要利用图像锐化技术,使图像的边缘变的清晰。在水下图像的增强处理中除了去噪,对比度扩展外,有时候还需要加强图像中景物的边缘和轮廓。而边缘和轮廓常常位于图像中灰度突变的地方,因而可以直观地想到用灰度的差分对边缘和轮廓进行提取。 图像锐化的相册(20张)
收起全文
精华内容
下载资源
问答
  • 图像锐化

    2021-04-12 08:34:08
    图像锐化图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征...

    图像锐化:

    图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。

    图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这类不利效果的影响,这就需要利用图像锐化技术,使图像的边缘变的清晰。

    在水下图像的增强处理中除了去噪,对比度扩展外,有时候还需要加强图像中景物的边缘和轮廓。而边缘和轮廓常常位于图像中灰度突变的地方,因而可以直观地想到用灰度的差分对边缘和轮廓进行提取。

     

    模糊算法是去除掉图像的高频信息,保留低频信息以此来达到模糊图像的效果。而图像锐化正好相反,是保留高频信息已达到保护细节信息的目的。通过锐化,我们能使图像的一些细节信息以及边缘得到增益。

    [高斯模糊]

     

    锐化的过程。其实就是找出细节以及边缘这些高频信息,把他们添加到原图中去以增加细节信息。所以,就引出了各种锐化算法。如基于sobel算子,基于laplas算子等的锐化算法。其中sobel和laplas算子是用来求解梯度用的。他们也是著名的边缘检测算子。这就很好理解了。我们可以先用这些求解边缘的方法先得到边缘和细节的高频信息。最后合成到我们原图中去。

    https://www.jianshu.com/p/bccb68efeafc

     

    https://blog.csdn.net/mghhz816210/article/details/37820483

     

    https://blog.csdn.net/qq_34040902/article/details/78986845

    https://blog.csdn.net/helimin12345/article/details/82634355

    https://www.cnblogs.com/jukan/p/7067699.html

    https://zhuanlan.zhihu.com/p/162275458

    https://wenku.baidu.com/view/ead5b6bf5122aaea998fcc22bcd126fff7055d99.html

    https://wenku.baidu.com/view/e8998fe7d3f34693daef5ef7ba0d4a7302766c95.html

     

     

     

     

     

     

    展开全文
  • 图像锐化演示-图像锐化.rar 自己编写的教学演示程序。 内容图像锐化:包括梯度法、sobel算子、laplacian算子、prewitt算子和高通滤波。 由于权限不够,不能发图片,演示效果截图在附件中。
  • 图像增强—图像锐化

    万次阅读 多人点赞 2019-08-09 13:16:32
    图像锐化与图像平滑是相反的操作,锐化是通过增强高频分量来减少图像中的模糊,增强图像细节边缘和轮廓,增强灰度反差,便于后期对目标的识别和处理。锐化处理在增强图像边缘的同时也增加了图像的噪声。方法通常有...

    1. 图像锐化

    图像锐化与图像平滑是相反的操作,锐化是通过增强高频分量来减少图像中的模糊,增强图像细节边缘和轮廓,增强灰度反差,便于后期对目标的识别和处理。锐化处理在增强图像边缘的同时也增加了图像的噪声。方法通常有微分法高通滤波法

    1.1. 图像细节的灰度变化特性

    取图像中的某一行作为扫描行,其灰度变化曲线为:
    在这里插入图片描述
    对该灰度变化曲线进行微分,得到一阶微分曲线和二阶微分曲线:
    在这里插入图片描述
    由图像的灰度变化曲线及其一阶微分和二阶微分可以总结出三种典型的灰度截面特征

    阶跃型细线型斜坡渐变型
    灰度变化曲线在这里插入图片描述在这里插入图片描述在这里插入图片描述
    一阶微分在这里插入图片描述在这里插入图片描述在这里插入图片描述
    二阶微分在这里插入图片描述在这里插入图片描述在这里插入图片描述

    2. 锐化处理方法

    2.1. 微分法

    2.1.1. 梯度法

    梯度的方向是图像中最大变化率的方向,梯度的幅度比例于相邻像素的灰度级差值

    对图像 F ( x , y ) F(x,y) F(x,y),在点 ( x , y ) (x,y) (x,y)处的梯度定义为矢量: ∇ F ( x , y ) = [ ∂ F ∂ x ∂ F ∂ y ] \nabla F(x,y)=\begin{bmatrix} \frac{\partial F}{\partial x} \\ \\ \frac{\partial F}{\partial y} \\ \end{bmatrix} F(x,y)=xFyF其幅度(模)为: ∣   ∇ F ( x , y )   ∣ = ( ∂ F ∂ x ) 2 + ( ∂ F ∂ y ) 2 |\ \nabla F(x,y)\ |=\sqrt{( \frac{\partial F}{\partial x})^2+( \frac{\partial F}{\partial y})^2}  F(x,y) =(xF)2+(yF)2 在进行图像处理时所称的梯度通常是指梯度的模

    对于离散图像,一般用邻近相差的差分法来代替微分:
    在这里插入图片描述
    ∇ F ( x , y ) = ∣   [ F ( x , y ) − F ( x + 1 , y ) ] 2 + [ F ( x , y ) − F ( x , y + 1 ) ] 2   ∣ ≈ ∣   [ F ( x , y ) − F ( x + 1 , y ) ]   ∣ + ∣   [ F ( x , y ) − F ( x , y + 1 ) ] 2   ∣ \begin{aligned} \nabla F(x,y) & = \sqrt{|\ [F(x,y)-F(x+1, y)]^2 + [F(x,y)-F(x,y+1)]^2\ |} \\ & \approx |\ [F(x,y)-F(x+1, y)]\ | + |\ [F(x,y)-F(x,y+1)]^2\ | \\ \end{aligned} F(x,y)= [F(x,y)F(x+1,y)]2+[F(x,y)F(x,y+1)]2   [F(x,y)F(x+1,y)] + [F(x,y)F(x,y+1)]2 
    有了梯度 ∇ F ( x , y ) \nabla F(x,y) F(x,y)之后就可以根据梯度得到锐化结果(输出),这里介绍五种确定锐化输出 G ( x , y ) G(x,y) G(x,y)的方法

    2.1.1.1. 直接以梯度代替锐化输出

    G ( x , y ) = ∇ F ( x , y ) G(x,y)=\nabla F(x,y) G(x,y)=F(x,y)该方法简单,但是在图像均匀的区域由于梯度很小,会导致锐化输出图像整体偏暗

    2.1.1.2. 输出阈值判断

    G ( x , y ) = { ∇ F ( x , y ) , ∇ F ( x , y ) > T F ( x , y ) , o t h e r w i s e G(x,y) = \begin{cases} \nabla F(x,y), & \nabla F(x,y)>T \\ F(x,y), & otherwise \end{cases} G(x,y)={F(x,y),F(x,y),F(x,y)>Totherwise该方法不会破坏图像背景,同时又可以进行一定程度的图像锐化

    2.1.1.3. 为边缘规定一个特定的灰度级

    G ( x , y ) = { L α , ∇ F ( x , y ) > T F ( x , y ) , o t h e r w i s e G(x,y) = \begin{cases} L_\alpha, & \nabla F(x,y)>T \\ F(x,y), & otherwise \end{cases} G(x,y)={Lα,F(x,y),F(x,y)>Totherwise

    2.1.1.4. 为背景规定特定的灰度级

    G ( x , y ) = { ∇ F ( x , y ) , ∇ F ( x , y ) > T L β , o t h e r w i s e G(x,y) = \begin{cases} \nabla F(x,y), & \nabla F(x,y)>T \\ L_\beta, & otherwise \end{cases} G(x,y)={F(x,y),Lβ,F(x,y)>Totherwise

    2.1.1.5. 二值化图像

    G ( x , y ) = { L α , ∇ F ( x , y ) > T L β , o t h e r w i s e G(x,y) = \begin{cases} L_\alpha, & \nabla F(x,y)>T \\ L_\beta, & otherwise \end{cases} G(x,y)={Lα,Lβ,F(x,y)>Totherwise

    2.2. 罗伯特梯度算子法

    Roberts梯度算子法算法简单,无方向性,采用对角相差的差分法来代替微分:
    在这里插入图片描述
    ∇ F ( x , y ) = ∣   [ F ( x , y ) − F ( x + 1 , y + 1 ) ] 2 + [ F ( x + 1 , y ) − F ( x , y + 1 ) ] 2   ∣ ≈ ∣   [ F ( x , y ) − F ( x + 1 , y + 1 ) ]   ∣ + ∣   [ F ( x + 1 , y ) − F ( x , y + 1 ) ] 2   ∣ \begin{aligned} \nabla F(x,y) & = \sqrt{|\ [F(x,y)-F(x+1, y+1)]^2 + [F(x+1,y)-F(x,y+1)]^2\ |} \\ & \approx |\ [F(x,y)-F(x+1, y+1)]\ | + |\ [F(x+1,y)-F(x,y+1)]^2\ | \\ \end{aligned} F(x,y)= [F(x,y)F(x+1,y+1)]2+[F(x+1,y)F(x,y+1)]2   [F(x,y)F(x+1,y+1)] + [F(x+1,y)F(x,y+1)]2 

    2.3. 拉普拉斯算子法

    Laplacian算法是线性二次微分算子,与梯度算子一样具有旋转不变性,从而满足了不同方向的图像边缘锐化要求,其获得的边界比较细,包括较多的细节信息,但边界不清晰

    Laplacian算子: ∇ 2 F ( x , y ) = ∂ 2 F ( x , y ) ∂ x 2 + ∂ 2 F ( x , y ) ∂ y 2 \nabla^2 F(x,y)=\frac{\partial^2 F(x,y)}{\partial x^2}+\frac{\partial^2 F(x,y)}{\partial y^2} 2F(x,y)=x22F(x,y)+y22F(x,y)其离散形式为: ∇ 2 F ( x , y ) = {   [ F ( x + 1 , y ) − F ( x , y ) ] − [ F ( x , y ) − F ( x − 1 , y ) ]   } + {   [ F ( x , y + 1 ) − F ( x , y ) ] − [ F ( x , y ) − F ( x , y − 1 ) ]   } = F ( x + 1 , y ) + F ( x − 1 , y ) + F ( x , y + 1 ) + F ( x , y − 1 ) − 4 F ( x , y ) \begin{aligned} \nabla^2 F(x,y) & = \{\ [F(x+1,y)-F(x,y)]-[F(x,y)-F(x-1,y)]\ \}+\{\ [F(x,y+1)-F(x,y)]-[F(x,y)-F(x,y-1)]\ \} \\ & = F(x+1,y)+F(x-1,y)+F(x,y+1)+F(x,y-1)-4F(x,y) \\ \end{aligned} 2F(x,y)={ [F(x+1,y)F(x,y)][F(x,y)F(x1,y)] }+{ [F(x,y+1)F(x,y)][F(x,y)F(x,y1)] }=F(x+1,y)+F(x1,y)+F(x,y+1)+F(x,y1)4F(x,y)可以看出,Laplacian算子就是其4倍中心元素值与其领域值和之差的绝对值,也可表达为中心元素与其领域内元素和均值负5倍的绝对值 ∇ 2 F ( x , y ) = ∣ − 5 {   F ( x , y ) − 1 5 [ F ( x − 1 , y ) + F ( x , y − 1 ) + F ( x , y ) + F ( x , y + 1 ) + F ( x + 1 , y + 1 ) ]   } ∣ \nabla^2 F(x,y)=|-5\{\ F(x,y)-\frac{1}{5}[F(x-1, y)+F(x, y-1)+F(x,y)+F(x,y+1)+F(x+1,y+1)]\ \}| 2F(x,y)=5{ F(x,y)51[F(x1,y)+F(x,y1)+F(x,y)+F(x,y+1)+F(x+1,y+1)] }

    使用Laplacian算子进行锐化时,其锐化输出 G ( x , y ) G(x,y) G(x,y)为: G ( x , y ) = F ( x , y ) − ∇ 2 F ( x , y ) G(x,y)=F(x,y)-\nabla^2F(x,y) G(x,y)=F(x,y)2F(x,y)

    常用的三种Laplacian算子:
    [ 0 − 1 0 − 1 4 − 1 0 − 1 0 ]        [ − 1 − 1 − 1 − 1 8 − 1 − 1 − 1 − 1 ]        [ 1 − 2 1 − 2 4 − 2 1 − 2 1 ] \begin{bmatrix} 0 & -1 & 0 \\ -1 & 4 & -1 \\ 0 & -1 & 0 \\ \end{bmatrix}\ \ \ \ \ \ \begin{bmatrix} -1 & -1 & -1 \\ -1 & 8 & -1 \\ -1 & -1 & -1 \\ \end{bmatrix}\ \ \ \ \ \ \begin{bmatrix} 1 & -2 & 1 \\ -2 & 4 & -2 \\ 1 & -2 & 1 \\ \end{bmatrix} 010141010      111181111      121242121

    在图像处理中,为了改善锐化的效果,也可以脱离微分计算原理,在原有算子的基础之上对模板系数进行改变,得到Laplacian变形算子

    2.4. 高通滤波法

    图像的边缘与频域中的高频分量相对应,高通滤波器可以抑制低频分量,从而达到图像锐化的目的

    建立在离散卷积基础上的空域高通滤波关系式为: g ( μ , ν ) = ∑ x ∑ y F ( x , y ) H ( μ − x + 1 , ν − y + 1 ) g(\mu,\nu)=\sum_{x}^{}\sum_{y}^{}F(x,y)H(\mu-x+1,\nu-y+1) g(μ,ν)=xyF(x,y)H(μx+1,νy+1)其中 H ( μ − x + 1 , ν − y + 1 ) H(\mu-x+1,\nu-y+1) H(μx+1,νy+1)被称作冲激响应

    常用的五种归一化冲激响应阵列:
    H 1 = [ 0 − 1 0 − 1 5 − 1 0 − 1 0 ]        H 2 = [ − 1 − 1 − 1 − 1 9 − 1 − 1 − 1 − 1 ]        H 3 = [ 1 − 2 1 − 2 5 − 2 1 − 2 1 ] H_1=\begin{bmatrix} 0 & -1 & 0 \\ -1 & 5 & -1 \\ 0 & -1 & 0 \\ \end{bmatrix}\ \ \ \ \ \ H_2=\begin{bmatrix} -1 & -1 & -1 \\ -1 & 9 & -1 \\ -1 & -1 & -1 \\ \end{bmatrix}\ \ \ \ \ \ H_3=\begin{bmatrix} 1 & -2 & 1 \\ -2 & 5 & -2 \\ 1 & -2 & 1 \\ \end{bmatrix} H1=010151010      H2=111191111      H3=121252121 H 4 = 1 7 [ 0 − 2 0 − 2 19 − 2 0 − 2 0 ]        H 5 = 1 2 [ − 2 − 1 − 2 − 1 6 − 1 − 2 − 1 − 2 ] H_4=\frac{1}{7}\begin{bmatrix} 0 & -2 & 0 \\ -2 & 19 & -2 \\ 0 & -2 & 0 \\ \end{bmatrix}\ \ \ \ \ \ H_5=\frac{1}{2}\begin{bmatrix} -2 & -1 & -2 \\ -1 & 6 & -1 \\ -2 & -1 & -2 \\ \end{bmatrix} H4=710202192020      H5=21212161212

    2.5. 模板匹配法

    将具有8个方向、大小为3×3的模板顺序作用于同一图像窗口,并对结果进行排序,将最大的结果值会加权平均值作为窗口中心元素的锐化进行输出。

    模板匹配法除了能增强图像边缘外还具有平滑噪声的优点,总体上效果优于梯度法

    下面介绍两种模板匹配算子:

    2.5.1. Sobel算子

    在这里插入图片描述
    Sobel算子能够锐化的边缘信息较强,其运算定义为: g ( x , y ) = ∣ V x ∣ + ∣ V y ∣ g(x,y)=|V_x|+|V_y| g(x,y)=Vx+Vy其中:
    V x = [ f ( x − 1 , y − 1 ) + 2 f ( x − 1 , y ) + f ( x − 1 , y + 1 ) ] − [ f ( x + 1 , y − 1 ) + 2 f ( x + 1 , y ) + f ( x + 1 , y + 1 ) ] V_x=[f(x-1,y-1)+2f(x-1,y)+f(x-1,y+1)]-[f(x+1,y-1)+2f(x+1,y)+f(x+1,y+1)] Vx=[f(x1,y1)+2f(x1,y)+f(x1,y+1)][f(x+1,y1)+2f(x+1,y)+f(x+1,y+1)] V x = [ f ( x − 1 , y − 1 ) + 2 f ( x , y − 1 ) + f ( x + 1 , y − 1 ) ] − [ f ( x − 1 , y + 1 ) + 2 f ( x , y + 1 ) + f ( x + 1 , y + 1 ) ] V_x=[f(x-1,y-1)+2f(x,y-1)+f(x+1,y-1)]-[f(x-1,y+1)+2f(x,y+1)+f(x+1,y+1)] Vx=[f(x1,y1)+2f(x,y1)+f(x+1,y1)][f(x1,y+1)+2f(x,y+1)+f(x+1,y+1)]

    2.5.2. Prewitt算子

    Prewitt算子有一定的抗干扰性,图像效果比较干净。其有8个方向,分别对应8个模板:
    ↑ : [ 1 1 1 1 − 2 1 − 1 − 1 − 1 ]        ↗ : [ 1 1 1 − 1 − 2 1 − 1 − 1 1 ]        → : [ − 1 1 1 − 1 − 2 1 − 1 1 1 ]        ↘ : [ − 1 − 1 1 − 1 − 2 1 1 1 1 ] \uparrow:\begin{bmatrix} 1 & 1 & 1 \\ 1 & -2 & 1 \\ -1 & -1 & -1 \\ \end{bmatrix}\ \ \ \ \ \ \nearrow:\begin{bmatrix} 1 & 1 & 1 \\ -1 & -2 & 1 \\ -1 & -1 & 1 \\ \end{bmatrix}\ \ \ \ \ \ \rightarrow:\begin{bmatrix} -1 & 1 & 1 \\ -1 & -2 & 1 \\ -1 & 1 & 1 \\ \end{bmatrix}\ \ \ \ \ \ \searrow:\begin{bmatrix} -1 & -1 & 1 \\ -1 & -2 & 1 \\ 1 & 1 & 1 \\ \end{bmatrix} 111121111      111121111      111121111      111121111 ↓ : [ − 1 − 1 − 1 1 − 2 1 1 1 1 ]        ↙ : [ 1 − 1 − 1 1 − 2 − 1 1 1 1 ]        ← : [ 1 1 − 1 1 − 2 − 1 1 1 − 1 ]        ↖ : [ 1 1 1 1 − 2 − 1 1 − 1 − 1 ] \downarrow:\begin{bmatrix} -1 & -1 & -1 \\ 1 & -2 & 1 \\ 1 & 1 & 1 \\ \end{bmatrix}\ \ \ \ \ \ \swarrow:\begin{bmatrix} 1 & -1 & -1 \\ 1 & -2 & -1 \\ 1 & 1 & 1 \\ \end{bmatrix}\ \ \ \ \ \ \leftarrow:\begin{bmatrix} 1 & 1 & -1 \\ 1 & -2 & -1 \\ 1 & 1 & -1 \\ \end{bmatrix}\ \ \ \ \ \ \nwarrow:\begin{bmatrix} 1 & 1 & 1 \\ 1 & -2 & -1 \\ 1 & -1 & -1 \\ \end{bmatrix} 111121111      111121111      111121111      111121111

    3. 一些边缘检测的经验

    1. 突变型细节,通过一阶微分的极大值点,二阶微分的零点可以检测出来
    2. 细线型细节,通过一阶微分的零点,二阶微分的极小值点可以检测出来
    3. 渐变型细节,一般情况下突变幅度小、定位难,不易检测,但二阶微分的信息比一阶微分多,需进行综合考虑

    边缘信息具有方向性,不同的锐化/边缘检测算子也可能具有方向性,因此同一个算子对不同的图像检测的效果可能不同,应对不同图像使用不同的算子进行检测

    展开全文
  • 行业资料-电子功用-图像锐化方法、图像锐化装置及电子装置.pdf
  • matlab 图像锐化

    2020-01-18 11:52:55
    matlab 实现图像锐化增强---
  • 拉普拉斯算子用于图像锐化处理-拉普拉斯算子用于图像锐化处理.doc 用Matlab拉普拉斯算子 处理图像,达到锐化边缘的效果 含有Matlab程序及相关图片
  • 数字图像锐化处理

    2018-06-26 11:31:47
    数字图像锐化处理,二值图像锐化处理,用的是MATLAB处理的
  • 用于数字图像锐化处理,提升图像尤其是全息图像的条纹对比度。
  • 图像锐化Windows源码

    2020-09-25 09:30:43
    图像锐化,是使图像边缘更清晰的一种图像处理方法,细节增强(detail enhancement)我理解也包含了图像锐化,常用的做法是提取图像的高频分量,将其叠加到原图上。图像高频分量的提取有两种做法,一种是用高通滤波器...
  • OpenCV-图像锐化

    千次阅读 多人点赞 2021-09-17 13:26:39
    OpenCV&C++代码实现图像锐化

    作者:翟天保Steven
    版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

    实现原理

           图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。

           锐化可通过拉普拉斯算子实现。拉普拉斯算子作为一个常见的二阶微分算子,放在二维图像中可以表示为:

    \nabla^{2} f=\frac{\partial^{2} f}{\partial x^{2}}+\frac{\partial^{2} f}{\partial y^{2}}

           其x方向相当于:获取x+1点和x点的差值d1,获取x点和x-1点的差值d2,然后d1-d2。

           \quad \frac{\partial^{2} f}{\partial x^{2}}=f(x+1, y)+f(x-1, y)-2 f(x, y)

           y方向同理。

    \frac{\partial^{2} f}{\partial y^{2}}=f(x, y+1)+f(x, y-1)-2 f(x, y)

           不难看出其3*3的模板为:

    \begin{array}{|c|c|c|} \hline 0 & 1 & 0 \\ \hline 1 & -4 & 1 \\ \hline 0 & 1 & 0 \\ \hline \end{array}

           若考虑将模板45°旋转并叠加,还可得到:

    \begin{array}{|c|c|c|} \hline 1 & 1 & 1 \\ \hline 1 & -8 & 1 \\ \hline 1 & 1 & 1 \\ \hline \end{array}

           基于上述原理,进行C++代码实现。

    功能函数代码

    // 图像锐化
    cv::Mat Sharpen(cv::Mat input, int percent, int type)
    {
    	cv::Mat result;
    	cv::Mat s = input.clone();
    	cv::Mat kernel;
    	switch (type)
    	{
    	case 0:
    		kernel = (Mat_<int>(3, 3) <<
    			0, -1, 0,
    			-1, 4, -1,
    			0, -1, 0
    			);
    	case 1:
    		kernel = (Mat_<int>(3, 3) <<
    			-1, -1, -1,
    			-1, 8, -1,
    			-1, -1, -1
    			);
    	default:
    		kernel = (Mat_<int>(3, 3) <<
    			0, -1, 0,
    			-1, 4, -1,
    			0, -1, 0
    			);
    	}
    	filter2D(s, s, s.depth(), kernel);
    	result = input + s * 0.01 * percent;
    	return result;
    }

    C++测试代码

    #include <iostream>
    #include <opencv2/opencv.hpp>
    
    using namespace std;
    using namespace cv;
    
    cv::Mat Sharpen(cv::Mat input, int percent, int type);
    
    int main()
    {
    	cv::Mat src = imread("test1.jpg");
    	cv::Mat result1 = Sharpen(src, -50, 0);
    	cv::Mat result2 = Sharpen(src, 50, 0);
    	imshow("original", src);
    	imshow("result1", result1);
    	imshow("result2", result2);
    	waitKey(0);
    	return 0;
    }
    
    // 图像锐化
    cv::Mat Sharpen(cv::Mat input, int percent, int type)
    {
    	cv::Mat result;
    	cv::Mat s = input.clone();
    	cv::Mat kernel;
    	switch (type)
    	{
    	case 0:
    		kernel = (Mat_<int>(3, 3) <<
    			0, -1, 0,
    			-1, 4, -1,
    			0, -1, 0
    			);
    	case 1:
    		kernel = (Mat_<int>(3, 3) <<
    			-1, -1, -1,
    			-1, 8, -1,
    			-1, -1, -1
    			);
    	default:
    		kernel = (Mat_<int>(3, 3) <<
    			0, -1, 0,
    			-1, 4, -1,
    			0, -1, 0
    			);
    	}
    	filter2D(s, s, s.depth(), kernel);
    	result = input + s * 0.01 * percent;
    	return result;
    }

    测试效果

    图1 原图
    图2 锐化-50效果图
    图3 锐化100效果图

           通过调整percent可以实现图像锐化程度的调整,type选择模板类型,也可自行填充更多的模板。

           如果函数有什么可以改进完善的地方,非常欢迎大家指出,一同进步何乐而不为呢~

           如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!

    展开全文
  • MATLAB实现图像锐化

    2021-04-11 11:47:26
    利用自带滤波函数与梯度的方式分别实现图像锐化
  • MATLAB--数字图像处理 图像锐化(纯代码篇)

    万次阅读 多人点赞 2019-09-19 17:41:27
    图像锐化 概念: 图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的...

    图像锐化

    概念:
    图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。

    我的理解:
    图像锐化就是通过使得图像的边缘更加突出,可以是原图与原图的高频部分叠加而成。

    Sobel算子

     I=imread('a2.jpg'); %读取图像
    I1=rgb2gray(I); %将彩色图变成灰色图
    imshow(I1),title('原图');
    
    model=[-1,0,1;
           -2,0,2;
           -1,0,1];
    [m,n]=size(I1);
    I2=double(I1);
    
    for i=2:m-1
        for j=2:n-1
            I2(i,j)=I1(i+1,j+1)+2*I1(i+1,j)+I1(i+1,j-1)-I1(i-1,j+1)-2*I1(i-1,j)-I1(i-1,j-1);
        end
    end
    figure,
    imshow(I2),title('边缘提取后的图像');
    I2 = I2 + double(I1);
    figure,
    imshow(uint8(I2)),title('锐化后的图像');
    

    效果图
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    Robert算子

     I=imread('a2.jpg'); %读取图像
    I1=rgb2gray(I); %将彩色图变成灰色图
    imshow(I1),title('原图');
    model=[0,-1;1,0];
    [m,n]=size(I1);
    I2=double(I1);
    for i=2:m-1
        for j=2:n-1
            I2(i,j)=I1(i+1,j)-I1(i,j+1);
        end
    end
    figure,imshow(I2),title('边缘提取后的图像');
    I2 = I2 + double(I1);
    
    figure,
    imshow(uint8(I2)),title('锐化后的图像');
    

    效果图
    在这里插入图片描述
    在这里插入图片描述

    Prewitt算子

     I=imread('a2.jpg'); 
    I1=rgb2gray(I); %将彩色图变成灰色图
    subplot(1,2,1);
    imshow(I1),title('原图');
    
    model=[-1,0,1;
           -1,0,1;
           -1,0,1];
    [m,n]=size(I1);
    
    I2=I1;
    for i=2:m-1
        for j=2:n-1
            tem=I1(i-1:i+1,j-1:j+1);
            tem=double(tem).*double(model);
          
            I2(i,j)=sum(sum(tem));
              
             end
    end
    
    figure,
    imshow(uint8(I2)),title('边缘提取后的图像');
    

    效果图
    在这里插入图片描述
    laplacian算子

     I=imread('C:\Users\LiCongliang\Desktop\数字图像处理\数字图像处理第五次作业\tea.png'); 
    I1=mat2gray(I);%实现图像矩阵的归一化操作
    [m,n]=size(I1);
    newGrayPic=I1;%为保留图像的边缘一个像素
    LaplacianNum=0;%经Laplacian算子计算得到的每个像素的值
    LaplacianThreshold=0.2;%设定阈值
    for j=2:m-1 %进行边界提取
        for k=2:n-1
            LaplacianNum=abs(4*I1(j,k)-I1(j-1,k)-I1(j+1,k)-I1(j,k+1)-I1(j,k-1));
            if(LaplacianNum > LaplacianThreshold)
                newGrayPic(j,k)=255;
            else
                newGrayPic(j,k)=0;
            end
        end
    end
    I2=rgb2gray(I); %将彩色图变成灰色图
    imshow(I2),title('原图');
    figure,
    imshow(newGrayPic);
    title('Laplacian算子的处理结果')
    

    效果图
    在这里插入图片描述

    更多

    获取更多资料、代码,微信公众号:海轰Pro
    回复 海轰 即可

    展开全文
  • 使用matlab 的GUI界面,添加图像锐化增强函数,进行交互式操作
  • 图像锐化处理

    2014-07-28 10:30:05
    图像锐化算法去除图像中的噪声,可以直接使用与彩色图像刚和灰度图像的处理。
  • 图像锐化和边缘提取技术可以消除图像中的噪声,提取图像信息中用来表征图像的一些变量,为图像识别提供基础。通常使用灰度差分法对图像的边缘、轮廓进行处理,将其凸显。本文分别采用Laplacian算子、Robert算子、...
  • 图像锐化算法

    热门讨论 2013-10-01 13:08:18
    图像锐化算法,算法比较厉害,能处理的更清晰,是我见过的最好的锐化算法。免费下载!
  • 图像锐化算法-sharpen

    万次阅读 2018-09-11 23:11:38
    图像锐化,是使图像边缘更清晰的一种图像处理方法,细节增强(detail enhancement)我理解也包含了图像锐化,常用的做法是提取图像的高频分量,将其叠加到原图上。图像高频分量的提取有两种做法,一种是用高通滤波器...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,490
精华内容 6,596
关键字:

图像锐化