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

信息处理设备和方法 Download PDF

Info

Publication number
CN101854556A
CN101854556A CN201010140576A CN201010140576A CN101854556A CN 101854556 A CN101854556 A CN 101854556A CN 201010140576 A CN201010140576 A CN 201010140576A CN 201010140576 A CN201010140576 A CN 201010140576A CN 101854556 A CN101854556 A CN 101854556A
Authority
CN
China
Prior art keywords
code stream
data
parts
messaging device
permissible speed
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.)
Granted
Application number
CN201010140576A
Other languages
English (en)
Other versions
CN101854556B (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 CN101854556A publication Critical patent/CN101854556A/zh
Application granted granted Critical
Publication of CN101854556B publication Critical patent/CN101854556B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4425Monitoring of client processing errors or hardware failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • H04N21/6379Control signals issued by the client directed to the server or network components directed to server directed to encoder, e.g. for requesting a lower encoding rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/6473Monitoring network processes errors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本发明公开了一种信息处理设备和方法。所述信息处理设备包括:编码部件,对图像数据进行编码以生成码流,所述图像数据要被发送到另一个信息处理设备;控制部件,基于码流的数据量是否超过容许速率来控制是否要发送码流的主数据,所述容许速率是码流可无损地传输的比特率的上限值;打包部件,根据由控制部件执行的控制,在码流的数据量不超过容许速率时将码流打包,而在码流的数据量超过容许速率时仅对码流的报头打包;以及发送部件,将包发送到另一个信息处理设备。

Description

信息处理设备和方法
技术领域
本发明涉及信息处理设备和方法。具体地,本发明涉及一种能够抑制图像数据传输期间发生的图像质量恶化的信息处理设备和方法。
背景技术
已经提出了多种方案对图像数据进行编码。示例包括通过利用帧间相关和运动补偿来对某一时刻的运动画面中的多个帧执行压缩处理的MPEG-2(运动图像专家组2)和AVC(高级视频编码)技术,以及不利用帧间相关对每个帧执行处理的运动JPEG(联合图像专家组)和JPEG2000技术。
一般而言,前者的技术具有高压缩率和大延迟量的特性,而后者具有小延迟量和相对低的压缩率的特性。对于这些技术的主要图像编码方案来说,通常使用VBR(动态比特率)。
例如,日本未审查专利申请第2007-311924号公布中公开了一种方案,其中使用运动图像的每个画面中的多行作为一个压缩编码块来执行基于小波变换的压缩编码。在所公开的方案中,编码设备可以在输入画面中的所有数据之前开始压缩编码。当压缩数据通过网络传输并且接收端对压缩数据进行解码时,解码设备可以在接收画面中的所有数据之前开始解码处理。因此,当网络中的传输延迟量足够小时,在延迟量不大于帧间隔的情况下可以实现实时运动图像传输。
一般而言,图像数据采用上述技术进行编码和压缩并且作为压缩数据传输,以便减小传输信道中的负荷量。传输信道的带宽是有限的,从而其可传输速率具有上限。因此,编码的目标比特率通常设置为小于或者等于传输信道的传输速率的上限值。
发明内容
然而,例如,当由于场景的变化等图像突然变得复杂时,编码难度也突然增加。在这种情况下,作为图像数据的编码结果而生成的码流的数据量可能会暂时增加到超过目标比特率。例如,在日本未审查专利申请第2007-311924号公布所公开的方法中,还根据目标比特率对整个画面执行速率控制。然而,即使在同一画面中,取决于其中的位置,图像复杂度等也可能不同。因此,由于对于小于画面单元的编码处理单元来说比特率是变化的,比特率可能暂时超过目标比特率。
在这种情况下,当直接传输具有超过目标比特率的比特率的码流时,用于包重传和错误校正的频带被消耗,所述包重传和错误校正用于处理传输信道中发生的包丢失等。这可能会影响包传输和错误校正功能,导致运动图像的重放图像质量下降。
另外,例如,当接收端要在用于图像的图像数据传输的同时重放该图像时,通常必须按照预定的重放时序来执行帧重放准备(包括完成要重放的帧的传输、执行预定处理并且使帧进入其可以被重放的状态中)。因此,当码流的比特率超过传输信道的传输速率的上限值时,传输延迟量增加并且不能及时地传输数据以用于图像重放。此外,由于该影响也影响了后续的帧,因此运动图像的重放图像质量也会下降。
考虑到这种情形,期望可以抑制图像数据传输期间发生的图像质量恶化。
根据本发明的一个实施例,提供了一种信息处理设备。该信息处理设备包括:编码装置,用于对图像数据进行编码以生成码流,该图像数据要被发送到另一个信息处理设备;控制装置,用于基于由编码装置生成的码流的数据量是否超过容许速率来控制是否要发送码流的主数据,该容许速率是码流可无损地传输的比特率的上限值;打包装置,用于根据由控制装置执行的控制,在码流的数据量不超过容许速率时将码流打包,而在码流的数据量超过容许速率时仅对码流的报头打包;以及发送装置,用于将由打包装置打包的包发送到另一个信息处理设备。
在码流被保存在缓冲器中之前,控制装置可以控制是否要发送码流的主数据;打包装置可以读取保存在缓冲器中的码流并且对所读取的码流打包。
控制装置可以包括:监视装置,用于监视缓冲量,该量表示保存在缓冲器中的码流的数据量;容许速率设置装置,用于基于由监视装置监视的当前缓冲量以及传输信道的可传输比特率的上限值来设置容许速率,图像数据通过该传输信道传输到另一个信息处理设备;确定装置,用于确定码流的数据量是否超过由容许速率设置装置设置的容许速率;以及提供装置,用于将码流提供给缓冲器并且使码流保存在该缓冲器中。
控制装置还可以包括添加装置,该添加装置用于在确定装置确定码流的数据量超过容许速率时将标记信息添加到码流的报头。当标记信息被添加到码流的报头时,打包装置可以丢弃码流的主数据而仅对报头打包。
控制装置还可以包括目标速率设置装置,该目标速率设置装置用于基于传输信道的可传输比特率的上限值确定目标速率,该目标速率具有由编码装置执行的编码的码量的目标值。容许速率设置装置可以基于由监视装置监视的当前缓冲量以及由目标速率设置装置确定的目标速率来设置容许速率。
信息处理设备还可以包括获取装置,该获取装置用于获取表示码流的接收端数据丢失状态的反馈信息,该反馈信息从另一个信息处理设备发送。目标速率设置装置可以基于由获取装置获得的反馈信息确定目标速率。
编码装置可以包括:小波变换装置,用于对图像数据执行小波变换处理,小波变换处理是针对每个频带将图像数据的频率分量分解成低频分量和高频分量的分析滤波处理对低频分量递归执行预定次数的处理;量化装置,用于量化针对每个频带分解的频率分量;以及熵编码装置,用于对由量化装置量化的频率分量执行熵编码。
小波变换装置可以对图像数据的画面中每个包括连续行的分区执行小波变换处理。
根据本发明的另一个实施例,提供了一种信息处理方法。该信息处理方法包括以下步骤:使信息处理设备的编码装置对图像数据进行编码,以生成码流,该图像数据被发送到另一个信息处理设备;使信息处理设备的控制装置基于所生成的码流的数据量是否超过容许速率来控制是否要发送码流的主数据,该容许速率是码流可无损地传输的比特率的上限值;使信息处理设备的打包装置根据由控制装置执行的控制,在码流的数据量不超过容许速率时将码流打包,而在码流的数据量超过容许速率时仅对码流的报头打包;并且使信息处理设备的发送装置将包发送到另一个信息处理设备。
根据本发明的另一个实施例,提供了一种信息处理设备。该信息处理设备包括:接收装置,用于接收从另一个信息处理设备发送的码流;分析装置,用于分析由接收装置接收的码流的报头;丢失确定装置,用于基于由分析装置执行的分析的结果确定码流中的数据是否丢失;恢复装置,用于在丢失确定装置确定数据丢失时基于报头中包含的信息恢复丢失的数据;以及解码装置,用于对其丢失的数据由恢复装置恢复的码流或者由丢失确定装置确定为无数据丢失的码流的码流进行解码。
恢复装置可以通过使用基于报头中包含的量化参数的加权所选择的数据来恢复丢失的数据。
信息处理设备还可以包括发送装置,该发送装置用于将用于通知另一个信息处理设备关于数据丢失状态的反馈信息发送到另一个信息处理设备。
信息处理设备还可以包括:标记信息确定装置,用于根据由分析装置执行的分析的结果确定报头中是否存在由另一个信息处理设备添加的标记信息;以及生成装置,用于在丢失确定装置确定数据丢失并且标记信息确定装置确定不存在标记信息时生成反馈信息。
根据本发明的又一个实施例,提供了一种信息处理方法。该信息处理方法包括以下步骤:使信息处理设备的接收装置接收从另一个信息处理设备发送的码流;使信息处理设备的分析装置分析所接收的码流的报头;使信息处理设备的丢失确定装置基于分析的结果确定码流中的数据是否丢失;使信息处理设备的恢复装置在确定数据丢失时基于报头中包含的信息恢复丢失的数据;并且使信息处理设备的解码装置对其丢失的数据被恢复的码流或者被确定为无数据丢失的码流的码流进行解码。
根据本发明的一个实施例,对要发送到另一个信息处理设备的图像数据进行编码,以生成码流。基于所生成的码流的数据量是否超过容许速率来控制是否要发送码流的主数据,该容许速率是码流可无损地传输的比特率的上限值。根据该控制,在码流的数据量不超过容许速率时将码流打包,而在码流的数据量超过容许速率时仅对码流的报头打包。包被发送到另一个信息处理设备。
根据本发明的另一个实施例,接收从另一个信息处理设备发送的码流。分析所接收的码流的报头。基于分析的结果确定码流中的数据是否丢失。当确定数据丢失时,基于报头中包含的信息恢复丢失的数据。对其丢失的数据被恢复的码流进行解码,或者对被确定为无数据丢失的码流的码流进行解码。
根据本发明的多个实施例,可以执行高效的信息处理。具体地,可以抑制图像数据传输期间发生的图像质量恶化。
附图说明
图1是示出了根据本发明的一个实施例的通信系统的主要配置示例的框图;
图2是示出了图1中所示的编码器的主要配置示例的框图;
图3A和3B示出了小波变换;
图4示出了子频带;
图5A和5B示出了基于行的小波变换;
图6是示出了图1中所示的发送设备中的控制器的主要配置示例的框图;
图7是示出了图1中所示的打包处理器的主要配置示例的框图;
图8是示出了图1中所示的接收设备中的控制器的主要配置示例的框图;
图9是示出了图1中所示的解码器的主要配置示例的框图;
图10A和10B示出了基于行的小波反变换;
图11是示出了发送处理的流程示例的流程图;
图12是示出了编码处理的流程示例的流程图;
图13示出了发送控制处理的流程示例的流程图;
图14是示出了打包处理的流程示例的流程图;
图15是示出了速率控制处理的流程示例的流程图;
图16是示出了接收处理的流程示例的流程图;
图17是示出了接收控制处理的流程示例的流程图;
图18是示出了解码处理的流程示例的流程图;以及
图19是示出了根据本发明的一个实施例的个人计算机的主要配置示例的框图。
具体实施方式
下面将描述用于实现本发明的方式(下文中称为“实施例”)。
[通信系统的配置]
图1是示出了根据本发明的一个实施例的通信系统的主要配置示例的框图。
图1中所示的通信系统100包括通过传输信道互连的发送设备101和接收设备102。发送设备101通过传输信道将图像数据发送到接收设备102。
发送设备101对输入图像数据进行编码并且通过传输信道将所编码的数据发送到接收设备102。发送设备101包括输入接口(I/F)111、编码器112、控制器113、发送缓冲器114、打包处理器115、以及发送接口(I/F)116。
如箭头131所示,输入接口111接收外部输入到发送设备101的图像数据,并且如箭头132所示,将所接收的图像数据提供给编码器112。
编码器112对针对每个预定数据单元(例如,针对几行)的输入图像数据进行编码,并且将得到的码流提供给控制器113,如箭头133所示。编码器112根据由从控制器113提供的速率控制信息所指定的目标速率来控制编码速率。
控制器113控制是否要发送由编码器112生成的码流的主数据部分。
更具体地,例如,控制器113基于从接收设备102提供的反馈信号指定要由编码器112执行的编码处理的目标速率,并且将目标速率提供给编码器112作为速率控制信息,如箭头154所示。
如左右箭头155所示,控制器113还监视发送缓冲器114,并且获取表示保存在发送缓冲器114中的码流的数据量(缓冲量)的缓冲量信息。基于速率控制信息和缓冲量信息,控制器113设置表示可以由发送缓冲器114保存的数据量的容许速率。
另外,在执行控制以使得要发送的码流的量不超过容许速率时,控制器113将从编码器112提供的码流提供给发送缓冲器114,如箭头134所示。
发送缓冲器114暂时保存从控制器113提供的码流。基于来自打包处理器115的请求等,发送缓冲器114以预定时序将所保存的码流提供给打包处理器115,如箭头135所示。
如左右箭头155所示,发送缓冲器114响应于来自控制器113的请求向控制器113发出表示缓冲量信息的通知。
打包处理器115从发送缓冲器114中读取码流、将码流打包、并且将包提供给发送接口116,如箭头136所示。在处理期间,对于被确定为超过码流的容许速率的部分,打包处理器115仅对码流的报头打包并且丢弃码流的主数据部分。
发送接口116通过传输信道将从打包处理器115提供的包发送到接收设备102,如箭头137所示。
该传输信道可以是任何信道,从而可以是设备中的传输信道,比如PCI(外设部件互连)总线。传输信道也可以是标准化线缆,诸如IEEE(电气和电子工程师协会)1394线缆或者USB(通用串行总线)线缆。另外,传输信道可以是网络,比如LAN(局域网)或者互联网。传输信道也可以是任何其它传输信道。不必说,图像数据不仅可以通过有线通信而且可以通过无线通信进行传输。在无线通信的情况中,传输信道是空间。另外,传输信道可以是多种类型传输信道的组合。
发送接口116接收通过传输信道从接收设备102发送的反馈信息。发送接口116将所接收的反馈信息提供给控制器113,如箭头153所示。不必说,反馈信息可以是经打包的反馈信息,在这种情况下,可以采用任意方法对反馈信息进行解包,在此不作描述。
接收设备102对从发送设备101提供的码流进行解码,并且输出所得到的图像数据。接收设备102包括发送接口(I/F)121、解包处理器122、接收缓冲器123、控制器124、解码器125以及输出接口(I/F)126。
发送接口121接收通过传输信道从发送设备101发送的码流包。发送接口121将所接收的包提供给解包处理器122,如箭头138所示。
发送接口121通过传输信道将从控制器124提供的反馈信息发送到发送设备101,如箭头152所示。可对反馈信息打包以用于发送。由于可以采用任意方法打包,因此这里不再给出其描述。
解包处理器122对从发送接口121提供的包进行解包,并且提取由发送设备101生成的码流。解包处理器122将所提取的码流提供给接收缓冲器123,如箭头139所示,并且使码流保存在接收缓冲器123中。
接收缓冲器123暂时保存从解包处理器122提供的码流。基于来自控制器124的请求等,接收缓冲器123以预定时序将所保存的码流提供给控制器124,如箭头140所示。
控制器124读取保存在接收缓冲器123中的码流,并且将所读取的码流提供给解码器125,如箭头141所示。此时,控制器124适当地检测码流中的数据丢失并且恢复码流中丢失的数据。
控制器124还适当地生成表示码流的数据丢失状态的反馈信息,并且将该反馈信息提供给发送接口121,如箭头151所示。反馈信息是发送设备101用来控制目标速率以及确定容许速率的信息,并且通过发送接口121发送到发送设备101。
采用对应于由编码器112执行的编码的方案,解码器125对从控制器124提供的码流进行解码,以生成基带图像数据。解码器125将所生成的基带图像数据提供给输出接口126,如箭头142所示。
输出接口126将从解码器125提供的基带图像数据提供到接收设备102的外部,如箭头143所示。
在具有上述配置的通信系统100中,当码流的比特率超过可传输速率的上限值时,发送设备101仅发送报头部分而不发送码流的主数据部分。
使用该布置,发送设备101可以抑制传输信道中频带的过度消耗。即,发送设备101可以抑制用于包重传和错误校正的频带的消耗,所述包重传和错误校正用于处理传输信道中发生的包丢失等,因而可以抑制运动图像的重放图像质量的下降。
另外,即使当通信系统100在用于图像的图像数据传输的同时重放该图像时,发送设备101也可以通过执行上述处理来抑制发送量的增加。因此,可以抑制传输延迟量的增加。即,发送设备101可以及时发送数据用于图像重放。使用该布置,由于对后续数据发送的影响也减小了,因此发送设备101可以抑制运动图像的重放图像质量的下降。
即,通信系统100可以抑制图像数据传输期间发生的图像质量恶化。
接收设备102不仅重放所接收的图像数据,而且恢复码流中丢失的数据。另一方面,即使在码流的比特率超过可传输速率的上限值时,发送设备101也将报头部分发送到接收设备102。因此,对于发送设备101没有发送的部分,接收设备102可以参照该部分的报头。
即,在数据恢复期间,接收设备102可以参照编码时包含在报头中的信息,从而可以更适当地恢复数据。因此,接收设备102可以用更接近其原始未破坏图像的图像来执行数据恢复。结果,可以预期,与发送设备101完全不发送码流(即,既不发送报头也不发送数据)的情况相比,重放图像质量提高。即,通信设备100可以抑制图像数据传输期间发生的图像质量恶化。
发送设备101如上所述地发送报头,因此,对于被破坏的码流,接收设备102可以基于报头的存在/不存在来区分发送设备101未发送的部分和在传输期间由于包丢失所丢失的部分。
如上所述,接收设备102向发送设备101报告(发送接收结果的反馈)接收结果(例如,码流中数据丢失的状态)。基于反馈控制,发送设备101控制编码的目标速率。发送设备101还基于目标速率和缓冲量执行发送控制。
可能存在如下情况:即使能够获得足够的传输频带,发送设备101出于它无法跟上重放速度的原因也不发送码流。在这种情况中,可以仅丢弃相应部分的数据,并且不必降低下一次编码的目标速率。
然而,当接收设备102不能确定被破坏的码流的原因时,接收设备102向发送设备101报告整个码流丢失。即,即使在发送设备101不发送码流时,接收设备102也如同在传输期间丢失的情况一样向发送设备101发送报告。在接收到来自接收设备102的表示丢失的报告后,发送设备101相应地降低编码的目标速率。即,这会导致重放图像质量的恶化。
然而,如上所述,接收设备102可以基于发送设备101发送的报头的存在/不存在来区分发送设备101未发送的部分和在传输期间由于包丢失所丢失的部分。因此,接收设备102停止向发送设备101报告关于发送设备101未发送的部分,而仅向发送设备101报告在传输期间由于包丢失所丢失的部分。采用该布置,接收设备102使发送设备101能够抑制编码的目标速率的过度下降。因此,可以抑制运动图像的重放图像质量的下降。
即,通信系统100可以抑制图像数据传输期间发生的图像质量恶化。
下面将描述单个元件的细节。
[编码器]
图2是示出了图1中所示的编码器的主要配置示例的框图。如图2中所示,编码器112包括小波变换部件201、量化部件202以及熵编码部件203。
要处理的分区(当前图像)的图像数据从输入接口111提供给编码器112,如箭头131所示。编码器112中的小波变换部件201对所提供的图像数据执行小波变换。
分区是小波变换处理的单元,并且由画面中的连续行(也称作“行块(line block)”或者“片段(slice)”)组成。用于生成针对至少一行的由小波变换获得的最终分解层系数或者每个层级(每个子频带)的系数的基带图像数据被一起称作“分区”或者“行块”。
小波变换处理是在屏幕的水平方向和垂直方向两者上执行用于将输入数据分解为低频分量和高频分量的分析滤波处理的处理。一般而言,在离散小波变换中,在每个水平像素行上执行一维小波卷积,以将原始图像分解成两个子图像,即包含低频信息的子图像和包含高频信息的子图像。另外,通过在每个垂直像素列上执行类似的小波卷积,每个子图像被进一步分解成两个子图像,即低频信息的子图像和高频信息的子图像。
图3A和3B示出了分析滤波处理。图3A中所示的针对一帧的基带信号231被分解成图3B中所示的作为变换后信号232的四个子频带,即子图像(HH、HL、LH以及LL)。LL子图像具有垂直和水平低频分量两者。LH子图像具有水平低频分量和垂直高频分量。HL子图像具有水平高频分量和垂直低频分量。HH子图像具有垂直和水平高频分量两者。每个子图像具有原始图像尺寸的四分之一,并且包含原始图像四分之一那么多的数据点。
在LL子图像上重复执行这种分析滤波处理。例如,在图3A和3B中,处于第一分解层的、通过对原始图像执行小波变换获得的子图像被称作1HH、1HL、1LH以及1LL(未示出)。在该情况中,对1LL子图像进一步进行小波变换,并且分解成处于第二分解层的子图像2HH、2HL、2LH以及2LL(未示出)。另外,对2LL子图像进一步进行小波变换,并且分解成处于第三分解层的子图像3HH、3HL、3LH以及3LL。如上所述重复执行小波变换,以使得变换后信号232中的子图像具有分层结构。
以此方式,在小波变换中,递归式地重复对低频分量的分析滤波处理,以迫使低空间频带中的数据占据更小的区域,从而可以实现高效的压缩编码。
基于行的小波变换是采用每一行或者多行而不是整个图像作为编码单元来执行如上所述的小波变换的处理。
例如,对部分基带图像的行进行小波变换,以便生成图4中所示的变换后信号232中的1LL-1(未示出)、1LH-1、1HL-1以及1HH-1。此外,所生成的子频带的1LL-1进行小波变换,以便生成2LL-1、2LH-1、2HL-1以及2HH-1。
如上所述,对部分图像进行预定次数的小波变换,然后对下一部分的行类似地进行小波变换,以便生成1LL-2(未示出)、1LH-2、1HL-2以及1HH-2。此外,对1LL-2进行小波变换,以便生成2LL-2、2LH-2、2HL-2以及2HH-2。
如上所述,针对每个预定行数执行小波变换。顺序地对由小波变换得到的图像数据(小波系数数据)进行编码。即,针对每个预定行数执行编码。通过使用小于帧图像的编码单元进行编码,基于行的小波变换减小了编码和解码中涉及的延迟时间量,从而实现了数据传输期间延迟时间量的减小。
通过分析滤波处理获得的四个子频带的系数数据的行数小于在处理之前获得的系数数据的行数。例如,当对N行的系数数据执行分析滤波处理时,获得每个具有小于N的行数(例如,N/2行)的四个子频带。
因此,在图4的示例中,1HL-1、1LH-1以及1HH-1的每一个中的行数大于2LL-1、2HL-1、2LH-1以及2HH-1的每一个中的行数。类似地,1HL-2、1LH-2以及1HH-2的每一个中的行数大于2LL-2、2HL-2、2LH-2以及2HH-2的每一个中的行数。
处于同一分解层的子频带具有相同的行数。因此,例如,1HL-1、1LH-1以及1HH-1具有相同的行数,并且2LL-1、2HL-1、2LH-1以及2HH-1具有相同的行数。
例如,假设作为分析滤波处理的结果,在分解层降低一层时,获得了一半行数的系数数据。在该情况中,如图5A中所示,当同时对基带的八行执行垂直方向上的小波变换直到分解层3时,如图5B中所示,针对处于分解层3的每个子频带(3LL、3HL、3LH以及3HH)生成一行。在该情况下,处于分解层2的每个子频带(2HL、2LH以及2HH)中生成两行,并且处于分解层1的每个子频带(1HL、1LH以及1HH)中生成四行。
如上所述,用于生成针对至少一行的最低频率系数数据的基带像素数据的集合被称作“分区”或者“行块”。例如,在图5A和5B的情况中,图5A中所示的八行(阴影部分)对应于一个分区。分区也可以指进行分析滤波的所有子频带中的系数的集合(成行的单元(aligned units)的集合)。例如,分区可以指图5B中所示的所有阴影部分。系数数据的集合基本上与图5A中所示的基带图像数据的集合(阴影部分)相同。
画面中一个分区中的行数不一定必须与另一个分区中的行数相同。
返回参照图2,小波变换部件201针对每个分区执行如上所述的小波变换,以生成每个子频带的系数数据。小波变换部件201向量化部件202提供子频带系数数据,如箭头211所示。
量化部件202通过例如将系数除以量化步长来对由小波变换部件201生成的分量系数进行量化,从而生成量化系数。在该情况中,量化部件202可以为每个分区设置量化步长。量化部件202设置量化步长,以便达到由从控制器113提供的速率控制信息指定的目标速率。由于该分区包含某一图像区域中所有频率分量的系数,因此针对每个分区执行量化可以利用作为小波变换特征的多分辨率分析的优点。此外,由于可以通过仅仅确定整个屏幕上的分区数来实现上述处理,因此也可以减小量化的负荷量。
另外,由于图像信号的能量通常集中在低频分量处,并且有对人眼来说低频分量的恶化更明显的特性,因此对量化应用加权以使得低频分量的子频带中量化步长具有较小的值是有效的。这种加权允许向低频分量分配相对大量的信息,从而提高了整体主观图像质量。
量化部件202将量化系数数据提供给熵编码部件203,如箭头212所示。
熵编码部件203对由量化部件202生成的量化系数执行信源编码,以生成压缩的和编码的码流。信源编码可通过例如在JPEG 2000系统中使用的霍夫曼(Huffman)编码或者更高精度算术编码来实现。
在该情况中,其中要在其上执行熵编码的系数范围是与压缩效率直接相关的高度关键因素。例如,在JPEG系统中,对8×8块进行DCT(离散余弦变换),并且对所得到的64个DCT系数进行霍夫曼编码,从而压缩信息。即,64个DCT系数在熵编码的范围中。
与8×8块的DCT不同,小波变换部件201对每行执行小波变换。因此,熵编码部件203针对每个分区在每个频带(子频带)中独立于另一个频带执行信源编码。熵编码部件203将所得到的码流提供给控制器113,如箭头132所示。
在小波变换处理中,按照从高频分量到低频分量的顺序生成子频带的系数数据。相反,在小波反变换处理中,按照从低频分量到高频分量的顺序生成子频带的系数数据。因此,为了减小延迟时间量,小波变换部件201可以重新排列所生成的系数数据,以使得低频分量的系数数据首先被提供给量化部件202。
[控制器]
图6是示出了图1中所示的发送设备101中的控制器113的主要配置示例的框图。如图6中所示,控制器113包括缓冲量监视部件251、容许速率设置部件252、数据获取部件253、速率确定部件254、标记添加部件255以及数据提供部件256。
如箭头155A所示,缓冲量监视部件251以预定时序向发送缓冲器114发送请求。如箭头155B所示,缓冲量监视部件251获取从发送缓冲器114提供的作为对请求的响应的缓冲量信息。箭头155A和155B对应于图1中所示的左右箭头155。
缓冲量信息表示在当前时间点处保存在发送缓冲器114中的码流的数据量。可以以任何时序获得这一缓冲量信息。例如,可以以规则或者不规则间隔获得缓冲量信息。一般而言,期望以每次编码器112处理分区时获取最近信息的频率获取缓冲量信息。然而,当提高获取缓冲量信息的频率时,负荷量也会增加。因此,频率的过度提高不是优选的。
缓冲量监视部件251将所获得的缓冲量信息提供给容许速率设置部件252,如箭头261所示。
容许速率设置部件252基于从速率控制部件258提供的速率控制信息以及从缓冲量监视部件251提供的缓冲量信息来设置容许速率。
容许速率表示码流可无损地传输的比特率的上限值。如上所述,传输信道的可传输比特率(传输速率)具有上限。因此,码流的比特率必须低于或者等于传输速率。然而,由于被缓存的码流首先传输,因此延迟时间量随着缓冲量变大而增大。因此,为了防止传输速度变得低于重放速度(即,为了减小延迟时间量),码流的比特率必须随着缓冲量的增加而降低。
这里所使用的术语“容许速率”指的是如上所述码流可(无损地)传输的及时用于比如重放处理和解码处理的接收端处理,而不引起包重传、错误校正等的性能的任何下降的码流比特率(数据容量)的上限值。
即,基于缓冲量和目标速率(即,传输信道的可传输比特率的上限值)来确定容许速率,目标速率由速率控制信息表示并且具有编码处理中码量的目标值。例如,容许速率设置部件252可以预先保存表信息,根据该表信息,基于目标速率和缓冲量而确定容许速率。在该情况中,通过参照表信息,容许速率设置部件252可以获取对应于输入目标速率和缓冲量的容许速率。
例如,容许速率设置部件252可以预先保存预定函数,根据该预定函数,基于目标速率和缓冲量而确定容许速率。在这种情况中,基于该函数,容许速率设置部件252可以通过采用输入目标速率和缓冲量作为变量来确定容许速率。不必说,可以使用另外的方法。用于确定容许速率的方法可以是基于目标速率和缓冲量确定容许速率的任何方法。
容许速率设置部件252将如上所述确定的容许速率经由数据获取部件253提供给速率确定部件254,如箭头263和264所示。
如箭头133所示,数据获取部件253获取从编码器112提供的码流。如箭头264所示,数据获取部件253将从编码器112获得的码流连同从容许速率设置部件252获得的容许速率一起提供给速率确定部件254。
速率确定部件254将由数据获取部件253获得的码流的数据量和容许速率进行比较,以确定码流的数据量是否超过容许速率。在这种情况下,一般以规则的间隔获取码流,因此,码流的数据量等于速率。
如箭头265所示,速率确定部件254将确定的结果(比较的结果)连同码流一起提供给标记添加部件255。
当速率确定部件254确定码流的数据量超过容许速率时,标记添加部件255将表示禁止传输的不完整标记添加到码流的报头。
如下所述,打包处理器115利用不完整标记来确定是否要发送码流的主数据部分。对于码流中未设置不完整标记的部分,打包处理器115执行控制以便将该部分的主数据发送到接收设备102,而对于码流中设置有不完整标记的部分,打包处理器115则丢弃码流的主数据并且仅将码流的报头部分发送到接收设备102。
如下所述,接收设备102中的控制器124也参照不完整标记。基于不完整标记的存在/不存在,控制器124执行关于是否报告数据丢失的控制。
不完整标记可以添加到报头中的任何位置。由于不完整标记的信息足以仅仅表示是否设置了标记,因此该信息可具有至少一位。
可以以任何间隔添加不完整标记。例如,可针对每个分区添加、可针对每个分解层添加、或者可针对每个子频带添加不完整标记。换言之,速率确定部件254可以以任何时序作出确定。
例如,可以如此布置,以使得速率确定部件254针对每个子频带作出确定,并且标记添加部件255针对每个子频带执行不完整标记添加操作(包括关于是否添加不完整标记的确定和用于根据确定的结果实际添加不完整标记的处理两者)。例如,也可以如此布置,以使得速率确定部件254针对每个子频带作出确定,并且标记添加部件255针对每个分区执行不完整标记添加操作。
即,在这种情况中,所有针对分区的确定的结果被共同添加到针对该分区的报头。因此,通过参考报头部分,打包处理器115和控制器124可以检查分区中所有子频带的不完整标记。然而,由于不完整标记集中在一个部分中,因此丢失(诸如包丢失)的风险变高。
针对每个更小的单元频繁地进行速率确定使得可以更细致地控制是否要发送码流。然而,在这种情况中,不仅确定处理中的负荷量增加,而且不完整标记的数据量也增加。由接收设备102中的控制器124执行的控制的负荷量也增加。因此,期望以适当的频率进行速率确定。
如箭头266所示,标记添加部件255将具有根据速率确定的结果向其添加不完整标记的报头的码流提供给数据提供部件256。
如箭头134所示,数据提供部件256将从标记添加部件255提供的码流提供给发送缓冲器114,并且使码流保存在发送缓冲器114中。
如上所述,在由发送缓冲器114保存码流之前的阶段中,控制器113确定是否要发送码流(其主数据部分)。相反,也可以采用如下方法:由发送缓冲器114暂时保存码流,并且在输出码流时确定是否要发送该码流(其主数据部分)。然而,这种方法涉及紧邻在发送之前检查要发送的数据量和在重放之前剩余的时间量,并且确定是否要执行发送。相应地,延迟时间量增加。这种延迟时间量的增加可以由于控制器113确定是否要执行发送而减小。
这里的描述是在假设发送缓冲器114的存储容量基本上是无限的而无需对其给予特定考虑的情况下给出的。然而,实际上,发送缓冲器114的存储容量是有限的。当存储容量不足够大时,一般必须考虑存储容量。
例如,即使在所确定的容许速率较高的情况中,当发送缓冲器114的空闲空间小于容许速率时,超过空闲空间的码流也不被保存在发送缓冲器114中。在这种情况中,可以如此布置,以使得数据提供部件256仅使报头保存在发送缓冲器114中而丢弃主数据部分。
例如,也可以如此布置,以使得对于设置不完整标记的部分,数据提供部件256丢弃该部分的所有主数据而仅使报头保存在发送缓冲器114中。
在这种情况中,可以预期保存在发送缓冲器114中的数据量减小。因此,由于用于发送缓冲器114的存储容量减小,因此可以降低成本。然而,在这种情况中,由于仅有部分(即,仅有报头)被保存在发送缓冲器114中,因此保存在发送缓冲器114中的数据结构可能变得复杂。因此,由打包处理器115执行的读取处理可能变得复杂,负荷量可能增加,并且延迟量可能增加。
当数据提供部件256丢弃关于将不发送的码流部分的所有主数据并且使其报头保存在发送缓冲器114中时,如同上述后一种情况中那样,打包处理器115可以根据主数据的存在/不存在来确定是否要发送码流。因此,该布置可以消除不完整标记。另外,根据主数据的存在/不存在,接收设备102中的控制器124也可以识别是发送设备101未发送码流还是在传输期间发生了丢失。然而,一般而言,检查添加到报头中预定位置的不完整标记的存在比检查报头以及检查主数据的存在/不存在更简单并且更准确。简化的处理导致负荷量的减小,从而抑制了延迟时间量的增加。
如上所述,通过不完整标记的使用,发送设备101可以容易地控制是否要发送码流。因此,可以抑制运动图像的重放图像质量的下降。
即,通信系统100可以更容易地抑制图像数据传输期间发生的图像质量恶化。
控制器113除速率控制部件258之外还具有反馈信息获取部件257。
反馈信息获取部件257经由发送接口116获取从接收设备102提供的反馈信息。反馈信息获取部件257将所获得的反馈信息提供给速率控制部件258,如箭头267所示。
反馈信息报告传输信道中发生的由于包丢失等的码流数据丢失。速率控制部件258基于从反馈信息获取部件257提供的反馈信息确定要由编码器112执行的编码处理的目标速率,并且将表示目标速率的速率控制信息提供给编码器112,如箭头154所示。
例如,当基于反馈信息确定码流中的丢失量较大时,速率控制部件258降低目标速率。当确定码流中的丢失量较小或者为零时,速率控制部件258提高目标速率。针对码流中某一丢失水平控制目标速率的具体方式是任意的。例如,可以编写预定函数和/或转换表,以使得速率控制部件258使用该函数和/或表来执行控制。
速率控制部件258还将速率控制信息提供给容许速率设置部件252,如箭头262所示。
[打包处理器]
图7是示出了图1中所示的打包处理器的主要配置示例的框图。如图7中所示,打包处理器115包括数据获取部件301、标记检测部件302、数据丢弃部件303、打包部件304以及包输出部件305。
如箭头135所示,数据获取部件301以预定时序从发送缓冲器114获取预定量的码流。例如,数据获取部件301以对应于传输速率的时序获取针对每个分区的码流。如箭头311所示,数据获取部件301将所获得的码流提供给标记检测部件302。
标记检测部件302参照由数据获取部件301获得的码流的报头来检测不完整标记。如箭头312所示,标记检测部件302将其被执行了标记检测的码流和标记检测的结果提供给数据丢弃部件303。
当标记检测部件302检测到不完整标记时,数据丢弃部件303丢弃包含在码流中的与报头相关联的部分,并且将剩余部分提供给打包部件304,如箭头313所示。
打包部件304将从数据丢弃部件303提供的码流打包。如箭头314所示,打包部件304将所生成的包提供给包输出部件305。如箭头136所示,包输出部件305将所提供的包输出到发送接口116。
如上所述,发送设备101对图像数据进行编码,将所得到的码流打包,并且将包发送到接收设备102。
[控制器]
接下来将描述接收设备102中控制器的细节。
图8是示出了图1中所示的接收设备102中控制器124的主要配置示例的框图。如图8中所示,控制器124包括数据获取部件351、报头分析部件352、反馈信息生成部件353、恢复处理器354、数据提供部件355、反馈信息保存部件356以及反馈信息提供部件357。
如箭头140所示,数据获取部件351以预定时序针对每个预定数据量获取保存在接收缓冲器123中的码流。例如,数据获取部件351以速率对应于由解码器125执行的解码处理的处理速度的时间间隔针对每个分区读取码流。如箭头361所示,数据获取部件351将所读取的码流提供给报头分析部件352。
报头分析部件352对从数据获取部件351提供的码流的报头进行分析,并且首先检查数据是否丢失。例如,基于报头中的识别信息等,报头分析部件352检查码流与上一次处理的分区是否连续,并且检查当前分区中是否有任何数据丢失。
报头分析部件352检查是否设置了不完整标记。可以在检查数据丢失之后或者检查数据丢失之前检查不完整标记。
当确定数据丢失并且没有设置不完整标记时,报头分析部件352确定在传输期间发生了涉及包丢失等的数据丢失。如箭头362所示,报头分析部件352将码流连同表示发生数据丢失的信息提供给反馈信息生成部件353。
另一方面,当确定数据丢失并且设置了不完整标记时,报头分析部件352确定数据丢失是由于发送设备101没有发送码流。如箭头363所示,报头分析部件352将码流提供给恢复处理器354。因此,在该情况中,数据丢失没有反映在反馈信息中。即,数据丢失不报告给发送设备101。因此,发送设备101确实基于数据丢失而使编码处理的目标速率降低。
如上所述,当报头分析部件352检测到不完整标记时,数据丢失不反映在反馈信息中。因此,接收设备102可以抑制编码的目标速率的过度降低。因此,接收设备102可以抑制运动图像的重放图像质量的下降。即,通信系统100可以抑制图像数据传输期间发生的图像恶化。
另外,当没有发现数据丢失时(自然地,当没有设置不完整标记时),由于不必恢复数据,因此报头分析部件352将码流提供给数据提供部件355,如箭头364所示。
响应于来自报头分析部件352的数据丢失通知,反馈信息生成部件353将数据丢失反映到反馈信息中。例如,反馈信息生成部件353将丢失了哪部分数据以及丢失了多少数据写入反馈信息。
如箭头367所示,反馈信息生成部件353将所生成的反馈信息提供给反馈信息保存部件356。可以以任意时序提供反馈信息。针对每个分区的反馈信息可以提供给反馈信息保存部件356,或者针对多个分区的反馈信息可以共同提供给反馈信息保存部件356。
如箭头365所示,反馈信息生成部件353将从报头分析部件352提供的码流提供给恢复处理器354。
对于其数据丢失并且从报头分析部件352或者反馈信息生成部件353提供的码流,恢复处理器354通过使用准备的空数据和/或相邻码流来恢复丢失部分。
此时,当丢失部分的报头包含在所提供的码流中时,恢复处理器354参照包含在报头中的信息并且基于该信息执行恢复处理。例如,如上所述,当发送设备101不发送主数据部分时,仅有报头包含在码流中。该报头包含例如由量化部件202执行的量化处理的量化参数。根据量化参数的加权,恢复处理器354执行诸如选择要恢复的数据的处理。使用该布置,恢复处理器354可以通过使用更类似于原始图像的适当数据来执行恢复处理。因此,接收设备102可以抑制运动图像的重放图像质量的下降。即,通信系统100可以抑制图像数据传输期间发生的图像恶化。不必说,可以如此布置,以使得恢复处理器354通过参照包含在报头中的其他信息来执行恢复处理。
如箭头366所示,恢复处理器354将丢失的数据被恢复的码流数据提供给数据提供部件355。如箭头141所示,数据提供部件355将从恢复处理器354或者报头分析部件352提供的无数据丢失码流提供给解码器125。
[解码器]
图9是示出了图1中所示的解码器的主要配置示例的框图。如图9中所示,解码器125包括熵解码部件401、逆量化(dequantizing)部件402以及小波反变换部件403。
如箭头141所示,熵解码部件401对从控制器124提供的码流执行信源解码,以生成量化系数数据。信源解码可通过与由熵编码部件203执行的信源编码相关的霍夫曼解码、高效算术解码等来实现。当熵编码部件203对P行执行信源编码时,熵解码部件401也在每个子频带中独立于另一个子频带地对P行执行信源解码。如箭头411所示,熵解码部件401将所获得的量化系数数据提供给逆量化部件402。
逆量化部件402通过将从熵解码部件401提供的量化系数数据乘以量化步长来对其进行逆量化,从而生成小波系数数据。量化步长一般在码流的报头等中被指定为量化参数等。当量化部件202具有针对每个分区设置的量化步长时,逆量化部件402也具有针对每个分区设置的逆量化步长,以执行逆量化。逆量化部件402将通过逆量化获得的小波系数数据提供给小波反变换部件403,如箭头412所示。
小波反变换部件403对从逆量化部件402提供的小波系数数据执行与由小波变换部件201执行的处理相反的处理。即,小波反变换部件403在水平和垂直两个方向上对由小波变换部件201分解成多个频带的系数数据执行滤波器处理(合成滤波处理)。在合成滤波处理中,对低频分量和高频分量进行组合。
即,在合成滤波处理中,以与分析滤波处理相对的方式对四个子频带(LL、HL、LH以及HH)的系数数据进行组合,以便生成处于更高一层的分解层的一个子频带的系数数据(或者基带的图像数据)。
如同在小波变换的情况中那样,小波反变换处理也以基于行的方式执行。即,当小波变换部件201针对每个分区执行小波变换时,小波反变换部件403也针对每个分区执行小波反变换。
在合成滤波处理中,如同在分析滤波处理的情况中那样,从合成滤波处理获得的一个子频带的系数数据(或者基带图像数据)的行数小于在处理之前获得的系数数据的行数。例如,当对四个子频带的每个中的N行系数数据执行合成滤波处理时,获得了具有小于N的行数(例如,N/2行)的一个子频带(或者基带)。
例如,假定由于合成滤波处理,当分解层提高一层时,获得一半行数的系数数据。在该情况中,如图10A中所示,当对处于分解层3的每个子频带中的八行执行小波反变换时,如图10B中所示,生成了针对一行的基带图像数据。在该情况中,如图10A中所示,除了处于分解层3的子频带之外,处于分解层2的子频带(2HL、2LH以及2HH)的每一个的四行以及处于分解层1的子频带(1HL、1LH以及1HH)的每一个中的两行是必需的。
在合成滤波处理中,例如,图10A中所示的每个子频带中的阴影部分或者图10B中所示的一行(阴影部分)对应于一个分区。
小波反变换部件403如上所述地执行基于行的小波反变换,以生成基带图像数据。小波反变换部件403将所生成的基带图像数据输出到输出接口126,如箭头142所示。
如上所述,通信系统100可以抑制图像数据传输期间发生的图像质量恶化。
尽管以上描述已经给出了不完整标记被添加到码流的报头的情况,但是不完整标记也可添加到包的报头并且发送到接收设备102。
然而,在这种情况中,在码流中用于定位由不完整标记表示的位置的信息可能是必不可少的。接收设备102也可能必须分析该信息以定位码流中相应的位置,因而涉及复杂的处理。
[由发送设备执行的处理流程]
接下来将描述由上述通信系统100执行的各种类型的处理的流程。
首先,将参照图11中所示的流程图描述由发送设备101执行的发送处理的流程示例。
在发送处理开始后,在步骤S101中,编码器112对一个分区的图像数据进行编码,从而生成码流,该图像数据是从输入接口111获得的。在步骤S102中,控制器113执行用于控制是否要发送在步骤S101中生成的码流的发送控制。更具体地,控制器113基于根据目标速率和缓冲量确定的容许速率来确定是否要发送码流,并且执行诸如将不完整标记添加到码流的报头的处理。
在步骤S103中,发送缓冲器114暂时保存码流。在步骤S104中,打包处理器115以预定时序从发送缓冲器114中读取码流,并且将所读取的码流打包。在步骤S105中,发送接口116通过传输信道将包发送到接收设备102。
在步骤S106中,发送接口116接收从接收设备102发送的反馈信息。在步骤S107中,控制器113基于在步骤S106的处理中接收的反馈信息执行速率控制。
在步骤S108中,编码器112确定发送处理是否完成。当确定发送处理没有完成时,进程返回到步骤S101并且重复随后的处理。当在步骤S108中确定发送处理完成时,发送处理结束。
接下来将更详细地描述图11的步骤S101中执行的编码处理。现在将参照图12中所示的流程图描述由编码器112执行的编码处理的流程示例。
在编码处理开始后,在步骤S121中,量化部件202获取速率控制信息。在步骤S122中,量化部件202基于速率控制信息控制量化步长。
在步骤S123中,小波变换部件201获取图像数据中要处理的分区。在步骤S124中,小波变换部件201对在步骤S123的处理中获得的分区执行小波变换,以生成针对每个子频带的小波系数数据。
在步骤S125中,通过使用在步骤S122的处理中控制的量化步长,量化部件202对在步骤S124的处理中生成的小波系数进行量化。
在步骤S126中,熵编码部件203对量化系数数据执行熵编码。在步骤S127中,熵编码部件203输出码流。
在步骤S128中,量化部件202确定编码处理是否完成。当确定编码处理没有完成时,进程返回到步骤S121并且执行随后的处理。当在步骤S128中确定编码处理完成时,编码处理结束。
接下来将更详细地描述图11中的步骤S102中执行的发送控制处理。现在将参照图13中所示的流程图描述由控制器113执行的发送控制处理的流程示例。
在发送控制处理开始后,在步骤S141中,缓冲量监视部件251监视发送缓冲器114中存储的码流的数据量(缓冲量),并且获取缓冲量信息。在步骤S142中,容许速率设置部件252基于速率控制信息和缓冲量信息设置容许速率。
在步骤S143中,数据获取部件253获取码流。在步骤S144中,速率确定部件254确定码流的比特率是否高于在步骤S142的处理中设置的容许速率。当确定码流的比特率高于容许速率时,进程继续到步骤S145。
在步骤S145中,标记添加部件255在码流中包含的报头中设置不完整标记。在步骤S145中的处理完成后,进程继续到步骤S146。当在步骤S144中确定码流的比特率不高于容许速率时,跳过步骤S145中的处理,进程继续到步骤S146。
在步骤S146中,数据提供部件256使码流保存在发送缓冲器114中。
在步骤S147中,缓冲量监视部件251确定数据控制处理是否完成。当确定数据控制处理没有完成时,进程返回到步骤S141并且重复随后的处理。当在步骤S147中确定数据控制处理完成时,发送控制处理结束。
接下来将更详细地描述在图11的步骤S104中执行的打包处理。现在将参照图14中所示的流程图描述由打包处理器115执行的打包处理的流程示例。
在打包处理开始后,在步骤S161中,数据获取部件301从发送缓冲器114中获取针对每个预定处理单元的码流。
在步骤S162中,标记检测部件302参照码流的报头来检测不完整标记。在步骤S163中,标记检测部件302确定是否检测到不完整标记。当确定检测到不完整标记时,进程继续到步骤S164。
在步骤S164中,数据丢弃部件303丢弃包含在码流中与其中设置有不完整标记的报头相关联的主数据。在丢弃主数据之后,进程继续到步骤S165。另一方面,当在步骤S163中确定没有检测到不完整标记时,进程继续到步骤S165。
在步骤S165中,打包部件304将码流打包。在步骤S166中,包输出部件305输出在步骤S165的处理中生成的包。
在步骤S167中,数据获取部件301确定打包处理是否完成。当确定打包处理没有完成时,进程返回到步骤S161并且重复随后的处理。当在步骤S167中确定打包处理完成时,打包处理结束。
接下来将更详细地描述图11的步骤S107中执行的速率控制处理。首先,将参照图15中所示的流程图描述由图6中的控制器113执行的速率控制处理的流程示例。
在速率控制处理开始后,在步骤S181中,反馈信息获取部件257获取反馈信息。在步骤S182中,速率控制部件258基于在步骤S181的处理中获得的反馈信息设置要由编码器112执行的编码的目标速率。
在步骤S183中,速率控制部件258将目标速率提供给编码器112作为速率控制信息。类似地,速率控制部件258还将速率控制信息提供给容许速率设置部件252。
在步骤S184中,反馈信息获取部件257确定速率控制处理是否完成。当确定速率控制处理没有完成时,进程返回到步骤S181并且重复随后的处理。当在步骤S184中确定速率控制处理完成时,速率控制处理结束。
通过上述各种类型的处理,发送设备101可以抑制运动图像的重放图像质量的下降。即,通信系统100可以抑制图像数据传输期间发生的图像质量恶化。
[由接收设备执行的处理流程]
接下来将描述由接收设备102执行的处理的流程示例。首先,将参照图16中所示的流程图描述由接收设备102执行的接收处理的流程示例。
在接收处理开始后,在步骤S201中,发送接口121接收从发送设备101发送的包。在步骤S202中,解包处理器122从在步骤S201的处理中接收的包中提取码流。在步骤S203中,接收缓冲器123保存码流。
在步骤S204中,控制器124从接收缓冲器123中读取码流并且对该码流执行接收控制。更具体地,控制器124执行诸如将数据丢失反映在反馈信息中以及恢复丢失的数据的处理。
在步骤S205中,解码器125对码流进行解码,以获得图像数据。在步骤S206中,输出接口126输出在步骤S205的处理中获得的图像数据。
在步骤S207中,发送接口121通过传输信道将在步骤S204的处理中生成的反馈信息发送到发送设备101。
在步骤S208中,发送接口121确定接收处理是否完成。当确定接收处理没有完成时,进程返回到步骤S201并且重复随后的处理。当在步骤S208中确定接收处理完成时,接收处理结束。
接下来将更详细地描述在图16的步骤S204中执行的接收控制处理。现在将参照图17中所示的流程图描述由控制器124执行的接收控制处理的流程示例。
在步骤S221中,数据获取部件351从接收缓冲器123中获取码流。在步骤S222中,报头分析部件352对在步骤S221的处理中获得的码流的报头进行分析。
在步骤S223中,报头分析部件352确定码流中的数据是否丢失。当确定数据丢失时,进程继续到步骤S224。在步骤S224中,报头分析部件352检查是否设置了不完整标记。当确定没有设置不完整标记时,进程继续到步骤S225。
在步骤S225中,反馈信息生成部件353生成表示数据丢失的反馈信息。在步骤S226中,反馈信息保存部件356保存在步骤S225的处理中生成的反馈信息。
当保存了反馈信息时,进程继续到步骤S227。当在步骤S224中确定设置了不完整标记时,跳过步骤S225和S226中的处理,进程继续到步骤S227。
在步骤S227中,恢复处理器354适当地参照报头恢复丢失的数据。在恢复处理完成后,进程继续到步骤S228。当在步骤S223中确定不存在数据丢失时,跳过步骤S224到S227中的处理,进程继续到步骤S228。
在步骤S228中,数据提供部件355将码流提供给解码器125。在步骤S229中,反馈信息提供部件357读取保存在反馈信息保存部件356中的反馈信息,并且将所读取的反馈信息提供给发送接口121。
在步骤S230中,数据获取部件351确定接收控制处理是否完成。当确定接收控制处理没有完成时,进程返回到步骤S221并且重复随后的处理。当在步骤S230中确定接收控制处理完成时,接收控制处理结束。
接下来将更详细地描述在图16的步骤S205中执行的解码处理。现在将参照图18中所示的流程图描述解码器125执行的解码处理的流程示例。
在解码处理开始后,在步骤S251中,熵解码部件401获取码流。在步骤S252中,通过采用对应于由熵编码部件203执行的熵编码的方案,熵解码部件401对在步骤S251的处理中获得的码流执行熵解码,以获取系数数据。
在步骤S253中,逆量化部件402根据在由量化部件202执行的量化处理中的量化步长,对在步骤S252的处理中获得的系数数据进行逆量化。
在步骤S254中,通过采用对应于由小波变换部件201执行的小波变换的方案,小波反变换部件403对逆量化系数数据执行小波反变换,以获得基带图像数据。在步骤S255中,小波反变换部件403将在步骤S254的处理中获得的图像数据提供给输出接口126。
在步骤S256中,熵解码部件401确定解码处理是否完成。当确定解码处理没有完成时,进程返回到步骤S251并且重复随后的处理。当在步骤S256中确定解码处理完成时,解码处理结束。
通过上述各种类型的处理,接收设备102可以抑制运动图像的重放图像质量的下降。即,通信系统100可以抑制图像数据传输期间发生的图像质量恶化。
[个人计算机的配置]
上述一系列处理可以通过硬件或者软件来执行。当要通过软件来执行这一系列处理时,包括在软件中的程序例如从程序存储介质安装到能够通过各种程序的安装来执行各种功能的并入到专用硬件的计算机或通用个人计算机等中。
可以通过例如图19中所示的个人计算机来实现可以通过硬件或者软件来执行的上述一系列处理。
在图19中,个人计算机500具有CPU(中央处理单元)501,CPU 501根据存储在ROM(只读存储器)502中的程序或者从存储部件513加载到RAM(随机存取存储器)503中的程序来执行各种类型的处理。RAM503也适当地存储例如CPU 501用来执行各种类型的处理的数据。
CPU 501、ROM 502以及RAM 503通过总线504互连。总线504还连接到输入/输出接口510。
输入部件511、输出部件512、存储部件513以及通信部件514连接到输入/输出接口510。输入部件511包括键盘、鼠标等。输出部件512包括例如显示器(诸如CRT(阴极射线管)显示器或者LCD(液晶显示器))和扬声器。存储部件513包括硬盘等。通信部件514包括调制解调器等。通信部件514通过网络(包括互联网)执行通信处理。
驱动器515还适当地连接到输入/输出接口510。其上记录有程序的可移除介质521被适当地加载到驱动器515中,并且从中读取的计算机程序被适当地安装在存储部件513上。可移除介质521的示例包括磁盘(包括软盘)、光盘(包括CD-ROM[致密盘-只读存储器]、DVD[数字多功能盘]以及磁光盘(包括MD[迷你盘]))以及半导体存储器。
当通过软件来执行上述一系列处理时,通过网络或者从存储介质安装包括在该软件中的程序。
例如,如图19中所示,存储介质不仅可以是分发给用户以独立于设备的主单元而提供程序的可移除介质521,而且也可以是在存储部件513或者ROM 502预先安装在设备的主单元中的状态下要分发给用户的包括在存储部件513中的硬盘(其上记录有程序)或者ROM 502。
通过计算机执行的程序可以是根据上述次序按时间顺序地执行处理的程序、可以是并行执行处理的程序、或者可以是以任意时序(例如,在调用程序时)执行处理的程序。
这里,描述记录在存储介质上的程序的步骤不仅包括根据所述次序按时间顺序地执行的处理,也包括同时或者单独地执行而不一定按照时间顺序地处理的处理。
这里所使用的术语“系统”指的是由多个设备组成的整体。
也可以对以上被描述为单个设备(或者单个处理器)的元件进行分割,以构成多个设备(或者处理器)。相反,可以将以上被描述为多个设备(或者处理器)的元件集成在一起,以构成单个设备(或者单个处理器)。不必说,除上述那些元件之外的元件也可以添加到上述单独的设备(或者处理器)的配置中。另外,当整个系统的配置和操作基本上相同时,一个设备(或者处理器)的部分配置可以合并到另一个设备(或者处理器)的配置中。即,本发明的实施例不限于上述特定实施例,而是可以在不背离本发明的精神和范围的情况下对其进行各种改变和修改。
本申请包含与2009年3月30日提交于日本专利局的日本在先专利申请JP 2009-083255中公开的主题相关的主题,所述日本在先专利申请的整体内容通过引用合并于此。
本领域的技术人员应该理解,根据设计要求和其他因素,可以进行各种修改、组合、子组合和改变,只要这些修改、组合、子组合和改变在所附权利要求或其等同内容的范围内。

Claims (28)

1.一种信息处理设备,包括:
编码装置,用于对图像数据进行编码以生成码流,所述图像数据将被发送到另一个信息处理设备;
控制装置,用于基于由所述编码装置生成的码流的数据量是否超过容许速率来控制是否要发送所述码流的主数据,所述容许速率是所述码流可无损地传输的比特率的上限值;
打包装置,用于根据由所述控制装置执行的控制,在所述码流的数据量不超过所述容许速率时将所述码流打包,而在所述码流的数据量超过所述容许速率时仅对所述码流的报头打包;以及
发送装置,用于将由所述打包装置打包的所述包发送到所述另一个信息处理设备。
2.根据权利要求1所述的信息处理设备,其中,在所述码流被保存在缓冲器中之前,所述控制装置控制是否要发送所述码流的主数据;以及
所述打包装置读取保存在所述缓冲器中的码流并且对所述读取的码流打包。
3.根据权利要求2所述的信息处理设备,其中所述控制装置包括:
监视装置,用于监视缓冲量,所述量表示保存在所述缓冲器中的码流的数据量;
容许速率设置装置,用于基于由所述监视装置监视的当前缓冲量以及传输信道的可传输比特率的上限值设置所述容许速率,所述图像数据通过所述传输信道被传输到所述另一个信息设备;
确定装置,用于确定所述码流的数据量是否超过由所述容许速率设置装置设置的容许速率;以及
提供装置,用于将所述码流提供给所述缓冲器,并且使所述码流保存在所述缓冲器中。
4.根据权利要求3所述的信息处理设备,其中所述控制装置还包括添加装置,用于在所述确定装置确定所述码流的数据量超过所述容许速率时将标记信息添加到所述码流的报头;并且
其中,当所述标记信息被添加到所述码流的报头时,所述打包装置丢弃所述码流的主数据而仅对所述报头打包。
5.根据权利要求3所述的信息处理设备,其中所述控制装置还包括目标速率设置装置,用于基于所述传输信道的可传输比特率的上限值确定目标速率,所述目标速率具有由所述编码装置执行的编码的码量的目标值;并且
其中所述容许速率设置装置基于由所述监视装置监视的当前缓冲量以及由所述目标速率设置装置确定的目标速率设置所述容许速率。
6.根据权利要求5所述的信息处理设备,还包括获取装置,用于获取表示所述码流的接收端数据丢失状态的反馈信息,所述反馈信息从所述另一个信息处理设备发送,
其中所述目标速率设置装置基于由所述获取装置获得的所述反馈信息确定所述目标速率。
7.根据权利要求1所述的信息处理设备,其中所述编码装置包括:
小波变换装置,用于对所述图像数据执行小波变换处理,所述小波变换处理是针对每个频带将所述图像数据的频率分量分解成低频分量和高频分量的分析滤波处理对低频分量递归执行预定次数的处理;
量化装置,用于量化针对每个频带所分解的频率分量;以及
熵编码装置,用于对由所述量化装置量化的所述频率分量执行熵编码。
8.根据权利要求7所述的信息处理设备,其中所述小波变换装置针对所述图像数据的画面中每个包括连续行的分区执行小波变换处理。
9.一种信息处理方法,包括以下步骤:
使信息处理设备的编码装置对图像数据进行编码以生成码流,所述图像数据将被发送到另一个信息处理设备;
使所述信息处理设备的控制装置基于所生成的码流的数据量是否超过容许速率来控制是否要发送所述码流的主数据,所述容许速率是所述码流可无损地传输的比特率的上限值;
使所述信息处理设备的打包装置根据由所属控制装置执行的控制,在所述码流的数据量不超过所述容许速率时将所述码流打包,而在所述码流的数据量超过所述容许速率时仅对所述码流的报头打包;以及
使所述信息处理设备的发送装置将所述包发送到所述另一个信息处理设备。
10.一种信息处理设备,包括:
接收装置,用于接收从另一个信息处理设备发送的码流;
分析装置,用于对由所述接收装置接收的所述码流的报头进行分析;
丢失确定装置,用于基于由所述分析装置执行的分析的结果确定所述码流中的数据是否丢失;
恢复装置,用于在所述丢失确定装置确定所述数据丢失时,基于所述报头中包含的信息恢复丢失的数据;以及
解码装置,用于对丢失的数据已经由所述恢复装置恢复的码流或者由所述丢失确定装置确定为无数据丢失的码流的码流进行解码。
11.根据权利要求10所述的信息处理设备,其中所述恢复装置通过使用基于所述报头中包含的量化参数的加权所选择的数据来恢复所述丢失的数据。
12.根据权利要求10所述的信息处理设备,还包括:发送装置,用于将用于通知所述另一个信息处理设备关于数据丢失的状态的反馈信息发送到所述另一个信息处理设备。
13.根据权利要求12所述的信息处理设备,还包括:
标记信息确定装置,用于根据由所述分析装置执行的分析的结果,确定所述报头中是否存在由所述另一个信息处理设备添加的标记信息;以及
生成装置,用于在所述丢失确定装置确定数据丢失并且所述标记信息确定装置确定不存在所述标记信息时生成所述反馈信息。
14.一种信息处理方法,包括以下步骤:
使信息处理设备的接收装置接收从另一个信息处理设备发送的码流;
使所述信息处理设备的分析装置分析接收的码流的报头;
使所述信息处理设备的丢失确定装置基于所述分析的结果确定所述码流中的数据是否丢失;
使所述信息处理设备的恢复装置在确定所述数据丢失时基于所述报头中包含的信息恢复丢失的数据;并且
使所述信息处理设备的解码装置对丢失的数据已经被恢复的码流或者被确定为无数据丢失的码流的码流进行解码。
15.一种信息处理设备,包括:
编码部件,被配置为对图像数据进行编码以生成码流,所述图像数据被发送到另一个信息处理设备;
控制部件,被配置为基于由所述编码部件生成的码流的数据量是否超过容许速率来控制是否要发送所述码流的主数据,所述容许速率是所述码流可无损地传输的比特率的上限值;
打包部件,被配置为根据由所述控制部件执行的控制,在所述码流的数据量不超过所述容许速率时将所述码流打包,而在所述码流的数据量超过所述容许速率时仅对所述码流的报头打包;以及
发送部件,被配置为将由所述打包部件打包的所述包发送到所述另一个信息处理设备。
16.根据权利要求15所述的信息处理设备,其中,在所述码流被保存在缓冲器中之前,所述控制部件控制是否要发送所述码流的主数据;以及
所述打包部件读取保存在所述缓冲器中的所述码流并且对所述读取的码流打包。
17.根据权利要求16所述的信息处理设备,其中所述控制部件包括:
监视部件,被配置为监视缓冲量,所述量表示保存在所述缓冲器中的所述码流的数据量;
容许速率设置部件,被配置为基于由所述监视部件监视的当前缓冲量以及传输信道的可传输比特率的上限值来设置所述容许速率,所述图像数据通过所述传输信道被传输到所述另一个信息设备;
确定部件,被配置为确定所述码流的数据量是否超过由所述容许速率设置部件设置的容许速率;以及
提供部件,被配置为将所述码流提供给所述缓冲器,并且使所述码流保存在所述缓冲器中。
18.根据权利要求17所述的信息处理设备,其中所述控制部件还包括添加部件,所述添加部件被配置为在所述确定部件确定所述码流的数据量超过所述容许速率时将标记信息添加到所述码流的报头;并且
其中,当所述标记信息被添加到所述码流的报头时,所述打包部件丢弃所述码流的主数据而仅对所述报头打包。
19.根据权利要求17所述的信息处理设备,其中所述控制部件还包括目标速率设置部件,所述目标速率设置部件被配置为基于所述传输信道的可传输比特率的上限值确定目标速率,所述目标速率具有由所述编码部件执行的编码的码量的目标值;并且
其中所述容许速率设置部件基于由所述监视部件监视的当前缓冲量以及由所述目标速率设置部件确定的目标速率设置所述容许速率。
20.根据权利要求19所述的信息处理设备,还包括获取部件,所述获取部件被配置为获取表示所述码流的接收端数据丢失状态的反馈信息,所述反馈信息从所述另一个信息处理设备发送,
其中所述目标速率设置部件基于由所述获取部件获得的所述反馈信息确定所述目标速率。
21.根据权利要求15所述的信息处理设备,其中所述编码部件包括:
小波变换部件,被配置为对所述图像数据执行小波变换处理,所述小波变换处理是针对每个频带将所述图像数据的频率分量分解成低频分量和高频分量的分析滤波处理对低频分量递归执行预定次数的处理;
量化部件,被配置为量化针对每个频带分解的频率分量;以及
熵编码部件,被配置为对由所述量化部件量化的所述频率分量执行熵编码。
22.根据权利要求21所述的信息处理设备,其中所述小波变换部件针对所述图像数据的画面中每个包括连续行的分区执行所述小波变换处理。
23.一种信息处理方法,包括以下步骤:
使信息处理设备的编码部件对图像数据进行编码以生成码流,所述图像数据将被发送到另一个信息处理设备;
使所述信息处理设备的控制部件基于所述生成的码流的数据量是否超过容许速率来控制是否要发送所述码流的主数据,所述容许速率是所述码流可无损地传输的比特率的上限值;
使所述信息处理设备的打包部件根据由所述控制部件执行的控制,在所述码流的数据量不超过所述容许速率时将所述码流打包,而在所述码流的数据量超过所述容许速率时仅对所述码流的报头打包;以及
使所述信息处理设备的发送部件将所述包发送到所述另一个信息处理设备。
24.一种信息处理设备,包括:
接收部件,被配置为接收从另一个信息处理设备发送的码流;
分析部件,被配置为对由所述接收部件接收的码流的报头进行分析;
丢失确定部件,被配置为基于由所述分析部件执行的分析的结果确定所述码流中的数据是否丢失;
恢复部件,被配置为在所述丢失确定部件确定所述数据丢失时基于所述报头中包含的信息恢复丢失的数据;以及
解码部件,被配置为对丢失的数据已经由所述恢复部件恢复的码流或者由所述丢失确定部件确定为无数据丢失的码流的码流进行解码。
25.根据权利要求24所述的信息处理设备,其中所述恢复部件通过使用基于所述报头中包含的量化参数的加权所选择的数据来恢复所述丢失的数据。
26.根据权利要求24所述的信息处理设备,还包括发送部件,所述发送部件被配置为将用于通知所述另一个信息处理设备关于数据丢失的状态的反馈信息发送到所述另一个信息处理设备。
27.根据权利要求26所述的信息处理设备,还包括:
标记信息确定部件,被配置为根据由所述分析部件执行的所述分析的结果确定所述报头中是否存在由所述另一个信息处理设备添加的标记信息;以及
生成部件,被配置为在所述丢失确定部件确定数据丢失并且所述标记信息确定部件确定不存在所述标记信息时生成所述反馈信息。
28.一种信息处理方法,包括以下步骤:
使信息处理设备的接收部件接收从另一个信息处理设备发送的码流;
使所述信息处理设备的分析部件对接收的码流的报头进行分析;
使所述信息处理设备的丢失确定部件基于所述分析的结果确定所述码流中的数据是否丢失;
使所述信息处理设备的恢复部件在确定所述数据丢失时基于所述报头中包含的信息恢复丢失的数据;以及
使所述信息处理设备的解码部件对丢失的数据已经被恢复的码流或者被确定为无数据丢失的码流的码流进行解码。
CN201010140576XA 2009-03-30 2010-03-23 信息处理设备和方法 Expired - Fee Related CN101854556B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009083255A JP2010239288A (ja) 2009-03-30 2009-03-30 情報処理装置および方法
JP2009-083255 2009-03-30

Publications (2)

Publication Number Publication Date
CN101854556A true CN101854556A (zh) 2010-10-06
CN101854556B CN101854556B (zh) 2013-08-07

Family

ID=42784107

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010140576XA Expired - Fee Related CN101854556B (zh) 2009-03-30 2010-03-23 信息处理设备和方法

Country Status (3)

Country Link
US (1) US8687488B2 (zh)
JP (1) JP2010239288A (zh)
CN (1) CN101854556B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012153167A1 (en) * 2011-05-09 2012-11-15 Talkbox Limited System and method for real-time transmission of multimedia messages
CN111614581A (zh) * 2019-02-25 2020-09-01 特拉维夫迈络思科技有限公司 集体通信系统和方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5385487B1 (ja) * 2012-02-29 2014-01-08 独立行政法人科学技術振興機構 スーパーハイブリッド画像生成装置、スーパーハイブリッド画像生成方法、印刷媒体製造方法、電子媒体製造方法、および、プログラム
TW201501496A (zh) * 2013-06-17 2015-01-01 Quanta Comp Inc 視訊編解碼系統及視訊流傳輸方法
KR20150128151A (ko) * 2014-05-08 2015-11-18 삼성전자주식회사 비디오 스트리밍 방법 및 이를 지원하는 전자 장치
JP6478379B2 (ja) * 2014-08-29 2019-03-06 日本放送協会 映像送信装置
GB201502434D0 (en) * 2015-02-13 2015-04-01 Digital Barriers Services Ltd Video encoder
CN105530405B (zh) * 2015-12-01 2019-02-19 上海兆芯集成电路有限公司 图像处理的方法及装置
CN112313954A (zh) 2018-06-28 2021-02-02 苹果公司 视频编码系统
DE112019003203T5 (de) 2018-06-28 2021-05-27 Apple Inc. Ratensteuerung für videocodierung und -übertragung mit niedriger latenz
CN116016955A (zh) 2018-06-28 2023-04-25 苹果公司 基于优先级的视频编码和传输
CA3108402A1 (en) * 2018-08-03 2020-02-06 V-Nova International Ltd Entropy coding for signal enhancement coding

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0630396A (ja) * 1992-07-10 1994-02-04 Victor Co Of Japan Ltd 動画像符号化復号化装置
JPH07184196A (ja) * 1993-12-22 1995-07-21 Sharp Corp 画像符号化装置
EP1051035A1 (en) * 1998-10-21 2000-11-08 Sony Corporation Data processing device and method, and recording device and method
JP2005524355A (ja) * 2002-05-01 2005-08-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 改善されたパケットロス回復のためのh.26lの柔軟性のあるデータパーティショニング及びパケット化
CN101164347A (zh) * 2005-04-26 2008-04-16 汤姆森许可贸易公司 同步流打包

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05260090A (ja) * 1992-03-09 1993-10-08 Nippon Telegr & Teleph Corp <Ntt> 映像転送方式
US5790534A (en) * 1996-09-20 1998-08-04 Nokia Mobile Phones Limited Load control method and apparatus for CDMA cellular system having circuit and packet switched terminals
US7016339B1 (en) * 2001-02-22 2006-03-21 3Com Corporation Method and apparatus for real time protocol feedback mixer traversal
JP4549610B2 (ja) * 2001-11-08 2010-09-22 ソニー株式会社 通信システム、通信方法、送信装置および方法、受信装置および方法、並びにプログラム
JP2003152544A (ja) 2001-11-12 2003-05-23 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
US8339963B2 (en) * 2003-08-27 2012-12-25 Rockstar Consortium Us Lp Technique for end-to-end admission control of real-time packet flows
JP2005244315A (ja) * 2004-02-24 2005-09-08 Kddi Technology Corp 映像ストリーミング伝送のネットワーク品質安定化装置
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 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
JP5151984B2 (ja) * 2006-09-29 2013-02-27 富士通株式会社 動画像符号化装置
JP4240331B2 (ja) 2006-11-02 2009-03-18 ソニー株式会社 送信装置および方法、プログラム、並びに通信システム
US20100166053A1 (en) * 2007-01-31 2010-07-01 Sony Corporation Information processing device and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0630396A (ja) * 1992-07-10 1994-02-04 Victor Co Of Japan Ltd 動画像符号化復号化装置
JPH07184196A (ja) * 1993-12-22 1995-07-21 Sharp Corp 画像符号化装置
EP1051035A1 (en) * 1998-10-21 2000-11-08 Sony Corporation Data processing device and method, and recording device and method
JP2005524355A (ja) * 2002-05-01 2005-08-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 改善されたパケットロス回復のためのh.26lの柔軟性のあるデータパーティショニング及びパケット化
CN101164347A (zh) * 2005-04-26 2008-04-16 汤姆森许可贸易公司 同步流打包

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012153167A1 (en) * 2011-05-09 2012-11-15 Talkbox Limited System and method for real-time transmission of multimedia messages
CN111614581A (zh) * 2019-02-25 2020-09-01 特拉维夫迈络思科技有限公司 集体通信系统和方法
CN111614581B (zh) * 2019-02-25 2022-07-05 迈络思科技有限公司 集体通信系统和方法

Also Published As

Publication number Publication date
US20100246395A1 (en) 2010-09-30
JP2010239288A (ja) 2010-10-21
US8687488B2 (en) 2014-04-01
CN101854556B (zh) 2013-08-07

Similar Documents

Publication Publication Date Title
CN101854556B (zh) 信息处理设备和方法
CN102263950B (zh) 编码设备和编码方法以及解码设备和解码方法
CN101754018B (zh) 信息处理器及其方法
KR100664932B1 (ko) 비디오 코딩 방법 및 장치
US8189932B2 (en) Image processing apparatus and image processing method
JP4124792B2 (ja) 符号化方法及び復号化方法及び符号化装置及び復号化装置
JP4429968B2 (ja) Svcの圧縮率を高めるシステムおよび方法
US20220217372A1 (en) Modified upsampling for video coding technology
JP2006521039A (ja) オーバコンプリートウェーブレット展開での動き補償時間フィルタリングを使用した3次元ウェーブレットビデオ符号化
US8634665B2 (en) Image processing apparatus and image processing method
US20050265446A1 (en) Mosquito noise detection and reduction
US20120033727A1 (en) Efficient video codec implementation
CN102131082A (zh) 图像处理装置和图像处理方法
JP5180782B2 (ja) 並列分散情報源符号化システム及び並列分散情報源符号化・復号化方法
US20110069897A1 (en) Image processing device and method
CN102281443A (zh) 基于优化的层式离散余弦变换的压缩感知图像处理方法
WO2010064569A1 (ja) 動画像データの圧縮方法
JP2004166096A (ja) 画像送信装置、画像受信装置、ネットワークシステム、プログラム、記憶媒体、画像送信方法及び画像受信方法
JP2011114592A (ja) 情報処理装置および方法
Anitha et al. Image Compression over Low Channel Bandwidth
JP2004166107A (ja) 画像送信装置、画像受信装置、ネットワークシステム、プログラム及び記憶媒体

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: 20130807

Termination date: 20150323

EXPY Termination of patent right or utility model