当前课程知识点:现代图像分析 > 第六章 图像压缩编码 > 6.5 算数编码 > 6.5.1 算术编码学习视频
同学们好 今天我们介绍 算术编码
也是无损编码另外一种优秀的编码方法
算术编码是采用一种比特数目可变的方法进行编码
它和霍夫曼编码类似 都是变长编码
但是优点是 算术编码可以分配带有小数的比特数目信符
而对于霍夫曼编码来说 单个信源的码长是整数
比如当概率为0.3的符号 它的理想码字应该为1.737
那么霍夫曼编码只能给该信符分配1或者2比特
而算术编码则克服了这个问题
算术编码更接近于最优熵编码
因此 它的压缩性能优于霍夫曼编码
当然 它的复杂度也比霍夫曼编码更高
上述编码的基本原理是将被编码的信息流表示成
实数0到1之间的一个区间
那么消息越长 编码表示它的区间就越小
这一区间所需要的二进制位数就越多
算术编码用到了两个基本的参数
第一个 符号的概率 第二个编码区间
信源符号的概率决定压缩编码的效率
也决定了编码过程中信源符号在0到1之间的区间
编码过程中的区间决定了符号压缩后的输出
也就是说算术编码的输出是一个区间
算数编码的步骤
第一 将当前区间初始化为0到1 这是一个归一化的过程
第二 对于输入信息中的每个信源编码器执行两个步骤
将当前区间分成子区间 该子区间的长度正比符号概率
选择下一信符对应的子区间使其成为新的当前区间
第三步 将整个消息处理完后 在当前区间内任意选取一个数
那么这个数就是输入信息的算术编码
下面我们来结合一个实例说明算术编码的具体过程
假设我们要输出的编码信息流是bcadc
信源中各个符号的出现的概率已经知道了
a的概率是0.2 b的概率是0.3 c的概率是0.4 d的概率是0.1
首先假定各符号在区间0到1内的初始区间为lh
l表示小区间起始 h表示结束
那么下面这个表给出了
信源符号出现的概率和初始编码区间的一个分配表
在这里abcd出现的概率分别是0.2 0.3 0.4 0.1
那么给它分配初始区间a是从0.0到0.2 b是从0.2到0.5
那么0.2到0.5它的概率大小就是0.5减0.2等于0.3
c同理c是0.5到0.5加0.4 也就是0.9
最后一个是0.9到1.0 那么它之间的大小是0.1
那么定义当前区间为Li和Hi
当前编码符号的初始期间为lh
这样当前区间内的起始值Li和结束值Hi就可以
由上一个值计算出来,也就是Li等于L(i-1)加上R(i-1)乘以l
那么Hi等于L(i-1)加上R(i-1)乘以h
我们看第一个编码的符号为b
它的初始区间在上一个里面是从0.2到0.5
那么当前的区间就是为L(1)和H(1)
L(1)怎么来计算呢 根据这个公式
L(0)是0.2加上R(0)乘以l
那么H(1)等于L(0)加上R(0)乘以h 在这公式里面
当前区间的初始化值为0 1 就是L(0)等于0 H(0)等于1
R(0)等于H(0)减L(0) 它就等于1
代到这个公式里面就可以得到
L(1) H(1)的大小是0.2到0.5
那么第二个编码符号为c 它的区间是0.5到0.9
对应的R(1)是0.5减去0.2等于0.3
同理 当前区间就可以计算出来
是基于L(1)和R(1)对应的 那么分别是0.35和0.47
那么bc的编码区间就是0.35到0.47
第三个被编码的符号是a 它的初始区间是0到0.2
可以得到L(3)就等于L(2)加R(2)乘以l
这里面L(2)已经计算出来是0.35
R(2)是0.47减去0.35再乘以0 那么就是0.35
同理 H(3)可以计算得到等于0.374
这样的话信源bca的编码区间就可以得到是0.35到0.374
依次类推第四个编码的符号为d 它的初始期间是0.9到1.0
那么当前区间可以计算出来是0.3716到0.374
最后一个编码符号是c
最终同理可以得到它的编码区间是0.3728到0.37376
至此那么最终的一个输入信息流就可以
描述成一个实数区间从0.3728到0.37376
或者说在这个区间内的任意一个实数值
都可以唯一对应这个信息流
那我们应该选用哪一个呢
我们将这个区间用二进制形式来表达 就是这样一个形式
取这个区间位数最少的一个数是0.010111111
作为信息流bcadc的编码输出
同时 我们忽略前面这个0点
最终就可以得到它的编码输出是010111111
计算它的平均码字长度为1.8比特
这是一个小数比特
这个图给出了编码的整个过程
算术编码是编码的逆过程
根据编码的符号出现概率的初始编码区间分配表
和压缩后的数据编码所在范围来确定对应信息流的每一个符号
算术编码的实现方法要比霍夫曼编码更复杂
但是编码效率一般的情况下会比霍夫曼编码更高
今天的课程到此结束,同学们 再见
-1.1 图像及图像的基本概念
--1.1.2 图像及图像的基本概念作业
-1.2 数字图像处理的起源
--1.2.2 数字图像处理的起源作业
-1.3 数字图像处理的步骤和方法
--1.3.2 数字图像处理步骤和方法作业
-1.4 数字图像处理系统的组成
--1.4.2 数字图像处理系统的组成作业
-1.5 数字图像处理主要应用领域
--1.5.2 数字图像处理主要应用领域作业
-2.1 色度学基础
--2.1.3 色度学基础作业
-2.2 人的视觉特性
--2.2.1 人的视觉特性作业
-2.3 图像数字化
--2.3.2 图像数字化作业
-2.4 数字图像特点
--2.4.2 数字图像特点作业
-3.1 图像变换的基本概念
--3.1.2 图像变换的基本概念作业
-3.2 图像的几何变换
--3.2.2 图像的几何变换作业
-3.3 图像的离散傅立叶变换
--3.3.2 图像的离散傅立叶变换作业
-3.4 图像变换的一般表示形式
--3.4.2 图像变换的一般表示形式作业
-3.5 图像的离散余弦变换
--3.5.2 图像的离散余弦变换作业
-3.6 图像离散沃尔什-哈达玛变换
--3.6.2 图像离散沃尔什-哈达玛变换作业
-3.7 K-L变换
--3.7.2 K-L变换作业
-4.1 图像的对比度增强
--4.1.2 图像的对比度增强作业
-4.2 直方图修正
--4.2.3 直方图修正作业
-4.3 图像平滑
--4.3.4 图像平滑作业
-4.4 同态滤波
--4.4.2 同态滤波作业
-4.5 图像锐化
--4.5.2 图像锐化作业
-4.6 图像的彩色增强
--4.6.2 图像的彩色增强作业
-5.1 退化模型及常见退化模型
--5.1.2 退化模型及常见退化模型作业
-5.2 图像的无约束恢复
--5.2.2 图像的无约束恢复作业
-5.3 图像有约束最小二乘恢复
--5.3.2 图像有约束最小二乘恢复作业
-6.1 概述
--6.1.1 概述作业
-6.2 图像编码基本理论
--6.2.2 图像编码基本理论作业
-6.3 无损编码理论
--6.3.2 无损编码理论作业
-6.4 霍夫曼编码
--6.4.2 霍夫曼编码作业
-6.5 算数编码
--6.5.2 算数编码作业
-6.6 预测编码
--6.6.2 预测编码作业
-6.7 正交变换编码
--6.7.2 正交变换编码作业
-7.1 图像分割的定义及依据
--7.1.2 图像分割的定义及依据作业
-7.2 边缘点检测
--7.2.2 边缘点检测作业
-7.3 边缘线跟踪
--7.3.3 边缘线跟踪作业
-7.4 门限化分割
--7.4.2 门限化分割作业
-7.5 区域分割法
--7.5.2 区域分割法作业
-7.6 聚类分割法
--7.6.3 聚类分割法作业
-8.1 像素间的基本关系
--8.1.2 像素间的基本关系作业
-8.2 目标物的边界描述
--8.2.2 目标物的边界描述作业
-8.3 目标物的区域描述
--8.3.2 目标物的区域描述作业
-8.4 图像的几何特征
--8.4.2 图像的几何特征作业
-8.5 特征描述子
--8.5.4 特征描述子作业
-9.1 图像匹配
--9.1.2 图像匹配作业
-9.2 图像分类
--9.2.2 图像分类作业
-9.3 图像识别
--9.3.2 图像识别作业
-9.4 模式识别分类专题
--9.4.4 模式识别分类专题作业
-中国天网
-车道检测
-期末测试
--期末测试