数字图像处理——第八章 图像压缩
发布日期:2021-05-15 06:52:52 浏览次数:23 分类:精选文章

本文共 1196 字,大约阅读时间需要 3 分钟。

数字图像处理——第八章 图像压缩

图像压缩的核心目标是减少表示数字图像所需的数据量。或许你会问,既然是一张二维图像,哪一张二维图像还需要减少数据量?毕竟,几个G容量还能存入一大堆文件。但当你想到Android中的Bitmap数据格式,就能够理解为什么图像压缩如此重要了。

为啥要图像压缩

图像压缩其实是去除冗余信息的过程。数字图像中存在编码冗余、空间冗余和时间冗余等多种类型的冗余。例如,ARGB_8888格式的像素需要4字节存储,每个像素占用32位,如果一张1920×1080的图像,总数据量就可达8MB,1GB存储空间只能保存约140张图片。对于视频数据来说,压缩的必要性就更加明显了。

编码冗余

图像的灰度值可以看作离散随机变量,其中每个值出现的概率据以决定其比特分配。通过对变量的编码,我们可以有效减少所需比特数,当编码冗余被减少时,图像压缩得以实现。

空间冗余

相同颜色的像素相邻出现是最常见的空间冗余现象。例如,连续图像中的像素往往颜色相近。通过统计像素值的出现频率,使用行程编码(RLE)来记录连续相同颜色的像素,这大大减少了需要存储的数据量。

时间冗余

视频数据具有强烈的时间冗余,因为连续帧之间的变化通常非常微小。在进行视频压缩时,可以充分利用帧间的相似性,以降低压缩率和增强压缩效率。

一些基本的压缩方法

霍夫曼编码

霍夫曼编码是一种变长编码方法,通过将高频信源分配较短的编码表,对数据进行压缩。具体步骤包括:

  • 将信源符号按出现频率排序。
  • 通过相结合较短频率的符号,生成编码表。
  • 将优化后的编码表应用于原始数据,得到压缩后的结果。
  • 行程编码(RLE)

    行程编码专门针对空间冗余进行压缩。例如,连续相同的像素颜色只需记录颜色值和连续像素的数量即可。这种方法简单有效,尤其适合处理大量连续相同图像块的情况。

    算术编码

    算术编码将数据映射到实数区间内,通过动态调整分区间以减少平均比特数。这种方法在处理低熵数据时表现优异,特别适合网络压缩和储存压缩场景。

    LZW编码

    LZW算法通过查找优最短子字符串匹配,对重复数据进行高效压缩。在图像处理中,它非常适合处理具有高重复性和多样性的数据结构。

    数字图像水印

    数字水印是一种在图像中嵌入隐藏信息的技术,用于保护版权或验证图像的完整性。常见水印方法包括可见水印和不可见水印。

    可见水印

    可见水印的基本公式为:

    [ f_w = (1 - \alpha)f + \alpha w ]

    其中,α控制水印的可见程度,f为衬底图像,w为添加的水印图像。通过调节α值,可以在图像中可见地嵌入水印信息。

    LSB不可见水印

    LSB方法将高位比特信息嵌入到低位比特中。例如,使用8位颜色图像的最低两位来嵌入隐藏信息。这种方法的优点是难以察觉且不影响图像质量。

    通过多种方法结合,可以实现高效的图像压缩和水印技术,从而在图像处理任务中提供坚实的理论基础。

    上一篇:BUUCTF MISC 九连环
    下一篇:linux服务下获取jar项目部署所在路径path

    发表评论

    最新留言

    哈哈,博客排版真的漂亮呢~
    [***.90.31.176]2025年04月17日 08时52分58秒