(完整word版)图像编码基本方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、霍夫曼编码(Huffman Codes)
最佳编码定理:在变长编码中,对于出现概率大的信息符号编以短字长的码,对于出现概率小的信息符号编以长字长的码,如果码字长度严格按照符号出现概率大小的相反的顺序排列,则平均码字长度一定小于按任何其他符号顺序排列方式的平均码字长度。
霍夫曼编码已被证明具有最优变长码性质,平均码长最短,接近熵值。
霍夫曼编码步骤:设信源X 有m 个符号(消息)⎭⎬⎫⎩⎨⎧=m m p x p p x x X ΛΛ2121
,
1. 1. 把信源X 中的消息按概率从大到小顺序排列,
2. 2. 把最后两个出现概率最小的消息合并成一个消息,从而使信源的消息数减少,并同时再按信源符号(消息)出现的概率从大到小排列;
3. 3. 重复上述2步骤,直到信源最后为⎭⎬⎫⎩⎨⎧=o o o o o p p x x X 212
1为止;
4. 4. 将被合并的消息分别赋予1和0,并对最后的两个消息也相应的赋予1和0;
通过上述步骤就可构成最优变长码(Huffman Codes)。
例:
110005.0010010.000015.01120.00125.01025.065
4
3
2
1
x x x x x x P X
i 码字编码过程
则平均码长、平均信息量、编码效率、冗余度为分别为:
%
2%
9842
.2)05.0log 05.01.0log 1.015.0log 15.02.0log 2.025.0log 25.02(45
.205.041.0415.0320.0225.022===⨯+⨯+⨯+⨯+⨯⨯-==⨯+⨯+⨯+⨯+⨯⨯=Rd H N η
二 预测编码(Predictive encoding )
在各类编码方法中,预测编码是比较易于实现的,如微分(差分)脉冲编码调制(DPCM )方法。在这种方法中,每一个象素灰度值,用先前扫描过的象素灰度值去减,求出他们的差值,此差值称为预测误差,预测误差被量化和编码与传送。接收端再将此差值与预测值相加,重建原始图像象素信号。由于量化和传送的仅是误差信号,根据一般扫描图像信号在空间及时间邻域内个象素的相关性,预测误差分布更加集中,即熵值比原来图象小,可用较少的单位象素比特率进行编码,使得图象数据得以压缩。
当输入图象信号是模拟信号时,“量化”过程中的信息损失不可避免的。
预测器预测值 ∑-=-=111
ˆN i N i X Q X
其中 i Q 应适当选择使预测误差最小,即使 N N N X X e ˆ-=最小。
然后,非均匀量化此预测误差 N e ,就能产生最小均方误差的最佳 N e ˊ,经编码后发送。接收端解码得到的 N e 加上预测值就能再现
N X ,它与原始图象的存在误差为 'N N N X X g -=。
这里关键的问题是选择适当的 i Q ,使预测效果最好,即预测差值的方差最小。
对于隔行扫描的电视图象通常有
)1,1(81)1,1(81),1(41)1,(21),()1,1(4
1),1(41)1,(21),(+-+--+-+-=--+-+-=
y x f y x f y x f y x f y x f y x f y x f y x f y x f 或 其它预测方法有:
1. 1. 前值预测,用()y x f ,同一行中临近前面一象素预测,即
()()1,,^
-=y x f y x f 2. 2. 一维预测,用同一行中前面若干象素预测;
3. 3. 二维预测,用几行内象素预测;
4. 4. 三维预测,利用相邻两帧图像信号的相关性预测。
三 变换编码(Transform encoding )
前面图象变换章节已经说明图象变换会使图象信号能量在空间重新分布,其中低频成分占据能量的绝大部分,而高频成分所占比重很小,根据统计编码的原理,能量分布集中,熵值最小,可实现平均码长最短。
变换编码的基本原理是将原来在空域描述的图象信号,变换到另外一些正交空间中去,用变换系数来表示原始图象,并对变换系数进行编码。一般来说在变换域里描述要比在空域简单,因为图象的相关性明显下降。尽管变换本身并不带来数据压缩,但由于变换图象的能量大部分只集中于少数几个变换系数上,采用量化和熵编码则可以有效地压缩图象的编码比特率。
根据上面的原理变换编码的一般过程如下: 输入图象 变换 量化 编码器 -- - 译码器 逆变换 输出
常用的变换编码所使用的变换有离散余弦变换(DCT )和沃尔什--哈达玛变换(WHT )。
变换后图象能量更加集中,在量化和编码时,结合人类视觉心理因素等,采用“区域取样”或“阈值取样”等方法,保留变换系数中幅值较大的元素,进行量化编码,而大多数幅值小或某些特定区域的变换系数将全部当作零处理。
四 方块编码(Block encoding)
方块编码是静态图像编码的一种方法,它可将某一帧图象得以压缩而不致使图象质量有明显的下降。它是将图象()y x f ,划分成n n N ⨯=大小互不重叠的子块,由于子块内各临近象素间具有灰度相关性,可选用两个适当的灰度级来近似代表子块内各象素原来的灰度。通常可以利用均方误差最小的方法来逐个求出各子块的这两个代表灰度级,然后指明子块内各个象素分别属于哪个代表性灰级。
这两个代表性灰级称为灰度分量,而指明某象素属哪个代表性灰级的信息称为分辨率分量。
设子块内共有 N 个象素,其中第 i 个象素 i p 的灰值为 i x ,编码后子块有两个代表性灰度分量 10,a a ,用 i ϕ表示象素 i p 的分辨率分量, r x 为方块内阈值,则编码后 i p 象素的灰度级为 i y ,
10a a y i i i ⨯+⨯=-
ϕϕ ⎩⎨⎧<≥=T i T
i i x x if x x if
01ϕ