CN101754026B - 信息处理设备和方法 - Google Patents

信息处理设备和方法 Download PDF

Info

Publication number
CN101754026B
CN101754026B CN2009102583846A CN200910258384A CN101754026B CN 101754026 B CN101754026 B CN 101754026B CN 2009102583846 A CN2009102583846 A CN 2009102583846A CN 200910258384 A CN200910258384 A CN 200910258384A CN 101754026 B CN101754026 B CN 101754026B
Authority
CN
China
Prior art keywords
grade
data
block size
redundancy
coefficient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2009102583846A
Other languages
English (en)
Other versions
CN101754026A (zh
Inventor
久礼嘉伸
福原隆浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN101754026A publication Critical patent/CN101754026A/zh
Application granted granted Critical
Publication of CN101754026B publication Critical patent/CN101754026B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/007Unequal error protection
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/353Adaptation to the channel
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/373Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6547TCP, UDP, IP and associated protocols, e.g. RTP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0086Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/647Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]

Abstract

本发明公开了一种信息处理设备,其包括:编码机构,用于从图像数据中产生以关于分辨率的重要性的降序次序所分级的分级数据,并且针对每一等级而对分级数据进行编码;以及冗余编码机构,用于基于编码机构所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,使用为每一等级所确定的块大小而针对每一等级将分级数据进行分块,并针对每个块执行冗余编码以产生分级数据的冗余数据。

Description

信息处理设备和方法
技术领域
本发明涉及信息处理设备和方法。更具体地说,本发明涉及使得可以在抑制数据传输中不必要延迟的增大的同时改进突发-分组-丢失弹性(burst-packet-loss resilient)的信息处理设备和方法。
背景技术
近年来,存在通过因特网或其他传输线以低延迟传送多媒体数据的不断增长的需求。例如,提供了所谓的远程医疗操作应用。在远程医疗操作中,两个遥远地点的医疗中心通过因特网等连接,通过视频将在远程操作室中之一的操作场景传送到远程操作室中的另一个,并且在观看视频的同时,在另一个远程操作室操作外科工具。在这样的应用中,要求视频传输具有不超过几帧间隔的延迟。
为了满足这样的要求,已经做出了如下方法的提议(例如,日本待审查专利申请公开No.2007-311924),该方法用于将视频的每一画面的每几行(line)作为一个压缩编码块来处理,并通过小波变换而对所述块执行压缩编码。在该方法中,编码设备可以在输入画面中的所有数据之前开始压缩编码。并且,如果通过网络传送压缩数据,并且在接收侧解码压缩数据,则解码器可以在接收画面中的所有数据之前开始解码处理。因此,如果网络传播延迟足够小,则变得可以以一帧间隔或更少的延迟传送实时视频。
适于此实时传输的因特网技术包括RTP(实时传输协议),其由IETF(因特网工程任务组)的RFC(请求注解,Request for Comments)3550定义。在RTP的数据传送中,将时间戳作为时间信息添加到分组(packet),由此获得传输侧与接收侧之间的时间关系。以这种方式,变得可以再现同步的数据,而没有分组传送的延迟波动(抖动)的影响。
在这一点上,RTP不保证实时数据传送。由RTP提供的传输服务不包括设置分组发送、管理等的优先级。因此,以与其它协议的分组相同的方式,在RTP分组中可能出现发送延迟和分组丢失。
然而,即使存在一些数据丢失,也仅恶化了数据质量,并且可以仅使用在期望时间段中到达的分组来在接收侧再现数据。在这一点上,在接收侧直接丢弃以延迟发送的分组和具有错误的分组。
以这种方式,在网络传输的情况下,即使发送高质量数据,由于分组丢失和错误,在接收侧也可能不能完全再现数据。一般而言,在有线部分中错误出现的概率是10-5或更多,而在无线部分中是10-3或更多。因此,不可能充分地维持将要使用RTP发送的媒体的质量而不改变。
作为使用另一协议的方法,考虑采用关于使用在数据传送中具有高可靠性的TCP(传输控制协议)的方法。然而,尽管TCP对抗错误是有弹性的,但是TCP具有低吞吐量和大延迟,由此TCP不适于低延迟数据传输。例如,如果接收侧在错误出现时要求分组重新传输,则重新传送的分组可能不能及时到达以用于分组的再现。
因此,作为改进使用RTP的数据传输可靠性的方法,存在前向纠错方法(即,FEC(前向纠错,Forward Error Correction)),其对数据执行冗余编码。(例如,Alexander E.Mohr,Student Member,IEEE,Eve A.Riskin,SeniorMember,IEEE,and Richard E.Ladner,Member,IEEE,″Unequal Loss Protection:Graceful Degradation of Image Quality over Packet Erasure Channels ThroughForward Error Correction″IEEE JOURNAL ON SELECTED AREAS INCOMMUNICATIONS,VOL.18,NO.6,pp819-828,JUNE 2000)。在FEC方法中,将多个分组集合为一个FEC块,并使用纠错码(如RS(Reed-Solomon)码等)等执行冗余编码。例如,在使用(n,k)RS码的情况下,假设原始分组的数目是k,则可以产生n-k个冗余分组(n>k)。在这种情况下,如果传输设备共计传送n个分组,并且接收设备接收n个分组之中的k个分组,则通过RS解码处理可以恢复k个原始分组。例如,在上述非专利文档中描述了根据优先级的冗余编码方法。
当使用FEC方法执行冗余编码时,从分组丢失的恢复性能取决于FEC块大小和冗余分组的数目(n-k)。特别地,从通过网络的数据传输期间出现的数据序列上的连续分组丢失(即,突发分组丢失)的恢复性能与FEC块大小具有很强的关系。一般而言,FEC块大小越大,则从突发分组丢失恢复性能提高得越多。
发明内容
然而,在FEC方法的情况下,变得必须具有用于对块大小的数据进行存储的时间,以便执行FEC编码处理和解码处理。因此,如果FEC块大小被确定为很大,则延迟时间可能显著地增大。以另一方式对其进行表述,在要求具有低延迟的数据传输时,可能难以通过FEC方法来充分地提高关于突发分组丢失的恢复性能。
本发明致力于解决上述和其他问题。期望通过根据关于输入数据的视频压缩数据的相关范围调整FEC块大小,而在维持关于突发分组丢失的恢复性能的同时来通过FEC处理将延迟最小化。
根据本发明的实施例,提供了一种信息处理设备,包括:编码部件,其用于从图像数据中产生以关于分辨率的重要性的降序次序所分级的分级数据,并且针对每一等级而对分级数据进行编码;以及冗余编码部件,其用于基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,使用为每一等级所确定的块大小而针对每一等级将分级数据进行分块,并针对每个块执行冗余编码以产生分级数据的冗余数据。
在上述实施例中,信息处理设备可以进一步包括:块大小确定部件,其用于基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,为每一等级确定块大小,其中,所述冗余编码部件通过使用所述块大小确定部件所确定的块大小而针对每一等级来对分级数据执行分块,并针对每个块执行冗余编码以产生分级数据的冗余数据。
随着等级在等级的依赖性中具有更宽范围的依赖性,所述块大小确定部件可以将块大小设置为更大的值。
在上述实施例中,信息处理设备可以进一步包括冗余确定部件,其用于基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,为每一等级确定冗余编码的冗余,其中,所述冗余编码部件通过使用所述块大小确定部件所确定的块大小,针对每一等级而对分级数据执行分块,并针对每个块通过使用所述冗余确定部件所确定的冗余来执行冗余编码以产生分级数据的冗余数据。
在上述实施例中,信息处理设备可以进一步包括:传输部件,其用于通过网络而将已经经历了所述冗余编码部件的冗余编码的分级数据的分组以及冗余数据的分组传送到另一信息处理设备;以及传播延迟计算部件,其用于计算在预定时间段中网络的传播延迟的平均值,其中,所述块大小确定部件除了基于等级的依赖性之外,还基于所述传播延迟计算部件所计算出的传播延迟的平均值,来为每一等级确定块大小。
在上述实施例中,信息处理设备可以进一步包括:传输部件,其用于通过网络而将已经经历了所述冗余编码部件的冗余编码的分级数据的分组以及冗余数据的分组传送到另一信息处理设备;以及最大传播延迟计算部件,其用于计算在预定时间段中传播延迟的最大值,其中,所述块大小确定部件除了基于等级的依赖性之外,还基于所述最大传播延迟计算部件所计算出的传播延迟的最大值,来为每一等级确定块大小。
所述编码部件可以产生以关于SNR(信噪比)、空间分辨率或时间方向分辨率的重要性的降序次序所分级的分级数据,并针对每一等级而对分级数据进行编码。
所述编码部件可以递归地重复关于图像数据或分级数据到多个子带的划分处理,以便为多个分级的子带中的每一个产生分级数据,并针对每一等级而对分级数据进行编码。
根据本发明的另一个实施例,提供了一种在处理图像数据的信息处理设备中处理信息的方法,所述方法包括如下步骤:通过编码部件而从图像数据中产生以关于分辨率的重要性的降序次序所分级的分级数据,并且针对每一等级而对分级数据进行编码;以及通过冗余编码部件而基于分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,使用为每一等级所确定的块大小来针对每一等级将分级数据进行分块,并针对每个块执行冗余编码以产生分级数据的冗余数据。
通过本发明的实施例,产生了以关于分辨率的重要性的降序次序所分级的分级数据,并且针对每一等级而对分级数据编码,基于分级数据的各片段之间的等级的依赖性或者分级数据与图像数据之间的等级的依赖性,使用为每一等级所确定的块大小来针对每一等级将分级数据进行分块,并为每个块产生分级数据的冗余数据。
通过本发明,可以在抑制不必要延迟的增大的同时来传送数据以便提高突发分组丢失弹性。
附图说明
图1是图示应用了本发明的网络系统的主要配置的示例的框图;
图2是图示视频压缩编码部分的配置的示例的框图;
图3是图示分解滤波(analysis filtering)的概况的图;
图4是图示了分解滤波的概况的图3的后续图;
图5是图示行块(line block)的图;
图6是图示9×7滤波器的示例的图;
图7是图示提升操作(lifting operation)的示例的图;
图8是图示提升操作的示例的图;
图9是图示提升操作的示例的图;
图10是图示视频扩展编码部分的配置的示例的框图;
图11是图示9×7滤波器的示例的图;
图12是图示提升操作的示例的图;
图13是图示提升操作的示例的图;
图14是图示压缩编码处理和扩展解码处理的状态的图;
图15是图示由网络系统的各个部分执行的处理的概况的图;
图16是图示传输设备的主要配置的示例的框图;
图17是图示传输处理的流程的示例的流程图;
图18是图示块大小和冗余确定处理的流程的示例的流程图;
图19是图示冗余编码处理的示例的流程图;
图20图示冗余解码处理的示例的流程图;
图21是图示传输设备的主要配置的示例的框图;
图22是图示传输设备的主要配置的配置的示例的框图;
图23是图示块大小和冗余确定处理的流程的示例的流程图;
图24是图示应用了本发明的网络系统的主要配置的示例的框图;
图25是图示传输设备的主要配置的示例的框图;
图26是图示传输处理的流程的示例的流程图;
图27是图示块大小和冗余确定处理的流程的示例的流程图;
图28是图示传输设备的主要配置的示例的框图;
图29是图示块大小和冗余确定处理的流程的示例的流程图;
图30是图示传输设备的主要配置的示例的框图;
图31是图示传输处理的流程的示例的流程图;以及
图32是图示应用了本发明的个人计算机的主要配置的示例的框图。
具体实施方式
在下文中,将给出本发明的实施例的描述。在这一点上,将以如下顺序给出描述。
1.第一实施例(网络系统:根据等级控制FEC块大小和冗余的示例)
2.第二实施例(传输设备:预先存储FEC块大小和冗余的示例)
3.第三实施例(传输设备:为每一等级设置目标FEC-块-丢失率的示例)
4.第四实施例(网络系统:使用RTCP在FEC块大小和冗余的设置上反映网络状态信息的示例)
5.第五实施例(传输设备:计算最大往返延迟时间的示例)
6.第六实施例(传输设备:选择FEC编码控制方法的示例)
1.第一实施例
网络系统配置的示例
图1是图示应用了本发明的网络系统的主要配置的示例的框图。参照图1,网络系统100是传输设备101和接收设备102通过网络110而连接的系统。网络系统100是用于通过网络110而从传输设备101向接收设备102传送图像数据(视频或静态图像数据)的系统。在下文中,为了说明的方便起见,将给出对于传送视频数据的情况的描述。然而,以下说明还可以应用于静态图像数据的传输。将视频认为是一组帧图像或场图像,也就是说,一组静态图像。因此,对于网络系统100来说,可以通过执行与传送视频数据的情况(其将在下文中描述)基本上相同的处理来传送静态图像数据。
传输设备101对输入的视频数据(视频IN)执行编码,对数据进行分组化,并通过网络110将分组传送到接收设备102。如图1所示,传输设备101具有冗余编码控制部分121、视频压缩编码部分122、冗余编码部分123和RTP传输部分124。
冗余编码控制部分121确定由冗余编码部分123执行的冗余编码的块大小和冗余。视频压缩编码部分122对输入到传输设备101的视频数据(视频IN)执行压缩编码,并将产生的编码信号提供到冗余编码部分123。
冗余编码部分123对从视频压缩编码部分122提供的编码数据执行冗余编码。冗余编码部分123使用由冗余编码控制部分121确定的块大小对编码数据执行分块(blocking)。冗余编码部分123对每个块的编码数据执行RTP分组化。冗余编码部分123以冗余编码控制部分121确定的冗余来产生冗余数据(冗余分组)。冗余编码部分123将产生的RTP分组提供到RTP传输部分124。
RTP传输部分124通过网络110将所提供的RTP分组传送到接收设备102。
接收设备102接收经由网络110从传输设备101传送的RTP分组,并执行去分组化、冗余解码和扩展解码,以产生视频数据,并输出该数据。如图1所示,接收设备102具有RTP接收部分131、冗余解码部分132和视频扩展解码部分133。
RTP接收部分131接收传送到接收设备102的RTP分组,并将所述分组提供到冗余解码部分132。冗余解码部分132通过与冗余编码部分123的冗余编码方法对应的解码方法,对所提供的RTP分组执行冗余解码。如果存在丢失,则冗余解码部分132使用冗余数据来恢复原始分组,并提取编码的数据。冗余解码部分132将获得的编码数据提供到视频扩展解码部分133。视频扩展解码部分133通过与视频压缩编码部分122的压缩编码方法对应的方法,对编码数据执行扩展解码以产生基带视频数据。视频扩展解码部分133输出来自接收设备102的所产生视频数据。
视频压缩编码和扩展解码的描述
接着,将给出分别由视频压缩编码部分122和视频扩展解码部分133执行的视频压缩编码和扩展解码的示例的描述。
图2是图示视频压缩编码部分122的详细配置的示例的框图。视频压缩编码部分122以关于分辨率的重要性的降序顺序来分级图像数据,并执行对每一等级进行编码的分级编码。例如,视频压缩编码部分122产生以关于空间分辨率的重要性的降序顺序所分级的分级数据。并且,例如,视频压缩编码部分122产生以关于时间方向分辨率的重要性的降序顺序所分级的分级数据。进一步,例如,视频压缩编码部分122产生以关于SNS(信噪比)的重要性的降序顺序所分级的分级数据。视频压缩编码部分122对以这种方式为每一等级产生的分级数据执行编码。
作为这样的分级编码,例如提供了将视频数据的每一画面经历小波变换和熵编码的JPEG(联合图像专家组)2000系统。在该系统中,使用分级编码的任意方法。在下文中,将给出视频压缩编码部分122对每一多行的视频数据执行小波变换并执行熵编码的情况的描述。
如图2所述,视频压缩编码部分122具有小波变换部分151、量化部分152、熵编码部分153和比率控制部分154。小波变换部分151对每一多行的视频数据的每一画面执行小波变换。
小波变换是执行分解滤波处理的处理,其在屏幕的水平方向和垂直方向二者中,将输入数据划分为低频分量和高频分量。也就是说,通过小波变换处理,将输入数据划分为四个分量(子带),即:在水平方向和垂直方向二者中具有低频的分量(LL分量)、在水平方向中具有高频且在垂直方向中具有低频的分量(HL分量)、在水平方向中具有低频且在垂直方向中具有高频的分量(LH分量)、以及在水平方向和垂直方向二者中具有高频的分量(HH分量)。
小波变换部分151对通过分解滤波处理获得的、在水平方向和垂直方向二者中具有低频的分量(LL分量)递归地执行这种小波变换预定次数。也就是说,通过小波变换,将视频数据的每一画面划分为多个分级子带(频率分量)(产生分级数据)。熵编码部分153对每一个子带执行编码。
顺次通过从上到下的每一行将视频的每一画面的图像数据输入到小波变换部分151。并且,顺次通过图像的从左向右的一个采样(一列)输入每一行的图像数据。
小波变换部分151每当输入了能够经历分解滤波的采样数目的数据时(一接收到输入就),对以这样的方式输入的图像数据执行图像的水平方向中的分解滤波(水平分解滤波)。例如,小波变换部分151每当输入了M列数据时,对图3中左侧所示的基带图像数据161执行水平分解滤波,并对于水平方向中的每一行将数据划分为低频分量(L)和高频分量(H)。图3中右侧所示的水平滤波器处理结果162指示由小波变换部分151所划分的、对于水平方向中N行的低频分量(L)和高频分量(H)。
接下来,小波变换部分151对水平滤波器处理结果162的每一分量执行垂直方向中的分解滤波(垂直分解滤波)。当小波变换部分151通过水平分解滤波产生垂直滤波所需的系数时,小波变换部分151对每一列的垂直滤波所需的系数执行垂直分解滤波。
结果,如图4中左侧所示,将水平滤波器处理结果162划分为四个分量(即:在水平方向和垂直方向二者中具有低频的分量(LL分量)、在水平方向中具有高频且在垂直方向中具有低频的分量(HL分量)、在水平方向中具有低频且在垂直方向中具有高频的分量(LH分量)、以及在水平方向和垂直方向二者中具有高频的分量(HH分量))(分级数据163)的小波变换系数(在下文中,称为系数)。
将所获得的分解滤波的结果中的HL分量、LH分量和HH分量输出到外部,直到获得预定等级(划分级别)的系数为止。通过小波变换部分151将剩余的LL分量再次经历分解滤波。也就是说,例如,将在图4中左侧所示的分级数据163转换为图4中右侧所示的分级数据164。在分级数据164中,从LL分量产生四个分量,即:LLLL分量、LLHL分量、LLLH分量和LLHH分量。
小波变换部分151对视频数据递归地执行这种分解滤波预定次数,以产生所分级直到期望的划分级别的分级数据。图5是图示分级直到划分级别3(第三等级)的分级数据的示例的图。在图5中,被划分直到划分级别3(第三等级)的分级数据165包括划分级别1(等级编号3)(3HL分量、3LH分量和3HH分量)、划分级别2(等级编号2)(2HL分量、2LH分量和2HH分量)和划分级别3(等级编号1)(1HL分量、1LH分量和1HH分量)的各个子带。
在小波变换处理中,每当重复滤波处理时(每当等级变得更低一级时),产生的行数变小了两次的幂的倒数。由滤波处理的重复数目来确定产生最终划分等级(等级编号1)的一行系数所需的基带行数。通常,预先确定等级数。
产生一行最终划分等级系数或各个等级的全部系数所需的基带图像数据(多行的图像数据)被称为区域(precinct)(或行块)。
在图5中,阴影部分是形成一个区域的系数。如图5中所示,所述区域包括等级编号1的各个分量的一行系数、等级编号2的各个分量的两行系数以及等级编号3的各个分量的四行系数。在这一点上,在此示例中,也将与这些对应的分解滤波之前的图像数据(也就是说,8行图像数据)称作区域(或行块)。
接着,将给出上述分解滤波中的计算方法的具体描述。分解滤波中最普通的计算方法是称为卷积计算的方法。卷积计算是实现数字滤波器的最基本的方式,并且是实际输入数据和滤波器的抽头(tap)系数的卷积乘法。然而,在卷积计算中,如果抽头长度很大,则计算负荷可能增大那么多的量。
作为解决该问题的方法,存在与小波变换有关的著名的提升(lifting)技术,论文″W.Swelden,″The lifting scheme:A custom-design construction ofBiorhtogonal wavelets″,Applied and Computational Harmonic Analysis,vol3,no.2,pp.186-200,1996″对该技术进行了介绍。
图6图示了同样由JPEG2000标准采用的9×7分解滤波器的提升结构。将给出当将提升技术应用于9×7分解滤波器时的分解滤波的描述。
在图6的示例中,第一级(最高级)示出了输入图像的采样组(像素列),第二级和第三级示出了分别在级A1和A2的处理中产生的分量(系数)。并且,第四级示出了由级A3中的处理所产生的高频分量输出,第五级示出了由级A4中的处理所产生的低频分量输出。最高级不限于输入图像的采样组,而可以是通过现有分解滤波所获得的系数。这里,假设最高级是输入图像的采样组,方块标记(■)是偶数编号的采样或行,而圆圈标记(●)是奇数编号的采样或行。
在将提升技术应用于9×7分解滤波器的分解滤波中,通过级A3的处理获得高频分量,通过级A4的处理获得低频分量。在这一点上,由下列表达式(1)~(4)来表示级A1~A4的处理。
级A1:di 1=di 0+α(si 0+si+1 0)    ...(1)
级A2:si 1=si 0+β(di-1 1+di 1)    ...(2)
级A3:di 2=di 1+γ(si 1+si+1 1)    ...(3)
级A4:si 2=si 1+δ(di-1 2+di 2)    ...(4)
(α=-1.586134342,β=-0.05298011857,γ=0.8829110755,δ=0.4435068520)
以这种方式,在应用了提升技术的分解滤波中,执行级A1和A2的处理,在级A3中产生高频分量的系数,然后在级A4中产生低频分量的系数。可以仅通过如表达式(1)~(4)中所示的加法和移位运算来实现此时使用的滤波器组。因此,可以显著地降低计算量。由此,如下所述,将提升技术应用于水平分解滤波和垂直分解滤波。
首先,将给出水平分解滤波的处理的具体描述。图7图示了通过图6中的提升结构执行水平分解滤波的情况的示例。
图7中的示例图示了如下的情况:将输入的水平方向系数经历图6中的上述四个级(级A1~A4)的处理,然后产生高频分量系数(在下文中,称为高频系数)和低频分量系数(在下文中,称为低频系数)。在图中,提升级的方向从上向下。并且,在水平方向系数的上方示出的编号表示列编号。
进一步,从上方起的第一级的圆圈和方块分别表示输入的高频系数和低频系数。并且第二级和随后级的圆圈和方块表示在提升操作的处理中产生的高频系数和低频系数。在这些之中,阴影的圆圈和方块分别表示作为提升操作的结果的高频系数和低频系数。
在下文中,将给出从上方起顺次的操作的描述。图7中上面的级图示了如下情况的示例,所述情况为:输入三列(水平方向中列编号4~6)的系数,并执行水平方向提升结构进行的操作(在下文中,称为“水平提升操作”)。
为了获得水平提升操作的级A3中的第一高频系数,并且为了获得级A4中的第一低频系数,必须输入四列(列编号0~4)系数。
此后,为了获得第二高频系数和低频系数,由粗实线所表示的三个系数以及由带圈的编号所表示的两列(列编号5和6)的系数是必需的。进一步,为了计算级A2中由P1所表示的系数,由带圈的编号所表示的列编号4的系数也是必需的。
由粗实线所表示的三个系数是在用于获取第一高频系数和低频系数的水平提升操作(在下文中,也称为“第一水平提升操作”)的处理中所产生的系数的一部分。
也就是说,为了获得第二高频系数和低频系数,仍然必须输入由带圈的编号所表示的三列(列编号4~6)的系数。进一步,必须锁存(latch)在第一水平提升操作的处理中所产生的、由粗实线表示的这三个系数,作为用于中途计算的系数。实际上,需要三个那么少的系数,由此可以使用小容量存储区域(如触发器)来对其进行保存。
因此,使用在第一水平提升操作中锁存的、由粗实线示出的三个系数以及三个输入列(即,列编号4~6)的系数来执行水平提升操作。由此,在操作处理结束处,产生包括第二高频系数和低频系数在内的四个系数(由粗虚线所示)。在这些之中,点划线所示出的三个系数是用于获取第三高频系数和低频系数所需的系数,由此通过用于中途计算系数的内部触发器来对其进行锁存。
图7的下面的级中示出了如下情况的示例,所述情况为:在输入了列编号6的系数之后,在水平方向中另外地输入了两列的系数,也就是说,在水平方向中输入了三列(列编号6~8)的系数,并且执行水平提升操作。
以与第二情况相同的方式,为了获得第三高频系数和低频系数,必须具有粗实线所示的三个系数以及由带圈的编号所示的两列(列编号7和8)的系数。进一步,为了计算级A2中由P2所示的系数,必须具有由带圈的编号所示的列编号6的系数。
在这一点上,通过如在上面的级中的点划线所示的第二水平提升操作,在触发器中锁存在下面的级中由粗实线所示的三个系数。
因此,使用在第二水平提升操作中锁存的、由粗实线所示的三个系数以及列编号6~8的三个输入列的系数来执行水平提升操作。由此,产生了包括第三高频系数和低频系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线所示的三个系数是用于获取第四高频系数和低频系数所需的系数,由此通过用于中途计算系数的内部触发器来对其进行锁存。
如上所述,在顺次输入三列的系数并保存用于中途操作的三个系数的同时,执行水平提升操作直到屏幕的最右边的列为止。由此,完成了水平方向分解滤波。
在这一点上,在上文中,已经给出了通过提升结构对于一行的水平分解滤波的示例的描述。参照图8,将给出在通过上述操作从上向下顺次输入一行系数的同时,通过提升结构的水平分解滤波的操作的描述。在这一点上,在图8中,以相同的方式在图中示出与图6和图7对应的系数,由此省略其详细描述。
在图8的左侧,示出了对每一输入行执行水平提升操作的示例。在右侧,示意性地示出了对在垂直方向中从上向下顺次延伸的每一输入行的水平提升操作的结果系数执行垂直提升操作的示例。
将顺次给出从左侧起的图的描述。对在开始输入行-0中的系数执行包括四级的水平提升操作,由此产生具有编号1~11的低频系数和高频系数。在这些之中,具有奇数编号(1、3、5、7、9、11)的系数是低频系数,而具有偶数编号(2、4、6、8、10)的系数是高频系数。
在图中仅示出了输入行(行-1),但可以同样地应用于输入行行-1~行-n。也就是说,对开始的输入行,行-1执行包括四级的水平提升操作,由此产生具有编号1~11的低频系数和高频系数。在这些之中,具有奇数编号(1、3、5、7、9、11)的系数是低频系数,而具有偶数编号(2、4、6、8、10)的系数是高频系数。
并且,如图8的右侧所示,在从顶部起的且从前到后的第一级上,在水平方向排列中延伸着输入行(行-0)的水平滤波的具有编号1~11的结果系数。从第二级且从前到后的第一级上,在水平方向排列中延伸着输入行(行-1)的水平滤波的具有编号1~11的结果系数。在从顶部起的且从前到后的第三级上,在水平方向排列中延伸着输入行(行-2)的水平滤波的结果系数。
如上所述,如图8的右侧所示,在垂直方向中从上到下顺次延伸对于每一输入行(行-0~行-n)的水平提升的结果系数。在这一点上,在实际中,在水平方向中从前到后交替地排列每一输入行的水平滤波的具有编号1~11的结果的低频和高频系数。
一旦收集了垂直方向中的预定数目的系数,也就是说,收集了预定行数,如右侧的提升级方向所示,则从左到右执行提升结构在垂直方向中的操作(也就是说,垂直提升操作)。
接着,将给出垂直分解滤波的具体描述。图9图示了通过图6中的提升结构执行垂直分解滤波的情况的示例。
在这一点上,将注意力集中在图8的右侧示意性地示出的、以水平方向延伸和排列的一个系数。在实际的二维小波变换中,很明显,对于在小波变换的处理中产生的频率分量(子带)的水平方向中的系数的数目来说,垂直方向中的分解滤波的计算变得是必需的。
在图9中,示出了如下情况的示例,所述情况为:垂直方向系数经历参照图6所述的四级(级A1~A4)的处理,并且产生高频系数和低频系数。在图中,提升级方向从左到右。并且,在垂直方向系数的左侧示出的编号表示行编号。
进一步,从左侧起第一列的圆圈和方块分别表示输入的高频系数和低频系数。并且第二列和随后列的圆圈和方块表示在提升操作的处理中产生的高频系数和低频系数。在这些之中,阴影的圆圈和方块分别表示作为提升操作的结果的高频系数和低频系数。
在下文中,将给出从左侧起顺次的操作的描述。图9的左侧图示了如下情况的示例,所述情况为:输入垂直方向中的三行(行编号4~6)的系数,并执行垂直方向提升结构的操作。
为了获得垂直提升操作的级A3的第一高频系数,并且为了获得级A4中的第一低频系数,必须输入四行(行编号0~4)系数。
此后,为了获得第二高频系数和低频系数,由粗实线表示的三个系数和由带圈的编号表示的两行(行编号5和6)的系数是必需的。进一步,为了计算在级A2中由P1表示的系数,由带圈的编号所表示的行编号4的系数也是必需的。
由粗实线表示的三个系数是在用于获取第一高频系数和低频系数的垂直提升操作(在下文中,也称为“第一垂直提升操作”)的处理中所产生的系数的一部分。
也就是说,为了获得第二高频系数和低频系数,仍然必须输入由带圈的编号所表示的三行(行编号4~6)的系数。进一步,必须具有在第一垂直提升操作的处理中产生的、由粗实线表示的三个系数。小波变换部分151将所述三个系数存储为用于中途计算的系数。
因此,使用在第一垂直提升操作中存储的、由粗实线示出的三个系数以及从对应级别的缓冲器读取并输入的三行(即,行编号4~6)的系数来执行垂直提升操作。由此,获得包括第二高频系数和低频系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线示出的三个系数是获取第三高频系数和低频系数所需的系数,并且由此对其进行存储。
图9的右侧示出了如下情况的示例,所述情况为:在输入行编号6的系数之后,在垂直方向中另外地输入两行的系数,也就是说,在垂直方向中输入三行(行编号6~8)的系数,并且执行垂直提升操作。
以与第二情况相同的方式,为了获得第三高频系数和低频系数,必须具有粗实线所示的三个系数以及由带圈的编号所示的两行(行编号7和8)的系数。进一步,为了计算在级A2中由P2所示的系数,必须具有由带圈的编号所示的行编号6的系数。
在这一点上,通过如在左侧的点划线所示的第二垂直提升操作来存储在右侧由粗实线所示的三个系数。因此,使用在第二垂直提升操作中存储的、由粗实线所示的三个系数以及从对应级别的缓冲器读取并输入的列编号6~8的三个输入列的系数来执行垂直提升操作。由此,产生包括第三高频系数和低频系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线示出的三个系数是获取第四高频系数和低频系数所需的系数,并且由此对其进行存储。
如上所述,在输入三列的系数并保存用于中途操作的三个系数的同时,执行垂直提升操作直到最下面的行为止。由此,完成了垂直方向分解滤波。
返回参照图2,量化部分152通过以量化级大小划分从小波变换部分151产生的各个分量的系数来执行量化,以便例如产生量化系数。此时,量化部分152可以为每一区域(行块)设置量化级大小。该区域包括某一图像区域的所有频率分量(在图5的情况下,10个频率分量,从1LL~3HH),并且由此如果对每一区域执行量化,则可以利用多分辨率分解(其为小波变换的特征)的优点。并且,在所有屏幕中仅应该确定区域的数目,并且由此可以将量化的负荷保持较小。
进一步,一般而言,图像信号的能量集中在低频分量中。并且,人类视觉感觉具有这样的特性:低频分量的恶化被更明显地察觉。因此,使用加权以使得在量化的时候低频分量的子带中量化级大小变小这样是有效的。通过该加权,将相对大量的信息分配给低频分量,并且由此提高了整体主观图像质量。
熵编码部分153对量化部分152产生的量化系数执行源编码,以产生压缩的编码的码流。对于源编码,例如,可以使用在JPEG系统和MPEG(运动图像专家组)系统中使用的Huffman编码或者在JPEG 2000系统中使用的更高精度的算术编码。
这里,在系数的什么范围中执行熵编码变为与压缩效率直接相关的重要因素。例如,在JPEG系统和MPEG系统中,对8×8个块执行DCT(离散余弦变换),并且对64个产生的DCT变换系数执行Huffman编码,由此压缩信息。也就是说,64个DCT变换系数变为熵编码的范围。
不同于对8×8个块执行的DCT,小波变换部分151对每一行执行小波变换,由此熵编码部分153对于每一频带(子带)以及每一频带中的每P行,独立地执行源编码。
P具有一行的最小值。如果行数较小,则参考信息可以很少,并且由此可以减小存储器容量。相反,如果行数很大,则信息量增大了同样多,由此可以增大编码效率。然而,如果P变为比每一频带中行块的行数更高的值,则变得必须具有下一行块的行。因此,必须等待直到通过小波变换和量化而产生行块的量化系数数据为止,并且由此该时间段变为延迟时间。
因此,为了具有低延迟,P必须等于行块中的行数或更小。例如,在图5的示例中,对于1LL、1HL、1LH和1HH的频带,行块中的行数=1,由此P=1。并且,对于2HL、2LH和2HH的子带,行块中的行数=2,由此P=1或2。
比率控制部分154控制以将比率调节为最终目标比特率或压缩率,并将比率控制之后的经编码的码流输出到外部。例如,比率控制部分154将控制信号传送到量化部分152以便降低量化级大小从而增大比特率,以及增大量化级大小从而降低比特率。
接着,将给出对已经经历了如上所述的压缩编码的经编码的数据进行扩展解码的方法的描述。图10是图示视频扩展解码部分133的配置的示例的框图。在图10中,视频扩展解码部分133包括熵解码部分171、反向量化部分172和反向小波变换部分173。
熵解码部分171对输入编码数据执行源解码,并产生量化系数数据。对于源解码,与视频压缩编码部分122的源编码对应地,可以使用Huffman解码、高效算术解码等。在这一点上,如果视频压缩编码部分122对每P行执行源编码,则熵解码部分171类似地对每一子带和对每一子带中的每P行独立地执行源解码。
反向量化部分172通过将量化系数数据与量化级大小相乘来执行反向量化以产生系数数据。该量化级大小通常在经编码的码流的头部中描述。在这一点上,如果在视频压缩编码部分122中为每一行块设置量化级大小,则对于反向量化来说,在反向量化部分172中,为每一行类似地设置反向量化级大小。
反向小波变换部分173执行小波变换部分151的反向处理。也就是说,反向小波变换部分173执行滤波器处理(合成滤波器处理),所述处理在水平方向和垂直方向二者中,关于已经由小波变换部分151划分为多个频带的系数数据合成低频分量和高频分量。
响应于应用了上述提升技术的分解滤波,由于可以有效地执行滤波,因此期望在反向小波变换的合成滤波中类似地使用提升技术。
图11图示了同样由JPEG2000标准采用的9×7分解滤波器的提升结构。将给出当将提升技术应用于9×7分解滤波器时的合成滤波的描述。
在图11的示例中,第一级(最高级)示出了通过小波变换所产生的系数,圆圈标记(●)表示高频分量的系数,而方块标记(■)表示低频分量的系数。第二级和第三级示出了分别在级B 1和B2的处理中所产生的分量(系数)。并且,第四级示出了通过在级B3的处理而产生的偶数编号的分量输出,并且第五级示出了通过在级B4的处理而产生的奇数编号的分量输出。
在将提升技术应用于9×7分解滤波器的合成滤波中,通过级B3的处理而获得偶数编号的分量,并通过级B4的处理而获得奇数编号的分量。在这一点上,由如下表达式(5)~(8)来表示级B1~B4的处理。
级B1:si 1=si 2-δ(di-1 2+di 2)     ...(5)
级B2:di 1=di 2-γ(si 1+si+1 1)    ...(6)
级B3:si 0=si 1-β(di-1 1+di 1)     ...(7)
级B4:di 2=di 1-α(si 0+si+1 0)     ...(8)
(α=-1.586134342,β=-0.05298011857,γ=0.8829110755,δ=0.4435068520)
以这种方式,在应用了提升技术的分合成滤波中,执行级B1和B2的处理,在级B3产生偶数编号的分量的系数,然后在级B4产生奇数编号的分量的系数。仅通过表达式(5)~(8)所示的除法和移位运算就可以实现此时使用的滤波器组。
因此,如下所述,在反向小波变换部分173中,同样将提升技术应用于图像垂直方向中的合成滤波(垂直合成滤波)和图像水平方向中的合成滤波(水平合成滤波)。在这一点上,仅待使用的表达式不同。垂直合成滤波基本上执行与参照图6所述的垂直分解滤波的操作相同的操作,并且水平合成滤波基本上执行与参照图7所述的水平分解滤波的操作相同的操作。
首先,将给出垂直合成滤波的处理的具体描述。图12图示了如下情况的示例,所述情况为:通过图11中的提升结构对一组垂直方向系数执行水平合成滤波。
图12中的示例图示了如下的情况:垂直方向系数经历图11中的上述四级(级B1~B4)的处理,然后产生偶数编号次序的系数(在下文中,称为偶数编号系数)和奇数编号次序的系数(在下文中,称为奇数编号系数)。在图中,提升级的方向从左到右。
并且,在垂直方向系数的上方示出的编号表示行号。从左侧起第一列的阴影的圆圈和方块分别表示高频输入和低频输入。进一步,第二列和随后列的圆圈和方块表示在提升操作的处理中产生的高频系数和低频系数。在这些之中,黑色圆圈和黑色方块分别表示作为提升操作的结果的奇数编号的系数和偶数编号的系数。
在下文中,将给出从左侧起顺次的操作的描述。图12的左侧图示了如下情况的示例,所述情况为:输入垂直方向中的三行(行编号4~6)的系数,并执行通过垂直方向提升结构的操作(即,垂直提升操作)。在这一点上,在这种情况下,在最上面的级中的偶数编号的系数不与奇数编号的系数成对,并且因此将省略其描述。
为了获得垂直提升操作的级B3的第一偶数编号的系数,并且为了获得级B4中的第一奇数编号的系数,必须输入六行(行编号0~5)的系数。
此后,为了获得第二偶数编号的系数和奇数编号的系数,由粗实线表示的三个系数和由带圈的编号表示的两行(行编号6和7)的系数是必需的。进一步,为了计算在级B2中由Q1表示的系数,由带圈的编号表示的行编号5的系数也是必需的。
由粗实线表示的三个系数是在用于获取第一偶数编号的系数和奇数编号的系数的垂直提升操作(在下文中,也称为“第一垂直提升操作”)的处理中所产生的系数的一部分。
因此,为了获得第二偶数编号的系数和奇数编号的系数,仍然必须输入由带圈的编号表示的三行(行编号5~7)的系数。进一步,必须存储在用于获得第一偶数编号的系数和奇数编号的系数的垂直提升操作的处理中所产生的、由粗实线表示的三个系数。在这一点上,对于每一个级别读取垂直方向中的三行的系数。
因此,使用在第一垂直提升操作中存储在缓冲器中的、由粗实线示出的三个系数以及三个输入行(即,行编号7~9)的系数来执行垂直提升操作。由此,在操作处理结束时,产生包括第二偶数编号的系数和奇数编号的系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线示出的三个系数是获取第三偶数编号的系数和奇数编号的系数所需的系数,并且由此对其进行存储。
图12的右侧示出了如下情况的示例,所述情况为:在输入行编号7的系数之后,在水平方向中另外地输入两行的系数,也就是说,在垂直方向中输入三行(行编号7~9)的系数,并且执行垂直提升操作。
以与第二情况相同的方式,为了获得第三偶数编号的系数和奇数编号的系数,必须具有粗实线所示的三个系数以及由带图的编号所示的两行(行编号8和9)的系数。进一步,为了计算在级B2中由Q2所示的系数,必须具有由带圈的编号所示的行编号7的系数。
在这一点上,通过如在左侧的点划线所示的第二垂直提升操作,在系数缓冲器66中存储由右侧的粗实线所示的三个系数。
因此,使用在第二垂直提升操作中存储的、由粗实线所示的三个系数以及行编号7~9的三个输入行的系数来执行垂直提升操作。由此,产生包括第三偶数编号的系数和奇数编号的系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线示出的三个系数是获取第三偶数编号的系数和奇数编号的系数所需的系数,并且由此对其进行存储。
如上所述,在输入三列的系数并保存用于中途操作的三个系数的同时,执行垂直提升操作直到屏幕的最下面的行为止。由此,完成了垂直方向合成滤波。
接着,将给出水平合成滤波的处理的具体描述。图13图示了如下情况的示例,所述情况为:排列垂直方向合成滤波的结果并通过图11中的提升结构执行水平分解滤波。
在图13的示例中,示出了如下情况的示例,所述情况为:水平方向系数经历参照图11所述的四级(级B1~B4)的处理,并产生奇数编号的系数和偶数编号的系数。在图中,提升级方向从上到下。
并且,水平方向系数上方所示的编号表示列编号。从上方起第一级的阴影的圆圈和方块分别表示输入的高频系数和低频系数。并且第二级和随后级的圆圈和方块表示在提升操作的处理中所产生的高频系数和低频系数。在这些之中,黑色圆圈和黑色方块分别表示作为提升操作的结果的高频系数和低频系数。
在下文中,将给出从上方起顺次的操作的描述。在图13中上面的级图示了如下情况的示例,所示情况为:输入水平方向中的三列(列编号5~7)的系数,并执行水平方向提升结构的操作(在下文中,称为“水平提升操作”)。在这一点上,在这种情况下,在最左侧的偶数编号的系数不与奇数编号的系数成对,由此将省略其描述。
为了获得水平提升操作的级B3中的第一偶数编号的系数,并且为了获得级B4中的第一奇数编号的系数,必须输入六行(行编号0~5)的系数。
此后,为了获得第二奇数编号的系数和偶数编号的系数,由粗实线表示的三个系数和由带圈的编号表示的两列(列编号6和7)的系数是必需的。进一步,为了计算在级B2中由Q1表示的系数,由带圈的编号表示的列编号5的系数也是必需的。
由粗实线表示的三个系数是在用于获取第一奇数编号的系数和偶数编号的系数的水平提升操作(在下文中,也称为“第一水平提升操作”)的处理中所产生的系数的一部分。
也就是说,为了获得第二奇数编号的系数和偶数编号的系数,仍然必须输入由带圈的编号表示的三列(列编号5到7)的系数。进一步,必须锁存在第一水平提升操作的处理中产生的、由粗实线表示的三个系数。实际上,需要三个那么少的系数,由此可以使用小容量存储区域(如触发器)来对其进行保存。
因此,使用在第一水平提升操作中锁存的、由粗实线示出的三个系数以及三个输入列(即,列编号5~7)的系数来执行水平提升操作。由此,在操作处理结束处,产生包括第二奇数编号的系数和偶数编号的系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线示出的三个系数是获取第三奇数编号的系数和偶数编号的系数所需的系数,因此将其锁存在内部触发器中。
图13中的下面的级中示出了如下情况的示例,所述情况为:在输入列编号7的系数之后,在水平方向中另外地输入两列系数,也就是说,在水平方向中输入三列(列编号7~9)的系数,并且执行水平提升操作。
以与第二情况相同的方式,为了获得第三奇数编号的系数和偶数编号的系数,必须具有粗实线所示的三个系数以及由带圈的编号所示的两列(列编号8和9)的系数。进一步,为了计算在级B2中由Q2所示的系数,必须具有由带圈的编号所示的列编号7的系数。
在这一点上,通过如上面的级中的点划线所示的第二水平提升操作,锁存在下面的级中由粗实线所示的三个系数。
因此,使用在第二水平提升操作中锁存的、由粗实线所示的三个系数以及列编号7~9的三个最新输入列的系数来执行水平提升操作。由此,产生包括第三奇数编号的系数和偶数编号的系数在内的四个系数(由粗虚线所示)。在这些之中,由点划线示出的三个系数是获取第四奇数编号的系数和偶数编号的系数所需的系数,因此通过用于中途计算系数的内部触发器对其进行锁存。
如上所述,在顺次输入三列的系数并保存用于中途操作的三个系数的同时,执行水平提升操作直到屏幕的最右侧的列为止。由此,完成了水平方向合成滤波。
如上所述,9×7小波变换滤波器的提升结构还用于垂直合成滤波和水平合成滤波。因此,如参照图10所述的那样,变得必须具有存储三行的系数的、用于各个行系数的缓冲器,作为对应划分级别的缓冲器。进一步,为了获得图12中的系数Q1和Q2,变得必须在垂直提升操作的时候,具有用于下一垂直提升操作的已经使用的行的系数。
因此,在与一个级别对应的缓冲器的内部配置中,将在一行的缓冲器中存储的系数传送到顺次相邻的行的缓冲器。
如上所述,视频数据经历传输设备101的压缩编码,作为编码数据进行传送和接收,并经历接收设备102的扩展解码。
图14示意性地图示压缩编码处理和扩展解码处理的各个处理。图14中所示的压缩编码处理181由传输设备101执行,而扩展解码处理182由接收设备102执行。
如图14所示,在压缩编码处理181中,对于每一多个行(区域),一个画面的非压缩图像数据经历小波变换,并被划分为多个分级子带。图14中的非压缩数据块1~N是对于每一区域的各个图像数据。当输入非压缩数据块1~N中的每一个时,所述块经历小波变换,并被划分为三个分级的子带。每一子带经历熵编码。
图14中的L(i,n)表示每一分级子带的压缩编码数据。这里,i表示等级编号。并且,n表示在编码之前的非压缩数据块编号(区域编号)。在图14的情况下,i=1,2,3,n=1,2,...,N。
等级编号1的压缩编码数据L(i,n)是最低层中的四个编码分量:LL分量、HL分量、LH分量和HH分量。具有等级编号2或更大的等级的压缩编码数据L(i,n)(i≥2)是该层中的三个编码分量:HL分量、LH分量和HH分量。
如上所述,使用提升操作执行分解滤波。因此,垂直分解滤波不仅使用非压缩数据块n,而且还使用其它块的数据来产生压缩编码数据L(i,n)。也就是说,压缩编码数据L(i,n)依赖于其它块。图14中非压缩数据块n与压缩编码数据L(i,n)之间的箭头表示该依赖关系。
例如,等级编号1的压缩编码数据L(1,5)依赖于等级编号2的压缩编码数据L(2,3)、L(2,4)和L(2,5)、等级编号3的压缩编码数据L(3,2)、L(3,3)和L(3,4)和L(3,5)、非压缩数据的非压缩数据块2、非压缩数据块3、非压缩数据块4和非压缩数据块5。并且,等级编号2的压缩编码数据L(2,3)依赖于等级编号3的压缩编码数据L(3,2)和L(3,3)以及非压缩数据块1、以及非压缩数据的非压缩数据块1~3。
以这种方式,对于压缩编码数据的每一等级,依赖的非压缩数据块的数目(依赖范围)是不同的。例如,通过接口等(如HD-SDI(高清串行数字接口)标准),从画面数据的水平行,从上部起顺次输入输入视频数据。因此,不允许产生各个压缩编码数据(不产生子带),直到输入依赖的非压缩数据块为止。
如图14所示,以n的升序产生每一压缩编码数据L(i,n),并且因此以该次序将其传送到接收设备102。
如图14所示,通过与压缩编码处理181对称的处理来实现扩展解码处理182。依赖关系也相同。因此,非压缩数据块1依赖于等级编号3的压缩编码数据L(3,1)和L(3,3)、等级编号2的压缩编码数据L(2,1)、L(2,2)和L(2,3)以及等级编号1的压缩编码数据L(1,1)、L(1,2)、L(1,3)、L(1,4)和L(1,5)。因此,不解码(产生)数据,直到接收到所有压缩编码数据为止。
因此,当作为图14中的示例,等级数目为三时,为了扩展解码处理182解码非压缩数据块n,对于压缩编码处理181来说至少必须已经编码了直到非压缩数据块(n+4)。因此,通过加上非压缩数据块n的输入时间,由算法产生且排除了传输延迟等的主要延迟(principle delay)变为五个非压缩数据块的输入时间。
整体系统的处理的描述
接着,将给出除了压缩编码和扩展解码处理之外的处理的描述。图15是图示图1中的网络系统所执行的处理的概括的图。
例如,经由视频摄像机等而通过输入接口在传输设备101中输入的视频数据(视频IN)经历由如上所述的视频压缩编码部分122的分级压缩编码。对于如箭头191所示的每个块,视频数据的每一画面经历小波变换,并对于多个等级的每一子带转换为编码数据。
每一压缩编码数据经历冗余编码部分123的FEC(前向纠错)编码处理。如箭头192所示,冗余编码部分123对压缩编码数据执行FEC分块,并且如箭头193所示,对于每个FEC块执行RTP分组化(原始数据RTP分组),以产生冗余数据(冗余数据RTP分组)。
如箭头194所示,RTP传输部分124通过网络110将每一RTP分组传送到接收设备102。接收设备102的接收部分131接收RTP分组。
如箭头195所示,冗余解码部分132对接收到的RTP分组执行FEC解码处理,并进一步执行去分组化,并提取每个块的每一等级的编码数据。
如箭头196所示,视频扩展解码部分133提供解码处理所需的每个块的每一等级的编码数据,并且如箭头197所示,执行扩展解码,并执行反向小波变换。以这种方式,产生每个非压缩数据块,并从块编号1顺次输出。
在这一点上,压缩编码(小波变换)的处理单元可以是任何单元。例如,处理可以对于每一画面执行。然而,为了减小延迟时间,期望对于每一个区域执行。并且,在上文中,已经给出了使用小波变换的方法的描述。然而,可以应用任意方法,只要编码方法(可扩展编解码器(scalable codec))能够对以多个分辨率的编码数据进行解码,并且使原始图像数据的其他部分成为必要,以便对于每一编码(分级)处理单元(各编码(分级)处理单元之间存在依赖性)产生编码数据。例如,可以使用ITU-T(国际电信同盟电信标准化部门)H.264/SVC(可扩展视频编解码器)等。
在如上所述的数据传输处理中,为了提高数据冗余和恢复性能而不增大延迟时间(为了实现更准确的数据传输),传输设备101的冗余编码控制部分121执行FEC块大小和冗余的控制。下文中将给出传输设备101的描述。
传输设备配置的示例
图16是图示传输设备101的主要配置的示例的框图。冗余编码控制部分121获取视频压缩编码部分122中压缩编码处理(小波变换处理)的等级数目,以及指示对于每个块的每一等级的编码数据依赖的范围(等级和块)的依赖信息。
这里提到的“依赖性”意味着产生如上所述的编码数据所需的数据。也就是说,依赖信息是指示对于每个块以及对于每个块的非压缩数据的分级编码所产生的每一等级,为了产生编码数据需要哪个块的哪个等级的数据的信息。
当然,可以使用任何信息,只要信息直接或间接地指示这些内容。例如,通过用于分解滤波的滤波器的类型来确定数据的依赖关系。因此,冗余编码控制部分121可以获得指示滤波器的类型的信息作为依赖信息。并且,对于每一信息可以使用任何格式。
冗余编码控制部分121确定FEC块大小(其为根据所述信息要经历冗余编码处理的数据单元的大小),以及指示要由每个FEC块产生的冗余数据量的冗余。
冗余编码控制部分121具有FEC块大小确定部分201和冗余确定部分202。FEC块大小确定部分201根据从视频压缩编码部分122提供的等级和依赖性来确定作为冗余编码的处理单元的冗余编码块(在下文中,称为FEC块)的大小(FEC块大小)。FEC块大小确定部分201预先具有FEC块大小计算表达式211,并通过使用该表达式来确定FEC块大小。
冗余确定部分202根据从视频压缩编码部分122提供的等级和依赖信息来确定每个FEC块的冗余。冗余确定部分202预先具有冗余计算表达式212,并通过使用该表达式来确定冗余。
冗余编码控制部分121以(原始数据分组的数目、冗余分组的数目)的形式来指定冗余。在下文中,(原始数据分组的数目、冗余分组的数目)的对作为一个冗余编码单元,即:FEC块。例如,如果冗余编码控制部分121指定(原始数据分组的数目、冗余分组的数目)=(10,5),则冗余编码部分123从10个原始数据分组中产生5个冗余分组。也就是说,RTP传输部分124从该FEC块总共传送15个分组。如果接收设备102(冗余解码部分132)接收到15个FEC块中的10个分组或更多,则接收设备102可以通过FEC解码处理来对原始数据进行解码。
冗余编码控制部分121将确定的信息提供到冗余编码部分123。
冗余编码部分123使用从冗余编码控制部分121提供的FEC块大小和冗余来执行从视频压缩编码部分122提供的编码数据的冗余编码。
冗余编码部分123具有FEC分块部分221、分组化部分222和FEC编码部分223。
FEC分块部分221将从视频压缩编码部分122提供的、对于每个块和对于每一等级的编码数据分组(group)为FEC块。如图15所示,FEC块在彼此相同的等级中包括一个片段的编码数据或多个片段的编码数据。FEC分块部分221将待形成的各个编码数据放到一起以具有由冗余编码控制部分221指定的FEC块大小,由此执行FEC分块。
压缩编码部分122将每一个FEC块的编码数据分组化,以产生RTP分组。FEC编码部分223对作为单元的RTP分组执行FEC编码。FEC编码部分223使用丢失-纠错码(如Reed-Solomon码)来执行冗余编码。
冗余编码部分123将产生的RTP分组(包括冗余数据)提供到RTP传输部分124,并使RTP传输部分执行传输。
FEC块大小
接着,将给出FEC块大小的描述。如上所述,在视频压缩编码部分122的压缩编码方法中,对于每一等级来说,依赖的非压缩数据块和压缩编码数据的范围(数据项数)不同,因此在压缩编码时间和扩展解码时间处,压缩编码的处理顺序有时是不同的。直到将所需的数据放到一起才执行扩展解码,因此存在直到将压缩编码数据从传输设备101传送到接收设备102之后开始解码的可允许时间。
可允许时间段是通过依赖关系来确定的,并且其对于每一等级是不同的。FEC块大小确定部分201根据每一等级的可允许时间的不同来调节每一等级的FEC块大小,以便所述大小在满足延迟目标指标(index)的范围中变得尽可能的大。
以这种方式,冗余编码部分123可以执行冗余编码,以便在满足延迟目标指标的同时提高突发分组丢失的恢复性能。也就是说,传输设备101可以准确地传送数据,而不会不必要地增大延迟时间。
将使用图15中的示例给出描述。也就是说,压缩编码处理的等级的数目是三,并且各等级之间的数据依赖关系如图15中所示。
假设非压缩数据块的一个块的输入时间是D,并且FEC处理时间和传输延迟的总时间是α。压缩编码处理和扩展解码处理中的主要延迟(在下文中,称为编解码器主要延迟)变为5D。
根据图15中所示的依赖关系,为了对任何非压缩数据块n执行扩展解码,变得必须具有等级编号-1压缩编码数据L(1,n)、L(1,n+1)、L(1,n+2)、L(1,n+3)和L(1,n+4)、等级编号-2压缩编码数据L(2,n)、L(2,n+1)和L(2,n+2)、以及等级编码-3压缩编码数据L(3,n)和L(3,n+1)。也就是说,必须已经接收到这些片段的压缩编码数据,或者已经通过FEC恢复处理而将其从丢失分组中恢复。
如果假设目标延迟指标是5D+α,则在将视频数据输入到传输设备101之后,视频扩展解码部分133等待目标延迟指标5D+α的时间段,然后开始扩展解码处理。因此,在开始用于产生非压缩数据块n的扩展解码处理的时候,必须提供(接收或恢复)压缩编码数据L(i,k)(i=1,2,3)(k=1,2,...,n+4)。
也就是说,对于产生非压缩数据块n的扩展解码处理,等级编号-1的压缩编码数据必须具有直到L(1,n+4)的数据,其已经紧接在扩展解码处理的开始时间之前而被接收到。等级编号-2的压缩编码数据应当必须具有直到L(2,n+2)的数据。以相同的方式,等级编号-3的压缩编码数据仅需要具有直到L(3,n+1)的数据。
以另一方式对其进行表述,等级编号-1的压缩编码数据具有从接收开始起到扩展解码处理开始的时间D的可允许时间。以相同的方式,等级编号-2的压缩编码数据具有从接收开始起到扩展解码处理开始的时间3D的可允许时间。进一步,以相同的方式,等级编号-3的压缩编码数据具有从接收开始起到扩展解码处理开始的时间4D的可允许时间。
直到将FEC块中除了所有丢失分组之外的分组放到一起为止,难以执行FEC的丢失分组恢复。因此,如果为每k个片段的压缩编码数据产生FEC块,那么直到在丢失分组的接收之后等待了最大时间(k-1)D为止,难以恢复丢失的分组。
因此,例如如下所述那样,针对每一分级,FEC块大小确定部分201根据从接收压缩编码数据的开始起到扩展解码处理的开始的可允许时间,调整FEC块大小。
等级编号-1:一个片段的压缩编码数据(为一个片段的压缩编码数据产生FEC块)
等级编号-2:三个片段的压缩编码数据(为三个片段的压缩编码数据产生FEC块)
等级编号-3:四个片段的压缩编码数据(为四个片段的压缩编码数据产生FEC块)
(将每一压缩编码数据划分为多个RTP分组,并进行分组化)
在如该示例中所述的那样配置FEC块的情况下,即使发生分组丢失,也可以在当分组在可允许时间中已经到达且冗余分组已经到达时的时间点执行FEC解码。因此,如果已经产生了足够量的冗余分组,则变得可以恢复丢失分组。
通过像这样概括用于确定FEC块大小的算法,每一等级的FEC块大小(使用每一等级的压缩编码数据,所述数据通过对作为单元的一个非压缩数据块进行压缩编码而产生)B(i)(等级编号i=1,2,...)可以由如下表达式(9)来表示。
B ( i ) = T + 1 , ( i = 1 ) T + 1 + Σ k = 1 i - 1 ( d ( k ) - 1 ) , ( i = 2 , 3 , . . . ) . . . ( 9 )
这里,d(i)表示等级i的压缩编码数据所依赖的等级(i+1)的压缩编码数据的数目(如果i表示最低等级(在示例中等级-3),则为其依赖的非压缩编码数据的数目)。例如,在图15中的示例中,d(3)=2,d(2)=2,并且d(1)=3。并且,T表示指示除了上述主要延迟之外的可允许延迟时间的可允许延迟扩展块的数目。当T=0时,上述示例匹配FEC块大小。
例如,如果目标延迟指标是编解码器主要延迟、传输延迟、FEC延迟等之和,则FEC块大小确定部分201应当确定可允许延迟扩展块的数目,T=0。另一方面,如果突发分组丢失的恢复性能增大而不管延迟的扩展如何,则FEC块大小确定部分201应当使得可允许延迟扩展块的数目T很大。通过使得可允许延迟扩展块的数目T很大,可以增大FEC块大小。FEC块大小越大,则突发分组丢失的恢复性能提高得越多。然而,增大了延迟。
也就是说,表达式(9)表示FEC块大小计算表达式211的一个示例。
冗余
冗余确定部分202针对FEC块大小确定部分201所确定的每个FEC块大小(针对每一等级)确定冗余,以便满足分组丢失的恢复性能指标。
例如,假设假定的分组丢失率是p,FEC块中分组的数目是n,原始数据中分组的数目是k,并且冗余分组的数目是(n-k)。此时,假设目标FEC块丢失率是Pt,为了满足目标FEC块丢失率,应当满足以下表达式(10)。
P t ≥ 1 - Σ j = 0 n - k n C j p j ( 1 - p ) n - j , ( n > k ) . . . ( 10 )
冗余确定部分202确定原始数据中分组的数目k以及冗余分组的数目(n-k),以便满足表达式(10)。也就是说,表达式(10)示出了冗余计算表达式212的示例。
在这一点上,确定冗余的方法可以是任何方法,并且因此可以使用不同于上述方法的方法。例如,尽管对于每一等级的FEC块大小不同,但是可以对于所有等级指定相同的冗余。也就是说,冗余确定部分202可以省略。然而,如果冗余确定部分202根据FEC块大小来确定冗余,则对于冗余编码控制部分121来说可以进一步提高突发分组丢失的恢复性能。
处理流程的描述
接着,将给出上述各个处理流程的描述。首先,将参照图17的流程图,给出传输设备101对视频数据执行压缩编码并传送数据的传输处理的流程的示例的描述。
当开始传输处理时,在步骤S101,冗余编码控制部分121确定FEC块大小和冗余。在步骤S102,视频压缩编码部分122针对每一区域而对输入视频数据执行压缩编码。在步骤S103,冗余编码部分123对产生的编码数据执行冗余编码。在步骤S104,RTP传输部分124通过网络110将产生的RTP分组传送到接收设备102。
在步骤S105,视频压缩编码部分122确定是否终止传输处理。如果存在未传送的视频数据,由此确定不终止传输处理,处理返回到步骤S102,并且重复随后的处理。在步骤S105,如果已经传送了所有视频数据,并且确定终止传输处理,则传输处理终止。
接下来,将参照图18中的流程图,给出在图17中的步骤S101执行的块大小和冗余确定处理的示例的描述。
当开始块大小和冗余确定处理时,在步骤S121,冗余编码控制部分121获取压缩编码的等级的数目和各等级之间的依赖信息。
在步骤S122,FEC块大小确定部分201基于通过步骤S121的处理而获得的信息来获取每一等级的FEC块大小。在步骤S123,冗余确定部分202基于通过步骤S121的处理而获得的信息来获取每一等级的冗余。
在步骤S124,冗余编码控制部分121响应于请求而将步骤S122的处理所确定的FEC块大小和步骤S123的处理所确定的冗余传送到冗余编码部分123。在这一点上,此后连续地执行步骤S124的处理。
当在步骤S124准备提供FEC块大小和冗余时,终止块大小和冗余确定处理,处理返回到图17中的步骤S101,并且执行步骤S102及其后的处理。
接下来,将参照图19中的流程图,给出在图17中的步骤S103执行的冗余编码处理的示例的描述。在步骤S141,冗余编码部分123执行初始化处理。在步骤S142,冗余编码部分123确定是否终止冗余编码处理。如果存在未处理的编码数据并确定不终止冗余编码处理,则处理进行到步骤S143。
在步骤S143,冗余编码部分123获取将要由视频压缩编码部分122处理的等级的压缩编码数据。在步骤S144,冗余编码部分123从冗余编码控制部分121获取待处理的等级的FEC块大小和冗余。在步骤S145,冗余编码部分123确定是否已经获得了必要量的压缩编码数据。
如果确定还未获得所有必要量的压缩编码数据,则处理返回到步骤S142,并且重复随后的处理。
并且,在步骤S145,如果确定已经获得了待处理的FEC块的所有压缩编码数据,并且已经获得了冗余编码所需的压缩编码数据,则处理进行到步骤S146。在步骤S146,冗余编码部分123执行FEC编码,执行RTP分组化,并产生冗余数据。当完成步骤S146的处理时,处理返回到步骤S142,并重复随后的处理。
在步骤S142,如果确定已经将所有压缩编码数据进行了冗余编码,并且将要完成冗余编码处理,则终止冗余编码处理,处理返回到图17中的步骤S103,并执行步骤S104的随后处理。
如上所述,冗余编码控制部分121根据在接收侧的可允许时间的长度(由压缩编码的等级数目和依赖关系确定),独立地为每一等级确定FEC块大小,以便为了不会不必要地增大延迟时间,可以尽可能地增大FEC块大小。也就是说,可以提高从突发分组丢失的恢复性能,而不会不必要地增大延迟时间。
并且,冗余编码控制部分121可以根据FEC块大小(分组数目)来确定冗余。因此,冗余编码控制部分121可以产生更多的冗余数据,以便不增大不必要的延迟时间。进一步,可以提高从突发分组丢失的恢复性能。
将参照图20的流程图,给出由冗余解码部分132执行的冗余解码处理以便以这种方式对冗余编码数据进行冗余解码的流程的示例的描述。
当开始冗余解码处理时,在步骤S161,冗余解码部分132执行初始化处理,并在步骤S162确定是否完成冗余解码处理。如果确定存在未处理的接收压缩编码数据,并因此未完成冗余解码处理,则处理进行到步骤S163。
在步骤S163,冗余解码部分132获取由RTP分组部分131接收到的RTP分组。在步骤S164,冗余解码部分132确定是否可以对包括步骤S163中所获得的RTP分组的FEC块进行解码。如果确定还未获得待处理的FEC块的足够数目的RTP分组,并且不可以对FEC块进行解码,则处理返回到步骤S162,并重复随后的处理。并且,在步骤S164,如果确定已经获得了待处理的FEC块的足够数目的RTP分组,并且可以对FEC块进行解码,则处理进行到步骤S165。
在步骤S165,冗余解码部分132执行FEC解码,并且如果已经发生分组丢失,则冗余解码部分132恢复编码数据。将如上所述处理的编码数据提供到视频扩展解码部分133,并将其经历扩展和解码。当完成步骤S165的处理时,处理返回到步骤S162,并且重复随后的处理。
在步骤S162,如果确定将要完成冗余解码处理,则终止冗余解码处理。
2.第二实施例
传输设备的配置示例
在这一点上,在上文中,已经给出了冗余编码控制部分121基于从视频压缩编码部分122获得的信息(如压缩编码的等级数目、各等级之间的依赖信息等)来确定冗余编码的FEC块大小和冗余的描述。如上所述,通过将要用于压缩编码的滤波器的类型来确定各等级之间的依赖关系。将要用于压缩编码的滤波器的类型和压缩编码的等级数目是视频压缩编码部分122的规格,并且通常被预先确定。
例如,如果视频压缩编码部分122提供有多种类型的滤波器,并且视频压缩编码部分122选择其中之一,则由于依赖关系可能依据待使用的滤波器而改变,因此期望冗余编码控制部分121根据滤波器来确定冗余编码的FEC块大小和冗余。并且,在压缩编码的等级的数目可变的情况下,期望冗余编码控制部分121根据其等级的数目来确定冗余编码的FEC块大小和冗余。
然而,如果仅允许视频压缩编码部分122通过一种类型的方法执行压缩编码,则预先确定用于压缩编码的滤波器类型和压缩编码的等级的数目。因此,冗余编码控制部分121可以针对压缩编码和等级的依赖性,预先计算适于给定数目的等级的FEC块大小和冗余,可以保存计算结果并且可以提供结果。
图21是图示那种情况下的传输设备101的主要配置的示例的框图。如图21所示,在这种情况下,冗余编码控制部分121具有存储部分231,其保存预先计算的FEC块大小241和冗余242。存储部分231是由任何记录介质所形成的存储区域。
FEC块大小241是根据由视频压缩编码部分122执行的压缩编码的等级数目和各等级之间的依赖关系确定以便不会不必要地增大延迟时间的每一等级的FEC块大小。在这一点上,确定FEC块大小的方法与通过图16中的FEC块大小确定部分201的确定方法相同。
冗余242是根据由视频压缩编码部分122执行的压缩编码处理的等级数目以及各等级之间的依赖关系确定以便不会不必要地增大延迟时间的每一个FEC块的冗余。在这一点上,确定该冗余的方法与图16中的冗余确定部分202的确定方法相同。
因此,在这种情况下,预先提供将要提供到冗余编码部分123的FEC块大小和冗余。因此,在图18中所示的块大小和冗余确定处理中可以省略从步骤S121到步骤S123的处理,并且因此可以更加容易地控制冗余编码。
3.第三实施例
传输设备的配置示例
并且,在冗余的计算中,可以考虑对于每一等级的压缩编码数据的优先级。
在分级编码用于视频压缩编码方法并且如上述小波变换那样对于图像的每一频率分量划分等级的情况下,例如,等级中包括的频率分量越低,如果发生丢失,则对于解码数据的影响越明显。也就是说,根据每一等级,数据的重要性不同。因此,可以根据其重要性,为每一等级设置优先级。例如,等级编号越小,则可以设置越高的数据优先级,并且数据优先级越高,则更加提高数据传输的可靠性。
为了提高数据传输的可靠性,冗余编码控制部分121根据优先级调整冗余。也就是说,冗余编码控制部分121根据优先级针对每一等级调整目标FEC块丢失率Pt。
图22是图示这种情况下的传输设备101的主要配置的配置示例的框图。如图22所示,除了FEC块大小确定部分201和冗余确定部分202之外,冗余编码控制部分121还具有目标FEC块丢失率设置部分251。
为了提高数据传输的可靠性,例如,目标FEC块丢失率设置部分251根据如下优先级针对每一等级调整目标FEC块丢失率Pt。
等级编号=1:Pt=10-8
等级编号=2:Pt=10-5
等级编号=3:Pt=10-3
当目标FEC块丢失率设置部分251已经设置了目标FEC块丢失率Pt时,冗余确定部分202使用目标FEC块丢失率Pt来计算冗余。
处理流程的描述
将参照图23中的流程图,给出在这种情况下执行的块大小和冗余确定处理的示例的描述。在这一点上,该流程图对应于图18中的流程图。
当开始块大小和冗余确定处理时,以与图18中的步骤S121和S123的各个处理相同的方式执行步骤S181和S182的各个处理。
在步骤S183,目标FEC块丢失率设置部分251根据等级的优先级来设置目标FEC块丢失率Pt。在步骤S184,冗余确定部分202使用在步骤S183设置的目标FEC块丢失率Pt来获取冗余。
以与图18中步骤S124的处理相同的方式来执行步骤S185的处理。
当准备提供FEC块大小和冗余时,完成块大小和冗余确定处理,处理返回到图17中的步骤S101,并且重复步骤S102及其后的处理。
如上所述,冗余编码控制部分121根据对于每一等级的数据的优先级来确定冗余,以便可以提高传输设备101的数据传输的可靠性,而不增大不必要的延迟时间。
4.第四实施例
网络系统的配置示例
在这一点上,冗余编码控制部分121不仅可以在初始状态控制FEC块大小和冗余,而且可以适当地控制FEC块大小和冗余。例如,冗余编码控制部分121可以基于传送数据的网络110的状态来适当地控制FEC块大小和冗余。
图24是图示那种情况下的网络系统100的主要配置的示例的框图。在图24中所示的示例的情况下,除了图1中的配置之外,传输设备101还具有RTCP通信部分301。并且,除了图1中的配置之外,接收设备102还具有RTCP通信部分302。
RTCP通信部分301和RTCP通信部分302通过传送和接收例如RTCP(RTP控制协议)发送器报告(SR)分组和RTCP接收器报告(RR)分组,来发送和接收用于指示网络110的状态的信息(网络状态信息)。对于网络状态信息,例如,考虑用于指示往返延迟时间的所谓的RTT(往返时间)以及分组丢失率。
可以通过在RTCP通信部分301和RTCP通信部分302之间传送和接收(进行往返)分组来获得往返时间(RTT)。通过接收设备102的RTP接收部分131来获得分组丢失率,并通过RTCP通信部分302将其提供到RTCP通信部分301。当然,可以使用间接指示该信息的信息,并且可以使用任何格式的信息。并且,除了这些之外,还可以应用任何参数。
冗余编码控制部分121使得在FEC块大小和冗余的确定上反映RTCP通信部分301所获得的网络状态信息。通过这种方式,例如,即使网络110是具有易于波动的频带的通信线路(如因特网),冗余编码控制部分121也可以根据通信状态来适当地确定FEC块大小和冗余,并且因此可以进一步提高传输设备101的数据传输的可靠性,而不增大不必要的延迟时间。
传输设备的配置示例
图25是图示图24中的示例的情况下的传输设备101的主要配置的示例的框图。如图25所示,在这种情况下,除了图16中所示的配置之外,传输设备101还具有RTCP通信部分301。并且,在这种情况下,除了图16中所示的配置之外,冗余编码控制部分121还具有往返传播延迟计算部分311和分组丢失率计算部分312。
往返传播延迟计算部分311基于RTCP通信部分301所获得的网络连接信息,计算往返传播延迟(RTT)的平均值,其示出了当在预定时间段中通过网络110向和从设备101和接收设备102进行传送分组时的延迟时间。
FEC块大小确定部分201例如除了使用视频压缩编码部分122所获得的等级数目和依赖信息之外,还使用往返传播延迟(RTT)(在预定时间中往返传播延迟的平均值)来通过以下表达式(11)确定FEC块大小。
B ( i ) = T + 1 - βRTT , ( i = 1 ) T + 1 - βRTT + Σ k = 1 i - 1 ( d ( k ) - 1 ) , ( i = 2,3 , . . . ) . . . ( 11 )
在表达式(11)中,β表示正系数,而RTT表示往返传播延迟(RTT)(预定时间中的平均值)。如表达式(11)所示,冗余编码控制部分121确定FEC块大小,以便随着传播延迟增大,FEC块大小变得更小。通过这种方式,变得可以通过FEC块大小的减小来弥补(cover)传播延迟的增大。因此,冗余编码控制部分121可以抑制整个延迟(除了主要延迟之外还包括网络110的传播延迟)的波动。
在这一点上,用于获取往返传播延迟的平均值的时间段可以是任何时段。例如,所述时间段可以是FEC块大小的更新间隔。并且,例如,代替使用往返传播延迟的平均值,可以直接使用最近的往返传播延迟的值来用于确定FEC块大小。
分组丢失率计算部分312基于RTCP通信部分301所获得的网络连接信息,计算接收设备102侧发生的分组丢失率在预定时间中的平均值。冗余确定部分202除了使用视频压缩编码部分122获得的等级数目和依赖信息之外,还使用在预定时间中的分组丢失率的平均值来确定冗余。此时,以与上述相同的方式,冗余确定部分202使用表达式(10)的冗余计算表达式212来计算冗余。然而,表达式(10)中的p被假设为上述分组丢失率的假设值。然而,这里,表达式(10)中的p被假设为分组丢失率计算部分312所计算出的分组丢失率的平均值。
也就是说,冗余编码控制部分121将接收侧的分组丢失率的变化(平均值)反映在冗余上。通过这种方式,冗余编码控制部分121可以根据传输期间网络的状态,以最小所需的冗余来传送分组。
在这一点上,分组丢失率的平均值的时间段是任何时段。例如,所述时间段可以是冗余的更新间隔。并且,例如,代替使用分组丢失率的平均值,可以直接使用最近的分组丢失率的值来用于确定冗余。
处理流程的描述
接下来,将给出这种情况下各种处理的流程的示例的描述。将参照图26的流程图,给出这种情况下由传输设备101执行的传输处理的流程的示例的描述。
图26中的流程图对应于图17中的流程图。当开始传输处理时,在步骤S201,RTCP通信部分301获取网络状态信息,其包括诸如往返传播延迟和分组丢失率等之类的信息。当获得网络状态信息时,以与图17中的流程图中从步骤S101到步骤S105的各个处理相同的方式执行从步骤S202到步骤S206的各个处理。然而,如果在步骤S206确定未完成处理,则处理返回到步骤S201,并且重复随后的处理。
也就是说,在图26的情况下,重复地执行FEC块大小和冗余的确定(更新)。通过这种方式,冗余编码控制部分121可以动态地控制FEC块大小和冗余。
接下来,将参照图27中的流程图,给出在图26中的步骤S202执行的块大小和冗余确定处理的示例的描述。该流程图对应于图18中的流程图。
以与图18中的步骤S121相同的方式执行步骤S221的处理。在步骤S222,往返传播延迟311计算在预定时间段中往返传播延迟的平均值。在步骤S223,FEC块大小确定部分201通过使用在步骤S221和S222中所获得的信息,获取每一等级的FEC块大小。
在步骤S224,分组丢失率计算部分312计算分组丢失率的平均值。在步骤S225,冗余确定部分202通过使用在步骤S221和S224中所获得的信息,获得每一等级的冗余。以与图18中的步骤S124相同的方式执行步骤S226的处理。
通过以这种方式进行控制,冗余编码控制部分121可以根据网络连接状态(如,往返传播延迟和分组丢失率等)来动态地控制FEC块大小和冗余。
在这一点上,仅可以动态地控制FEC块大小,并且可以将冗余固定在预定值。并且,例如,仅可以动态地控制FEC块大小,并且可以如参照图16和图22所述的那样,静态地控制(以传输处理的初始状态来控制)冗余。
5.第五实施例
传输设备的配置示例
在这一点上,在上文中,已经给出了冗余编码控制部分121通过使用在预定时间段中的往返传播延迟的平均值来确定FEC块大小的描述。然而,例如,冗余编码控制部分121可以另外通过使用在预定时间段中往返传播延迟的最大值来确定FEC块大小。图28是图示那种情况下的传输设备101的主要配置的示例的框图。
在图28中,传输设备101的配置基本上与图25中所示的配置示例相同。然而,冗余编码控制部分121具有最大往返传播延迟计算部分321(代替图25中的往返传播延迟计算部分311)。
最大往返传播延迟计算部分321基于RTCP通信部分301所获得的网络连接信息,计算往返传播延迟(RTT)的最大值(最大往返传播延迟),其示出了当在预定时间段中通过网络110向和从设备101和接收设备102进行传送分组时的延迟时间。
FEC块大小确定部分201例如除了使用视频压缩编码部分122所获得的等级数目和依赖信息之外,还使用最大往返传播延迟来通过如下表达式(12)确定FEC块大小
B ( i ) = T + 1 - ( βRTT + γN ) , ( i = 1 ) T + 1 - ( βRTT + γN + Σ k = 1 i - 1 ( d ( k ) - 1 ) , ( i = 2,3 , . . . ) . . . ( 12 )
在表达式(12)中,β和γ分别表示正系数,RTT表示在预定时间中往返传播延迟的平均值,并且N表示往返传播延迟的抖动(jitter)。也就是说,在表达式(12)中,在预定时间中的平均值与抖动之和(βRTT+γN)是最大往返传播延迟。如表达式(12)中所示,冗余编码控制部分121确定FEC块大小,以便随着最大往返传播延迟增大,FEC块大小变得更小。通过这种方式,冗余编码控制部分121可以基于传播延迟的最大值来确定FEC块大小,并且可以在具有传播延迟的瞬间增大的情况下防止延迟时间的不必要增大。也就是说,冗余编码控制部分121可以抑制整个延迟(除了主要延迟之外,还包括网络110的传播延迟)的波动。
在这一点上,用于获取最大往返传播延迟的时间段是任何时段。例如,所述时间段可以是FEC块大小的更新间隔。
处理流程的描述
接下来,将给出这种情况下各种处理的流程的示例的描述。在这种情况下由传输设备101执行的传输处理的流程与参照图26中的流程图所述的相同,并且因此将省略其描述。
将参照图29的流程图,给出在图26的步骤S202中所执行的块大小和冗余确定处理的示例的描述。该流程图对应于图27中的流程图,并且基本上以相同的方式执行处理。
也就是说,以与图27中的步骤S221相同的方式执行步骤S241的处理。在步骤S242,最大往返传播延迟计算部分321计算往返传播延迟的最大值(最大往返传播延迟)。在步骤S243,FEC块大小确定部分201通过使用在步骤S241和S242中获得的信息来获得每一等级的FEC块大小。
以与图27中的步骤S224和S226的各个处理相同的方式执行从步骤S244到步骤S246的各个处理。
通过以这种方式进行控制,冗余编码控制部分121可以根据网络连接状态(如往返传播延迟和分组丢失率等)来动态地控制FEC块大小和冗余。
在这种情况下,同样仅可以动态地控制FEC块大小,并且可以将冗余固定在预定值。并且,例如,仅可以动态地控制FEC块大小,并且可以如参照图16和图22所述的那样,静态地控制(以传输处理的初始状态来控制)冗余。
6.第六实施例
传输设备的配置示例
在上文中,已经给出了动态或静态地控制FEC块大小和冗余的描述。然而,例如,冗余编码控制部分121可以根据网络连接信息来选择动态还是静态地控制FEC块大小和冗余。
图30是图示在那种情况下传输设备101的主要配置的示例的框图。在图30的示例中,RTCP通信部分301获取网络连接信息,该网络连接信息包括用于指示将哪种通信线路用于被连接到RTP传输部分124的网络110的网络信息。网络信息是指示网络110的通信线路的类型(如,内部网络、LAN(局域网)、因特网等)的信息。网络信息可以是任何信息,只要所述信息直接或间接地指示形成网络110的通信线路的类型。并且,网络信息可以是任何格式。
冗余编码控制部分121包括控制方法选择部分401、静态控制部分402和动态控制部分403。控制方法选择部分401基于RTCP通信部分301所获得的网络信息,选择并驱动静态控制部分402或动态控制部分403,以便控制FEC块大小和冗余。
静态控制部分402具有存储部分231。也就是说,静态控制部分402具有与在参照图21的描述的情况下的冗余编码控制部分121相同的配置,并执行相同的处理。也就是说,静态控制部分402在传输处理的初始状态下静态地确定FEC块大小和冗余。
动态控制部分403具有往返传播延迟计算部分311、FEC块大小确定部分201、分组丢失率计算部分312和冗余确定部分202。也就是说,动态控制部分403具有与在参照图25的描述的情况下的冗余编码控制部分121相同的配置,并执行相同的处理。也就是说,动态控制部分403根据网络连接信息来动态地确定FEC块大小和冗余。
例如,如果连接了传输设备101的网络110是相对稳定的通信线路(如,内部网络或LAN),则控制方法选择部分401选择静态控制部分402,并驱动静态控制部分402以确定FEC块大小和冗余。
并且,例如,如果连接了传输设备101的网络110是相对不稳定的通信线路(如因特网),则控制方法选择部分401选择动态控制部分403,并驱动动态控制部分403以确定FEC块大小和冗余。
处理流程的描述
在这种情况下,将参照图31中的流程图,给出由传输设备101执行的传输处理的流程的示例的描述。当开始传输处理时,在步骤S261,RTCP通信部分301获取网络信息。在步骤S262,冗余编码控制部分121的控制方法选择部分401基于网络信息,根据网络110的特性变化来选择控制方法。也就是说,如果网络110的特性变化相对较小,则控制方法选择部分401控制并驱动静态控制部分402。并且,如果网络110的特性变化相对较大,则控制方法选择部分401控制并驱动动态控制部分403。
在步骤S263,控制方法选择部分401确定是否已经选择了静态方法。如果确定已经选择了静态方法,则处理进行到步骤S264。在步骤S264,静态控制部分402静态地控制冗余编码,并引起传送数据。当完成步骤S264的处理时,终止传输处理。
并且,如果在步骤S263确定已经选择了动态方法,则处理进行到步骤S265。在步骤S265,动态控制部分403动态地控制冗余编码以引起数据传输。当完成步骤S265的处理时,终止传输处理。
以这种方式,冗余编码控制部分121可以根据连接了传输设备101的网络110的特性来选择适当的控制方法,并且可以通过所选的控制方法来控制冗余编码(确定FEC块大小和冗余)。也就是说,冗余编码控制部分121可以控制以传送数据,以便在抑制不必要延迟的增大的同时来进一步提高突发分组丢失弹性。
在这一点上,控制方法选择部分401可以静态地执行切换控制,但也可以执行动态控制。并且,例如,静态控制部分402可以具有与图16中所示的冗余编码控制部分121相同的配置,并可以执行相同的处理。并且,例如,静态控制部分402可以具有与图22中所示的冗余编码控制部分121相同的配置,并可以执行相同的处理。进一步,可以使用任何配置,只要静态地控制FEC块大小和冗余。
并且,例如,动态控制部分403可以具有与图25中所示的冗余编码控制部分121相同的配置,并且可以执行相同的处理。并且,例如,静态控制部分402可以具有与图28中所示的冗余编码控制部分121相同的配置,并可以执行相同的处理。进一步,可以使用任何配置,只要静态地控制FEC块大小和冗余。
如上所述,通过本发明,在对于视频压缩编码方法使用分级编码的情况下的多媒体流和实时通信中,可以在将延迟的增大抑制为最小的同时,执行尽可能地增大突发分组丢失弹性的冗余编码传输。
特别地,当视频编码方法的处理延迟较小时,可以将由于冗余编码引起的延迟保持为最小。因此,变得可以以低延迟的最大利用来执行高质量传输,这是视频编码方法的优点。
并且,可以向低延迟(处理速度)赋予优先级,或者向突发分组丢失弹性赋予优先级,并通过根据延迟要求的强度和数据丢失弹性的要求强度来调整参数,从而进行调整。
如上所述,通过本发明,可以通过用于分组丢失恢复的分级编码对已经经历了的压缩编码的视频数据执行冗余编码。并且,通过本发明,在具有低延迟的实时传输的情况下,可以执行具有高突发丢失弹性的传输,而不显著地增大关于冗余编码的延迟。进一步,产生对于每一等级的独立冗余编码块,并且根据依赖于每一等级的输入视频数据范围的大小来调整冗余编码块大小,由此可以抑制延迟的显著增大。并且,通过本发明,通过根据冗余编码块大小来针对每一等级调整冗余,可以在所有等级中获得相同的恢复性能。进一步,通过本发明,可以针对每一等级来根据数据优先级调整目标恢复性能,并且可以进一步根据该值来调整冗余。
上述一系列处理可以通过硬件执行或者可以通过软件执行。在这种情况下,例如,可以将本发明的实施例配置为如图32所示的个人计算机。
参照图32,个人计算机700的CPU(中央处理单元)701根据存储在ROM(只读存储器)702中的程序或从存储部分713加载到RAM(随机存取存储器)703的程序来执行各种处理。并且,RAM 703适当地存储CPU 701执行各种处理所需的数据等。
CPU 701、ROM 702和RAM 703通过总线704相互连接。总线704还连接到输入/输出接口710。
包括键盘、鼠标等的输入部分711、包括显示器(包括CRT(阴极射线管)、LCD(液晶显示器)、有机EL显示器(有机电致发光显示器)等)、扬声器等的输出部分712、包括硬盘、SSD(固态驱动器)等的存储部分713、包括调制解调器、LAN(局域网)接口、USB(通用串行总线)接口、IEEE(电气和电子工程师协会)1394接口、蓝牙接口、无线LAN接口等的通信部分714连接到输入/输出接口710。通信部分714通过网络(包括因特网)执行通信处理。
如果需要的话,驱动器715连接到输入/输出接口710。可移动式介质721(如磁盘、光盘、磁光盘或半导体存储器等)适当地加载到驱动器715,并且如果需要的话,将从其中读取的计算机程序安装到存储部分713中。
如果通过软件执行上述一系列处理,则从网络或记录介质安装软件的程序。
该记录介质不仅包括可移动式介质721(例如包括磁盘(包括软盘)、光盘(CD-ROM(致密盘-只读存储器))、DVD(数字多功能盘)、磁光盘(包括MD(迷你盘))或半导体存储器等),其存储将要与图32中所示的应用程序主单元独立地分配给用户的程序;而且还包括ROM 702(存储部分713中包含的硬盘),其存储处于预先并入到应用程序主单元的状态的程序等。
在这一点上,在本说明书中,由记录介质中记录的程序所描述的每一处理步骤并非必须根据所述顺序以时间序列处理,而是还包括将要并行或单独执行的处理。
并且,在本说明书中,系统表示包括多个装置(设备)的整个设备。
本发明包含与2008年12月12日向日本专利局提交的日本优先权专利申请JP 2008-316719中公开的主题有关的主题,将其全部内容通过引用的方式合并在此。
在这一点上,在上文中,可以将描述为一个设备(或处理部分)的组件分割和配置为多个设备(或处理部分)。相反,可以将描述为多个设备(或处理部分)的组件一起放置到一个设备(或处理部分)中。并且,可以将除了上述之外的组件添加到各个设备(或各个处理部分)的组件。进一步,如果整个系统的配置和操作基本上相同,则可以将某一设备(或处理部分)的一部分组件包括在另一设备(或另一处理部分)的组件中。也就是说,本发明的实施例不限于上述实施例。可以进行各种变化而不脱离本发明的要点。
本领域的技术人员应该理解,根据设计要求和其他因素,可以出现各种修改、组合、部分组合和变更,只要其在所附权利要求及其等价物的范围内即可。

Claims (12)

1.一种信息处理设备,包括:
编码部件,其用于从图像数据中产生以关于分辨率的重要性的降序次序所分级的分级数据,并且针对每一等级而对分级数据进行编码;
块大小确定部件,其用于基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,为每一等级确定块大小;
冗余确定部件,其用于基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,为每一等级确定冗余编码的冗余;以及
冗余编码部件,其用于基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,使用所述块大小确定部件为每一等级所确定的块大小而针对每一等级将分级数据进行分块,并针对每个块通过使用所述冗余确定部件所确定的冗余来执行冗余编码以产生分级数据的冗余数据,
其中,随着等级在等级的依赖性中具有更宽范围的依赖性,所述块大小确定部件将块大小设置为更大的值。
2.根据权利要求1所述的信息处理设备,
其中,所述块大小确定部件通过使用如下表达式来确定等级i中块的大小B(i):
B ( i ) = T + 1 , ( i = 1 ) T + 1 + Σ k = 1 i - 1 ( d ( k ) - 1 ) , ( i = 2,3 , . . . )
其中,T是允许延迟的扩展块的数目,而d(k)是等级k依赖的范围。
3.根据权利要求1所述的信息处理设备,
其中,所述冗余确定部件确定分级数据的分组数目k以及冗余数据的分组数目n-k,以便块丢失率的目标值Pt满足如下表达式:
P t ≥ 1 - Σ j = 0 n - k C j n p j ( 1 - p ) n - j , ( n > k )
其中,假设p为分组丢失率,n是块中分组的数目,Pt是块丢失率的目标值。
4.根据权利要求3所述的信息处理设备,
其中,所述冗余确定部件独立地为每一等级设置块丢失率的目标值Pt。
5.根据权利要求3所述的信息处理设备,进一步包括:
传输部件,其用于通过网络而将已经经历了所述冗余编码部件的冗余编码的分级数据的分组以及冗余数据的分组传送到另一信息处理设备;以及
分组丢失率计算部件,其用于计算另一信息处理设备中的分组丢失率在预定时间段中的平均值,
其中,在假设所述分组丢失率计算部件所计算出的预定时间段中的分组丢失率的平均值为p的情况下,所述冗余确定部件确定分级数据的分组数目k以及冗余数据的分组数目n-k。
6.根据权利要求1所述的信息处理设备,进一步包括:
传输部件,其用于通过网络而将已经经历了所述冗余编码部件的冗余编码的分级数据的分组以及冗余数据的分组传送到另一信息处理设备;以及
传播延迟计算部件,其用于计算在预定时间段中网络的传播延迟的平均值,
其中,所述块大小确定部件除了基于等级的依赖性之外,还基于所述传播延迟计算部件所计算出的传播延迟的平均值,来为每一等级确定块大小。
7.根据权利要求6所述的信息处理设备,
其中,所述块大小确定部件通过使用如下表达式来确定等级i中块的大小B(i):
B ( i ) = T + 1 - βRTT , ( i = 1 ) T + 1 - βRTT + Σ k = 1 i - 1 ( d ( k ) - 1 ) , ( i = 2,3 , . . . )
其中,T是允许延迟的扩展块的数目,d(k)是等级k依赖的范围,RTT是在预定时间段中传播延迟的平均值,而β是正数系数。
8.根据权利要求1所述的信息处理设备,进一步包括:
传输部件,其用于通过网络而将已经经历了所述冗余编码部件的冗余编码的分级数据的分组以及冗余数据的分组传送到另一信息处理设备;以及
最大传播延迟计算部件,其用于计算在预定时间段中传播延迟的最大值,
其中,所述块大小确定部件除了基于等级的依赖性之外,还基于所述最大传播延迟计算部件所计算出的传播延迟的最大值,来为每一等级确定块大小。
9.根据权利要求8所述的信息处理设备,
其中,所述块大小确定部件通过使用如下表达式来确定等级i中块的大小B(i):
B ( i ) = T + 1 - ( βRTT + γN ) , ( i = 1 ) T + 1 - ( βRTT + γN + Σ k = 1 i - 1 ( d ( k ) - 1 ) , ( i = 2,3 , . . . )
其中,T是允许延迟的扩展块的数目,d(k)是等级k依赖的范围,RTT是在预定时间段中传播延迟的平均值,N是传播延迟的抖动,而β和γ是正数系数。
10.根据权利要求1所述的信息处理设备,
其中,所述编码部件产生以关于信噪比SNR、空间分辨率或时间方向分辨率的重要性的降序次序所分级的分级数据,并针对每一等级而对分级数据进行编码。
11.根据权利要求1所述的信息处理设备,
其中,所述编码部件递归地重复关于图像数据或分级数据到多个子带的划分处理,以便为多个分级的子带中的每一个产生分级数据,并针对每一等级而对分级数据进行编码。
12.一种在处理图像数据的信息处理设备中处理信息的方法,所述方法包括如下步骤:
通过编码部件而从图像数据中产生以关于分辨率的重要性的降序次序所分级的分级数据,并且针对每一等级而对分级数据进行编码;
通过块大小确定部件而基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,为每一等级确定块大小;
通过冗余确定部件基于所述编码部件所产生的分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,为每一等级确定冗余编码的冗余;以及
通过冗余编码部件而基于分级数据的各片段之间的等级的依赖性或分级数据与图像数据之间的等级的依赖性,使用所述块大小确定部件为每一等级所确定的块大小来针对每一等级将分级数据进行分块,并针对每个块通过使用所述冗余确定部件所确定的冗余来执行冗余编码以产生分级数据的冗余数据,
其中,随着等级在等级的依赖性中具有更宽范围的依赖性,所述块大小确定部件将块大小设置为更大的值。
CN2009102583846A 2008-12-12 2009-12-14 信息处理设备和方法 Expired - Fee Related CN101754026B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP316719/08 2008-12-12
JP2008316719A JP4883076B2 (ja) 2008-12-12 2008-12-12 情報処理装置および方法

Publications (2)

Publication Number Publication Date
CN101754026A CN101754026A (zh) 2010-06-23
CN101754026B true CN101754026B (zh) 2013-09-04

Family

ID=42240492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009102583846A Expired - Fee Related CN101754026B (zh) 2008-12-12 2009-12-14 信息处理设备和方法

Country Status (3)

Country Link
US (1) US8311122B2 (zh)
JP (1) JP4883076B2 (zh)
CN (1) CN101754026B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008307184A (ja) * 2007-06-13 2008-12-25 Fujifilm Corp 画像処理装置および画像処理プログラム
WO2011065294A1 (ja) * 2009-11-24 2011-06-03 日本電気株式会社 品質制御装置、動画送信システム、品質制御方法および記録媒体
JP4929393B1 (ja) * 2010-11-19 2012-05-09 株式会社東芝 受信装置、受信方法および受信プログラム
JP2013225761A (ja) * 2012-04-20 2013-10-31 Hitachi Ltd 符号化装置、復号装置、通信システム及び通信制御方法
CN104009819B (zh) * 2013-02-22 2018-08-07 南京中兴软件有限责任公司 基于分层编码的抗丢包实时通信方法、系统及相关设备
WO2014157857A1 (en) 2013-03-25 2014-10-02 Samsung Electronics Co., Ltd. Data communication method and apparatus using forward error correction
WO2014155471A1 (ja) * 2013-03-25 2014-10-02 日立マクセル株式会社 符号化方法および符号化装置
US9432144B2 (en) * 2014-09-12 2016-08-30 Ciena Corporation Precision time transfer systems and methods in optical networks
US10470000B2 (en) * 2016-02-12 2019-11-05 Samsung Electronics Co., Ltd. Methods and apparatus for enhanced MBMS content provisioning and content ingestion
US20190215102A1 (en) * 2016-08-30 2019-07-11 Nec Corporation Transmission terminal, transmission method and transmission program
CN108880754B (zh) * 2018-06-25 2020-04-10 西安电子科技大学 基于分级冗余机制的低时延信令、数据无线传输方法
US10594395B2 (en) 2018-07-23 2020-03-17 Ciena Corporation Systems and methods for compensating coherent optics delay asymmetry in a packet optical network
US10931516B2 (en) * 2018-09-26 2021-02-23 Hewlett Packard Enterprise Development Lp Network link failure detection
CN111464262B (zh) * 2020-03-18 2022-03-25 腾讯科技(深圳)有限公司 数据处理方法、装置、介质及电子设备
US11552722B2 (en) 2020-12-10 2023-01-10 Ciena Corporation Precision time protocol using a coherent optical DSP frame

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5477272A (en) * 1993-07-22 1995-12-19 Gte Laboratories Incorporated Variable-block size multi-resolution motion estimation scheme for pyramid coding
JPH0787483A (ja) * 1993-09-17 1995-03-31 Canon Inc 画像符号化復号化装置、画像符号化装置及び画像復号化装置
JPH11127138A (ja) * 1997-10-24 1999-05-11 Sony Corp 誤り訂正符号化方法及びその装置並びにデータ伝送方法
JP3722265B2 (ja) * 1999-06-30 2005-11-30 Kddi株式会社 ビデオ伝送方法および装置
JP2003152752A (ja) * 2001-08-29 2003-05-23 Matsushita Electric Ind Co Ltd データ送受信方法
JP2003087225A (ja) * 2001-09-12 2003-03-20 Nippon Telegr & Teleph Corp <Ntt> データ転送方法、データ転送システム、端末装置、データ転送プログラム、および記録媒体
JP4549610B2 (ja) * 2001-11-08 2010-09-22 ソニー株式会社 通信システム、通信方法、送信装置および方法、受信装置および方法、並びにプログラム
JP2003152544A (ja) * 2001-11-12 2003-05-23 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP2006339775A (ja) * 2005-05-31 2006-12-14 Kddi R & D Laboratories Inc スケーラブル動画像伝送システム
TW200727598A (en) * 2005-11-18 2007-07-16 Sony Corp Encoding/decoding device/method and the transmission system
JP4371120B2 (ja) * 2006-05-16 2009-11-25 ソニー株式会社 画像処理装置及び画像処理方法、プログラム及び記録媒体
JP4682914B2 (ja) * 2006-05-17 2011-05-11 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
JP4129694B2 (ja) * 2006-07-19 2008-08-06 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
JP4240331B2 (ja) * 2006-11-02 2009-03-18 ソニー株式会社 送信装置および方法、プログラム、並びに通信システム
JP4356742B2 (ja) * 2006-12-25 2009-11-04 ソニー株式会社 データ通信システム、データ送信装置およびデータ送信方法

Also Published As

Publication number Publication date
JP4883076B2 (ja) 2012-02-22
CN101754026A (zh) 2010-06-23
JP2010141659A (ja) 2010-06-24
US8311122B2 (en) 2012-11-13
US20100150243A1 (en) 2010-06-17

Similar Documents

Publication Publication Date Title
CN101754026B (zh) 信息处理设备和方法
US8527846B2 (en) Information processing device, method and program
US5966465A (en) Compression/decompression using reversible embedded wavelets
US6778709B1 (en) Embedded block coding with optimized truncation
US5881176A (en) Compression and decompression with wavelet style and binary style including quantization by device-dependent parser
US6757437B1 (en) Compression/decompression using reversible embedded wavelets
KR100995201B1 (ko) Fgs/pfgs 비디오 비트스트림들의 패킷화를 위한 방법, 시스템, 컴퓨터 판독가능 기록 매체
JP2000299863A (ja) 画像圧縮装置
US20070279265A1 (en) Image Coding with Scalable Context Quantization
WO2011037049A1 (ja) 画像処理装置および方法
WO2007083312A2 (en) Method and apparatus for a multidimensional discrete multiwavelet transform
US9232225B2 (en) Low complexity and memory efficient image CODEC
Yang et al. Robust transmission of SPIHT-coded images over packet networks
Rawat et al. Analysis and comparison of EZW, SPIHT and EBCOT coding schemes with reduced execution time
Cai et al. Layered unequal loss protection with pre-interleaving for fast progressive image transmission over packet-loss channels
Xiu et al. A modified SPIHT algorithm based on wavelet coefficient blocks for robust image transmission over noisy channel
CN101420608B (zh) 一种实现数据解码的方法和装置
Karthikeyan et al. Wavelet based image compression algorithms-a study
Senthilkumar et al. A performance analysis of EZW, SPIHT wavelet based compressed images
Arivazhagan et al. Evaluation of zero tree wavelet coders
Cai et al. Structure unanimity multiple description coding
Velamuri et al. Compression Efficiency of Different Embedded Image Compression Techniques with Huffman Encoding
Xue et al. Bandwidth efficient error resilience scheme for wavelet based video transmission
MATHEY et al. AN APPROACH ON PZW CODING TECHNIQUE USING SPHIT AND EZW CODING
Bhattar et al. Strip based embedded coding of wavelet coefficients for large images

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130904

Termination date: 20151214

EXPY Termination of patent right or utility model