NEFU数字图像处理(5)图像压缩编码

一、概述

1.1简介

图像压缩编码的过程是在图像存储或传输之前进行,然后再由压缩后的图像数据(编码数据)恢复出原始图像或者是原始图像的近似图像·

  • 无损压缩:在压缩过程中没有信息损失,可由编码数据完全恢复出原始图像·
  • 有损压缩:在压缩过程中有信息损失,由编码数据恢复出的图像与原始图像之间有差别,即原始图像的近似图像。有损压缩能取得较高的压缩率(压缩比)

1.2相关概念

信息相关

在绝大多数图像的像素之间,各像素行和帧之间存在着较强的相关性。

每个像素的灰度值(或颜色值)总是和其周围的其它像素的灰度值(或颜色值)存在某种关系,应用某种编码方法减少这些相关性就可实现图像压缩。

冗余类型

从信息论的角度来看,压缩就是去掉信息中的冗余。即保留确定信息,去掉可推知的确定信息,用一种更接近信息本质的描述来代替原有的冗余描述。

在数字图像压缩中,三种基本的数据冗余类型:

  • 编码冗余
  • 像素间冗余
  • 视觉冗余
编码冗余
像素间冗余
视觉冗余

视觉冗余:人的眼睛对某些图像特征不敏感,这些特征信息可以不在图像数据中出

现。
人眼的分辨能力一般约64个灰度等级,而图像的量化常采用256个灰度等级。

视觉冗余的压缩是不可恢复的(不可逆),所以量化的结果导致了数据有损压缩。

信源编码

图像压缩的目的是在满足一定的图像质量的条件下,用尽可能少的比特数来表示原图像,以减少图像的存储容量和提高图像的传输效率。

在信息论中,把这种通过减少冗余数据来实现数据压缩的过程称为信源编码。

根据解码后图像与原始图像的比较,图像编码的方法可以分成两大类:

  • 可逆编码
  • 不可逆编码

图像保真度准则

需要评价信息损失的测度,来描述由编码数据恢复出的图像相对于原始图像的偏离程度,这些测度称为图像保真度准则。

两类准则:客观保真度准则、主观保真度准则

客观保真度准则

客观保真度准则通常是用原始图像与恢复出的图像之间的函数来表示信息的损失程度。

常用的客观保真度准则:

  • 均方根误差
  • 均方根信噪比
主观保真度准则

图像压缩编码系统的基本组成

编码效率

对图像进行压缩编码时,编码效率可有以下表现形式:

  • 平均码字长度,简称平均码长(R)
  • 压缩比(Cr)
  • 图像熵与平均码长之比(η)

压缩比越大,压缩效果越好

举例

二、相关编码算法

无损压缩编码主要针对以下两种数据冗余:

  • 编码冗余
  • 像素间冗余

2.1哈夫曼编码

哈夫曼编码是一种变长编码(这种编码结构可以把最短的码字赋予出现概率最大的信源符号

哈夫曼编码算法步骤:

  • 统计出各个信源符号出现的概率(比如,对一幅图像进行灰度级概率统计),并对信源符号出现的概率从大到小排列;
  • 合并概率最小的两个信源符号,形成一个新符号。新符号的概率是这两个信源符号的概率之和·
  • 新符号的概率与剩余符号的概率形成一个新的概率集合,然后再对新的概率集合重新排列(从大到小)
  • 重复执行第2、3步,直到最后两个信源符号的概率之和是1为止。

举例

结论

2.2香农-范诺编码

香农-范诺编码算法步骤:

二分香农-范诺编码

算法步骤

  • 首先统计出每个信源符号出现的概率,并将所有概率从大到小排序。
  • 从当前概率集合中选取某个位置将其分成两个子集合,尽量使两个子集的概率之和近似相等(即概率之和越接近越好),给前一个子集赋值为0,后一个子集赋值为1
  • 重复步骤2,直到各个子集中只剩下一个信源符号为止。
  • 每个信源符号所属的子集的值(0或1)依次串联起来,即可得到该信源符号的二分香农-范诺编码·

举例

2.3算数编码

算术编码分析:

算术编码假设:对于一个独立信源来说,任一由信源符号组成的长度为N的序列的发生概率之和等于1。

根据信源符号序列的概率,把0,1区间划分为互不重叠的子区间,子区间的宽度恰好等于各符

号序列的概率,这样,、每个子区间内的任意一个实数都可以用来表示对应的符号。一串符号序列发生的概率越大,对应的子区间就越宽,,表达它所用的比特数就越少,因而相应的码字就越短。

举例

2.4行程编码

利用空间冗余度压缩图像的方法,处理某些相同灰度级成片连续出现的图形

应用:二值图像

具有相同灰度级并且是连续的像素数目称为行程长度。

举例

2.5LZW编码

将原始数据中的重复字符串建立一个字典(也称编码本),然后用该重复字符串在字典中的索引代替原始数据,从而达到压缩目的。

使用LZW压缩编码技术的文件格式包括有GIF、TIFF(标记图像文件格式)、PDF(可移植文件格式)等。

举例

相关推荐
Icomi_5 小时前
【PyTorch】7.自动微分模块:开启神经网络 “进化之门” 的魔法钥匙
c语言·c++·人工智能·pytorch·python·机器学习·计算机视觉
我的运维人生6 小时前
计算机视觉:解锁智能时代的钥匙与实战案例
人工智能·计算机视觉·运维开发·技术共享
小周不摆烂7 小时前
解锁计算机视觉算法:从理论到代码实战
计算机视觉
struggle20259 小时前
helm-dashboard为Helm设计的缺失用户界面 - 可视化您的发布,它提供了一种基于UI的方式来查看已安装的Helm图表
开发语言·ui·计算机视觉·编辑器·知识图谱
dreadp14 小时前
解锁豆瓣高清海报(二) 使用 OpenCV 拼接和压缩
图像处理·python·opencv·计算机视觉·数据分析
struggle20251 天前
2025开源DouyinLiveRecorder全平台直播间录制工具整合包,多直播同时录制、教学直播录制、教学视频推送、简单易用不占内存
图像处理·计算机视觉·开源·音视频·语音识别
人工智能教学实践1 天前
【毕业与课程大作业参考】基于 yolov8+pyqt5 界面自适应的表情识别检测系统 demo
人工智能·计算机视觉·目标跟踪
BugNest1 天前
计算机视觉和图像处理
图像处理·人工智能·机器学习·计算机视觉·ai
Quz1 天前
OpenCV:闭运算
图像处理·人工智能·opencv·计算机视觉
Quz2 天前
OpenCV:开运算
图像处理·人工智能·opencv·计算机视觉