随着网络和多媒体技术的迅速发展,图像信息已成为网络中重要的传输信息类型,人们对其在各种不同网络环境中的传输提出多种需求.渐进的图像传输技术是复杂网络环境中一种节省资源带宽的图像传输方法,首先传输图像的轮廓,接收端用户根据已接收的数据进行解码,得到质量不断提高的图像,用户可以根据解码得到的图像轮廓判断是否为所需,选择是否继续接收图像以提高图像的质量.这样既可以满足用户对图像信息快速的直观性需求,又可以避免接收非感兴趣图像引起的带宽浪费,减轻网络中图像信息的传输压力[1].嵌入式图像编码是图像渐进传输中的重要技术.嵌入式编码对图像中的重要信息优先编码,并将压缩后的结果放在码流的初始部分,然后依照信息的重要程度传输码流的其他部分,使得嵌入式编码可以在任意点停止编码,适用于图像的渐进传输.目前研究的嵌入式编码主要有EZW(embeddedzerotreewavelet)、SPIHT(setpartitioninginhierarchicaltrees)、SPECK(setpartitionedblockcoding)等算法[2].SPECK算法采用易于计算和并行处理的块结构,具有所需内存相对较小、容错性强等优势,是嵌入式分级图像编码中性能较好的一种[3-7].王娜等[8]分析了SPECK编码中内存占用的问题,采用标志状态图和块深度优先搜索策略完成嵌入编码中的排序和细化过程,减少内存的占用.LatteMrityunjayaV等[9-10]对SPECK算法进行深入研究,为减少编码过程中占用的内存,提出利用一维索引列表代替传统二维位置信息的SPECK算法,可减少算法占用内存50%.赵文东等[11]对SPECK编码中的小波变换进行分析,提出结合图像小波分解及集合分配策略的SPECK算法.由于SPECK编码算法复杂,实现延时较高,文中在以上研究基础上提出一种快速的SPECK编码算法,该算法避免了传统SPECK算法中动态建立重要系数列表与非重要系数列表,用于存储对应元素的位置信息和对系数列表进行插入与删除操作,占用更少的存储资源完成图像的SPECK编码过程,在允许一定峰值信噪比下降的条件下可以显著缩短SPECK编码与解码的完成时间.1SPECK编码算法SPECK算法充分利用小波系数的能量集中和能量随尺度的增加而衰减的特点,利用四叉树分裂和比特平面编码方法相结合,将图像的小波数的划分为集合S和集合I,如图1所示,集合S为能量集中的低频子带小波系数.图1图像小波系数划分为集合S和集合I判断集合S是否为重要,若集合中所有元素都小于当前阈值,则认为该集合是不重要的,编码输出比特“0”;如果集合中存在元素大于当前阈值,则认为该集合是重要的,编码输出比特“1”.若集合S的维数大于2,采用四叉树分裂的方法继续寻找重要小波系数,直至S集合为单像素,然后对这4个子集按照上述的方法进行小波系数重要性的检测,直至确定当前阈值下的所有重要系数,如图2所示.SPECK算法对存在重要系数的集合I采用倍频带分裂的方法进行处理,若集合I不存在重要系数,则编码输出比特“0”;若集合I存在重要系数,则编码输出比特“1”,并且集合I被分裂成3个集合S及一个新的集合I,如图3所示.再采用上述方法判断新生成的子集的重要性,直至达到设定的编码长度或完成集合I的编码.图2集合S的四叉树分裂示意图3集合I的倍频带分裂示意SPECK算法充分利用小波子带能量的集中特性,使小波系数更大的像素被优先编码.SPECK算法中定义:LIS为不重要系数表,表示集合中位置对应的图像小波系数小于当前阈值.LSP为重要系数表,表示集合
四叉树渐进传输编码matlab,一种图像渐进传输的快速编码算法
最新推荐文章于 2024-02-15 23:31:45 发布