零树编码算法小波系数

合集下载

基于小波的图像编码算法的研究

基于小波的图像编码算法的研究
的, 但 它 的子 孙 系数 中至 少有 一个 是重 要 的。 E Z W 采 用 逐 次 逼 近 量 化 ( S u c c e s s i v e—

/ \ \
L H 1 \ 龠 H H t
图 2 三 级 小 波 分 解 图
A p p r o x i m a t i o n Q u a n t i z a t i o n ,S AQ) 方 法 。首先从 一 个 最 大 的量 化 阈值 T 0 , 进 行 一 次主 扫描 , 若 是重 要 系数 , 则 将其 幅值 加 入辅 表 中 , 然后 将 该 系数 在数 组 中置 为 零; 接 下来 进 行一 次辅 扫 描 , 细化 重 要 值 的 表示 。更 新, 新量 化 阈值逐 次 减半 。 对 于每个 量 化 阈值 , 都 要对 全部 系数进行 一 次扫 描 和零树 编 码 。 随着量 化 阈值 的 降低 , 重 建 系 数误 差 会 越 来越 小 , 直 到 达 到要 求 的 比 特率 为止 , 这 样就 实现 了嵌 入 式零 树 编码 。 算法 分析 及 改进 策 略 : 在E Z W 算法中, 由于需 要 多次 扫 描 图像 , 导致 效



蓥 0 ≯


方 向的不

( 1 ) 低 频 聚 能 特 性 :对 于 自然 图 像

般地 绝 大

( 4 ) 高 频 显 著 簇 的 位 置 相 关 性 :在 同


部分能量 聚集在
LL

低频子 带

剩余很 少 的能量 分 布
同 高频 子 带 之 间 显 著 簇 的 空 间 位 置 分 布 具 有 相关性

基于小波变换的嵌入式编码在图像压缩中的应用

基于小波变换的嵌入式编码在图像压缩中的应用

14 0
中国电子商务 . 2 1 0 一 0 0・ 5
基于小波变换的嵌入式编码在 图像压缩中的应 用
张宪红 苍 圣 高巍巍 哈 尔滨师范大学恒 星学院 大会使 图像在存储和传输 中受到制约 , 因此, 图像压缩成为必然。图像 压缩的关键技 术包括对 图像数据的 变换 、 对
变换数据的量化 以及对量化后 数据的熵编码 , 中压缩 中编码 占有非 常重要的位置。本文主要 分析其 中一种很流行的编码 形式一嵌入式编码 , 别比 其 分 较 分 析 了三种 嵌 入 式 编 码 的 优 缺 点 以及 嵌 入 式 编 码 的 发展 前 景 。
程 .0 9 20 .
[ ] . i d Bs a. nuevsdL a igwt Mi dN m r n 3 C La G. i s U sp ri er n i x u e cad n w e n h e i
No n lDaa I mia t.EEE K o ld ea dDaaEn ie r g 2 0 n w e g n t gn e n . 0 2 i
参考文献 :
E W算法 的缺点 是 : 种算 法要 多次 扫描 图像 , 率很低 。而且 Z 这 效 E W算 法并没有充分利用相邻元 素 间的相关性 , Z 不能充 分利用 小波变 换 的特点 。 E W 算法的改进 : Z 虽然 E W 算法 的零树是一种 比较有效 的表示不 Z 重要系数 的数据结构, 但它对 于树根是重要系数 而其子孙结点 都是次要 系数 的情况没有考虑 , 以 E W 算法可以在这方面进行改 进 。 所 Z 提出一种 更细致 的集合分裂方式 。例如 , 构造 了两 种不 同类 型的空 间零树 , 更好 的利用小波系数的幅值衰减规 律 , 产生更 紧凑的码 流, 从而更 明显得改

【计算机工程与设计】_小波系数_期刊发文热词逐年推荐_20140726

【计算机工程与设计】_小波系数_期刊发文热词逐年推荐_20140726

2012年 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

科研热词 推荐指数 小波变换 2 图像融合 2 音频水印 1 非下采样contourlet变换 1 赫斯特指数 1 网络异常检测 1 红外图像 1 稀疏矩阵 1 离散小波变换 1 特征选择 1 特征提取 1 特征层融合 1 滑动窗口 1 测量矩阵 1 模拟电路 1 梯度 1 梅勒频率倒谱系数 1 故障诊断 1 提升机制 1 指数平滑模型 1 彩色图像 1 小波系数方差 1 块效应 1 图像质量评价 1 图像自主融合 1 可见光图像 1 双正交小波 1 压缩感知 1 半脆弱水印 1 区域能量 1 分形编码 1 仿射变换 1 turbo编码 1
2008年 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
科研热词 小波变换 图像融合 自组特征映射神经网络 纹理分类 特征提取 支持向量机 非真实感绘制 隶属度函数 计算机图形学 融合规则 自适应 线条画生成 纹理 积分 离散小波变换 离散余弦变换 盲水印 炼钢物料 混沌序列 模糊逻辑 显微图像 数字水印 提升小波变换 提升小波 扩频技术 扩频 彩色数字图像水印 小波系数 小波-contourlet变换 多分辨率金字塔 多分辨率分析 变换域 分类识别 冗余性 log-gabor滤波 contourlet变换
科研热词 小波变换 数字水印 信息隐藏 阈值 图像压缩 人类视觉系统 鲁棒性 预测 非线性增强算子 零树 阈值函数 金字塔分解 量化 遥感图像 逻辑交叉算子 递归神经网络 运动矢量 运动检测 融合算法 自回归 脆弱水印 置乱技术 网络流量 组合模型 纹理块 粒子群 篡改检测 离散小波变换(dwt) 盲提取 盲分离 独立分量分析 混沌映射 检索效率 改进遗传算法 改进的零树编码算法 支持向量机 提升小波 扩频 循环平移 平移不变性 嵌入零树小波编码 小波域 小波分解层教 小波-contourlet变换 客观评价参数 大容量 多分辨率运动补偿 图像融合 图像置乱 图像编码 图像熵 图像增强

窄带宽环境下的动态图像压缩

窄带宽环境下的动态图像压缩

窄带宽环境下的动态图像压缩
慈轶为;杨孝宗;刘宏伟
【期刊名称】《计算机工程与设计》
【年(卷),期】2002(023)011
【摘要】实现窄带宽环境下的动态图像传输需要对图像数据进行有效压缩.提出采用改进的小波零树编码算法,在零树编码过程中,对连续零树根所采用的游程编码以及对非零小波系数的编码采用了一种新的码扩展算法,与通常的码扩展法相比具有单位比特拥有更大信息量的特点,并且运用图像拼接技术缓解了小波图像压缩在小尺寸图像上不理想的问题.
【总页数】3页(P75-77)
【作者】慈轶为;杨孝宗;刘宏伟
【作者单位】哈尔滨工业大学计算机系,哈尔滨,150001;哈尔滨工业大学计算机系,哈尔滨,150001;哈尔滨工业大学计算机系,哈尔滨,150001
【正文语种】中文
【中图分类】TP317.4
【相关文献】
1.三网融合下的动态带宽分配方案研究 [J], 陈勇;熊鹰;刘虎
2.GPON系统中动态带宽分配机制下的算法研究 [J], 马婷
3.Matlab环境下基于小波变换的图像压缩研究 [J], 贾厚林
4.大带宽通信链路环境下的无人机实时制图 [J], 左志权;易琳
5.IMS在高带宽卫星通信系统环境下的应用 [J], 邓俊琼;赵飞;钟颋;佟晶
因版权原因,仅展示原文概要,查看原文内容请购买。

一个新的嵌入式零树小波图像编码的多位平面并行算法

一个新的嵌入式零树小波图像编码的多位平面并行算法
1 e Jag i om l nvrt, a cagJag i 3 0 7 h ia e , inx ra i sy N nh n inx 0 2 ,C n ) g N U e i 3
Ab t a t A n w p rl l i pa e c d n lo tm a e n d s o ee sr c : e aa l t l n o ig ag r h h s b e ic v r d,w ih r q i ss a n n a h b t l n n yo c eb - i h c e u r c n ig e c i p a e o l n e e -

个 新 的嵌 入 式 零 树 小 波 图像 编 码 的 多位 平面 并 行 算 法 米
钟萃相 ,韩 国强 ,黄 明和
( . 南理 工 大学 计 算机科 学与 工程 学院 , 东 广 州 504 ; . 西师 范大 学 软件 学 院 , 西 南 昌 302 ) 1华 广 160 2 江 江 307 摘 要 :发现 了一 个 E W( m eddZrr vl ) Z E bde e teWae t编码 的 多U - 面并行 算 法 , oe e T - 其每 +U - 面的 编码 仅 需 对 - T -

程 中, 主扫描又需要对小 波分解矩 阵进行 多遍 扫描 , 降低 大大
了编码的速度 , 而且 编码难 以用 并行算 法优 化 , 因此 很难满足图像 实时处理 的需 要。为了解决这个 问题 , 有人提出
层 的子带 中有 四个 儿 子系数 位 于 { 2 +m, +n f ( ) 0≤m,
维普资讯
第 2 第 3期 4卷
20 年 3月 07
计 算 机 应 用 研 究
Ap l ain Re er ho mp tr pi t sa c fCo ues c o

一种基于波系数重要图编码的图像压缩算法

一种基于波系数重要图编码的图像压缩算法

小波 图像 压缩是利 用小渡 变换 同时具有好 的空问分辨
率 和好的频率分辨率的特性 , 使变换 系数 的能量 同时在频率
上 和空间上集 中. 到去 除像 素冗余度 的作用 。 达
图像 的小渡分解是小波压缩的第一步 。 一幅图像 可以看 做 是二维信号 ,使用二 维离散小渡变换对围像进行分解 , 二 类 似 于子带 分解 。图像首先在行方 向进行分解 , 井对行 方向进 行 下取样 , 去除冗余信息 ; 然后 对列方 向进行分解 , 对到方 再 向进行下取样 重复地对 低频 子带 系数进行这一过程 , 直到
维普资讯
数 字电 视与 数字 ̄ / ITL VA DD I L l O D I N IT D G AT G AV E
文章编号 :0 2 8 9 (0 2 0 一 O 4 0 10 — 6 2 2 0 )5 O O — 3

种基于小波系数重要图编码的图像压缩算法 ・ ・ 论 文
l 引言
小渡变换具有好t t-频局部化特性 ,因而特别适合 分 g, i 一 析 处理非平稳信 号。 自然 图像具有非平稳性 . 而使小波变 从 换 成为图像压缩编码 的一种重要手段 。 特别是在低码率 条件
F, 由于没有块编码带 米的块 效应 . 图像 主观质量 与 D T变 C 换 编码器 的输 出丰 比会 更好 。 日 小渡变换 仅 可把 图像多 分辨
郭晓强 ,冯景锋 ,全子 一 ( 北京 邮 电大学 电信 工程 学院 ,北 京 107 ) 08 6
【 摘
要 】提 出 一 新的基于小 波系数重要 图编码的图像压缩算法 。该算法根据量 化后 的小渡系数 的特点 种
进行 了一种期望排序 , 然后 舍掉序列后面大量的零值 小波系数 , 从而得到一个小 波系数子集 , 能以少的小波 系数来

基于混沌加密和零树编码的彩色图像水印算法

基于混沌加密和零树编码的彩色图像水印算法
关键 词 : 印 ; 沌系统 ; 水 混 零树 编码思 想 中 图分类 号 : P 0 T 39 文献标 识码 : A 文章 编号 : 6 3 6 9 ( 0 6 1 —0 5 —0 1 7 ~ 2 X 2 0 )0 17 3
A l r I a e W a e m a ki g Al o ih s d o a tc Enc y i n Co o m g t r r n g r t m Ba e n Ch o i r pto
a d Ze o r e d n d a n r t e s Co i g I e
YANG e g z a LICh o f n XU i M n — h o, a -e g, Le
( col f nomai eh o g ,ote agz ie i , x 1 12 C ia Sho o f t nT c nl y S uhr Y n t Unvr t Wu i 4 2 , hn) I r o o n e sy 2
criri g o tii h tr r n saq ie y tertasom . e e p rme t l eutpo e h tt i lo ih a rt are ma ec n ann tewaemaki i c urd b h ern fr Th x e i n a s l rv sta c ih efce c srn b lyt eitc mp eso e te o ut e ,t . u h a hg fiin y,to a it o rss o rsin,b trr b sn s ec s g i
基 于混沌 加 密 和 零 树编 码 的彩 色 图像 水 印算 法
杨 蒙召, 李朝 峰 , 许 磊
( 江南 大学 信 息工程 学 院 , 苏 无锡 2 4 2 ) 江 1 1 2

应用时变小波包零树编码实现心电数据的高效压缩

应用时变小波包零树编码实现心电数据的高效压缩
Ab ta t Du n h rc s ftl lcrc r iga mo ioi g f ce td t o rsin h sb c me a m- sr c : i r g te po eso ee ee to ad o rm ntrn ,e in aac mpe so a e o n i i p  ̄a tl k o aa p o e sn n e h e n so s aa so ig a d ta s tig o a h e e ti i o n i d t rc si gu d rte d ma d ma sd t tr n r mit .T c iv h sam,a n f f n n n
码 的优 点, 并且取得 了更好的压缩性能.
关键词 :小波包零树编码 ;时变小波包 ;最优小波包 基 ; 心电信号 ; 数据压缩
中图分类号 :R 1 .4 3 80 文献标志码 :A 文章编号 :0 9 . 17 20 )2 0 1. 6 4 3 2 3 (0 7 0 . 20 0
m g f ce c m p e so fElcr c r i g a Daa Ba e n h Ef in y Co r s in o e t o a d o r m t s d o i T me Va yn e o r e W a ee a k tCo n i - r i g Z r t e v ltP c e d g i
周仲兴 , 张永伟 ,万柏坤 , 张力新 ,明 东 , 李 轶 , 程龙龙
( 天津 大学精密仪器与光 电子工程学院 , 天津 307 ) 002
摘 要 :为减 少传统小波零树编码算法 中孤立零的 出现 , 以确保 编码压 缩后 信号 的熵减 , 出了时变小波 包零树 提
编码 算法, 构建 了最优 小波 包基下低 冗余映射 关 系, 同时考虑到心 电信号 自身的时域相 关性 , 时频域 结合考虑 , 将 进 一步 降低 了信息熵 , 最终明显改善 了压缩效果. 实验结果表 明, 该方法保留 了小波零树编码 可以 实现 累进传输 编
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

零树编码算法 一零树编码算法的基本思想 众所周知,小波系数的能量集中程度越高,需要编码的系数越少,编码所需的比特数就越少,所以小波压缩都是利用变换分解后的图象能量分布集中这一特性来编码的。小波系数的能量集中程度对图象编码非常重要,而不同层次上,相同空间滤波方向上的小波系数之间的相关性也非常重要。零树编码的基本思想就是基于这种相关性。 经过小波变换后的图象被分解成若干个子频带,其中子带HH是低频分量,是原始图象的平滑版本,子带HL是水平方向上的高频,垂直方向上的低频分量;子带LH是垂直方向上的高频,水平方向的低频分量;子带HH是高频分量,揭示了原始图象在斜方向的边缘信息。

为了提高对小波系数的压缩性能,Jerome M. Shapiro提出了一种新的数据结构零树(zerotree),如果小波系数x的绝对值小于给定的阈值T,则此系数是可以忽略的。零树的方法是基于这样一个假设:如果在较粗的级别上,一个小波系数是小于阈值,可以忽略的,则所有在相同方向,相同位置的更高的级别上的系数也基本上是可以忽略不记的。经验证明这个假设通常是正确的。更特殊的情况下,在一个多级的子带系统里,除了最高频的子带之外,在每一级别的每个系数都是和该系数在更高的级别相同方位的系数集合相对应的,我们把在较粗的级别上的系数叫做父亲,而在所有在更高的级别上相应位置的系数都叫做后代,同样的,对于任一给定的后代,在更粗的级别上相同方位上对应的系数叫做祖先。 对于一个QMF-金字塔算法的子带分解,如图所示,除了最低频的子带之外,所有的父亲结点都有4个儿子,而最低频的结点是有3个儿子。对系数的扫描顺序的原则是不可以有一个儿子结点是在它的父亲结点之前被扫描。对于一个N级的变换,扫描是先从最低频的子带开始的,这里记作LLn,然后扫描子带HLn,LHn,和HHn,然后扫描第n-1级的系数,以此类推。在金字塔分解中这种扫描模式的图示见下图,可以看到在一个给定的子带每个系数都是在下一个子带的对应系数之前被扫描的。

gggg

给定一个阈值T然后判断一个系数是否可以被忽略,如果一个系数x和它的所HL1

HH1 LH1

HH2 有后代都小于阈值,则这个系数x可以看作是零树的一个成员,一个零树的根指的是一个零树中的结点,但是它不是任何一个结点的后代,实践证明对于相同的阈值零树的根的分布并没有可预见性。偶们用一种特殊的记号给一个零树的根编码,则它的所有的后代的结点就都可以被忽略不记了。于是所有的系数都可以被归为3类来编码:1)零树的根,2)孤立的零结点,3)重要的点。当给最高级的系数编码时,由于已经没有后代,所以可以不用零树的记号而直接进行编码。 在实践中,偶们通常把系数分成4类:1)零树的根,2)孤立的零结点,3)正的重要系数,4)负的重要系数。这个小改进将有利于嵌入。 注意可能还存在着其它两种系数我们没有考虑,那就是“正的/负的 重要系数,但是后代是零树”,在实践中,这种系数点出现的比率很低,为了减少编码的数据量,通常不与考虑。 我的关于零树编码的算法的实现是用C++语言在VC6.0下实现的,所以在解释算法时,涉及到数据结构和算法的流程时,会一C++语言为例来说明零树编码算法的具体实现方法。

二零树的数据结构 在小波变换之后,得到的是每个原始图象的像素坐标对应的小波系数。 我们要把这些系数都定义成零树的结点,除了最低频的和最高频的结点之外, 每个结点都有四个子结点,父结点和子结点之间坐标的对应关系是:

父亲(x,y) 儿子(2x,2y), (2x+1,2y), (2x,2y+1), (2x+1,2y+1) 每个结点的内容包括该点的小波系数,该点的位置坐标,还有指向该结点四个儿子的指针。如下图所示 : Coeff (x,y) Son[4]

具体用C++语言定义的数据机构如下: typedef struct node *zerotree_pointer; typedef struct node { double coeff; unsigned long x,y; zerotree_pointer son[4];

};

假设图象经过N次分解,最低频分量最后只剩下一个系数,这个系数就被作为零树的根结点。零树的根结点和上面定义的结点稍有不同,零树的根结点的数据结构如下: 系数值 HL_son LH_son HH_son 具体用C++语言定义的数据机构如下: struct root_node { double root_coeff; zerotree_pointer LH_son,HL_son,HH_son; }; 这样以来一棵零树的结构如下图所示: coeff HL_son LH_son HH_son

三. 零树的构造 定义完基本的数据结构之后,要进行的是零树的构造。即根据经过小波变换后的系数值构造出一棵零树来,零树的构造的依据是父亲结点和儿子结点之间存在着位置坐标的的对应关系:

对任何点(x,y){0父亲(x,y) 儿子(2x,2y), (2x+1,2y), (2x,2y+1), (2x+1,2y+1)

根据这种对应关系,我们可以用递归的算法来实现零树构造,我们用类C的语言来描述该算法,Creat_Zerotree(x,y)的功能是构造一个以(x,y)为根结点的零树,算法如下:

Creat_Zerotree(x,y) { 1.if(x>length/2||y>length/2) return; 2.申请四个新的结点; 3.分别将坐标为(2x,2y), (2x+1,2y), (2x,2y+1), (2x+1,2y+1)的 小波系数添入新申请的结点; 4.将(x,y)结点的四个儿子指针指向新建立的四个结点; 5.Creat_Zerotree(2x,2y); 6. Creat_Zerotree(2x+1,2y); 7. Creat_Zerotree(2x,2y+1); 8. Creat_Zerotree(2x+1,2y+1); 9. Return;

}

四. 零树的遍历(扫描算法) 在图象编码中,扫描算法是很重要的,直接影响到编码和解码的时间复杂度,根据小波系数的分布特点,低频的部分是能量集中的区域,所以要先给低频的分量编码,扫描顺序也是应该是从低频到高频,这个顺序如图所示,图的扫描顺序对应于零树的遍历顺序,因为整个编码解码过程我们都是在对零树进行操作,如果说要按照先由低频到高频的顺序扫描的话,对应于零树就是遍历的时候,对任何一个结点,在它的父结点被访问之前,它 都不可以被访问,即要按树层次从最顶层到最底层的顺序,一层层的遍历,这在数据结构里叫做平序遍历(level order),所以对图象的扫描过程其实就是对零树的平序遍历过程。 平序遍历的是通过一个队列来实现的,队列的特点是先进先出。这个队列存放的都是指向结点的指针。遍历的时候最先访问的是根结点,然后把根结点的儿子结点都压入队列,下一个要访问的结点就是最先进入队列的那个结点,也就是说,从队列中取出一个元素,作为下一个访问的对象。访问之后,仍然是把该结点的所有儿子结点都压入队列(如果访问到最底层的结点时就没有儿子结点就不需要对队列进行操作),这样一直进行下去,直到 队列为空,就证明所有的结点都被访问过了一遍。使用这个队列的目的是为了使每个父亲都能在儿子被访问之前被访问到。具体的算法如下:

1. Add_queue(HL_son); //将HL_son加入队列; 2. Add_queue(LH_son); //将LH_son加入队列; 3 Add_queue(HH_son); //将 HH_son加入队列;

for(;;) { root_node=delete_queue(); //从队列中取出一个结点; if(!IsEmpty_queue()) //当队列不为空的时候 { map_code(root_node); //访问该结点; for(int i=0;i<4;i++) { if(root_node->son[i]) //将该结点的四个儿子结点的指针加入队列中; Add_queue(root_node->son[i]);

} } else { map_code(queue[front]); //访问最后一个结点; break; } }

上述算法不仅在对图象进行扫描的时候被用到,而且在图象的解码,还有判断一个结点是否是零树的根的时候都要用到,具体差异会在以后提到。

五. 零树的编码算法 在确定了扫描的顺序之后,我们就可以开始真正的编码过程,在零树的遍历过程中,就是每访问到一个结点,就对这个结点进行判断,是否要进行编码。 正像在前面提到的那样,我们最后要把有用的结点分成4类:1)正的重要的结点;2)负的重要的结点;3)零树的根;4)孤立的零结点。正的和负的结点就是指大于设定的阈值的点,零树的根是指该点小于阈值,而且它的所有后代也都是小于阈值的,这样我们就可以只对该点进行编码,而忽略所有它的后代,孤立的零结点是指,该结点是小于阈值的,但是它的后代中有大于阈值的重要的结点存在;为了便于操作,我定义了一个双向链表来存放编码后的数据,这个双向链表的数据定义如下: #define POS 1 #define NEG 2 #define IZ 3 #define ZTR 4

typedef struct table_node *table_pointer; typedef struct table_node { double Coeff_value; //结点的小波系数; short unsigned Symbol; //结点的分类标记; table_pointer llink; //链表的左指针; table_pointer rlink; //链表的右指针;

} Symbol是该结点属于上述四类需要编码的结点中的哪一类的标记。有了这个双向链表,我们就可以开始给零树进行扫描编码,每访问一点,如果是要编码的结点,我们就把它加到双向链表中去。下面是编码的流程图如下:

输入一个系数

相关文档
最新文档