数据流的编码的制作方法

文档序号:7644961阅读:302来源:国知局
专利名称:数据流的编码的制作方法
技术领域
本发明涉及数据流的编码。
本发明进一步涉及数据流的发送和接收。
参照2000年1月IEEE信号处理杂志中M.Budagavi,W.RabinerHeinzelman,J.Webb,R.Talluri的文章“用DSP芯片进行无线MPEG-4视频通信”。该文章公开了,为了使压缩的比特流更稳定,MPEG-4视频压缩标准在它的简单文件中合并了几个误差复原工具,使它能够对误差检测、抑制并隐藏。当误码率小于10-3时,这些技术是对抗比特误差的功能强大的源编码技术;但是,现在无线信道会具有比这高得多的误码率(BERs)。由于发射机和接收机之间的运动产生的多径衰减造成在移动无线信道中苛刻的条件,并且该条件随着周围地形而改变。多径衰减用长误差脉冲串的形式表示自己。因此,为了改善信道条件,需要某种形式的交织和信道编码。使用信源编码和信道编码的组合,有可能用MPEG-4简单文件视频压缩通过易发生误差的无线信道获得可接受的图像质量。MPEG-4压缩比特流的结构也使用不等误差保护(UEP),一种结合信源信道编码的形式,以确保在比特流的重要部分出现更少的误差。
本发明的一个目的是提供一种改进的数据传输。为此,本发明提供如独立权利要求所确定的编码、解码、发送、接收、数据流和存储介质。有利的实施例在从属权利要求中确定。
本发明在MPEG-4的无线传输领域特别有益。发明人意识到由于使用可变长度编码和具有在每个包中宏块的整数的要求,MPEG-4包并不正好是相同的长度,并且在不同的包中分区具有不同的长度。这意味着不能使用固定的UEP方案并且为了在信道的解码级用正确的码率执行解码,比特流结构应当在接收机中已知。象分区一样,包不是等长的;因此,UEP方案应当对每个包动态地改变并且需要知道分区长度。本发明提供了用于具有可变长度的包和分区的UEP。
按照本发明的第一方面,数据流中至少一个包的各个分区用不同的误差保护码率编码,其中各个分区的各个长度分别用至少一个包中的长度的百分数或包长度的比值来确定。通过根据固定的百分数提供分区,用于可变长度包的UEP有可能制成。
在特定的实施例中,整个包中的所有分区的长度用包长度的百分数确定。但是,一些分区的长度可能也通过取固定的、预定的长度来确定。最好,接着其余分区的长度用包长度的比值的百分数来确定。该比值通常等于分区长度的总和,分区的各个长度由(比值)的百分数确定。在特定的实施例中这等于包长度减去固定长度的总和。所以固定分区长度和成比例的分区长度的合并是可能的。
有利的是,给定的包长度用数据流中两个标记之间的距离来确定,其中两个标记中至少一个表示包开始。
有利的是,其中各个确定的百分数用这样的方式确定,即包的第一分区可能是包的首部。通过在通常条件下选择的一个百分数,首部总是包括在第一分区中,整个首部能够用相同的保护码率来保护,该码率最好比对后面分区的码率更高。而且码率最好被如此确定,即给定分区和前一分区的总和具有原始分区的相同数量。
在根据本发明的实施例的解码器中,包括至少一个具有给定包长度的包的数据流被接收并且各个包分区用不同的误差保护码率解码,其中至少一个包的各个分区已经用不同的误差保护码率编码,其中各个分区的各个长度由包长度的各个预定的百分数确定。
本发明的以上和其他方面将参照下文描述的实施例阐明并将很显然。


图1示出MPEG-4比特流中的数据分配;图2示出了根据本发明的一个实施例的保护方案的示意性表示;图3示出了根据本发明的一个实施例的起始码替换和(成比例的)不等误差保护;图4示出了根据本发明的一个实施例的发射机,发射机包括用于起始码检测和替换的装置;图5示出了根据本发明的一个实施例的接收机,该接收机包括用于替换的起始码检测和更新的装置;图6示出了根据本发明的一个实施例的成比例的不等误差保护。
附图只示出了对理解发明有必要的那些部件。
由于压缩并尤其是预测编码和可变长度编码(VLC),MPEG-4比特流对误差很敏感。1988年6月IEEE通信杂志第36卷no.6中R.Talluri的文章“在ISO MPEG-4标准中的误差恢复视频编码”描述了符合ISO MPEG-4标准的视频编码技术误差恢复方面。适用于ISOMPEG-4标准的特定工具被详细描述,它使压缩的视频数据能够通过有噪声的无线信道通信。这些技术包括再同步策略、数据分配、可逆的可变长度编码和首部扩展编码。
这些工具有助于对MPEG-4比特流增加稳定性。随着再同步标记的使用,MPEG-4比特流由具有几乎相同码长的包组成。不考虑这些工具,当MPEG-4通过无线信道发送时能够获得的接收质量仍然很差。但是,如果在信道编码级使用误差恢复工具,能够产生接收图像质量的进一步改善。尤其是,为了执行不等误差保护(UEP)能够使用数据分配工具包含在每个包中的信息比特被分离为三个分区,每一部分对信道误差有不同的灵敏度。如图1中对I帧所示,分区由首部HI和DC DCT系数和AC系数组成,它们由DC标记DCm分离。置于P帧,分区由运动标记mm所分离的首部HP和运动分区m和纹理分区tp组成。
考虑到无线信道和使用的特性,描述了适当的技术。特别是,关于信源比特对信道误差的不同的灵敏度的信息应当通过UEP使用。该技术包括按照感知的信源比特对误差的灵敏度执行误差保护更敏感的比特用高级保护来保护(对应于低码率)对不太重要的比特使用低级保护(也就是更高的码率)。与典型的前向纠错(FEC)相比,通过信源特性的开发,给定相同的比特率UEP能获得更高的感知图像质量。
在提出的方案中,根据相关信息的主观重要性,三个分区用不同的码率保护。包含在首部中的信息对包的连续解码至关重要,因此那些信息应当加强保护。对内部帧,DC系数比AC系数具有更高的主观重要性;因此DC系数应当比AC系数更高级地保护。至于预测帧,运动数据应当比纹理信息更好地保护,因为如果运动信息被正确接收,纹理信息就会被部分重建。
建议的UEP执行设备也考虑了不同类型帧的不同重要性在MPEG-4标准中。考虑到内部、预测和向后预测帧,内部帧与其它帧分开单独编码并且预测帧从相邻帧使用信息。
内部帧的正确接收对执行接下来的预测帧的运动补偿至关重要,因此低平均信道码率(即高级保护)应当与内部帧相关联,而预测帧能够用高平均码率编码(即低级保护)。图2示出描述的保护方案的示意性表示。
UEP可以用根据比特的预测重要性选择的码率,通过码率兼容收缩(punctured)卷积(RCPC)编码来执行。在这种情况下,考虑的编码通过收缩(puncturing)相同的“母”码获得。只需要一个编码器和一个解码器来执行整个比特流的编码和解码。这样的码率兼容收缩(punctured)卷积编码从1 988年4月的IEEE传输通信第36卷no.4中J.Hagenauer的文章“码率兼容收缩(punctured)卷积编码(RCPC编码)和它们的应用”获知。
不同的平均码率对不同帧的保护使用(I帧用高级保护/低码率编码,对P帧使用低级保护/高平均码率),并且对每一帧使用加入到MPEG-4标准中的数据分割工具,从而对最重要的分区提供更强的保护。一帧如果没有被正确接收可以被再发送。
一个MPEG-4编码的比特流被构造为图像对象(VO)、图像对象层(VOL)、图像对象平面组(GOV)、图象对象平面(VOP)和包。为了允许同步,比特流的每部分的开始用相关的起始码表示。起始码是唯一的码字,从可变长编码字的任意合法序列中可辨别出。H1表示对VO的起始码,H2表示对VOL的起始码,H3表示对GOV的起始码,H4表示对VOP的起始码并且H5表示包起始码(再同步)。
主要问题是由于使用了可变长度编码和具有每个包中宏块的整数的需要,MPEG-4包并不正好等长的并且在不同的包中分区具有不同的长度。这意味着不能使用固定的UEP方案并且为了在信道的解码级用正确的码率执行解码,比特流结构应当在接收机中已知。象分区一样,包不是等长的;因此,UEP方案应当对每个包动态地改变并且需要知道分区长度。本发明提供了用于具有可变长度的包和分区的UEP。由于关注于这一问题,提出了用于执行UEP的解决方案成比例的UEP。
成比例的不等误差保护(P-UEP)图6示出了成比例的不等误差保护的方案。因为每个字段的长度接受机不知道,使用成比例的方案给出包的(可变)长度。包长度最好通过两个正确的起始码(其中至少一个是包起始)的接收来确定。一个包的延迟通过这样的方案引入,从而填满包缓冲器。考虑到比特流的特性,为每一分区选择百分比长度。给出三个分区的百分比长度P1、P2、P3后,用码率R1、R2、R3保护,对I包的平均码率用过以下公式给出Ravg=R1R2R3P1R2R3+P2R1R3+P3R1R2]]>同样,对P包Ravg′=R1′R2′R3′P1R2′R3′+P2R1′R3′+P3R1′R2′]]>因此,编码后的包长度是对I帧Lcoded_packet_I=LpacketRavg+MR3]]>并且对P帧Lcoded_packet_P=LpacketRavg′+MR3′]]>其中在考虑卷积编码的情况下M是码的存储器。至于码的存储器M卷积编码与块编码不同之处在于编码器包含存储器并且编码器不仅根据那一时间单位的输入而且根据M预先输入块在任意给定时间单位输出,其中M是码的存储器。存储器M卷积编码器由M级移位寄存器组成,这些寄存器具有选择级的输出,被加入到模-2以形成编码的符号。因为卷积编码是连续的电路,所以它的操作能够用状态图说明。编码器的状态按照它的移位寄存器内容确定;因此编码器可以假定有2M个状态。为了用与其他比特相同的强度保护比特流的最后的比特,M尾部比特应当被加入到比特流中从而使编码器回到已知状态(典型为“0”状态)。实际上,如果考虑卷积编码,包通过向移位寄存器移M个“0”比特而终止,从而允许结构的正确终止。尾部比特用高码率编码。为了计算总的平均码率,I帧和P帧之间的平均值应当被计算并且由起始码替换所引入的操作也应当被考虑。
本发明的这一方面取可变包长度的各个预定的百分比为各个包分区。百分比最好如此确定,包的第一分区包括至少一个第一原始包分区(例如首部)并且第一和第二分区的和包括至少第一原始包分区和第二原始包分区,并且考虑数据流的特性。
第二个主要问题是MPEG-4起始码对误差不稳定起始码中的一个误差可能引起遗漏检测,造成同步的丧失。为了处理这些问题,本发明提出了一些有益的解决方案。如果产生误差,有可能进行起始码仿真以及遗漏的检测。为了解决这一问题,提出了根据本发明的一个方面的起始码替换。
起始码替换在提出的方案中,起始码在用伪噪声字MPEG-4编码(见图3)后被替换,伪噪声字是具有高相关特性的序列(例如高德序列)。这些新的起始码用无线起始码表示。尤其是,对VO、VOL、VOP、GOV起始码执行替换并对再同步标记执行替换。图3示出了编码数据流S,包括标记H1...H5。这些标记用对信道误差具有高稳定性的标记WH1...WH5替换,以获得适于无线传输的数据流WS。数据流WS在接收机中接收成为数据流RS,它与WS相同但可能具有信道误差。标记WH1...WH5被接收为WH1R...WH5R。标记(字)WH1R...WH5R与WH1...WH5相同但可能具有信道误差。因为这些标记具有高相关特性,所以它们被识别为WH1...WH5,随后它们分别用与H1...H5相同的标记替换。图3中的数据流不包括GOV起始码(H3),认为是MPEG-4比特流。在MPEG-4比特流中早VOL起始码(H2)之后没有GOV起始码(H3),因为VOL起始码(H2)也表示GOV的开始。
在接收机一侧,在信道解码处理之前,这些无线起始码WH1...WH5的位置通过相关性被估算;在遗漏起始码的概率和起始码仿真的概率之间应当达到平衡,从而无线起始码长度和对相关性适当的阈值的选择被执行。因为检测被执行了,所以无线起始码WH1...WH5用来自原始的一组起始码的对应的起始码H1...H5代替。因此所述的替换对MPEG-4解码器(见图5)很明显。
在信道编码级,提出了按照本发明的一个有益的实施例起始码替换与成比例的不等误差保护(P-UEP)组合。
对于与帧一致的VOP的简化情况给出了有益的实施例的描述。在图4和5中虚线表示控制线。
图4示出了根据本发明的一个发射机,该发射机包括用于起始码H1...H5的检测的起始码检测器12。检测到的起始码由伪噪声字发生器13用对应的伪噪声字WH1...WH5替换。伪噪声字WH1...WH5提供给乘法器14,在将被发送的数据流WS中包括伪噪声字。
数据流S接收到包缓冲器10中。存在于标记H1...H5之间的数据流S的包在信道编码器11中被信道编码以获得信道编码的包。这些信道编码后的包被提供给乘法器并包含在将被发送的数据流WS中。发送的数据流提供给例如用于无线发送的天线或存储介质15。
图4中的信道编码用上述的P-UEP有利地执行,但是也可以另外使用其他信道编码装置。
图5示出了用于接收数据流WS的接收机3,数据流由根据图4的发射机发送。在起始码检测器32(例如伪噪声字检测器)中,在每个允许的伪噪声字(即来自预定的一组伪噪声字,对应于标记)和相关比特流部分之间执行相关性评价以检测表示起始码的伪噪声字。相关性与对应的阈值th相比较。当检测出伪噪声字时,比特流中的比特指示器移位适当的比特数,并且对应的MPEG-4起始码H1...H5由起始码发生器33提供,该起始码插入到乘法器34中,乘法器34的任务是安排比特流S′供给MPEG-4解码器。如果检测到起始码或VOP起始码,VOP指示器改变状态。
如果检测出再同步标记,包缓冲器30被初始化并且后来的比特填入缓冲器直到检测到下一个起始码。直到缓冲器包含N比特时才执行相关性比较,其中N是包的最小长度。当检测到下一个起始码时,缓冲器30包括一个包;在信道解码器31中,信道解码在缓冲器中的比特上执行,根据VOP指示器信息和包含在长度字段lf中的百分比(图6)或长度信息(图8)。用在该方案中的码率最好是固定的,用在信道编码器11中的码率也同样最好是固定的。在可变码率的情况下,码率不得不从发射机中的信道编码器11中接收。信道解码后的包插入到乘法器34中,它将比特流提供给MPEG-4解码器。注意如果使用RCPC码,则在解码之前执行解收缩(de-puncturing)。在这种情况下,接着包以母编码率解码。
尽管在图4和5中没有示出,但是数据流可以在由发射机中的调制器在传输之前被调制并接着在接收机中由解调器执行解码之前解调。
应当注意到上述实施例描述不是对发明的限制,并且本领域技术人员将能够在不脱离随附权利要求范围的情况下设计很多其它装置。在权利要求中,任何放在括号内的附图标记将不作为随权利要求的限制。“包括”一词不排除与权利要求中列出的不同的其它部件或步骤的存在。本发明能够用包括几个特殊部件的硬件或适当编程的计算机来完成。在列举了几个装置的设备权利要求中,这几个装置能够用一个装置来完成或是相同内容的硬件。某些措施在彼此不同的独立权利要求中叙述的事实不表示这些措施的组合不能被使用以获得优势。
总之,本发明提供了数据流的编码,其中数据流包括具有给定的包长度的至少一个包并且至少一个包的各个部分用不同的误差保护码率编码,各个分区的各个长度由包长度或包长度的比值的各个预定的百分数确定。
权利要求
1.一种编码数据流的方法,数据流包括具有给定包长度的至少一个包,该方法包括用不同的误差保护码率编码至少一个包的各个分区,其中各个分区的各个长度由包长度或包长度的比值的各个预定的百分数确定;以及输出具有用不同误差保护码率编码的至少一个数据包的各个分区的数据流。
2.如权利要求1所述的方法,其中给定包长度用数据流中两个标记之间的距离确定,其中所述两个标记中至少一个表示包开始。
3.如权利要求1所述的方法,其中各个预定的百分数这样确定,即包的第一分区包括至少一个原始包分区。
4.如权利要求3所述的方法,其中各个预定的百分数这样确定,即包的第一部分和包的第二部分的总和包括包的至少第一原始分区和第二原始分区。
5.一种解码数据流的方法,接收的数据流包括至少一个具有给定包长度的包,其中至少一个包的各个分区用不同的误差保护码率编码,其中各个分区的各个长度由包长度的各个预定的百分数确定,该方法包括用不同的误差保护码率解码各个包分区;输出具有用不同的误差保护码率解码的各个包分区的数据流。
6.一种用于编码数据流的编码器,数据流包括具有给定包长度的至少一个包,该编码器包括用于用不同的误差保护码率编码至少一个包的各个分区的装置,其中各个分区的各个长度由包长度或包长度的比值的各个预定的百分数确定;以及用于输出具有用不同误差保护码率编码的至少一个数据包的各个分区的数据流的装置。
7.一种用于解码数据流的解码器,接收的数据流包括至少一个具有给定包长度的包,其中至少一个包的各个分区用不同的误差保护码率编码,其中各个分区的各个长度由包长度的各个预定的百分数确定,该解码器包括用于用不同的误差保护码率解码各个包分区的装置;用于输出具有用不同的误差保护码率解码的各个包分区的数据流的装置。
8.一种用于发射数据流的发射机,该发射及包括一个如权利要求6所述的编码器;和用于发射数据流的天线装置。
9.一种用于数据流的接收机,该接收机包括用于接收数据流的天线装置;和如权利要求7所述的解码器。
10.一种数据流,包括具有给定的包长度的至少一个包并且至少一个包的各个部分用不同的误差保护码率编码,各个分区的各个长度由包长度或包长度的比值的各个预定的百分数确定。
11.一种存储介质,在该存储介质上已经存储了如权利要求10所述的数据流。
全文摘要
本发明提供了数据流的编码,其中数据流包括包括具有给定的包长度的至少一个包并且至少一个包的各个部分用不同的误差保护码率编码,各个分区的各个长度由包长度或包长度的比值的各个预定的百分数确定。
文档编号H04L1/00GK1386331SQ01802065
公开日2002年12月18日 申请日期2001年7月9日 优先权日2000年7月17日
发明者M·G·马蒂尼, M·基亚尼 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1