第十章 小波图像编码

上传人:工**** 文档编号:587190217 上传时间:2024-09-05 格式:PPT 页数:52 大小:7.68MB
返回 下载 相关 举报
第十章 小波图像编码_第1页
第1页 / 共52页
第十章 小波图像编码_第2页
第2页 / 共52页
第十章 小波图像编码_第3页
第3页 / 共52页
第十章 小波图像编码_第4页
第4页 / 共52页
第十章 小波图像编码_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《第十章 小波图像编码》由会员分享,可在线阅读,更多相关《第十章 小波图像编码(52页珍藏版)》请在金锄头文库上搜索。

1、第九章 小波图像编码前言由于小波变换技术在20世纪90年代初期已经比较成熟,因此也出现了多种新颖的小波图像编码方法。其中包括EZW,SPIHT,EBCOT等。由于EZW算法的开拓给后来者带来很大启发,它是一种有效而计算简单的图像压缩技术,本章将重点介绍。第一节 从子带编码到小波编码子带编码 子带编码的基本概念是把信号的频率分成几个子带,然后对每个子带分别进行编码,并根据每个子带的重要性分配不同的位数来表示数据。 20世纪70年代,子带编码开始用在语音编码上。 20世纪80年代中期开始在图像编码中使用多分辨率分析多分辨率分析S.MallatS.Mallat 于于19881988年在构造正交小波基

2、时提出了多分年在构造正交小波基时提出了多分辨率分析的概念。从空间上形象地说明了小波的辨率分析的概念。从空间上形象地说明了小波的多分辨率的特性,提出了正交小波的构造方法和多分辨率的特性,提出了正交小波的构造方法和快速算法,叫做快速算法,叫做MallatMallat算法。算法。 如果在一级分解之后继续进行分析,这种分解如果在一级分解之后继续进行分析,这种分解过程叫做多分辨率分析,实际上就是多级小波分过程叫做多分辨率分析,实际上就是多级小波分解的概念。使用多级小波分解可以得到更多的分解的概念。使用多级小波分解可以得到更多的分辨率不同的图像,这叫多分辨率图像。辨率不同的图像,这叫多分辨率图像。滤波器组

3、与多分辨率 为了压缩语音数据,在1976年 Croisier ,Esteban和Galand介绍了一种可逆滤波器组,使用滤波和子采样的方法用来把离散信号f(n)分解成大小相等的两种信号,并且使用叫做共轭镜像滤波器的一种特殊滤波器来取消信号的混叠,这样可从子采样的信号中重构原始信号。 正交小波的多分辨率理论已经证明,任何共轭镜像滤波器都可以用来刻画一种小波,而且快速离散小波变换可以使用串联这些共轭镜像滤波器来实现。连续小波理论和离散滤波器组之间的等效性揭示了数字信号处理和谐波分析之间的关系。小波分解图象方法: 包括: 均匀分解,非均匀分解,八带分解和小波包分解. 其中八带分解使用最广泛,它属于非

4、均匀频带分割方法.它把低频部分分解成比较窄的频带,而对每一级分解的高频部分不再进一步分解. 失真的度量方法在图象编码系统中,评估编码系统性能用: 失真度量法用峰值信号噪声比来衡量. 定义: 最大像素值与均方差之比. 其他方法: 规格化均方差,信噪比,平均绝对误差,平均主观平分.EZW 编码简介简介: : EZW EZW 主要用于与小波变换有关的二维信号的编码主要用于与小波变换有关的二维信号的编码, ,但不局限于二维信号但不局限于二维信号. .EZWEZW是是” ” 嵌入式零树小波算法嵌入式零树小波算法” ”的简称的简称. .它是一种它是一种用于熵编码的高效算法用于熵编码的高效算法. . 零树零

5、树: :小波变换系数之间的一种数据结构小波变换系数之间的一种数据结构. . 嵌入嵌入: : 渐进编码技术的另一种说法渐进编码技术的另一种说法. .含义是指一幅含义是指一幅图象可以分解成一幅低分辨率图象和分辨率由低图象可以分解成一幅低分辨率图象和分辨率由低到高的表示图象细节的许多子图象到高的表示图象细节的许多子图象; ;图象合成和分图象合成和分解过程相反解过程相反, ,使用子图象生成分辨率不同的图象使用子图象生成分辨率不同的图象小波图象编码的一般结构主要由小波图象编码的一般结构主要由: : 小波变换小波变换, ,量化和熵编码等三个模块组成量化和熵编码等三个模块组成其中其中 小波变换小波变换: :

6、不损失数据不损失数据, ,它是它是EZWEZW算法具有渐进算法具有渐进性的基础性的基础. . 量化模块量化模块: :对数据会产生损失对数据会产生损失, ,损失程度取决于损失程度取决于量化阈值的大小量化阈值的大小,EZW,EZW算法指的就是此模块的算法算法指的就是此模块的算法. . 熵编码模块熵编码模块: :对每个输入数据值精确地确定它对每个输入数据值精确地确定它的概率的概率, ,并根据这些概率生成一个合适的代码并根据这些概率生成一个合适的代码, ,使使输出码流小于输入码流输出码流小于输入码流9.3.2算法 对整幅图象编码一次,生成一种分辨率图象,编码一次叫做一遍扫描.每一遍扫描包含三个步骤:1

7、.设置阈值 2.每个小波系数与阈值进行比较 3.量化系数和重新扫描 零树的定义: 子孙系数都为零的树.零树定义的意义: 如果一棵树是零树,那么这棵树就可以用一个预先定义的符号来代表整棵树,从而提高压缩比.EZW编码树的构造:扫描方法:EZW算法对小波系数进行编码的次序叫做扫描.包括两种方法: 1,光栅扫描 2,迂回扫描9.3.3算法举例P173第四节 SPIHT 编码9.4.1简介 SPIHT是EZW的改进算法,可叫做”层树分集”算法. 优越性: 图象的渐进传输,较高的PSNR,复杂度较低,计算量较少,位速率容易控制等.9.4.2渐进图象的传输 SPIHT 算法采用的方法是幅度大的系数先传送.

8、它要求对系数进行排序. 若传送的系数已按要求排序且用二进制形式表示,由幅度大的系数先传送的原则,必然按照最高有效位最先传送的原则进行传输,这种方法叫位平面(bit plane)方法9.4.3分集排序算法SPIHT编码算法的一个特点: 不单独传输系数的排序信息.基本依据:任何排序算法的执行路径都是使用分支点的比较结果进行定义的,如果编码器和解码器使用相同的排序算法,解码器就可重复编码器的执行路径,因此排序信息可从执行路径中重新获得.分集排序算法不对所有系数分集排序算法不对所有系数排序排序, ,其选择发送的系数其选择发送的系数 的规则是的规则是: : 其中其中, , 实际上就是实际上就是EZWEZ

9、W算算法中的阈值法中的阈值. .编码时每扫描编码时每扫描一遍一遍, ,新的阈值就设置为新的阈值就设置为 . .若若 对给定的对给定的n n, , ,就称系就称系数数 是重要的,否则就称是重要的,否则就称系数系数 是不重要的是不重要的按照参数选择原则,分集算按照参数选择原则,分集算法把像素集分成许多子集法把像素集分成许多子集 ,并对子集中的系数幅度,并对子集中的系数幅度作如下测试:作如下测试:如果回答是否定的,则说明如果回答是否定的,则说明这个子集是不重要的,解这个子集是不重要的,解码器也就知道这个子集中码器也就知道这个子集中的系数都是不重要的;的系数都是不重要的;如果回答是肯定的,则说明这个子

10、集是重要的,解码器接收到这个信号之后,按照编码器的规则把这个子集分成新的子集 然后对新的子集做如上相同的测试。这个子集分割过程一直到对所有重要子集完成幅度测试为止。 目的是标识每一个重要系数9.4.4 类型和变量SPIHT算法定义的编码树的结构中,树的每一个节点与一个系数相对应.并用坐标(i ,j)来标识,每一个节点的直接子孙或者叫做子节点与相同空间方向的高一级子带的系数相对应编码树定义:每一个节点有个直接子孙或者没有直接子孙在SPIHT算法中,使用坐标标记的方法定义了4种坐标集来表示小波系数的类型,并用下面的符号表示:(1)O(i,j):所有子节点(i,j)的坐标集(2)D(i,j):所有子

11、孙节点(i,j)的坐标集(3)H(i,j):所有树根的坐标集(4)L(i,j)=D(i,j)-O(i,j):除子节点之外的所有子孙节点的坐标集在SPIHT编码算法中,使用最频繁的坐标集是D(i,j)和L(i,j).如果说一个坐标集是重要的,则要求在此坐标集中至少有一个系数的幅度大于等于阈值.由于测试重要系数的次序的重要性由于测试重要系数的次序的重要性, ,在实际执行在实际执行SPIHTSPIHT算法的过程中算法的过程中, ,重要信息存储在重要信息存储在3 3种次序列种次序列表变量中表变量中. . 3 3种次序列表变量的定义种次序列表变量的定义: : (1)LIP: (1)LIP:不重要像素表不

12、重要像素表, ,用于存放单个不重要的系数用于存放单个不重要的系数. .用低通子带的系数初始化用低通子带的系数初始化(2)LIS:(2)LIS:不重要子集列表不重要子集列表, ,用于存放不重要的系数树用于存放不重要的系数树. .用用DCDC子带中不重要的系数集的坐标初始化子带中不重要的系数集的坐标初始化(3)LSP:(3)LSP:重要像素表重要像素表, ,用于存放重要系数用于存放重要系数. .初始化成空初始化成空集集在这3种列表中,每一个表项都使用坐标(i,j)来标识.在LIP和LSP中,坐标(i,j)用来表示单独的系数;在LIS列表中,坐标(i,j)用来代表所有子孙节点(i,j)的坐标集D(i

13、,j),或者代表除子节点之外的所有子孙的坐标集L(i,j). 为便于描述LIS中的坐标集,又把坐标集D(i,j)命名为A型树,把坐标集L(i,j)命名为B型树:(1)A型树也称D型树:LIS代表坐标集D(i,j),编码时需要检查所有的子孙系数以确定是否重要.(2)B型树也称L型树:LIS代表坐标集L(i,j),编码时需要检查除子系数之外的所有子孙系数以确定是否重要.9.4.5 算法 9.4.6 算法举例下例是AgnieszkaC.Miguel在分析SPIHT算法时提供的一个例子执行SPIHT算法的步骤(1)计算阈值和初始化.初始化把低通子带中的所有根节点的系数赋给LIP,把所有树赋给LIS,把

14、LSP初始化为空集.(2)检查LIP中的所有系数以确定是否重要: A.如果重要,输出”1”和符号位,然后把该系数移到LSPB.如果不重要,输出”0”(3)按照树的类型,检查LIS中所有重要的树:A.对D型树:如果该树是重要的,输出”1”,然后对子节点的系数进行编码:如果子节点的系数是重要的,输出”1”和符号位,然后把它移到LSP中如果子节点的系数是不重要的,输出”0”,然后把它移到LIP中如果子节点有后裔,就把这棵树移到LIS列表的末端,并作为L型树如果该树不重要,输出”0”.B.对L型树:如果该树是重要的,输出”1”,把每一个子节点移到LIS的末端作为D型树,然后把父树从LIS中删除如果该树

15、不重要,输出”0”(4)减少阈值,然后返回到(2)第五节 EBCOT编码简介9.5.1介绍EBCOT:最佳截断嵌入码块编码,是David Taubman在1999年发表的一种编码算法,现在处于进一步开发中.EBCOT算法是一种对小波变换产生的子带系数进行量化和编码的方法. 基本思想:把每一个子带的小波变换系数分成独立编码的码块,并且对所有的码块使用相同的编码方法.如图9-21独立编码的码块:概括的说,EBCOT编码的主要想法是把嵌入码块编码方法与码块位流的最佳截断方法结合在一起,使重构图象失真最小,它的主要特性包括分辨率可变,信噪比可变和随机访问.9.5.2质量层的概念EBCOT编码算法引入了

16、一个”质量层”的概念.图象的最终码块位流以质量层的形式组织,每一层都包含每一个码块对图象的贡献,如图9-22,若某些码块对质量没有贡献的层用 “空”表示. EBCOT算法包含两种不同的编码器来体现它的性能.这两种编码器分别叫做层1编码器和层2编码器.T1编码器处理变换图象的小波变换系数,并把截断点放到码块中.后者把来自T1编码器的零碎码块放到不同的质量层,与不同的位速率相对应,并生成实际的压缩位流和文件.9.5.3 9.5.3 位速率失真最佳位速率失真最佳EBCOTEBCOT算法把表示图象算法把表示图象的子带分成相对比较的子带分成相对比较小的许多码块小的许多码块 i i表示第表示第i i个码块

17、个码块. .每一每一个码块个码块 中的位流可中的位流可以被截断成各种长度以被截断成各种长度的位流的位流 在重在重构图象时计算由这些构图象时计算由这些截断位流引起的失真截断位流引起的失真 . .把把 对重构图象产生对重构图象产生的失真用的失真用 表示表示, ,并假并假设失真度量是相加的设失真度量是相加的, ,整个图象的失真表示整个图象的失真表示为为, , 其中其中, , 表示码块表示码块 选择的截断点选择的截断点. .相加性相加性的失真度量可用均方的失真度量可用均方差差MSEMSE或加权的均方或加权的均方差差MSE.MSE. 对某一组截断点对某一组截断点 , ,位流位流中某一层的位速率用中某一层

18、的位速率用R R表表示示 EBCOTEBCOT算法的目的就是在算法的目的就是在 的限制条件下找一组截断的限制条件下找一组截断位流位流 使失真使失真D D最小最小. . 这个问题可使用拉格郎日这个问题可使用拉格郎日乘法求解乘法求解, ,把问题转化为求把问题转化为求解使函数解使函数 最小化的问题最小化的问题. .其中其中 的的值必须进行调整值必须进行调整, ,直到使该直到使该函数最小时的截断位流产函数最小时的截断位流产生的速率满足生的速率满足 . .第六节 JPEG2000简介9.6.1 JPEG2000是什么 JPEG2000是由ISO/IEC JTC1 SC29标准化小组负责并正在制定的新的静

19、态图象编码的国际标准. 文献中涉及的组织简介: JPEG:联合图象专家组,是由国际标准化组织和国际电工技术委员会组成的专家组.ISO:是1946年成立的一个自愿参加和无条约约束的国际组织,主要负责制定包括计算机,通信等众多领域的国际标准,以方便国际间信息,科学,技术,经济等活动领域的相互交流合作,其成员为各个国家的国家标准化组织,目前共有89个国家参加了该组织;IEC:是1906年成立的制定国际性的电,电子器件和系统标准的一个委员会,有40多个国家参加.JTC1JTC1是是ISOISO和和IECIEC的合作领导小组的合作领导小组, ,其中其中SC29SC29负责负责JPEG2000JPEG20

20、00系列标准的制定系列标准的制定. .SC29SC29分为分为WG1,WG11WG1,WG11和和WG12WG12三个小组三个小组. .WG1WG1负责负责JBIGJBIG和和JPEGJPEG标准的制定标准的制定, ,其中其中JBIGJBIG叫做叫做” ”联合二值图象专家组联合二值图象专家组” ”, ,负责制定二值图象的压负责制定二值图象的压缩标准缩标准; ;WG11WG11负责负责MPEGMPEG标准的制定标准的制定,MPEG(,MPEG(运动图象专家运动图象专家组组) )WG12WG12负责负责MHEGMHEG标准的制定标准的制定,MHEG(,MHEG(多媒体超文本多媒体超文本专家组专家组

21、) )9.6.2 JPEG2000 的基本结构JPEG2000编码器的方框图如9-24(A).首先对源图象数据进行变换,再对变换的系数进行量化,然后在形成代码流或位流之前进行熵编码.解码器与编码器正好相反.JPEG2000标准是以图象块作为单元进行处理的.这就意味着图象数据在进入编码器之前要对它进行分块.JPEG2000的基本结构:以图象块作为单元处理的好处: 1.可以降低对存储器的要求 2.便于抽出一幅图象中的部分图象.其缺点是: 图象质量有所下降,但不明显.9.6.3 JPEG2000的主要功能JPEG2000的一个重要特性: 能实现渐进传输. 它可以先传输低分辨率的图象或者是图象轮廓,然后逐步传输其他数据,不断提高图象质量.JPEG2000的另一个重要特性: 支持兴趣区的编码.用户可利用此特性指定感兴趣的图象区域,在压缩时对这些图象区指定特定的压缩质量,或在恢复时指定特定的解压缩要求.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号