毕业设计基于小波SPIHT的联合信源信道编码.docx
- 文档编号:6256669
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:16
- 大小:461.59KB
毕业设计基于小波SPIHT的联合信源信道编码.docx
《毕业设计基于小波SPIHT的联合信源信道编码.docx》由会员分享,可在线阅读,更多相关《毕业设计基于小波SPIHT的联合信源信道编码.docx(16页珍藏版)》请在冰豆网上搜索。
毕业设计基于小波SPIHT的联合信源信道编码
基于小波SPIHT的联合信源信道编码
及一种改进设计
摘要分析了一种传输小波SPIHT编码图像的联合信源信道编码方法和方法的一种改进设计,该方法是一种基于分层编码和小波SPIHT算法的联合编码方法,而改进的设计针对SPIHT编码码流重要性的不同而进行不同程度的保护,并利用无线信道的时变特性自适应地调整信源和信道编码速率,从而在不增加额外带宽的前提下有效地提高了系统的性能和可靠性。
在瑞利信道和GE信道下的仿真表明本方法与前文献中提出的EEP方法以及UEP方法相比,在信道条件恶劣的情况下,能够明显提高恢复图像的质量。
关键词分层编码;SPIHT;联合信源信道编码
JointSourceChannelCodingandanImprovedDesignBasedonWaveletSPIHT
MinWeiNo.07S005022
(HITCRCHarbin150001)
AbstractThispaperanalysesthetransmissionofacodedimagewaveletSPIHTthejointsourceandchannelcodingmethodandanimproveddesignofthemethod,andthemethodofjointcodingmethodisbasedonahierarchicalcodingalgorithmsandwaveletSPIHT.TheimproveddesignprotectsagainstthedifferentvaryingdegreesofcodingforSPIHTBitstreamimportanceandusetime-varyingcharacteristicsofthewirelesschanneltoadjustadaptivelytosourceandchannelcodingrate,resultingineffectivelyenhancingthesystem'sperformanceandreliabilitywithoutadditionalbandwidth.InRayleighchannelandGEchannelsimulationshowthatinthepoorchannelconditionsthemethodproposedinthepapercanimprovethequalityoftheimagerestorationmoresignificantlythanthemethodindocumentsonEEPandUEP.
KeyWordsHDMhierarchicalcoding;SPIHT;jointsourcechannelcoding
1.
引言
信息论是一门研究信息传输、存储和处理的科学,作为严谨、庞大的理论体系,虽然其枝蔓众多、内容丰富,但如何提高系统信息的有效性和可靠性,却始终是它的中心课题。
根据通信系统的框图,如图1.1所示,编码器的作用就是对信源发出的消息做某种变换,这种变换技能有效的表示消息,又能克服信道中
图1.1通信系统简略示意图
的干扰。
译码就是编码的逆过程,将编好的码字还原成信源发出的消息传递给信宿。
长期以来,有效性和可靠性作为一对矛盾,存在于通信编码的问题中,这种矛盾,正可以从信源编码和信道编码的关系中体现出来。
信源编码的目的在于提高系统的有效性,而信道编码则以提高系统可靠性为核心。
在信息论发展的这几十年历史中,信源编码和信道编码的研究几乎一直处于相互独立、相互分离的的状态,这就促使了信源编码和信道编码的设计相互分离格局的形成。
其实这种局面的形成是有其深层次的原因的,将一个比较复杂的问题分解为若干个比较简单的问题或者是将一个繁琐的步骤分解成几个比较易于执行的甚至是已经有现成理论的步骤,是科学发展史上一种惯用而且行之有效的方法,而信源和信道的编码分离,更是极大简化了编码这一非常复杂的过程。
而根据理论证明也可知该分离系统理论上并不影响系统的最佳性能,极限的情况是信源编码——信道编码的级联系统平均失真将逐渐收敛于信道容量意义上的失真率限。
既然如上所说分离编码可以得到较好的性能,那么联合信源信道编码的研究意义何在?
无论是分离编码,还是联合编码,其最终的目标仍然是系统整体的最佳性。
举一个极端的例子,如果信道性能不好,那么信源空间划分过细不但在信道传输时加重信道编码负担使系统复杂,反而也得不到很好的性能,所以具体问题还是要综合考虑的。
所以联合信源信道编码就是一种综合考虑信源和信道编码的设计方法,其主要目的仍是是系统整体达到最佳。
近年来,联合编码不断受到重视,使之成为编码理论中的一个重要的课题。
随着通信网络的发展,在资源受到限制的通信系统、多用户共享信道的通信系统、异质信源、异类信道或异种用户共存的通信系统以及信源、信道具有时变特性的通信系统中,应用信源信道联合编码的系统可以得到更好的效果。
目前,国内外对于信源信道联合编码研究主要在以下三个方面展开:
基本理论的研究,设计方法的研究和实际应用方面的研究。
现在信源信道联合编码的理论研究主要集中在两方面。
一是理解质量、延迟、计算复杂度、信道利用和消耗功率之间的关系,二是如何评估联合编码。
信源信道联合编码的具体设计方法是这个研究领域中最受关注的问题,很多学者在这方面做了大量工作。
当前关于信源和信道联合编码的设计方法的研究大致有以下几种:
基于信源优化的信道编码设计,基于信道优化信源编码,迭代优化信源和信道编码以及信源信道的联合译码。
从具体的编码器的结构来说,联合编码的编码器有两种。
一种是合并式编码器,这一类编码器设计起来较为复杂。
另一种是级联编码器,它与传统编码器结构类似,将信源编码器和信道编码器串联起来。
随着通信的发展,人们对图象、视频传输的需求越来越大,要求也越来越高。
无线网络是一种多用户共享的网络,具有资源有限,时变,异质,易受干扰,误码率高等特点,图象、视频的信息量又非常大。
基于分离原则的编码绝对无法适用无线视频编码的复杂情况,而联合编码在这方面则大有可为。
近年来,在联合编码的设计方面很多工作是针对在无线信道上图象和视频的传输来展开的。
本文首先介绍了一种利用了小波SPIHT算法的分层联合编码的设计方法,然后又介绍了一种基于小波SPIHT的联合信源信道编码新方法,并对它们的性能进行比较。
2.正文
2.1基本方法
首先介绍一种基于小波SPIHT的分层联合信源信道编码方法。
分层编码是目前较受关注的一种信源信道编码。
它相当于基于信源优化信道设计编码。
在分离原则中,信道编码不考虑信源编码的意义,信道编码对信源编码器送出的码流进行同等保护。
分层编码是把信源编码分成几个部分:
最重要的部分(MSP)和次重要的部分(LSP)。
MSP包含图象中粗糙的但对于识别图象很重要的信息,LSP部分包含提高图象质量所要求的更精细的信息,在信道中可以对MSP部分重点保护。
用这种方法,不仅可以提高图象传输对信适应力,还可以适应网络的QoS要求,对不同同户实行不同质量的传送。
图象分解可用小波变换(DWT)和离散余弦变换(DCT)等。
现在多采用DWT分解,一级DWT把图象分解成一个近似子图象和包含水平、垂直、和斜线细节的子图象。
这个近似子图象或细节子图象可以用DWT被进一步分解。
经过DWT分解后,一个图象被分成几个层次,这些层次对应着不同的不同的频率范围,人眼对这些不同的频率范围有不同的敏感度。
近似子图象的编码信息包含了原始图象最重要的能量,把它放入MSP包中,细节编码放入LSP包中。
小波SPIHT(SetPartitioningInHierarchicalTrees)算法定义的编码树的结构如图2.1所示。
树的每一个节点与一个系数相对应,并且用坐标(i,j)来标识,每一个节点的直接子孙或者叫做子节点与相同空间方向的高一级子带的系数相对应。
编码树定义为每一个节点有4个直接子孙或者没有直接子孙。
最高级子带的低频子图像和最高低子带的最高频子图像没有子孙。
如果ci,j是父节点,它的子节点定义为c2i,2j,c2i,2j+1,c2i+1,2j和c2i+1,2j+1。
SPIHT算法中,使用坐标标记的方法,定义了4种坐标
图2.1SPIHT编码树结构示意图
集来表示小波系数的类型,并用符号表示:
O(i,j):
所有子节点(i,j)的坐标集;D(i,j):
所有子孙节点(i,j)的坐标集;H(i,j):
所有树根的坐标集(所有最高级子带的节点);L(i,j)=D(i,j)-O(i,j):
除子节点之外的所有子孙节点的坐标集。
在SPIHT编码算法中,使用最频繁的坐标集是D(i,j)和O(i,j)。
因此,如果说D(i,j)或者L(i,j)坐标集是重要的,就意味着这个坐标集中至少有一个系数的幅度大于或者等于阈值。
或者反过来说,如果D(i,j)或者L(i,j)坐标集中至少有一个系数的幅度大于或者等于阈值,那么该坐标集是重要的。
由于测试重要系数的次序很重要,在实际执行SPIHT算法的过程中,重要信息存储在3种次序列表变量中,因此执行SPIHT算法就变成了对3种表格的维护。
它们是不重要像素列表(LIP,listofinsignificantpixels),不重要子集列表(LIS,listofinsignificantsets)和重要像素列表(LSP,listofsignificantpixels)。
在所有列表中,每个集合内的元素用坐标(i,j)来标识,LIP和LSP中的元素代表单独的象素,在LIS中的元素代表集合D(i,j)或L(i,j)。
为了区分它们,如果它代表D(i,j),我们说一个LIS元素是typeA型的;如果它代表L(i,j),我们说它是typeB型的。
下面看一下用SPIHT算法对图像进行编码后编码比特流各个部分的重要性。
用SPIHT算法对图像进行编码要执行两次扫描:
排序扫描(sortingpass)和量化扫描(refinementpass)。
排序扫描确定符号值,明确重要小波系数的位置信息,量化扫描发送重要系数的精细的值。
我们定义在排序扫描中产生的比特作为SPB(SortingPassBitstream),量化扫描中所产生的比特作为RPB(RefinementPassBitstream)。
在SPB中的比特差错是致命的,如果在SPB中发生错误,那么很可能导致错误扩散造成全部译码的失败;在RPB中的错误不是致命的,它只局限在发生错误的位置,不会造成错误扩散。
因此在SPB中比特的重要性要远远大于在RPB中比特流的重要性。
同时,SPIHT算法根据幅度大的系数先传送的原则对系数进行排序,幅度大的系数先传输,因此比特流中的比特根据它们在比特流中的位置不同而有不同的容错性。
越接近比特流结束位置的比特的重要性(它在重建图象上的影响)越小。
这种特性使得在一个比特流中实现不同段的非平等保护成为可能。
这样,我们就可以根据比特流的容错性将它们分成不同的层,分别进行保护。
编译码结构如图2.2所示
图2.2编译码结构
信源编码:
对图像的二值系数进行小波变换,然后进行SPIHT压缩编码。
分层:
把码流分成由排序扫描产生的SPB和由量化扫描产生的RPB两大类。
根据需要,可对每一个类再进行分层。
这样可以根据每个部分不同的重要性进行不同的处理。
同时对每一层编写头信息,头信息中包括层数,删余矩阵等译码需要的信息。
信道编码:
头信息非常重要,因此对头信息采用母码进行保护,并用CRC来检测,如果CRC检测出有不可恢复的错误则给出出错信息,告诉发方译码失败。
如果在SPB中发生不能纠正的错误,会导致错误扩散,引起全部译码的失败,因此对SPB的保护由一个CRC编码器和一个RCPC编码器级联而成,这样在译码端既可以检错又可以纠错。
首先将SPB比特流的各层分成比特长度相等的包,对它们进行CRC校验。
然后根据不同的要求对SPB不同的层进行RCPC保护,用同一个母码不同的删余矩阵可以对它们进行不同速率的保护主要用CRC来检测错误扩散,既然错误在RPB中的错误是不会扩散的,所以对RBF只需要进行RCPC保护,不同的层选择不同的删余矩阵。
虽然经过RCPC保护还有可能有未能纠正的错误,但错误只局限在图像的某一个部分。
因为采用RCPC编码可以调整编码的速率,所以可以把信道信息传递给编码器,根据信道情况采用不同的删余矩阵来控制编码速率。
信道传输:
不同的层的比特流汇聚传输。
信道译码:
译码器根据各个层的头信息,对SPB和RPF的各层分别进行RCPC和CRC译码。
如果CRC检测出有不可纠正的错误,译码器根据要求采用相应的措施,例如如果此时没有达到图像所需要的编码速率,则译码端采用ARQ(自动重发请求)方式,让信源端重新传送遭到破坏的层,如果此时己经达到图像所需要的编码速率,则抛弃SPB中后边的层以及它们相应的RPF部分。
信源译码:
进行SPIHT译码,小波逆变换来重构图像。
实验及结果。
选用两种分层方法进行渐进图像的非平等保护,并将结果与平等保护(无分层统一进行信道编码,信道编码采用8/20的速率)的结果进行比较。
用图像LENA256×256的一部分128×128来作为样本图像对提出的方法进行检测。
假设信道是二进制对称信道(BSC),信道误比特率(BER)是10-2和10-3。
实验结果是30个独立仿真的平均。
RCPC母码的速率是1/3,生成多项式为[1+D+D2,1+D+D2+D3,1+D2+D3],打孔周期为8,约束长度为4,有一族码率
在RCPC编码前,输出的子流分别打包进入长度为L=204的块中。
对属于SPB的比特进行CRC检测,将16个比特加到每个包上。
最后4个比特“0”加到每个包的末尾,让viterbi译码器恢复到原状态。
每个头信息都用母码重点保护。
最后把各子流多路复用加到信道上。
第一种分层方法(记为UEP1)是只将图像分成SPB和RPB两部分,SPB用CRC+RCPC级联来保护,RPB用RCPC来保护。
这时就要选择合适的删余矩阵。
对于提出的方法,得到最佳RCPC速率的计算方法是困难的,具体的删余矩阵的选择只能通过仿真来实现。
但我们明确对RPB的保护要弱于SPB的保护,所以RRPB>RSPB。
第二种分层方法(记为UEP2)是对SPB和RPB部分再各分为两层,分别为SPB1,SPB2和RPB1,RPB2。
它们的速率要满足RRPB1>RSPB1和RRPB2>RSPB2。
下边给出实验数据。
在实验中,我们设定了一个最低的图像质量标准,当恢复出的图像质量其PSNR值会小于12.36dB时,译码器会给出出错信息,把本次译码做为译码失败处理。
从表中可以看出,当误码率比较低时,两种采用分层方法的图像鲁棒传输质量均好于平等保护的方法。
在误码率大的时候,UEP2的方法要略好于UEP1的方法,因为它的渐进性更加明显。
但是在误码率低的情况下,两者相差不大。
因为头信息要占用一部分比特,所以分的层数也不是越多越好。
UEP因为考虑到了信源编码的特性所以更能够适应信道的环境。
表2.1BER=0.01的情况
BER=0.01
0.5bpp
1.0bpp
PSNR
译码失败
PSNR
译码失败
RSPB=8/22,RRPB=8/18
20.56dB
4/30
23.38dB
3/30
RSPB=8/18,RRPB=8/16
20.32dB
3/30
24.12dB
3/30
EEP(8/18)
19.24dB
8/30
22.37dB
7/30
表2.2BER=0.001的情况
BER=0.01
0.5bpp
1.0bpp
PSNR
译码失败
PSNR
译码失败
RSPB=8/22,RRPB=8/18
24.43dB
1/30
27.56dB
0/30
RSPB=8/18,RRPB=8/16
25.54dB
0/30
28.47dB
0/30
EEP(8/18)
22.32dB
4/30
25.36dB
3/30
2.2改进设计
下面来介绍这种方法的改进设计,图2.3给出了方案的总体设计框图。
图2.3系统设计框图
原始图像经过信源(SPIHT图像编码器)编码,产生的码流被打包分成长度固定的数据块。
对每个数据块加以16bit的循环冗余校验(CRC)后,码流将通过RCPC信道编码器并进行交织。
经过信道传输后,接收端将首先通过解交织和RCPC译码器,再经过CRC译码和解分组。
当CRC译码发现了RCPC未能纠正的错误时,为了防止错误传播,解分组将结束,该错误所在数据块之后的所有码流将被丢弃。
SPIHT信源译码器只利用接收到的正确数据恢复原始图像。
RCPC编码器对不同的比特段给予不等错误保护,其初始的保护等级是预先确定好的,并且对解码端是已知的。
开始传输后,系统将根据译码端的反馈参数来实时地调节信源编码的传输速率以及各比特段的错误保护等级,并将新的RCPC编码参数放在码流头部,传输给译码端。
当信道条件恶劣时,系统将减少传输信源编码产生的码流的分组数,并且增加对码流的保护,而当信道条件好时,系统将增加信源的传输分组数同时降低对码流的保护。
实际上,总的传输速率是不变的。
信道条件差时增加对信源保护的冗余比特是以减少的传输分组数为代价的。
即原本为了提高恢复图像而传输的图像细节部分变成了用来保护前面图像主体部分的冗余比特。
系统所要解决的关键问题就在于如何动态地调整信源的传输分组数以及各分组的错误保护等级。
假设将SPIHT编码器以编码速率Rsbpp产生的比特流分成N组,每组k个比特,则一幅图像所包含的总比特数为N×k=Rs×Ns比特,其中Ns为该图像的总样点(像素)数。
如果有i个分组被正确接收,则图像就以速率
重建,因此我们定义
为每个分组的编码速率。
这样,Rs即为所有的分组都被正确接收时的信源编码速率,且
。
假设信道编码分配策略π将速率
分配给第i个信源分组,则分配策略π集合即表示为一系列信道编码速率的集合
。
那么,对应于策略π的系统传输速率RT(信道符号数P像素数)为
。
式中RC为总信道编码速率,
表示第i个信源分组的信道编码速率。
由于信源采用SPIHT算法,编码出来的比特的重要性沿码流呈递减的趋势,即越靠前的比特越重要,因此我们对各分组的保护等级应满足关系
。
为了便于分析,假设将信源分组进行三等分,并对这三部分分别进行不等错误保护。
则分配策略π即为
。
这里
,且
。
系统将根据接收端反馈的参数来动态调节信源的传输分组数和RCPC对各分组段的错误保护等级,以便在信道恶劣的条件下仍保持较好恢复质量的图像。
我们选择变量分组丢弃率(plf)为接收端反馈的参数,并将其定义为接收端在CRC发现错误后丢弃的信源分组数与SPIHT编码器产生的总的信源分组数的比值。
如果
,系统将增加对第三部分的保护等级,即降低
,并且将L3减少Ld,则分配策略π变为
。
由于RT恒定,则由式
可得
,
其中
。
当
时,系统将增加对第二部分的保护强度,即降低
,并将L3减少Ld,则策略π变为
。
同第一种情况类似,可得
。
选择Ld时应满足
。
如果
,则系统增加对第一部分的保护等级,即降低
,并将L3减少Ld,此时策略π变为
。
同理,可得
。
选择Ld时应满足条件
。
由于系统动态调整信道编码策略,因此需要将信源各分组的错误保护等级作为附加信息传递给解码端。
又由于本系统采用RCPC编码,编译码器可预知供选择的RCPC速率值,这样我们仅需传送RCPC的速率索引序号即可。
对于三重不等错误保护,最多只需传送
(例如分辨率为
,信源编码速率为0.5bpp的图像,系统仅增加了0.009%bpp的附加速率)。
可见,附加信息对于系统的传输速率影响很小。
实验与结果。
为了将本文提出的方法与其他文献中的方法做比较,我们采用标准的灰度图像Lena(分辨率为
)对系统的性能进行测试。
SPIHT编码速率为0.5bpp,输出的码流分成长度为200的分组并加以16bit的循环冗余校验比特。
为了使RCPC编码器回到初始状态,6bit(RCPC码的编码存储)的0将加到各分组之后。
经过RCPC信道编码后的码流通过BPSK调制后再分别经过瑞利信道与GE信道,最后到达译码端。
RCPC码是由1/4卷积码以周期8增信删余得到,其编码存储为6,码速率在8/9~8/32之间。
交织深度为80。
在描述重建图像质量随信噪比变化的总体趋势时,用PSNR值的统计期望值将会比较准确。
图2.4和图2.5分别显示了瑞利信道和GE信道中,对Lena图像采用等错误保护(EEP)以及不等错误保护(UEP)和本文提出的联合信源信道方法时的性能比较。
我们可以看出GE信道下的总体性能要低于瑞利信道下的性能。
图2.4瑞利信道下EEP,UEP与本文提出的方法的性能比较Lena(分辨率为
)
图2.5GE信道下EEP,UEP与本文提出的方法的性能比较Lena(分辨率为
)
同时,在两种信道模型下,UEP方法在低信噪比时性能优于EEP方法,而在高信噪比时性能低于EEP方法。
而本文提出的方法在低信噪比时能获得很高的性能增益,在高信噪比时性能比EEP方法优越,而同UEP方法相当。
其中,GE模型参数为PG=0.001,PB=0.1,PBG=1/400,PGB=PBG/9,fd=10-5,Rt500Kbit/s,载频为900MHz,用户以每小时4英里的步速移动。
但是,对于某个信道条件即固定信噪比情况,只考虑经过译码重建后图像的PSNR值将不够充分和准确。
因为重建图像的质量还和人的主观视觉感受以及图像的编码方法有关。
例如,在相同PSNR情况下,图像给人的主观感觉可能会大有不同。
而在不同PSNR情况下,有时PSNR值低的图像反而比PSNR值高的图像主观效果更好。
此外,由于SPIHT编码后生成的码流的重要性不同(表示排序信息的比特要比表示小波系数值信息及符号信息的比特重要),即使每次码流中产生的错误比特数相同且每个比特具有相同的错误概率,在不同重要性位置上的比特发生的错误,都将会给重建图像的质量造成不同程度的影响。
例如,图2.6显示了一个小波系数的符号信息出错后的译码重建图像。
图2.7显示了一个排序信息出错后的重建图像。
两幅图像的编码速率均为0.5bpp。
可以看出,排序信息出错可以给图像带来极其恶劣的影响,而小波系数的符号信息仅仅影响图像的某一小部分。
图2.6一个符号信息出错后的重建图像
图2.7一个排序信息出错后的重建图像
同时,由于信道噪声的随机性和时变性,每次解码恢复的图像的PSNR值都可能是不同的。
因而仅用某次恢复图像的PSNR值来衡量编码系统的传输性能并不准确,而用多次重建图像PSNR值进行简单的几何平均,也不能够反映出信道噪声对重建图像的随机影响,因此,这里采用重建图像的PSNR值的分布函数来衡量编码系统的性能,这样不仅能够提供对单幅图像的定量分析,还可以反映出多幅图像的统计特性。
图2.8和图2.9分别显示了在瑞利信道下和GE信
图2.8瑞利信道PSNR分布函数曲线
图2.9GE信道PSNR分布函数曲线
道下,信噪比为10dB,Ri=0.5bpp,Rc=0.5时的PSNR值的分布函数曲线图。
图中,横坐标取PSNR值为5dB的倍数点作为临界点,分别计算出解码PSNR值落在各临界点之间的数据段内的概率,并以此作为纵坐
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 基于 SPIHT 联合 信源 信道编码