面向自适应码流的渐进编码方法的研究【摘要】多媒体信息呈几何级数的爆炸性增长,带来海量信息的同时也带来庞大的数据量,加重了网络的负担,同时不同用户对所要接收图像的质量要求有所不同,如果以相同的标准进行处理势必会造成一定程度上信息的浪费。文章对静止图像的渐进编码作了进一步的研究,对基本层和增强层采用不同的编码策略,更加适应网络复杂多变的带宽条件。文章还通过与用户之间的交互式操作来满足用户不同的需求。实验结果表明,在压缩效果达到jpeg压缩标准的情况下,增强了渐进功能,更加适应网络需要。【关键词】渐进编码;小波变换;比特平面编码;码率自适应【abstract】multimediagaveusnumerousinformationwithnumerousdata,itmaketheinternetcrowded.becausetherearedifferentrequirementsonpicturequalityfromdifferentconsumers,wecantreatthemdifferently.inthispaper,weresearchonstillpicture,givedifferentmethodtobaseandimprovedstream,thedifferentrequestsoftheconsumerswillbesatisfiedthroughtheinteractiveoperation.【keywords】progressivecoding;wavelettransform;bitplanecoding;bitstreamadaptive1引言当今世界通信技术和多媒体技术正以惊人的速度发展着,多媒体数据的传输也在与日俱增,其存储和传输成为其发展的瓶颈,如何在保证正确传输的条件下降低网络负担,已经成为当前所面临的问题。jpeg标准压缩的图像格式得到广泛的应用,但是其缺点愈加明显,总是在接收到整幅图像的压缩数据之后才能显示,这就造成了数据的浪费。如果能够控制传输码流到比特位,发现正在传输的图像不是自己想要的,则可以随时停止数据的传输,或者发现了感兴趣区域只针对感兴趣区域进行增强则可以大大减少数据的传输,减轻网络的负担。在本文中所实现的渐进传输,首先对图像进行两次小波变换,对变换后所得到的低频图像进行分类,再根据不同的类进行不同级别的编码,使得到的码流在传输时可以在任何地方被截断而不影响已接收数据的图像显示。在编码效率上该方法可以与jpeg相媲美。2分级编码及比特平面编码2.1分级编码图像的分级编码是把原图像的信息分解编码成不同的层次,从而有助于把重要的和不重要的信息分开,并放入不同的信元中。这样就可以根据信元丢失的优先级来表明信元的重要程度,在网络出现拥塞时可以有选择地首先舍弃那些不重要的信元,而不是随机舍弃从而保护了重要的信息。对一幅图像来说低频信息为主要信息可作为优先级较高的基本层,高频信息相对来说则是次要信息可作为优先级较低的增强层。一般情况下采用dct变换或是一组滤波器将图像进行分频,在本文中用小波变换对图像进行分频处理。(2)用不同的尺度作小波变换大致相当于用一组带通滤波器对信号进行处理,因此小波可以表征待分析信号x(?棕)频域上的局部性质。当a值较小时,时轴上观察范围小在频域上相当于用高频小波作细致观察。当a值较大时,时轴上观察的范围较大在频域上相当于用低频小波作概貌观察。利用小波变换这一特有的性质可以使分级编码的实现变得简单有效。2.2比特平面编码一个多值图像可以分解为一个二值图像序列,然后对每个二值图像进行压缩编码,这就是比特平面压缩编码的基本原理。一个由n比特表示其像素灰度值的多值图像,其像素灰度值可以表示成以2为基底的多项式,即:bn-12n-1+bn-22n-2+…+b121+b020(3)基于这一性质,将多值图像分解为一个二值图像序列的简单方法是公式3中多项式的n个系数分成n个一比特平面。因此,一个具有2n灰度级(n比特)的图像可以如此变换成n幅二值(0,1)的图像,每幅二值图像称为一个比特平面。第i个比特平面由所有像素的第i个比特bi组成,i=0,1,…,n-1。由多值图像分解成一组比特平面,这种变换是可逆的,也就是说由这组比特平面可以完全重建原始的多值图像。每一比特平面可以分成若干个p*q像素大小的块。比特平面经过划分后会出现三种不同结构的块,即全“0”块、全“1”块以及“0”和“1”的混合块。统计表明,前两种结构的数据块最常出现。因此,一种压缩二进制图像或比特平面的简单有效的方法是所谓常数区编码(constantareacoding)。作法是比较全“0”块和全“1”块出现的概率,对出现概率高者分配一比特码字“0”,对另一个分配两比特码字“11”,而对“0”和“1”的混合块将分配“10”作为前缀码,其后跟p*q比特,表示该块的具体图案。若以p(0)表示全“0”块出现的概率,p(1)表示全“1”块出现的概率,则“0”、“1”混合块出现的概率为p(m)=1-p(0)-p(1)。在这个变长编码的方案中,平均每块的编码长度为:压缩比为:通常图像的象素值都是用自然二进制码表示的,按照前述比特平面划分的方法,第i个比特平面由图像中各象素值的第i个比特位构成。观察实际的比特平面可以发现,从最重要的比特位数据开始,高位(大i)的比特平面适宜用上述的分块编码方法,其原因是相邻的象素有很强的相关性,所以象素值彼此接近。2.3比特平面层数确定根据数据所属类的不同相应的分配不同层数的比特平面,概率较大的第一类数据分配较多的比特平面数,可根据公式6来确定,这样解码所有比特平面时不会使总体的误差过大。概率较小的第二类数据分配较少的比特平面数,这里设置为三层比特平面。2n2?荞d2-d1<2n2+1(6)d2-d1为第一类的区间长度,n2计算所得的第一类数据比特平面的层数,由此公式计算出lenna图像的第一类数据的比特平面层数为n2=6。图像总的比特平面编码层数为n,它等于类比特平面层数和数据比特平面层数之和。n=n1+n2(7)这里n1为类比特平面层数,第一类的类比特平面层数为一层,第二类为两层。3交互式感兴趣区域的选择人类的视觉具有一定的选择性,人们在观察和理解图像时能够不自觉地对其中的某些区域产生兴趣,把这些区域称为“视觉感兴趣区”。感兴趣区域选择有两种方法:一种是通过人根据其感兴趣的区域选定,称为人为检测的感兴趣区域;另一种是根据被处理图像的特征利用算法获得感兴趣区域。本文选择第一种方式进行感兴趣区域的选择,用户通过矩形框对感兴趣区域进行选择,在此过程中用户只需要向服务提供方反馈两个点的坐标,这两个点分别是矩形框的左上角和右下角点。被矩形框选中的图像区域为需要增强的图像部分,服务提供方会将压缩成jpeg形式的图像数据传输给客户。4实验结果对于任何一幅256*256的灰度图像经过两次小波变换可以得到64*64的低频图像。以经过变换后的三幅64*64的图片为例,对基于小波变换和比特平面编码进行实验说明。编码前64*64像素的图像编码一层比特平面为64*64bits,即每一个像点都用一比特来编码,换成字节为单位则是512个字节。再对每一层数据进行比特平面编码。表1给出lenna图像编码的前三层数据量。对于一种压缩编码我们往往很关注它的压缩效率,这里将本文方法和jpeg压缩进行比较。5结束语由表格可以看出,在几乎相同的信噪比下,本文的方法可以与jpeg的压缩方法相媲美,但是有一点却是jpeg所望尘莫及的,那就是本文的方法可以将数据的传输控制到比特位。本文采用的是基于小波变换和位平面编码的基本层和增强层渐进编码,也就是说接收端可以在码流的任何一个位置截断停止码流的传输,仍不影响已接收到的数据的解码和解码后图像的显示。而对于jpeg编码来说,如果接收端没有完全接收到编码数据就无法显示图像,那么那些已经接收到的部分数据就浪费了。本文的方法可以使每一位的数据信息在解码时得到充分的利用而没有浪费,这种兼顾到了网络传输性质的编码方式,更能有效的运用到实际当中。参考文献[1]张威,分布式编码的关键技术研究,中国科学技术大学,硕士,2011.[2]黄菁,高光谱图像编码研究,南京理工大学,博士,2008.[3]李继良;方向忠,一种新的感兴趣区域编码方法,计算机工程,2008,2.[4]liwp.finegranularityscalabilityinmpeg-4forstreamingvideoinproceedingsoftheieeeinternationalsymposiumoncircuitsandsystems,geneva,2000,1:pp299-302.[5]白慧慧,多描述图像/视频编码的研究,博士,北京交通大学,2008.