Matlab_20190821

  • 数字图像的锐化处理
  • 单方向的一阶锐化
  • 水平方向的一阶锐化处理
  • 垂直方向的一阶锐化
  • 单方向锐化后的处理
  • 无方向一阶锐化
  • 几种方法的对比
  • 二阶微分锐化
  • 一阶微分锐化与二阶微分锐化的比较
  • 频域滤波
  • 低通滤波
  • 高通滤波
  • 带阻滤波器
  • 同态滤波
  • 图像复原
  • 图像噪声模型
  • 噪声抑制方法
  • 均值滤波器
  • 加权均值滤波
  • 中值滤波器
  • 边界保持类滤波器
  • K近邻(KNN)平滑滤波器
  • 对称近邻平滑滤波器
  • 最小方差平滑滤波器
  • Sigma滤波器
  • 图像编码技术
  • 压缩编码——数据冗余、图像冗余
  • 行程编码
  • 二维行程编码
  • 霍夫曼编码(熵编码)
  • 香农编码


数字图像的锐化处理

图像锐化的目的是加强图像中景物的细节边缘和轮廓。
锐化的作用是使灰度反差增强。
因为边缘和轮廓都位于灰度突变的地方。所以锐化算法的实现是基于微分作用。

单方向的一阶锐化

JAVA图像锐化处理 图像锐化处理的目的_高通滤波

水平方向的一阶锐化处理

JAVA图像锐化处理 图像锐化处理的目的_JAVA图像锐化处理_02

垂直方向的一阶锐化

JAVA图像锐化处理 图像锐化处理的目的_灰度_03

单方向锐化后的处理

JAVA图像锐化处理 图像锐化处理的目的_JAVA图像锐化处理_04


JAVA图像锐化处理 图像锐化处理的目的_高通滤波_05

无方向一阶锐化
  1. sobel锐化
  2. privitt锐化
几种方法的对比
  1. Sobel算法与Priwitt算法的思路相同,属于同一类型,因此处理效果基本相同。
  2. Roberts算法的模板为2*2,提取出的信息较弱。
  3. 单方向锐化经过后处理之后,也可以对边界进行增强。
二阶微分锐化
  1. 对于突变形的细节,通过一阶微分的极大值点,二阶微分的过0点均可以检测出来。
  2. 对于细线形的细节,通过一阶微分的过0点,二阶微分的极小值点均可以检测出来。
  3. 对于渐变的细节,一般情况下很难检测,但二阶微分的信息比一阶微分的信息略多。

算法特点 Wallis算法考虑了人眼视觉特性,因此,与Laplacian等其他算法相比,可以对暗区的细节进行比较好的锐化。

一阶微分锐化与二阶微分锐化的比较
  1. Sobel算子获得的边界是比较粗略的边界,反映的边界信息较少,但是所反映的边界比较清晰;
  2. Laplacian算子获得的边界是比较细致的边界。反映的边界信息包括了许多的细节信息,但是所反映的边界不是太清晰。

频域滤波

JAVA图像锐化处理 图像锐化处理的目的_高通滤波_06

低通滤波

低通滤波器的功能是让低频率通过而滤掉或衰减高频,其作用是过滤掉包含在高频中的噪声。所以低通滤波的效果是图像的去噪声平滑增强,但同时也抑制了图像的边界,造成图像不同程度上的模糊。对于大小为的图像,频率点与频域中心的距离为,其表达式为:

JAVA图像锐化处理 图像锐化处理的目的_高通滤波_07

高通滤波

衰减或抑制低频分量,让高频分量通过称为高通滤波,其作用是使图像得到锐化处理,突出图像的边界。经理想高频滤波后的图像把信息丰富的低频去掉了,丢失了许多必要的信息。一般情况下,高通滤波对噪声没有任何抑制作用,若简单的使用高通滤波,图像质量可能由于噪声严重而难以达到满意的改善效果。为了既加强图像的细节又抑制噪声,可采用高频加强滤波。这种滤波器实际上是由一个高通滤波器和一个全通滤波器构成的,这样便能在高通滤波的基础上保留低频信息。

带阻滤波器

带阻滤波器是用来抑制距离频域中心一定距离的一个圆环区域的频率,可以用来消除一定频率范围的周期噪声。带阻滤波器包括理想带阻滤波器、巴特沃斯带阻滤波器和高斯带阻滤波器。

同态滤波

同态滤波是一种特殊的滤波技术,可用于压缩图像灰度的动态范围,且增强对比度。这种处理方法与其说是一种数学技巧,倒不如说因为人眼视觉系统对图像亮度具有类似于对数运算的非线性特性

图像复原

图像噪声模型
  1. 高斯噪声
  2. 椒盐噪声
  3. 均匀分布噪声
  4. 指数分布噪声
  5. 伽玛分布噪声
噪声抑制方法
均值滤波器

在图像上,对待处理的像素给定一个模板,该模板包括了其周围的邻近像素。将模板中的全体像素的均值来替代原来的像素值的方法。

缺点: 会使图像变的模糊,原因是它对所有的点都是同等对待,在将噪声点分摊的同时,将景物的边界点也分摊了。

加权均值滤波

JAVA图像锐化处理 图像锐化处理的目的_JAVA图像锐化处理_08

中值滤波器

因为噪声(如椒盐噪声)的出现,使该点像素比周围的像素亮(暗)许多。
如果在某个模板中,对像素进行由小到大排列的重新排列,那么最亮的或者是最暗的点一定被排在两侧。
取模板中排在中间位置上的像素的灰度值替代待处理像素的值,就可以达到滤除噪声的目的。

椒盐噪声比较:

  1. 椒盐噪声是幅值近似相等但随机分布在不同位置上,图像中有干净点也有污染点。
  2. 中值滤波是选择适当的点来替代污染点的值,所以处理效果好。
  3. 因为噪声的均值不为0,所以均值滤波不能很好地去除噪声点。

高斯噪声比较:

  1. 高斯噪声是幅值近似正态分布,但分布在每点像素上。
  2. 因为图像中的每点都是污染点,所以中值滤波选不到合适的干净点。
  3. 因为正态分布的均值为0,所以均值滤波可以减弱噪声。
边界保持类滤波器

为了解决图像模糊问题,一个自然的想法就是,在进行平滑处理时,首先判别当前像素是否为边界上的点,如果是,则不进行平滑处理;如果不是,则进行平滑处理。

K近邻(KNN)平滑滤波器

KNN滤波器因为有了边界保持的作用,所以在去除椒盐以及高斯噪声时,对图像景物的清晰度保持方面的效果非常明显。所付出的代价是:算法的复杂度增加了。

对称近邻平滑滤波器

从模板中的对称点对寻找与待处理像素相同区域的点。然后对选出的点做均值运算。

最小方差平滑滤波器

将属于同一个区域的可能的相邻关系以9种模板表示出来,然后计算每个模板中的灰度分布方差,以方差最小的那个模板的均值替代原像素值。

Sigma滤波器

是构造一个模板,计算模板的标准差σ,置信区间为当前像素值的±2σ范围。将模板中落在置信范围内的像素的均值替换原来的像素值。

图像编码技术

压缩编码——数据冗余、图像冗余

改变图像信息的描述方式,以压缩掉图像中的数据冗余。忽略一些视觉不太明显的微小差异,以压缩掉图像中的视觉冗余。

行程编码

一种无损数据压缩编码方法。该压缩编码技术直观和经济,运算也相当简单,因此解压缩速度很快。行程编码适用于计算机生成的图形图像,对减少存储容量很有效果。
将一行中灰度值相同的相邻像素,用一个计数值和该灰度值来代替。

二维行程编码

JAVA图像锐化处理 图像锐化处理的目的_JAVA图像锐化处理_09

霍夫曼编码(熵编码)

首先求出图像中灰度分布的灰度直方图;
根据该直方图,对其按照分布概率从小到大的顺序进行排列;
每一次从中选择出两个概率为最小的节点相加,形成一个新的节点,构造一个称为“Huffman树”的二叉树;
对这个二叉树进行编码,就获得了Huffman编码码字。

香农编码

香农编码的理论基础是符号的码字长度Ni完全由该符号出现的概率来决定,即:

其中D为编码时所用的数值。当信源符号出现的概率为2的负幂次方时,采用香农编码同样能达到100%的编码效率。
香农编码的具体方法如下:

  1. 将信源符号按其出现的概率从大到小排序;
  2. 按照上式计算出各个概率对应的码字长度;
  3. 计算累加概率,其定义为:
  4. JAVA图像锐化处理 图像锐化处理的目的_灰度_10

  5. 把各个累加概率由十进制转化为二进制,取该二进制数的前位作为对应信源符号的码字。

以上图像均取自老师PPT内容