CN102090066A - 图像解码装置、集成电路、图像解码方法及图像解码*** - Google Patents
图像解码装置、集成电路、图像解码方法及图像解码*** Download PDFInfo
- Publication number
- CN102090066A CN102090066A CN2010800020700A CN201080002070A CN102090066A CN 102090066 A CN102090066 A CN 102090066A CN 2010800020700 A CN2010800020700 A CN 2010800020700A CN 201080002070 A CN201080002070 A CN 201080002070A CN 102090066 A CN102090066 A CN 102090066A
- Authority
- CN
- China
- Prior art keywords
- macro block
- motion vector
- decoded
- calculating
- external memory
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/127—Prioritisation of hardware or computational resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种图像解码装置、集成电路、图像解码方法及图像解码***。在计算第w个宏块的运动矢量时需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,传输部(130A)从外部存储器(200)向缓冲器(124A)传输co-located宏块的运动矢量。并且,在计算第w个宏块的运动矢量时不需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,传输部(130A)不从外部存储器(200)向缓冲器(124A)传输与第w个宏块对应的传输co-located宏块的运动矢量。
Description
技术领域
本发明涉及图像解码装置、集成电路、图像解码方法及图像解码***,按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码。
背景技术
近年来,伴随多媒体应用的发展,对动态图像/静态图像/声音/文本等内容(content)进行统一地处理对待已经比较常见。此时,通过将全部内容数字化,能够统一地处理内容。但是,由于被数字化后的图像具有庞大的数据量,所以为了进行储存/传输,动态图像的信息压缩技术是必不可缺的。
另一方面,为了相互运用已压缩的动态图像数据,压缩技术的标准化也比较重要。下面,把动态图像压缩技术的标准规格称为动态图像压缩标准规格。动态图像压缩标准规格例如有ITU-T(国际电信联盟电信标准化部门)的H.261、H.263等。另外,动态图像压缩标准规格还有ISO/IEC(国际标准化机构国际电工委员会)的MPEG(Moving Picture Experts Group:运动图像专家组)-1、MPEG2、MPEG4等。此外,动态图像压缩标准规格还有ITU-T与MPEG的联合即JVT(Joint Video Team:联合视频组)的H.264/AVC(MPEG4-AVC)等。
在这样的动态图像压缩标准规格中,把一个图片(picture)划分为规定像素数的块(亮度成分:16像素×16像素),按照该块单位进行解码处理或者编码处理。把作为该处理单位的块称为宏块(macro block)。
另外,能够利用动态图像压缩技术把一个宏块再划分为规定像素数的子块(亮度成分:8像素×8像素),按照该子块单位切换解码方法或者编码方法。把作为该处理单位的子块称为子宏块(sub macro block)。下面,把宏块或者子宏块统称为宏块。
通常,动态图像压缩编码的重要处理包括通过削减构成动态图像的连续的多个图片(画面)中的时间方向的冗余性,进行信息量的压缩的运动补偿帧间预测(動き補償面間予測)。下面,把在进行编码对象图片的编码时被参照的图片称为参照图片。
运动补偿帧间预测是这样一种方法,检测编码对象图片内的宏块在参照图片内的哪个方向运动何种程度,进行预测图像的生成,并对所得到的预测图像与编码对象图片之间的差分值进行编码。该参照图片是显示顺序中在编码对象图片的前方或者后方的图片。
把表示编码对象图片内的宏块在参照图片内的哪个方向运动何种程度的信息称为运动矢量。
把不使用参照图片即进行帧内预测(面内予測)编码的图片称为I图片。并且,把只参照一个参照图片来进行运动补偿帧间预测编码的图片称为P图片。把同时参照两个参照图片来进行运动补偿帧间预测编码的图片称为B图片。
参照图片能够按每个宏块进行指定。在被编码后的比特流中,把在显示顺序上位于编码对象图片之前的参照图片称为第1参照图片。并且,在被编码后的比特流中,把显示顺序位于编码对象图片之后的参照图片称为第2参照图片。
在进行B图片的编码时,构成B图片的宏块有时按照被称为“直接模式”(direct mode)的编码模式进行编码。直接模式是指不对运动矢量进行编码,而使用过去已被编码的其他宏块的运动矢量,按每个宏块计算运动矢量的编码方法(编码模式)。
下面,把在计算按照直接模式被编码的宏块的运动矢量时成为参照对象的图片称为co-located(公共确定)图片。另外,下面把co-located图片中位于和编码对象的宏块相同的空间位置的宏块称为co-located宏块。
具体地讲,在按照直接模式对宏块进行编码时,使用co-located宏块的运动矢量,进行该宏块的运动矢量的计算。
关于以往对按照直接模式被编码的宏块进行解码的处理,参照图14进行说明。
首先,作为前提是为了便于以后对按照直接模式被编码的宏块进行解码,在按照H.264/AVC对图片内的各个宏块依次进行解码时,预先将已被解码的各个宏块的运动矢量存储固定量。
例如,根据H.264/AVC的一种规格,预先存储最多32个图片的运动矢量。在假设一个图片由8160个宏块构成时,需要存储合计261120个宏块的运动矢量。
在将这样大量的运动矢量存储在图像解码装置中时,通常的缓冲器的容量不足,所以是不现实的。因此,通常将已被解码的各个宏块的运动矢量存储在处于进行解码的图像解码装置外部的DRAM(Dynamic Random Access Memory:动态随机存储器)等存储器中。
下面,有时把宏块表述为MB。并且,下面有时把运动矢量表述为mv。
在此,如图14所示,在MB解码处理中,在对B图片的宏块进行解码时,首先参照该宏块的头部(header)所示出的宏块类型,判定该宏块是否是按照直接模式被编码(S3000)。
在按照直接模式被编码的情况下,向未图示的DMA控制器发送用于从外部存储器获取将要参照的其他宏块的运动矢量的DMA(Direct Memory Access:直接存储器访问)指示(S3001)。并且,通过步骤S3002的运动矢量计算处理,使用从外部存储器传输的运动矢量,计算该宏块的运动矢量。
可是,在图14所示的以往的方法中,在判定为宏块是按照直接模式被编码之后(S3000),访问外部存储器(S3001),并获取需要的其他宏块的运动矢量。
即,需要从外部存储器向图像解码装置内传输运动矢量,如图14中的箭头所示导致花费等待时间,结果,存在对B图片的宏块进行解码所需要的时间T变长的问题。
作为解决这种问题的技术,例如有专利文献1的动态图像解码装置。下面,使用图15说明专利文献1的以往的图像解码装置。
下面,把与第s(1以上的整数)个宏块对应的co-located宏块称为第s个用co-located宏块。第s个用co-located宏块是指与计算第s个宏块的运动矢量时使用的运动矢量相对应的宏块。
例如,在s为“n+1”时,把与第n+1个宏块对应的co-located宏块称为第n+1个用co-located宏块。
在图15中,MB(n)头部处理表示参照第n个宏块的头部进行的处理。MB(n)解码处理表示对第n个宏块进行解码的处理。运动矢量计算(n)表示计算第n个宏块的运动矢量的处理。
另外,所说传输指示#(n+1)发送,表示发送用于向缓冲器传输第n+1个用co-located宏块的运动矢量的传输指示的处理。另外,所说mv#(n+1)传输,表示通过向缓冲器传输第n+1个用co-located宏块的运动矢量,而存储在缓冲器中的处理。
另外,在图15中,所说不需要mvCol的情况,是指处理对象的宏块的下一个宏块没有按照直接模式进行编码的情况。所说需要mvCol的情况,是指处理对象的宏块的下一个宏块按照直接模式进行编码的情况。另外,时间T1、T2是将对应的宏块进行解码所需要的时间。
专利文献1的图像解码装置如图15所示,并行执行第n个宏块的解码处理(S4000)、和向缓冲器传输第n+1个用co-located宏块的运动矢量的处理(S4001)。
由此,在第n+1个宏块按照直接模式进行编码的情况下,当在时间(期间)T2对第n+1个宏块进行解码时,能够马上使用在缓冲器中存储的第n+1个用co-located宏块的运动矢量来计算运动矢量(S4002)。
结果,对第n+1个宏块进行解码所需要的时间T2被缩短。针对第n个、第n+1个、第n+2个、…、第n+x个宏块同样进行这种并行处理。第n+x个宏块是流中包含的最后是宏块。因此,针对哪个宏块都发挥相同的效果。
这样,通过先行获取运动矢量,即使针对外部存储器的访问延迟(access latency)增大时,也能够消除对运算性能的影响。
现有技术文献
专利文献
专利文献1:日本专利第4106070号公报
非专利文献
非专利文献1:ITU-T推荐H.264‘Advanced Video Coding for Generic Audiovisual Services’
发明概要
发明要解决的问题
但是,在上述以往的图像解码装置中,无论解码对象的宏块是否按照直接模式被编码,都始终从外部存储器向缓冲器传输co-located宏块的运动矢量。因此,在以往的图像解码装置中,在解码对象的宏块没有按照直接模式被编码的情况下,存在产生不必要的向外部存储器的存储器访问的问题。
发明内容
本发明就是为了解决上述问题而提出的,其目的在于,提供一种图像解码装置、集成电路、图像解码方法及图像解码***,能够削减向外部存储器的不必要的存储器访问。
用于解决问题的手段
为了解决上述问题,基于本发明的某个方面的图像解码装置,按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码。图像解码装置具有:传输部,与外部存储器进行数据通信,该外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量;缓冲器;第1解码部,依次对所述多个宏块进行解码;第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1;以及判定部,根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量。在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
即,在计算该第w个宏块的运动矢量时需要与第w个宏块对应的co-located宏块的运动矢量的情况下,传输部从所述外部存储器向所述缓冲器传输与第w个宏块对应的co-located宏块的运动矢量。并且,在计算该第w个宏块的运动矢量时不需要与第w个宏块对应的co-located宏块的运动矢量的情况下,传输部不从所述外部存储器向所述缓冲器传输与第w个宏块对应的co-located宏块的运动矢量。
就是说,在计算该第w个宏块的运动矢量时不需要与第w个宏块对应的co-located宏块的运动矢量的情况下,传输部不从所述外部存储器向所述缓冲器传输与第w个宏块对应的co-located宏块的运动矢量。
因此,能够减少向外部存储器的不必要的存储器访问。
另外,优选所述图像解码装置还具有计算部,在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,该计算部使用被传输到所述缓冲器的与所述第w个宏块对应的co-located宏块的运动矢量,计算所述第w个宏块的运动矢量,所述传输部向所述外部存储器传输所计算的所述第w个宏块的运动矢量。
另外,优选在计算所述第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,在进行所述第v个宏块的解码的期间中,所述传输部从所述外部存储器向缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,在计算所述第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,在进行所述第v个宏块的解码的期间中,所述传输部不从所述外部存储器向缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
另外,优选所述第2解码部只对所述判定信息进行解码。
另外,优选所述第2解码部向所述第1解码部发送被解码后的所述判定信息。
另外,优选所述第1解码部对所述第w个宏块之中、除了已由所述第2解码部进行解码的所述判定信息之外的部分进行解码。
另外,优选所述判定信息表示所述第w个宏块是否是按照直接模式进行编码的。
另外,优选所述判定信息表示所述第w个宏块是否是跳过宏块。
另外,优选所述判定信息表示所述第w个宏块是否是帧间宏块。
另外,优选所述多个宏块中的各个宏块是按照H.264/AVC进行了编码的宏块。
基于本发明的另一个方面的集成电路,按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码。集成电路具有:传输部,与外部存储器进行数据通信,该外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量;缓冲器;第1解码部,依次对所述多个宏块进行解码;第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1;以及判定部,根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量。在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
基于本发明的另一个方面的图像解码方法是由图像解码装置执行的,该图像解码装置按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码。所述图像解码装置具有:传输部,与外部存储器进行数据通信,该外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量;缓冲器;第1解码部,依次对所述多个宏块进行解码;以及第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1。所述图像解码方法包含如下步骤:根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量的步骤;以及在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量的步骤,在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
基于本发明的另一个方面的图像解码***包括图像解码装置和外部存储器,该图像解码装置按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码。所述外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量,所述图像解码装置具有:传输部,与外部存储器进行数据通信;缓冲器;第1解码部,依次对所述多个宏块进行解码;第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1;以及判定部,根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量,在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
另外,本发明也可以将构成这样的图像解码装置的多个构成要素的全部或者一部分实现为***LSI(Large Scale Integration:大规模集成电路)。
另外,本发明也可以实现为将图像解码装置具有的特征性构成部分的动作作为步骤的图像解码方法。另外,本发明还可以实现为使计算机执行这样的图像解码方法中包含的各个步骤的程序。另外,本发明还可以实现为存储这样的程序的计算机可读取的记录介质。另外,该程序也可以通过因特网等传输介质进行分发。
发明效果
根据本发明,能够减少向外部存储器的不必要的存储器访问。
附图说明
图1是表示本发明的实施方式1的图像解码***的结构的框图。
图2是本发明的实施方式1的解码处理的流程图。
图3是说明本发明的实施方式1的图像解码装置的处理的图。
图4是本发明的实施方式2的解码处理A的流程图。
图5是表示图像解码***的结构的框图。
图6是表示图像解码装置的特征性功能结构的框图。
图7是实现实施方式3的内容分发服务的内容提供***的整体结构图。
图8是实现实施方式3的数字广播用***的整体结构图。
图9是表示实施方式3的电视机的结构示例的框图。
图10是表示向光盘即记录介质进行信息的读写的信息再现/记录部的结构示例的框图。
图11是表示光盘即记录介质的结构示例的图。
图12是表示实现图像解码处理的集成电路的结构图。
图13是表示实现图像解码处理的集成电路的结构示例的结构图。
图14是表示以往的解码处理的时序图。
图15是说明以往的图像解码装置的处理的图。
具体实施方式
下面,参照附图说明本发明的实施方式。
(实施方式1)
图1是表示本发明的实施方式1的图像解码***1000的结构的框图。
在图1中,图像解码***1000包括图像解码装置100、外部存储器200、存储介质300和接收部400。
外部存储器200与图像解码装置100连接。外部存储器200是被用作作业区域的DRAM等可写入的存储器。外部存储器200临时存储图像解码装置100执行后面叙述的解码处理所需要的数据。
下面,把根据动态图像压缩标准规格进行编码的动态图像数据称为流。动态图像压缩标准规格是H.264/AVC(MPEG4-AVC)。即,该流是被实施可变长度编码后的动态图像数据。该流包括与动态图像对应的、已被编码的构成各个图片的多个宏块。
另外,动态图像压缩标准规格不限于H.264/AVC,也可以是MPEG4、MPEG2、MPEG-1、H.263、H.261等。
存储介质300是HDD(Hard Disk Drive:硬盘驱动器)等大容量存储介质。存储介质300存储流。该流例如是通过录制电视节目而得到的流。
接收部400是数字调谐器等。接收部400接收流。该流例如是电视台发送的作为广播波的流、从因特网下载的流等。
图像解码装置100是进行流的解码的装置或者集成电路。在外部存储器200中存储有从存储介质300或者接收部400接收的流。图像解码装置100接收在外部存储器200中存储的流,并对该流进行解码。
图像解码装置100具有第1解码部111、第2传输指示部120、第2解码部121、判定部122、mv传输指示部123、mv保持存储器124、mv计算部131、mv传输指示部132、参照图像传输指示部133、逆正交变换部151、逆量化部152、帧内预测处理部142、运动补偿处理部141、预测图像选择部143、解码图像合成部161、解块过滤器处理部162、解码图像传输指示部163、和DMA控制器130。
DMA控制器130是与外部存储器200进行数据通信的传输部。
第2传输指示部120向DMA控制器130发送用于向第2解码部121传输在外部存储器200中存储的流的指示。
第2解码部121的详细情况将在后面进行叙述,第2解码部121只对宏块的头部进行解码。在该头部中示出了宏块类型。第2解码部121向判定部122发送宏块类型。
判定部122接收第2解码部121发送的宏块类型。并且,判定部122通过参照宏块类型,判定宏块是否是按照直接模式进行编码。
在本实施方式中,说明直接模式是时间直接模式时的处理。
判定部122的详细情况将在后面进行叙述,判定部122在宏块是按照直接模式进行编码的情况下,向mv传输指示部123发送用于获取co-located宏块的运动矢量的矢量获取指示。
mv传输指示部123的详细情况将在后面进行叙述,mv传输指示部123在从判定部122接收到矢量获取指示时,进行向mv保持存储器124传输在外部存储器200中存储的co-located宏块的运动矢量的处理。
mv保持存储器124是临时存储数据的缓冲器。mv保持存储器124具有至少能够存储一个co-located宏块的运动矢量的容量。有关详细情况将在后面进行叙述,mv保持存储器124临时存储从DMA控制器130发送的co-located宏块的运动矢量。
第1解码部111的详细情况将在后面进行叙述,第1解码部111通过对宏块进行可变长度编码,获取该宏块的头部以及像素残差频率成分。第1解码部111按照规定的顺序依次对流中包含的已被编码的构成图片的多个宏块进行解码。作为一例,该多个宏块中的各个宏块是按照H.264/AVC进行编码的宏块。
在此,假设第1解码部111对第v(1以上的整数)个宏块进行解码。在这种情况下,第2解码部121对第w(w≥v+1)个宏块进行处理。
mv计算部131的详细情况将在后面进行叙述,mv计算部131根据宏块的类型,利用不同的方法计算运动矢量。
mv传输指示部132向DMA控制器130发送用于将mv计算部131计算的运动矢量存储在外部存储器200中的矢量存储指示。
参照图像传输指示部133向DMA控制器130发送参照图像传输指示,该指示用于向后面叙述的运动补偿处理部141传输在外部存储器200中存储的、基于由mv计算部131计算的运动矢量的参照图像。
逆正交变换部151对从第1解码部111发送的像素残差频率成分进行逆正交变换,由此计算像素残差成分。
逆量化部152对由逆正交变换部151计算的像素残差成分进行逆量化,由此获取像素残差值。
下面,把按照不需要运动补偿的模式进行编码的宏块称为帧内(intra)宏块。并且,下面把按照需要运动补偿的模式进行编码的宏块称为帧间(inter)宏块。
帧内预测处理部142在处理对象的宏块是帧内宏块的情况下,通过进行帧内预测来生成预测图像。帧内预测处理部142向预测图像选择部143发送所生成的预测图像。
运动补偿处理部141在处理对象的宏块是帧间宏块的情况下,使用从mv计算部131接收的运动矢量、和从DMA控制器130接收的参照图像,进行运动补偿帧内预测,由此生成预测图像。
运动补偿处理部141向预测图像选择部143发送所生成的预测图像。
预测图像选择部143在宏块是帧间宏块的情况下,向后面叙述的解码图像合成部161发送从运动补偿处理部141接收的预测图像。并且,预测图像选择部143在宏块是帧内宏块的情况下,向后面叙述的解码图像合成部161发送从帧内预测处理部142接收的预测图像。
解码图像合成部161将从预测图像选择部143接收的预测图像和从逆量化部152接收的像素残差值相加,由此生成解码图像。
解块过滤器处理部162对从解码图像合成部161接收的解码图像,进行解块过滤处理。
解码图像传输指示部163的详细情况将在后面进行叙述,解码图像传输指示部163进行将被实施解块过滤处理后的解码图像存储在外部存储器200中的处理。
下面,说明由图像解码***1000进行的处理(以下称为解码处理)。在此,假设在外部存储器200中存储有已被编码的动态图像数据(流)。流包括与动态图像对应的、已被编码的构成各个图片的多个宏块。并且,假设外部存储器200存储与已被编码的构成多个图片的多个宏块中的各个宏块对应的co-located宏块的运动矢量。
图2是解码处理的流程图。
如图2所示,在图像解码装置100中,首先执行流传输处理(S101)。流传输处理是相对其他处理独立进行的处理。
在流传输处理中,第2传输指示部120向DMA控制器130发送流传输指示,该指示用于使DMA控制器130向第2解码部121传输在外部存储器200中存储的流。
DMA控制器130接收到该流传输指示时,从外部存储器200中读出流,并向第2解码部121传输该流。
并且,第2解码部121从接收到的流中获取第n个及第n+1个宏块(S102)。
另外,第2解码部121在获取第n个及第n+1个宏块时,通过对包括第n个及第n+1个宏块的切片数据(slice data)的一部分进行解码,获取用于确定跳过(skipped)宏块的信息(以下称为跳过信息)。
另外,第2解码部121获取的宏块不限于第n个及第n+1个宏块。例如,第2解码部121获取的宏块也可以是第n个及第n+p(2以上的整数)个宏块。
第2解码部121只对第n+1个宏块的头部进行解码。由此,第2解码部121获取第n+1个宏块的头部(S120)。在获取到的该头部中示出了宏块类型以及块信息等。
该宏块类型表示对应的宏块的编码模式。该编码模式例如是直接模式。块信息是表示对应的宏块是帧间宏块、帧内宏块中的哪一种宏块的信息。
并且,第2解码部121向判定部122发送作为判定信息的前述的跳过信息、和作为判定信息的宏块类型及块信息。
在此,假设第1解码部111对第v(1以上的整数)个宏块进行解码。在这种情况下,如前面所述,第2解码部121对第w(w≥v+1)个宏块进行处理。在这种情况下,判定信息是与第w个宏块对应的已被编码的信息。
判定信息是用于判定在计算第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量的信息。
即,第2解码部121通过步骤S120的处理,只对作为判定信息的第n+1个宏块的头部进行解码。并且,第2解码部121按照前面所述,对已被编码的切片数据的一部分——即作为判定信息的跳过信息进行解码。
在步骤S121,第2解码部121向第1解码部111发送获取到的第n个及第n+1个宏块中的第n个宏块、和已被解码的判定信息。该已被解码的判定信息是前面叙述的跳过信息、第n+1个宏块的头部。在该头部中示出了宏块类型以及块信息等。
由此,第1解码部111通过接收第n个宏块和判定信息(跳过信息、宏块的头部)来进行获取(S110)。
判定部122判定第n+1个宏块是否是跳过的对象。具体地讲,判定部122判定接收到的作为判定信息的跳过信息是否表示第n+1个宏块是跳过宏块(S122)。即,判定信息表示第w个宏块是否是跳过宏块。
如果在步骤S122为是,处理进入步骤S124。另一方面,如果在步骤S122为否,处理进入步骤S123。
判定部122在接收到的作为判定信息的跳过信息表示第n+1个宏块是跳过宏块的情况下(S122:是),进行步骤S124的处理。
在步骤S123,判定部122参照由第2解码部121发送的、作为判定信息的宏块类型,判定第n+1个宏块是否按照直接模式进行编码。宏块类型表示对应的宏块的编码模式。该编码模式例如是直接模式。即,判定信息表示第w个宏块是否按照直接模式进行编码。
如果在步骤S123为是,处理进入步骤S124。另一方面,如果在步骤S123为否,处理进入后面叙述的步骤S154。
即,步骤S122、S123的处理是这样一种处理,即,由判定部122根据已被解码的判定信息,判定在计算第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量。
在步骤S124,由判定部122向mv传输指示部123发送用于获取与第n+1个宏块对应的co-located宏块的运动矢量的矢量获取指示。与第n+1个宏块对应的co-located宏块是第n+1个用co-located宏块。
mv传输指示部123按照接收到的矢量获取指示,进行用于获取第n+1个用co-located宏块的运动矢量的处理。
具体地讲,mv传输指示部123向DMA控制器130发送矢量传输指示,该指示用于向mv保持存储器124传输在外部存储器200中存储的、第n+1个用co-located宏块的运动矢量。
DMA控制器130接收到该矢量传输指示时,从外部存储器200中读出第n+1个用co-located宏块的运动矢量,并向mv保持存储器124传输该第n+1个用co-located宏块的运动矢量。由此,第n+1个用co-located宏块的运动矢量被存储在mv保持存储器124中。
即,在计算第w个宏块的运动矢量时需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,作为传输部的DMA控制器130从外部存储器200向作为缓冲器的mv保持存储器124传输与该第w个宏块对应的co-located宏块的运动矢量。
另一方面,在步骤S122为否、而且步骤S123为否的情况下,即第n+1个宏块不是跳过宏块、而且第n+1个宏块不是按照直接模式进行编码的情况下,mv传输指示部123不进行任何处理。第n+1个宏块不是跳过宏块、而且第n+1个宏块不是按照直接模式进行编码的情况,是指在计算第n+1个宏块的运动矢量时不需要第n+1个用co-located宏块的运动矢量的情况。
即,在计算第w个宏块的运动矢量时不需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,作为传输部的DMA控制器130不从外部存储器200向作为缓冲器的mv保持存储器124传输与该第w个宏块对应的co-located宏块的运动矢量。
与上述步骤S121~S124的处理并行地执行步骤S111~S114的处理。
在步骤S111,第1解码部111执行MB解码处理。MB解码处理是相对其他处理独立进行的处理。并且,处理进入步骤S112。
在MB解码处理中,第1解码部111对获取到的第n个宏块进行解码。另外,通过步骤S120的处理,在第n个宏块的头部已经被解码的情况下,在MB解码处理中,第1解码部111对第n个宏块中除了头部之外的部分进行解码。即,第1解码部111对第w个宏块中、除了已由第2解码部121进行解码的作为判定信息的头部之外的部分进行解码。
在第n个宏块的解码结束的同时,MB解码处理结束。
通过MB解码处理,第1解码部111获取像素残差频率成分。
另外,第1解码部111通过进行上一次的步骤S121的处理,获取作为判定信息的第n个宏块的头部。上一次的步骤S121的处理是指将步骤S121的处理的说明中的n置换为n-1的处理。
并且,第1解码部111向逆正交变换部151发送像素残差频率成分。并且,第1解码部111向帧内预测处理部142发送第n个宏块的头部。
在步骤S112,第1解码部111参照所获取的作为判定信息的第n个宏块的头部。并且,第1解码部111根据所参照的头部,判定第n个宏块是帧间宏块还是帧内宏块。即,第1解码部111判定第n个宏块是否是帧间宏块。
在第n个宏块是帧间宏块的情况下(S112:是),处理进入步骤S113。
在步骤S113,第1解码部111判定第n个宏块是否是跳过的对象。具体地讲,第1解码部111判定所接收到的作为判定信息的跳过信息是否表示第n个宏块是跳过宏块。
如果在步骤S113为是,处理进入步骤S115A。另一方面,如果在步骤S113为否,处理进入步骤S114。
在步骤S114,第1解码部111通过参照所获取到的作为判定信息的第n个宏块的头部所表示的宏块类型,判定第n个宏块是否按照直接模式进行编码。
在此,假设已经进行上一次的步骤S102~S124的处理。上一次的步骤S102~S124的处理是指将在前面叙述的步骤S102~S124的处理的说明中的n置换为n-1的处理。在这种情况下,通过上一次的步骤S124的处理,第n个用co-located宏块的运动矢量被存储在mv保持存储器124中。
在步骤S115A,mv计算部131使用在mv保持存储器124中存储的第n个用co-located宏块的运动矢量,计算第n个宏块的运动矢量。并且,mv计算部131向mv传输指示部132、参照图像传输指示部133及运动补偿处理部141发送所计算的运动矢量。
另一方面,在步骤S113为否、而且步骤S114为否的情况下,即,在判定为第n个宏块不是跳过宏块、而且第n个宏块不是按照直接模式进行编码的情况下,进行步骤S115B的处理。
在步骤S115B,mv计算部131使用在第n个宏块的头部中包含的运动矢量的差分信息,计算运动矢量。
并且,mv计算部131向mv传输指示部132、参照图像传输指示部133及运动补偿处理部141发送所计算的运动矢量。
mv传输指示部132向DMA控制器130发送用于将在步骤S115A或步骤S 115B计算的运动矢量存储在外部存储器200中的矢量存储指示、以及所计算的运动矢量。
DMA控制器130接收到该运动矢量以及矢量存储指示时,将该运动矢量与第n个宏块在图片中的空间位置信息相对应地传输给外部存储器200(S131)。由此,运动矢量与第n个宏块在图片中的空间位置信息被相对应地存储在外部存储器200中。
并且,参照图像传输指示部133向DMA控制器130发送参照图像传输指示,该指示用于向运动补偿处理部141传输在外部存储器200中存储的、基于从mv计算部131发送的运动矢量的参照图像(S132)。
DMA控制器130接收到该参照图像传输指示时,从外部存储器200中读出所指示的参照图像,并向运动补偿处理部141传输该参照图像。
运动补偿处理部141进行运动补偿处理(S133)。在运动补偿处理中,运动补偿处理部141使用从mv计算部131接收的运动矢量和从DMA控制器130接收的参照图像,进行运动补偿帧间预测,由此生成预测图像。并且,运动补偿处理部141向预测图像选择部143发送所生成的预测图像。
预测图像选择部143在第n个宏块是帧间宏块的情况下,向解码图像合成部161发送从运动补偿处理部141接收的预测图像。
逆正交变换部151进行逆正交变换处理(S134)。在逆正交变换处理中,逆正交变换部151对从第1解码部111发送的像素残差频率差分进行逆正交变换,由此计算像素残差成分。并且,逆正交变换部151向逆量化部152发送该像素残差成分。
逆量化部152进行逆量化处理(S135)。在逆量化处理中,逆量化部152对从逆正交变换部151接收的像素残差成分进行逆量化,由此获取像素残差值。并且,逆量化部152向解码图像合成部161发送该像素残差值。
另一方面,在步骤S112为否的情况下,即第n个宏块是帧内宏块的情况下,mv计算部131把第n个宏块的运动矢量的值设为0(步骤S140)。
mv传输指示部132向DMA控制器130发送用于将第n个宏块的运动矢量存储在外部存储器200中的矢量存储指示。
DMA控制器130接收到矢量存储指示时,将该运动矢量与第n个宏块在图片内的空间位置信息相对应地传输给外部存储器200(S141)。由此,该运动矢量与第n个宏块在图片内的空间位置信息被相对应地存储在外部存储器200中。
帧内预测处理部142进行帧内预测处理(S142)。在帧内预测处理中,帧内预测处理部142根据第n个宏块的周围图像生成预测图像,并向预测图像选择部143发送所生成的预测图像。
预测图像选择部143在第n个宏块是帧内宏块的情况下,向解码图像合成部161发送从帧内预测处理部142接收的预测图像。
逆正交变换部151进行逆正交变换处理(S144)。在逆正交变换处理中,逆正交变换部151对从第1解码部111发送的像素残差频率成分进行逆正交变换,由此计算像素残差值。并且,逆正交变换部151向逆量化部152发送该像素残差成分。
逆量化部152进行逆量化处理(S145)。在逆量化处理中,逆量化部152对逆正交变换部151输出的像素残差值进行逆量化,由此获取像素残差值。并且,逆量化部152向解码图像合成部161发送该像素残差值。
如前面所述,在第n个宏块是帧内宏块的情况下,预测图像选择部143向解码图像合成部161发送从帧内预测处理部142接收的预测图像。
并且,如前面所述,在第n个宏块是帧间宏块的情况下,预测图像选择部143向解码图像合成部161发送从运动补偿处理部141接收的预测图像。
并且,通过步骤S135或者步骤S145的处理,解码图像合成部161接收由逆量化部152发送的像素残差值。
解码图像合成部161进行解码图像合成处理(S151)。在解码图像合成处理中,解码图像合成部161将接收到的像素残差值及预测图像相加,由此生成解码图像。并且,解码图像合成部161向解块过滤器处理部162发送所生成的解码图像。
解块过滤器处理部162对从解码图像合成部161接收到的解码图像进行解块过滤处理(S152)。其中,解块过滤处理是指使用了解块过滤器(deblocking filter)的过滤处理。并且,解块过滤器处理部162向解码图像传输指示部163发送已被实施解块过滤处理的解码图像。
解码图像传输指示部163进行解码图像存储处理(S153)。在解码图像存储处理中,解码图像传输指示部163向DMA控制器130发送用于将接收到的解码图像存储在外部存储器200中的解码图像存储指示、以及该解码图像。
DMA控制器130接收到解码图像存储指示时,将接收到的解码图像存储在外部存储器200中。
并且,n的值被递增1(S154),再次进行步骤S102的处理。
下面说明的步骤S102~步骤S124的处理、步骤S111~步骤S114的处理,是与在前述的说明中将n置换为n+1的处理相同的处理,所以不重复进行详细的说明。下面进行简单说明。
通过步骤S102的处理,第2解码部121获取第n+1个及第n+2个宏块。
通过步骤S120的处理,第2解码部121获取第n+2个宏块的头部。
通过步骤S121的处理,第2解码部121向第1解码部111发送第n+1个宏块和已被解码的判定信息。该已被解码的判定信息是跳过信息、第n+2个宏块的头部。由此,第1解码部111通过接收第n+1个宏块和判定信息(跳过信息、第n+2个宏块的头部)来进行获取(S110)。
并且,在步骤S122为是或者步骤S123为是的情况下,进行步骤S124的处理。
通过步骤S124的处理,向mv保持存储器124传输第n+2个用co-located宏块的运动矢量。由此,第n+2个用co-located宏块的运动矢量被存储在mv保持存储器124中。
与上述步骤S121~S124的处理并行地进行步骤S111~S114的处理。
通过在步骤S111的处理中执行的MB解码处理,第1解码部111对第n+1个宏块进行解码。
并且,在步骤S112的处理之后,在步骤S113为是或者步骤S114为是的情况下,进行步骤S115A的处理。在此,步骤S113为是或者步骤S114为是的情况,是指第n+1个宏块是跳过宏块的情况、或者第n+1个宏块是按照直接模式进行编码的情况。
并且,第n+1个宏块是跳过宏块的情况、或者第n+1个宏块是按照直接模式进行编码的情况,是指在计算第n+1个宏块的运动矢量时需要第n+1个用co-located宏块的运动矢量的情况。
通过步骤S115A的处理,mv计算部131使用在mv保持存储器124中存储的第n+1个用co-located宏块的运动矢量,计算第n+1个宏块的运动矢量。
即,在计算第w个宏块的运动矢量时需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,mv计算部131使用传输给作为缓冲器的mv保持存储器124的、与第w个宏块对应的co-located宏块的运动矢量,计算第w个宏块的运动矢量。
另外,步骤S131~步骤S135的处理、步骤S140~步骤S145的处理、步骤S151~步骤S153的处理,是与在前述的说明中将n置换为n+1的处理相同的处理,所以不重复进行详细的说明。
另外,通过步骤S131的处理,作为传输部的DMA控制器130向外部存储器200传输所计算的第w个宏块的运动矢量。
根据以上所述的本实施方式,在第n+1个宏块是跳过宏块的情况下、或者第n+1个宏块是按照直接模式进行编码的情况下,向mv保持存储器124传输第n+1个用co-located宏块的运动矢量。并且,与该运动矢量的传输并行地执行第n个宏块的解码处理。
第n+1个宏块是跳过宏块的情况、或者第n+1个宏块是按照直接模式进行编码的情况,是在计算第n+1个宏块的运动矢量时需要第n+1个用co-located宏块的运动矢量的情况。
另外,在第n+1个宏块不是跳过宏块、而且第n+1个宏块不是按照直接模式进行编码的情况下,不向mv保持存储器124传输第n+1个用co-located宏块的运动矢量。在这种情况下,只进行第n个宏块的解码处理。
第n+1个宏块不是跳过宏块、而且第n+1个宏块不是按照直接模式进行编码的情况,是在计算第n+1个宏块的运动矢量时不需要第n+1个用co-located宏块的运动矢量的情况。
由此,在第n+1个宏块是跳过宏块的情况下、或者第n+1个宏块是按照直接模式进行编码的情况下,在对第n+1个宏块进行解码时,也能够马上使用在mv保持存储器124中存储的第n+1个用co-located宏块的运动矢量,计算第n个宏块的运动矢量。
另外,在第n+1个宏块不是跳过宏块、而且第n+1个宏块不是按照直接模式进行编码的情况下,不从外部存储器200通过DMA控制器130向mv保持存储器124传输第n+1个用co-located宏块的运动矢量。因此,能够减少向外部存储器的不必要的存储器访问。
下面,使用表示以往的图像解码装置的处理的图15,说明本实施方式的效果。如图15所示,以往的动态图像解码装置不管在计算第n+1个宏块的运动矢量时是否需要第n+1个用co-located宏块的运动矢量,都始终并行地执行第n个宏块的解码处理、和向缓冲器传输第n+1个用co-located宏块的运动矢量的处理。
即,在计算第n+1个宏块的运动矢量时不需要第n+1个用co-located宏块的运动矢量的情况下,也从外部存储器传输第n+1个用co-located宏块的运动矢量。即,导致产生向外部存储器的不必要的存储器访问。
与此相对,使用图3说明本实施方式的处理。图3所示的与图15相同的用语,与在图15中说明的内容相同,所以不重复进行详细的说明。
在图3中,MB(n+1)头部处理表示第n+1个宏块的头部被实施解码、并参照该头部进行的处理。MB(n+1)头部处理与步骤S120~S123的处理对应。
并且,MB(n)头部处理表示参照第n个宏块的头部进行的处理。MB(n)头部处理与步骤S111~S114的处理对应。并且,MB(n)解码处理表示对第n个宏块进行解码的处理。MB(n)解码处理与步骤S111对应。
另外,运动矢量计算(n)表示计算第n个宏块的运动矢量的处理。所说传输指示#(n+1)发送,表示发送用于向mv保持存储器124传输第n+1个用co-located宏块的运动矢量的传输指示的处理。传输指示#(n+1)发送与步骤S124的处理对应。
另外,所说mv#(n+1)传输,表示通过向mv保持存储器124传输第n+1个用co-located宏块的运动矢量,将其存储在mv保持存储器124中的处理。mv#(n+1)传输与步骤S124的处理对应。
并且,在图3中,在“第2解码部”的右侧记述的处理是由第2解码部121进行的处理。在“第1解码部”的右侧记述的处理是由第1解码部111进行的处理。
并且,在图3中,不需要mvCol的情况,是指在计算第w(例如n+1)个宏块的运动矢量时不需要与第w个宏块对应的co-located宏块的运动矢量的情况。即,不需要mvCol的情况,是指第w个宏块不是跳过宏块、而且第w个宏块不是按照直接模式进行编码的情况。
并且,在图3中,需要mvCol的情况,是指在计算第w(例如n+1)个宏块的运动矢量时需要与第w个宏块对应的co-located宏块的运动矢量的情况。即,需要mvCol的情况,是指第w个宏块是跳过宏块的情况、或者第w个宏块是按照直接模式进行编码的情况。
如图3所示,在由第1解码部进行的第v(例如n)个宏块的解码结束之前,第2解码部121对与第w(例如n+1)个宏块对应的已被编码的判定信息(第w(n+1)个宏块的头部)进行解码。
并且,如图3所示,通过步骤S120~S123的处理,进行由第2解码部121将第n+1个宏块的头部进行解码,并参照头部的处理。
在第n+1个宏块是跳过宏块的情况下、或者第n+1个宏块是按照直接模式进行编码的情况下,并行执行向mv保持存储器124传输第n+1个用co-located宏块的运动矢量的处理(S124)、以及第n个宏块的解码处理(S111)。并且,在这种情况下,并行执行步骤S111的处理和步骤S115A的处理。
即,在计算第w个宏块的运动矢量时需要与第w个宏块对应的co-located宏块的运动矢量的情况下,在进行第v个宏块的解码的期间中,作为传输部的DMA控制器130从外部存储器200向作为缓冲器的mv保持存储器124传输与该第w个宏块对应的co-located宏块的运动矢量。
在第n+1个宏块不是跳过宏块、而且第n+1个宏块不是按照直接模式进行编码的情况下,不执行向mv保持存储器124传输第n+1个用co-located宏块的运动矢量的处理(S124)。在这种情况下,执行第n个宏块的解码处理(S111)。并且,在这种情况下,并行执行步骤S111的处理和步骤S115B的处理。
即,在计算第w个宏块的运动矢量时不需要与第w个宏块对应的co-located宏块的运动矢量的情况下,在进行第v个宏块的解码的期间中,作为传输部的DMA控制器130不从外部存储器200向作为缓冲器的mv保持存储器124传输与该第w个宏块对应的co-located宏块的运动矢量。
由此,在计算第n+1个宏块的运动矢量时需要第n+1个用co-located宏块的运动矢量的情况下,在对第n+1个宏块进行解码时,也能够马上使用在mv保持存储器124中存储的第n+1个用co-located宏块的运动矢量,计算运动矢量。
另外,在计算第n+1个宏块的运动矢量时不需要第n+1个用co-located宏块的运动矢量的情况下,不从外部存储器200通过DMA控制器130向mv保持存储器124传输第n+1个用co-located宏块的运动矢量。因此,不会进行不必要的传输,并能够减少向外部存储器的不必要的存储器访问。
针对第n+2个、第n+3个、…、第n+x个宏块同样进行这种并行处理。其中,第n+x个宏块是流中包含的最后的宏块。因此,针对任意一个宏块都能够发挥与上述相同的效果。
具体地讲,即使是由于图像解码装置内的缓冲器容量的制约而需要在外部存储器中暂且存储已解码完成的运动矢量的图像解码装置,也能够在开始宏块的解码之前,只先行对用于判定以后解码的宏块是否按照直接模式编码的信息进行解码。
并且,判定以后解码的宏块是否按照直接模式进行编码。在按照直接模式进行编码的情况下,将必要的运动矢量从外部存储器先行传输给图像解码装置内的缓冲器,在不按照直接模式进行编码的情况下,不进行必要的运动矢量的传输。
根据先行进行是否按照直接模式进行编码的判定的结构,在宏块不是按照直接模式进行编码的情况下,不进行运动矢量的传输,所以不会产生向外部存储器的不必要的存储器访问,在宏块是按照直接模式进行编码的情况下,先行进行必要的运动矢量的传输。
因此,在某个宏块是按照直接模式进行编码的情况下,在对该宏块进行解码时,能够马上计算运动矢量。
结果,在宏块是按照直接模式进行编码的情况下,能够缩短该宏块的解码所需要的时间,而且能够减少向外部存储器的存储器访问。
即,能够快速对按照直接模式被编码的宏块进行解码,并减少向外部存储器200的不必要的存储器访问。
另外,在本实施方式中说明了直接模式是时间直接模式时的处理,但不限于这种方式。在直接模式是空间直接模式时,也能够实现本实施方式。在直接模式是空间直接模式的情况下,例如,通过与日本专利第4106070号公报记载的处理相同的处理,能够计算运动矢量。
(实施方式2)
在本实施方式中,根据处理对象的宏块是否是帧间宏块的判定结果,从外部存储器200向mv保持存储器124传输第w个用co-located宏块的运动矢量。
本实施方式的图像解码***是图1所示的图像解码***1000。即,本实施方式的图像解码装置是图1所示的图像解码装置100。因此,不重复进行图像解码装置100的各个部分的详细说明。
下面,说明图像解码***1000进行的处理(以下称为解码处理A)。图4是解码处理A的流程图。在图4中,关于与图2中的步骤序号相同的步骤序号的处理,进行与在第1实施方式中说明的处理相同的处理,所以不重复进行详细的说明。
解码处理A与图2所示的解码处理相比不同之处是,进行步骤S122A来取代步骤S122、进行步骤S116A来取代步骤S115A、以及不进行步骤S123、S113、S114、S115B。除此之外与图2所示的解码处理相同,所以不重复进行详细的说明。
在步骤S122A,利用块信息判定第n+1个宏块是否是帧间宏块。作为判定信息的块信息表示第w个宏块是否是帧间宏块。
具体地讲,判定部122判定从第2解码部121接收到的作为判定信息的块信息是否表示对应的宏块为帧间宏块。
如果在步骤S122A为是,处理进入步骤S124。另一方面,如果在步骤S122A为否,处理进入步骤S154。步骤S122A为是的情况,是在计算第w(例如n+1)个宏块的运动矢量时需要与该第w个宏块对应的co-located宏块的运动矢量的情况。
并且,关于步骤S124的处理是进行与第1实施方式相同的处理。由此,第n+1个用co-located宏块的运动矢量被存储在mv保持存储器124中。
在此,假设已经进行图4所示的上一次的步骤S102~S124的处理。上一次的步骤S102~S124的处理是指将在前述的步骤S102~S124的处理的说明中的n置换为n-1的处理。在这种情况下,通过上一次的步骤S124的处理,第n个用co-located宏块的运动矢量被存储在mv保持存储器124中。即,从外部存储器200向作为缓冲器的mv保持存储器124传输第n个用co-located宏块的运动矢量。
在步骤S112为是的情况下,处理进入步骤S116A。
在步骤S116A,mv计算部131使用第n个宏块的头部中包含的运动矢量的差分信息、和在mv保持存储器124中存储的第n个用co-located宏块的运动矢量,计算第n个宏块的运动矢量。
并且,与第1实施方式相同地进行步骤S131以后的处理。
如以上说明的那样,根据本实施方式,在解码对象的宏块之后成为解码对象的宏块是帧间宏块的情况下,进行传输co-located宏块的运动矢量的处理。并且,在解码对象的宏块之后成为解码对象的宏块不是帧间宏块的情况下,不进行传输co-located宏块的运动矢量的处理。
由此,能够获得与第1实施方式相同的效果。即,不会进行不必要的传输,并能够减少向外部存储器的不必要的存储器访问。
(其他变形例)
在前述的图像解码装置100中,第2解码部121向第1解码部111发送所获取的第n个宏块。即,第1解码部111从第2解码部121接收宏块,但不限于这种方式。例如,第1解码部111也可以通过DMA控制器130从外部存储器200获取流中包含的宏块。
下面,针对包括图像解码装置100A的图像解码***1000A进行说明,图像解码装置100A构成为使第1解码部111从外部存储器200接收流。
图5是表示图像解码***1000A的结构的框图。
如图5所示,图像解码***1000A与图1所示的图像解码***1000相比不同之处是,具有图像解码装置100A来取代图像解码装置100。除此之外的图像解码装置100A的结构与图像解码装置100相同,所以不重复进行详细的说明。
图像解码装置100A与图1所示的图像解码装置100相比的不同之处还在于具有第1传输指示部110。除此之外的图像解码装置100A的结构与图像解码装置100相同,所以不重复进行详细的说明。
第1传输指示部110向DMA控制器130发送流传输指示,该指示用于使DMA控制器130向第1解码部111传输在外部存储器200中存储的流。
DMA控制器130接收到该流传输指示时,从外部存储器200中读出流,并向第1解码部111传输该流。
并且,第1解码部111从接收到的流中获取第n个宏块。
在这种情况下,在图像解码装置100A进行的图2所示的解码处理的步骤S101的流传输处理中,第1解码部111及第2解码部121分别接收流。
并且,在步骤S102的处理中,第1解码部111及第2解码部121分别获取第n个及第n+1个宏块。另外,从步骤S120以后的处理与实施方式1相同,所以不重复进行详细的说明。
另外,根据实施方式说明了图像解码***1000,但能够对该实施方式的结构及动作实施各种变形。
在上述实施方式中说明了如下所述的动作,即,与宏块的解码处理并行地对前一个宏块的宏块类型进行解码,如果该前一个宏块是按照直接模式进行编码,则向mv保持存储器124传输co-located宏块的运动矢量。但是,不限于这种方式。
例如,也可以是,增大mv保持存储器124的容量,一并传输与前几个的多个宏块用co-located宏块对应的多个运动矢量。
例如,在作为外部存储器采用适合于连续的数据传输的DRAM等存储器的情况下,如果按每一个运动矢量进行传输,则有可能突发长度(burst length)不足,使得传输效率降低。
因此,在采用DRAM等存储器的情况下,例如,与第n个宏块的解码处理并行地,分别执行第n+1个宏块和第n+2个宏块的宏块类型的解码。
并且,在第n+1个及第n+2个宏块中任意一个宏块是按照直接模式进行编码的情况下,可以一次一并传输第n+1个及第n+2个宏块用co-located宏块的运动矢量。
在第n+1个及第n+2个宏块都不是按照直接模式进行编码的情况下,不进行co-located宏块的运动矢量的传输。
这样,通过增加在一次DMA传输中传输的数据量,能够减少外部存储器200与mv传输指示部123之间的数据的传输次数,并增大突发长度、提高传输效率。
另外,图1所示的图像解码装置100中包含的各个部分可以实现为代表性的集成电路即LSI。这些构成部分可以像集成电路、外部存储器那样独立地芯片化,也可以包括一部分或者全部在内而单片化、即实现为被整合在一个LSI内的***。
(功能框图)
图6是表示图像解码装置100的特征性功能结构的框图。即,图6是表示图1所示的图像解码装置100的功能中与本发明相关的主要功能的框图。另外,为了便于说明,在图6中也示出了未包含于图像解码装置100中的外部存储器200。
图6所示的图像解码装置100按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码。
如图6所示,图像解码装置100具有传输部130A、缓冲器124A、第1解码部111、第2解码部121和判定部122。图6所示的图像解码装置100具有在图1中说明的第1解码部111、第2解码部121和判定部122。
传输部130A与外部存储器200进行数据通信,外部存储器200存储与各个宏块对应的co-located宏块的运动矢量。
缓冲器124A相当于mv保持存储器124。
第1解码部111依次对多个宏块进行解码。
第2解码部121在由第1解码部111进行的第v(1以上的整数)个宏块的解码结束之前,至少对判定信息进行解码。判定信息是与第w(w≥v+1)个宏块对应的已被编码的信息。并且,判定信息是用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量的信息。被解码后的判定信息例如是前述的宏块类型、块信息、跳过信息。
判定部122根据被解码后的判定信息,判定在计算该第w个宏块的运动矢量时是否需要与第w个宏块对应的co-located宏块的运动矢量。判定部122相当于进行图2中的步骤S122、S123的处理或者图4中的步骤S122A的处理的判定部122。
在计算第w个宏块的运动矢量时需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,传输部130A从外部存储器200向缓冲器124A传输与第w个宏块对应的co-located宏块的运动矢量。传输部130A相当于进行图2或者图4中的步骤S124的处理的mv传输指示部123及DMA控制器130。
并且,在计算第w个宏块的运动矢量时不需要与该第w个宏块对应的co-located宏块的运动矢量的情况下,传输部130A不从外部存储器200向缓冲器124A传输与第w个宏块对应的co-located宏块的运动矢量。
另外,图6所示的传输部130A、缓冲器124A、第1解码部111、第2解码部121及判定部122的全部或者一部分也可以利用LSI(Large Scale Integration:大规模集成电路)等硬件构成。并且,传输部130A、缓冲器124A、第1解码部111、第2解码部121及判定部122的全部或者一部分也可以是由CPU等的处理器执行的程序的模块。
(实施方式3)
通过把用于实现在上述各个实施方式中示出的图像解码方法的程序记录在存储介质中,能够容易在独立的计算机***中实施在上述各个实施方式中示出的处理。存储介质只要能够记录程序即可,可以是磁盘、光盘、光磁盘、IC卡、半导体存储器等。
另外,在此说明在上述各个实施方式中示出的图像解码方法的应用示例及采用该方法的***。
图7是表示实现内容分发服务的内容提供***ex100的整体结构的图。把通信服务的提供区域划分为期望的大小,在各个小区(cell)内分别设置作为固定无线站的基站ex106~ex110。
在该内容提供***ex100中,计算机ex111、PDA(Personal Digital Assistant:个人数字助理)ex112、摄像机ex113、手机ex114、游戏机ex115等各个设备,通过电话网ex104及基站ex106~ex110相互连接。并且,各个设备通过因特网服务提供商ex102与因特网ex101连接。
但是,内容提供***ex100不限于图7所示的结构,也可以将任意要素进行组合并连接。并且,各个设备也可以直接与电话网ex104连接,而不通过作为固定无线站的基站ex106~ex110。并且,各个设备也可以通过近距离无线等直接相互连接。
摄像机ex113是数字视频摄像机等能够进行动态图像摄影的设备,摄像机ex116是数字照相机等能够进行静态图像摄影、动态图像摄影的设备。手机ex114可以是GSM(Global System for Mobile Communications:全球移动通信***)方式、CDMA(Code Division Multiple Access:码分多址)方式、W-CDMA(Wideband-Code Division Multiple Access:宽带码分多址)方式、LTE(Long Term Evolution:长期演进)方式、或者HSPA(high speed packet access:高速分组接入)方式的手机,或者是PHS(Personal Handyphone System:个人便携电话***)等任意一种设备。
在内容提供***ex100中,摄像机ex113等通过基站ex109、电话网ex104与流服务器ex103连接,由此能够进行实时(live:现场)分发等。在实时分发中,针对用户使用摄像机ex113拍摄的内容(例如现场音乐的影像等),如在上述各个实施方式中说明的那样进行编码处理,并发送给流服务器ex103。另一方面,流服务器ex103将所发送的内容数据向有请求的客户机进行流分发。客户机是指能够对上述被编码处理的数据进行解码的计算机ex111、PDA ex112、摄像机ex113、手机ex114、游戏机ex105等。接收到所分发的数据的各个设备对所接收的数据进行解码处理并再现该数据。
另外,所拍摄的数据的编码处理可以由摄像机ex113进行,也可以由进行数据的发送处理的流服务器ex103进行,还可以相互分担进行。同样,所分发的数据的解码处理可以由客户机进行,也可以由流服务器ex103进行,还可以相互分担进行。并且,不限于摄像机ex113,也可以将利用摄像机ex116拍摄的静态图像及/或动态图像数据通过计算机ex111发送给流服务器ex103。这种情况时的编码处理可以由摄像机ex116、计算机ex111及流服务器ex103任意一方进行,也可以相互分担进行。
另外,这些编码处理以及解码处理通常在计算机ex111以及各个设备具有的LSI(Large Scale Integration)ex500中执行。LSI ex500可以是单片,也可以由多个芯片构成。另外,也可以将图像编码用的软件或者图像解码用的软件装配在计算机ex111等可以读取的任意一种记录介质(CD-ROM、软盘、硬盘等)中,并使用该软件进行编码处理或者解码处理。另外,在手机ex114带摄像机的情况下,也可以发送利用该摄像机获取的动态图像数据。此时的动态图像数据是由手机ex114具有的LSI ex500进行编码处理后的数据。
另外,流服务器ex103是多个服务器或者多个计算机,也可以是对数据进行分散并处理、记录,并分发的设备。
如上所述,在内容提供***ex100中,客户机能够接收被编码后的数据并进行再现。这样,在内容提供***ex100中,客户机能够实时地接收用户发送的信息并进行解码及再现,即使是不具有特殊的权利及设备的用户也能够实现个人广播。
另外,不限于内容提供***ex100的示例,如图8所示,也能够在数字广播用***ex200中装配上述各个实施方式的至少图像解码装置的任意一个。具体地讲,电视台ex201通过电波进行影像信息的比特流的通信或者向卫星ex202传输。该比特流是利用在上述各个实施方式中说明的图像编码方法进行编码后的编码比特流。接收到该比特流的广播卫星ex202发出广播用的电波,能够接收卫星广播的家庭的天线ex204接收该电波。电视机(接收机)ex300或者机顶盒(STB)ex217等装置对接收到的比特流进行解码并再现。
并且,也可以在再现装置ex212中安装在上述各个实施方式中说明的图像解码装置,该再现装置ex212读取在作为记录介质的CD及DVD等记录介质ex214中记录的比特流并进行解码。在这种情况下,所再现的影像信号被显示在监视器ex213上。
并且,也可以在读取器/记录器ex218中安装在上述各个实施方式中说明的图像解码装置或者图像编码装置,该读取器/记录器ex218读取在DVD、BD等记录介质ex215中记录的编码比特流并进行解码,或者将影像信号进行编码并写入到记录介质ex215中。在这种情况下,所再现的影像信号被显示在监视器ex219上,并能够利用记录了编码比特流的记录介质ex215在其他装置以及***中再现影像信号。并且,也可以在与有线电视用线缆ex203或者卫星/地面波广播的天线ex204连接的机顶盒ex217内安装图像解码装置,并在电视机的监视器ex219上进行显示。此时,也可以不装配在机顶盒内,而在电视机内装配图像解码装置。
图9是表示采用在上述各个实施方式中说明的图像解码方法的电视机(接收机)ex300的图。电视机ex300具有:调谐器ex301,通过接收上述广播的天线ex204或者线缆ex203等,获取或者输出影像信息的比特流;调制/解调部ex302,对接收到的编码数据进行解调或者调制成为向外部发送的编码数据;复用/分离部ex303,将解调后的影像数据、声音数据分离,或者将编码后的影像数据、声音数据复用。
并且,电视机ex300具有:信号处理部ex306,具有对声音数据、影像数据分别进行解码、或者将各个信息进行编码的声音信号处理部ex304、影像信号处理部ex305;输出部ex309,具有输出解码后的声音信号的扬声器ex307、和显示解码后的影像信号的显示器等显示部ex308。另外,电视机ex300具有具备受理用户操作的输入的操作输入部ex312等的接口部ex317。另外,电视机ex300具有总括地控制各个部分的控制部ex310、向各个部分提供电力的电源电路部ex311。
接口部ex317除了操作输入部ex312之外,还可以具有:电桥部ex313,与读取器/记录器ex218等外部设备连接;槽部ex314,用于实现能够安装SD卡等记录介质ex216;驱动器ex315,用于与硬盘等外部记录介质连接;与电话网连接的调制解调器ex316等。另外,记录介质ex216能够利用进行存储的非易失性/易失性的半导体存储器元件进行信息的电记录。
电视机ex300的各个部分通过同步总线相互连接。
首先,说明电视机ex300对通过天线ex204等从外部获取的数据进行解码并再现的结构。电视机ex300接受来自遥控器ex220等的用户操作,根据具有CPU等的控制部ex310的控制,由复用/分离部ex303将由调制/解调部ex302解调后的影像数据、声音数据进行分离。另外,电视机ex300由声音信号处理部ex304对分离后的声音数据进行解码,并由影像信号处理部ex305使用在上述各个实施方式中说明的解码方法对分离后的影像数据进行解码。将解码后的声音信号、影像信号分别从输出部ex309向外部输出。在进行输出时,也可以将这些信号暂且储存在缓冲器ex318、ex319等中,以便能够同步再现声音信号和影像信号。并且,电视机ex300也可以不采用广播方式等,而从磁盘/光盘、SD卡等记录介质ex215、ex216读出被编码后的编码比特流。
下面,说明电视机ex300对声音信号及影像信号进行编码并发送到外部或者写入到记录介质等中的结构。电视机ex300接受来自遥控器ex220等的用户操作,根据控制部ex310的控制,由声音信号处理部ex304对声音信号进行编码,由影像信号处理部ex305使用在上述各个实施方式中说明的编码方法对影像信号进行编码。被编码后的声音信号和影像信号通过复用/分离部ex303被复用并输出到外部。在进行复用时,也可以将这些信号暂且储存在缓冲器ex320、ex321等中,以使声音信号和影像信号能够同步。
另外,缓冲器ex318~ex321也可以按照图示设置多个,也可以是共用一个以上的缓冲器的结构。另外,除了图示的结构之外,例如,也可以在调制/解调部ex302及复用/分离部ex303之间等,在作为避免***的上溢、下溢的缓冲器部件的缓冲器中储存数据。
并且,电视机ex300除了从广播及记录介质等获取声音数据及影像数据之外,也可以具有受理麦克风及摄像机的AV输入的结构,并对从麦克风及摄像机获取的数据进行编码处理。另外,此处说明了电视机ex300能够进行上述的编码处理、复用及外部输出的结构,但也可以是不能进行这些处理,而只能进行上述接收、解码处理、外部输出的结构。
并且,在由读取器/记录器ex218从记录介质读出或者写入编码比特流的情况下,上述解码处理或者编码处理也可以由电视机ex300和读取器/记录器ex218任意一方进行,还可以由电视机ex300和读取器/记录器ex218相互分担进行。
作为一例,图10表示从光盘进行数据的读取或者写入时的信息再现/记录部ex400的结构。信息再现/记录部ex400具有以下说明的要素ex401~ex407。
光头ex401向光盘即记录介质ex215的记录面照射激光光点并写入信息,并且检测来自记录介质ex215的记录面的反射光并读取信息。调制记录部ex402电驱动内置于光头ex401中的半导体激光器,并根据记录数据进行激光光束的调制。再现解调部ex403将通过内置于光头ex401中的光电检测器电检测到来自记录面的反射光的再现信号放大,将在记录介质ex215中记录的信号成分进行分离并解调,并再现必要的信息。缓冲器ex404临时保存用于在记录介质ex215中记录的信息、以及从记录介质ex215再现的信息。盘马达ex405使记录介质ex215旋转。伺服控制部ex406在控制盘马达ex405的旋转驱动的同时使光头ex401沿规定的信息轨道移动,并进行激光光点的跟踪处理。
***控制部ex407进行信息再现/记录部ex400整体的控制。上述的读取及写入的处理是这样实现的,即:***控制部ex407利用在缓冲器ex404中保存的各种信息,并根据需要进行新的信息的生成以及追加,并且,在使调制记录部ex402、再现解调部ex403、伺服控制部ex406协调动作的同时通过光头ex401进行信息的记录再现。***控制部ex407例如由微处理器构成,通过执行读取写入的程序来执行这些处理。
以上说明了光头ex401照射激光光点的情况,但也可以是利用近场光(near-field light)进行更高密度的记录的结构。
图11表示光盘即记录介质ex215的示意图。在记录介质ex215的记录面上形成有螺旋状的引导槽(groove),在信息轨道ex230中预先记录有按照引导槽的形状变化来表示盘上的绝对位置的地址信息。该地址信息包括用于确定作为记录数据的单位的、记录块ex231的位置的信息,通过在进行记录及再现的装置中再现信息轨道ex230来读取地址信息,能够确定记录块。并且,记录介质ex215包括数据记录区域ex233、内周区域ex232、外周区域ex234。用于记录用户数据的区域是数据记录区域ex233,在数据记录区域ex233的内周或者外周配置的内周区域ex232和外周区域ex234,用于除记录用户数据之外的特定用途。
信息再现/记录部ex400向这样的记录介质ex215的数据记录区域ex233,进行被编码后的声音数据、影像数据的读写,或者进行将这些数据复用后的编码数据的读写。
以上以1层的DVD、BD等光盘为例进行了说明,但不限于这些方式,也可以是多层构造的在除表面之外的面上也能够进行记录的光盘。并且,也可以是进行多维的记录/再现的构造的光盘,能够在盘的相同位置使用各种不同的波长的颜色的光记录信息,或从各种角度记录不同的信息的层等。
另外,在数字广播用***ex200中,也能够利用具有天线ex205的车辆ex210从卫星ex202等接收数据,并在车辆ex210具有的汽车导航仪ex211等的显示装置上再现动态图像。另外,汽车导航仪ex211的结构可以采用例如图9所示的结构中追加了GPS接收部的结构,也可以利用计算机ex111和手机ex114等进行相同的操作。另外,上述手机ex114等终端可以采用与电视机ex300相同的如下三种安装方式:具有编码器和解码器双方的收发型终端、只具有编码器的发送终端、只具有解码器的接收终端。
这样,能够将在上述各个实施方式中示出的图像编码方法或者图像解码方法应用于上述的任意一种设备或者***中,由此能够获得在上述各个实施方式中说明的效果。
另外,本发明不限于上述实施方式,能够在不脱离本发明的范围的情况下进行各种变形或者修改。
(实施方式4)
在本实施方式中,将图像解码装置100典型地实现为作为半导体集成电路的LSI。图12表示将图6所示的图像解码装置100实现为LSI2100的方式。图像解码装置100的各个构成要素形成于图12所示的LSI2100上。
这些构成要素可以独立地单片化,也可以包含一部分或全部地单片化。这里是形成为LSI,但根据集成程度的不同,有时也称为IC、***LSI、超级(super)LSI、特级(ultra)LSI。
并且,集成电路化的方法不限于LSI,也可以利用专用电路或通用处理器实现。也可以采用在制作LSI后能够编程的FPGA(Field Programmable Gate Array:现场可编程门阵列)、能够再构成LSI内部的电路单元的连接和设定的可重构处理器。
另外,如果伴随半导体技术的发展或利用派生的其他技术替换LSI的集成电路化的技术问世,当然也可以使用该技术进行功能单元的集成化。还存在适用生物技术等的可能性。
另外,能够将集成了本实施方式的图像解码装置的半导体芯片、与用于描绘图像的显示器进行组合,构成适合各种用途的描绘设备。手机、电视机、数字视频记录器、数字视频摄像机及汽车导航仪等信息描绘装置也能够利用本发明。作为显示器,除了冷阴极射线管(CRT)之外,也可以将液晶、PDP(等离子显示面板)以及有机EL等平板显示器、与以投影仪为代表的投影型显示器等进行组合。
另外,本实施方式中的LSI也可以与具有储存编码流的比特流缓冲器以及储存图像的帧存储器等的DRAM(Dynamic Random Access Memory:动态随机访问存储器)协作,从而进行编码处理或者解码处理。并且,本实施方式中的LSI不限于和DRAM协作,也可以与eDRAM(embeded DRAM)、SRAM(Static Random Access Memory:静态随机访问存储器)、或者硬盘等其他存储装置进行协作。
(实施方式5)
在上述各个实施方式中示出的图像解码装置以及图像解码方法典型地可以实现为作为集成电路的LSI。作为一例,图13表示形成为单片的LSIex500的结构。LSI ex500具有以下说明的要素ex502~ex509,各个要素通过总线ex510进行连接。电源电路部ex505在接通电源的情况下,在通过向各个部分提供电力而能够动作的状态下起动。
例如,在进行编码处理的情况下,LSI ex500通过AV I/O ex509从麦克风ex117及摄像机ex113等受理AV信号的输入。所输入的AV信号被暂且储存在SDRAM等外部的存储器ex511中。所储存的数据根据处理量及处理速度被适当分为多次等,传输给信号处理部ex507。信号处理部ex507进行声音信号的编码以及/或者影像信号的编码。其中,影像信号的编码处理是指在上述实施方式中说明的编码处理。信号处理部ex507还根据情况进行将被编码后的声音数据和被编码后的影像数据复用等处理,并从流I/Oex504输出到外部。该输出的比特流被朝向基站ex107发送,或者被写入到记录介质ex215中。
另外,例如,在进行解码处理的情况下,LSI ex500根据微型机(微型计算机)ex502的控制,将通过流I/O ex504从基站ex107得到的编码数据、或者从记录介质ex215读取得到的编码数据,暂且储存在存储器ex511等中。根据微型机ex502的控制,所储存的数据根据处理量及处理速度被适当分为多次等传输给信号处理部ex507,在信号处理部ex507中进行声音数据的解码以及/或者影像数据的解码。其中,影像信号的解码处理是指在上述实施方式中说明的解码处理。另外,也可以根据情况以能够同步再现被解码后的声音信号和被解码后的影像信号的方式,将各个信号暂且储存在存储器ex511等中。被解码后的输出信号适当通过存储器ex511等从AV I/Oex509输出给监视器ex219等。在向存储器ex511进行访问时,通过存储器控制器ex503来进行。
另外,以上说明了存储器ex511在LSI ex500的外部的结构,但也可以构成为包含于LSI ex500内部。并且,LSI ex500可以形成为单片,也可以形成为多个芯片。
另外,此时是形成为LSI,但根据集成程度的不同,有时也称为IC、***LSI、超级LSI、特级LSI。
并且,集成电路化的方法不限于LSI,也可以利用专用电路或通用处理器实现。也可以采用在制作LSI后能够编程的FPGA(Field Programmable Gate Array:现场可编程门阵列)、或者能够再构成LSI内部的电路单元的连接和设定的可重构处理器。
另外,如果伴随半导体技术的发展或利用派生的其他技术替换LSI的集成电路化的技术问世,当然也可以使用该技术进行功能单元的集成化。还存在适用生物技术等的可能性。
另外,这些实施方式只是示例,本发明不限于这些实施方式。只要不脱离本发明的宗旨,对本实施方式进行本行业人员能够想到的各种变形得到的方式、或者将不同实施方式中的构成要素进行组合而得到的方式,都包含于本发明的范围之内。
另外,构成上述图像解码装置的多个构成要素的全部或一部分也可以由硬件构成。并且,构成上述图像解码装置的多个构成要素的全部或一部分也可以是由CPU(Central Processing Unit:中央处理单元)等执行的程序的模块。
另外,构成上述图像解码装置的多个构成要素的全部或一部分也可以由一个***LSI(Large Scale Integration:大规模集成电路)构成。***LSI可以是在一个芯片上集成多个构成要素制得的超多功能LSI,具体地讲,可以是包括微处理器、ROM(Read Only Memory:只读存储器)、RAM(Random Access Memory:随机访问存储器)等在内构成的计算机***。
另外,本发明也可以实现为将图像解码装置具有的特征性构成部分的动作作为步骤的图像解码方法。另外,本发明还可以实现为使计算机执行这种图像解码方法中包含的各个步骤的程序。另外,本发明还可以实现为存储这种程序的计算机可读取的记录介质。另外,该程序也可以通过因特网等传输介质进行分发。
此次公开的实施方式在所有方面都只是示例,不能理解为限制性方式。本发明的范围不是利用上述的说明而是利用权利要求书进行公开,并且包含与权利要求书均等的意思以及范围内的全部变更。
产业上的可利用性
本发明的图像解码装置,例如,作为电视机、数字视频记录器、汽车导航仪、手机、数字照相机、数字视频摄像机等信息显示设备以及摄影***,能够用于各种用途。
标号说明
100、100A图像解码装置;110第1传输指示部;111第1解码部;120第2传输指示部;121第2解码部;122判定部;123mv传输指示部;124mv保持存储器;124A缓冲器;130DMA控制器;130A传输部;131mv计算部;132mv传输指示部;133参照图像传输指示部;141运动补偿处理部;142帧内预测处理部;143预测图像选择部;151逆正交变换部;152逆量化部;161解码图像合成部;162解块过滤器处理部;163解码图像传输指示部;200外部存储器;300存储介质;400接收部;1000、1000A图像解码***;2100LSI;ex100内容提供***;ex101因特网;ex102因特网服务提供商;ex103流服务器;ex104电话网;ex106、ex107、ex108、ex109、ex110基站;ex111计算机;ex112 PDA(Personal Digital Assistant:个人数字助理);ex113、ex116摄像机;ex114手机;ex115游戏机;ex117麦克风;ex200数字广播用***;ex201电视台;ex202广播卫星(卫星);ex203线缆;ex204、ex205天线;ex210车辆;ex211汽车导航仪;ex212再现装置;ex213、ex219监视器;ex214、ex215、ex216记录介质;ex217机顶盒(STB);ex218读取器/记录器;ex220遥控器;ex230信息轨道;ex231记录块;ex232内周区域;ex233数据记录区域;ex234外周区域;ex300电视机(接收机);ex301调谐器;ex302调制/解调部;ex303复用/分离部;ex304声音信号处理部;ex305影像信号处理部;ex306、ex507信号处理部;ex307扬声器;ex308显示部;ex309输出部;ex311、ex505电源电路部;ex312操作输入部;ex313电桥部;ex314槽部;ex315驱动器;ex316调制解调器;ex317接口部;ex318、ex319、ex320、ex321、ex404缓冲器;ex400信息再现/记录部;ex401光头;ex402调制记录部;ex403再现解调部;ex405盘马达;ex406伺服控制部;ex407***控制部;ex502微型机(微型计算机);ex503存储器控制器;ex504流I/O;ex509AV I/O;ex510总线。
Claims (13)
1.一种图像解码装置,按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码,
所述图像解码装置具有:
传输部,与外部存储器进行数据通信,该外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量;
缓冲器;
第1解码部,依次对所述多个宏块进行解码;
第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1;以及
判定部,根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量,
在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,
在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
2.根据权利要求1所述的图像解码装置,
所述图像解码装置还具有计算部,在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,该计算部使用被传输到所述缓冲器的与所述第w个宏块对应的co-located宏块的运动矢量,计算所述第w个宏块的运动矢量,
所述传输部向所述外部存储器传输所计算的所述第w个宏块的运动矢量。
3.根据权利要求1或2所述的图像解码装置,
在计算所述第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,在进行所述第v个宏块的解码的期间中,所述传输部从所述外部存储器向缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,
在计算所述第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,在进行所述第v个宏块的解码的期间中,所述传输部不从所述外部存储器向缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
4.根据权利要求1~3中任意一项所述的图像解码装置,
所述第2解码部只对所述判定信息进行解码。
5.根据权利要求1~4中任意一项所述的图像解码装置,
所述第2解码部向所述第1解码部发送被解码后的所述判定信息。
6.根据权利要求4或5所述的图像解码装置,
所述第1解码部对所述第w个宏块之中、除了已由所述第2解码部进行解码的所述判定信息之外的部分进行解码。
7.根据权利要求1~6中任意一项所述的图像解码装置,
所述判定信息表示所述第w个宏块是否是按照直接模式进行编码的。
8.根据权利要求1~6中任意一项所述的图像解码装置,
所述判定信息表示所述第w个宏块是否是跳过宏块。
9.根据权利要求1~6中任意一项所述的图像解码装置,
所述判定信息表示所述第w个宏块是否是帧间宏块。
10.根据权利要求1~9中任意一项所述的图像解码装置,
所述多个宏块中的各个宏块是按照H.264/AVC进行了编码的宏块。
11.一种集成电路,按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码,
所述集成电路具有:
传输部,与外部存储器进行数据通信,该外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量;
缓冲器;
第1解码部,依次对所述多个宏块进行解码;
第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1;以及
判定部,根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量,
在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,
在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
12.一种由图像解码装置执行的图像解码方法,该图像解码装置按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码,
所述图像解码装置具有:
传输部,与外部存储器进行数据通信,该外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量;
缓冲器;
第1解码部,依次对所述多个宏块进行解码;以及
第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1,
所述图像解码方法包含如下步骤:
根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量的步骤;以及
在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量的步骤,
在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
13.一种图像解码***,包括图像解码装置和外部存储器,该图像解码装置按照规定的顺序依次对已被编码的构成图片的多个宏块进行解码,
所述外部存储器存储与各个所述宏块对应的co-located宏块的运动矢量,
所述图像解码装置具有:
传输部,与外部存储器进行数据通信;
缓冲器;
第1解码部,依次对所述多个宏块进行解码;
第2解码部,在由所述第1解码部进行的第v个宏块的解码结束之前,至少对与第w个宏块对应的已被编码的判定信息进行解码,该判定信息用于判定在计算该第w个宏块的运动矢量时是否需要与该第w个宏块对应的co-located宏块的运动矢量,其中v是1以上的整数,w≥v+1;以及
判定部,根据被解码后的所述判定信息,判定在计算该第w个宏块的运动矢量时是否需要与所述第w个宏块对应的co-located宏块的运动矢量,
在计算该第w个宏块的运动矢量时需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量,
在计算该第w个宏块的运动矢量时不需要与所述第w个宏块对应的co-located宏块的运动矢量的情况下,所述传输部不从所述外部存储器向所述缓冲器传输与所述第w个宏块对应的co-located宏块的运动矢量。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009116121 | 2009-05-13 | ||
JP2009-116121 | 2009-05-13 | ||
PCT/JP2010/002806 WO2010131422A1 (ja) | 2009-05-13 | 2010-04-19 | 画像復号装置、集積回路、画像復号方法及び画像復号システム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102090066A true CN102090066A (zh) | 2011-06-08 |
Family
ID=43084808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010800020700A Pending CN102090066A (zh) | 2009-05-13 | 2010-04-19 | 图像解码装置、集成电路、图像解码方法及图像解码*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US9001893B2 (zh) |
JP (1) | JP5468604B2 (zh) |
CN (1) | CN102090066A (zh) |
WO (1) | WO2010131422A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9300975B2 (en) * | 2011-09-11 | 2016-03-29 | Texas Instruments Incorporated | Concurrent access shared buffer in a video encoder |
JP6094760B2 (ja) * | 2012-02-07 | 2017-03-15 | パナソニックIpマネジメント株式会社 | 画像処理装置および画像処理方法 |
KR102232417B1 (ko) * | 2013-11-20 | 2021-03-26 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11215509A (ja) * | 1998-01-28 | 1999-08-06 | Nec Corp | 動き補償処理方法及びシステム並びにその処理プログラムを記録した記録媒体 |
JP2006279330A (ja) * | 2005-03-28 | 2006-10-12 | Victor Co Of Japan Ltd | 動き補償処理方法 |
US20080008244A1 (en) * | 2004-11-26 | 2008-01-10 | Keishi Chikamura | Decoding Circuit, Decoding Device, And Decoding System |
US20080069225A1 (en) * | 2002-07-15 | 2008-03-20 | Yoshinori Suzuki | Moving picture encoding method and decoding method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04106070A (ja) | 1990-08-23 | 1992-04-08 | Sanyo Electric Co Ltd | テープ送出装置のカバーテープ剥離装置 |
JP2004088722A (ja) * | 2002-03-04 | 2004-03-18 | Matsushita Electric Ind Co Ltd | 動画像符号化方法および動画像復号化方法 |
JP4592656B2 (ja) * | 2006-08-17 | 2010-12-01 | 富士通セミコンダクター株式会社 | 動き予測処理装置、画像符号化装置および画像復号化装置 |
KR100968371B1 (ko) * | 2008-04-25 | 2010-07-06 | 주식회사 코아로직 | 영상의 복호화 방법 및 장치 |
-
2010
- 2010-04-19 CN CN2010800020700A patent/CN102090066A/zh active Pending
- 2010-04-19 US US13/003,391 patent/US9001893B2/en not_active Expired - Fee Related
- 2010-04-19 JP JP2011513228A patent/JP5468604B2/ja not_active Expired - Fee Related
- 2010-04-19 WO PCT/JP2010/002806 patent/WO2010131422A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11215509A (ja) * | 1998-01-28 | 1999-08-06 | Nec Corp | 動き補償処理方法及びシステム並びにその処理プログラムを記録した記録媒体 |
US20080069225A1 (en) * | 2002-07-15 | 2008-03-20 | Yoshinori Suzuki | Moving picture encoding method and decoding method |
US20080008244A1 (en) * | 2004-11-26 | 2008-01-10 | Keishi Chikamura | Decoding Circuit, Decoding Device, And Decoding System |
JP2006279330A (ja) * | 2005-03-28 | 2006-10-12 | Victor Co Of Japan Ltd | 動き補償処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US9001893B2 (en) | 2015-04-07 |
WO2010131422A1 (ja) | 2010-11-18 |
JP5468604B2 (ja) | 2014-04-09 |
JPWO2010131422A1 (ja) | 2012-11-01 |
US20110116548A1 (en) | 2011-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102687510B (zh) | 图像解码装置、图像编码装置、图像解码方法、图像编码方法及集成电路 | |
CN103098474B (zh) | 图像解码装置、图像编码装置、及其方法、集成电路以及代码转换装置 | |
JP5574345B2 (ja) | 符号化方法、エラー検出方法、復号方法、符号化装置、エラー検出装置及び復号装置 | |
CN102124741B (zh) | 图像编码方法及图像编码装置 | |
US8718149B2 (en) | Image coding method and image decoding method | |
JP5659160B2 (ja) | 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 | |
JP6390883B2 (ja) | 画像処理装置 | |
WO2012046435A1 (ja) | 画像処理装置、画像符号化方法および画像処理方法 | |
WO2011161949A1 (ja) | 画像復号装置、画像復号方法、集積回路およびプログラム | |
EA021750B1 (ru) | Способ декодирования, декодирующее устройство, способ кодирования и кодирующее устройство | |
JP5546044B2 (ja) | 画像復号装置、画像符号化装置、画像復号回路及び画像復号方法 | |
CN102204255B (zh) | 运动图像解码装置、方法和***以及集成电路 | |
CN102090066A (zh) | 图像解码装置、集成电路、图像解码方法及图像解码*** | |
WO2013076897A1 (ja) | 画像処理装置および画像処理方法 | |
JP2011182132A (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 | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20170111 |
|
AD01 | Patent right deemed abandoned |