CN102197652B - 解码装置、解码方法、程序以及集成电路 - Google Patents
解码装置、解码方法、程序以及集成电路 Download PDFInfo
- Publication number
- CN102197652B CN102197652B CN201080003007.9A CN201080003007A CN102197652B CN 102197652 B CN102197652 B CN 102197652B CN 201080003007 A CN201080003007 A CN 201080003007A CN 102197652 B CN102197652 B CN 102197652B
- Authority
- CN
- China
- Prior art keywords
- search
- memory portion
- motion vector
- region
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 83
- 239000013598 vector Substances 0.000 claims abstract description 336
- 230000033001 locomotion Effects 0.000 claims abstract description 334
- 238000004364 calculation method Methods 0.000 claims abstract description 11
- 230000015654 memory Effects 0.000 claims description 410
- 238000012545 processing Methods 0.000 claims description 94
- 230000015572 biosynthetic process Effects 0.000 claims description 73
- 230000008929 regeneration Effects 0.000 claims description 22
- 238000011069 regeneration method Methods 0.000 claims description 22
- 238000012546 transfer Methods 0.000 claims description 5
- 238000012163 sequencing technique Methods 0.000 claims 1
- 238000003860 storage Methods 0.000 abstract description 35
- 238000005755 formation reaction Methods 0.000 description 72
- 230000005540 biological transmission Effects 0.000 description 54
- 238000013139 quantization Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 25
- 239000012467 final product Substances 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 13
- 230000009466 transformation Effects 0.000 description 11
- 230000003287 optical effect Effects 0.000 description 9
- 230000001172 regenerating effect Effects 0.000 description 8
- 230000006835 compression Effects 0.000 description 7
- 238000007906 compression Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 239000004065 semiconductor Substances 0.000 description 7
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000001932 seasonal effect Effects 0.000 description 5
- 230000009467 reduction Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000007480 spreading Effects 0.000 description 4
- 238000003892 spreading Methods 0.000 description 4
- 230000005055 memory storage Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000010894 electron beam technology Methods 0.000 description 1
- 230000003760 hair shine Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
图像解码装置(100)包括:第一记忆部(20),记忆在对块进行解码时所参考的参考图像的像素数据,所述参考图像是已经由该解码装置解码的图像;第二记忆部(30),比第一记忆部(20)的记忆容量小,并且比第一记忆部(20)读出数据的速度快;搜索区域传送部(40),将在算出块的运动矢量时所需要的搜索区域的像素数据,从第一记忆部(20)传送到第二记忆部(30),所述搜索区域是所述参考图像的一部分区域;运动矢量运算部(50),通过反复从第二记忆部(30)读出搜索区域的像素数据并进行规定的运算,从而算出块的运动矢量;以及解码部(60),利用在运动矢量运算部(50)算出的运动矢量,对块进行解码。
Description
技术领域
本发明涉及对被编码的图像进行解码的图像解码装置以及图像解码方法,尤其涉及对解码后的图像的相关性进行搜索的图像解码装置以及图像解码方法。
背景技术
对运动图像进行编码的图像编码装置将构成运动图像的各个图片划分为由16×16像素构成的宏块,并以宏块为单位进行编码。并且,图像编码装置对运动图像进行编码以及压缩,从而生成编码流。在图像解码装置中,以宏块为单位对该编码流进行解码,再生原来的运动图像的各个图片。
作为以往的一个图像编码方式有ITU-T H.264标准(例如参照非专利文献1以及非专利文献2)。与H.264标准相对应的图像解码装置如图30所示,首先从比特流缓冲器702中读入编码流,在可变长解码部704进行可变长解码,并输出宏块类别、画面内预测(帧内预测)模式、运动矢量信息、量化参数等编码信息以及与各个像素数据相对应的系数信息。编码信息被传递给控制部701,并在各处理部被转换成必要的形式。
系数信息在逆量化部705被逆量化,在逆频率转换部706以与宏块类别相对应的方法来进行逆频率转换。在宏块类别为帧内宏块的情况下,在画面内预测部707生成与画面内预测模式相对应的预测图像。另外,在宏块类别为帧间宏块的情况下,在运动矢量算出部708根据运动矢量信息算出运动矢量,并利用运动矢量,在运动补偿部709生成预测图像。并且,在再构成部711,根据预测图像和作为被逆频率变换后的系数信息的差分图像,来生成解码图像。并且,在解块滤波器部712对解码图像进行解块滤波处理,并存储到帧存储器703。
在H.264标准中存在有被称为直接模式的宏块类别。直接模式是帧间宏块中的类别之一,在该模式中不使编码流中持有运动矢量信息,而是利用过去编码的图片的运动矢量来生成运动矢量。图31示出了在H.264标准中的直接模式的运动矢量的算出方法。解码宏块的运动矢量mvL0以及mvL1,是根据与解码图片相对应的固定图片的解码宏块的相同位置上的固定块的运动矢量mvCol,以各个参考图片的时间间隔tb以及td进行缩放而被算出的。
在直接模式中,由于不必将运动矢量信息插入到编码流中,因此能够得到较高的压缩效率。但是,针对不同的图像,会出现以该直接模式而生成的运动矢量不是最佳运动矢量的情况。在运动矢量不是最佳的情况下,虽然运动矢量信息被消除,但是与来自预测图像的误差相对应的系数信息增加,其结果仍然是导致压缩率降低。尤其在固定块为帧内块的情况下,由于不存在运动矢量,因此产生较大误差的情况较多。
另外,在作为下一代图像编码标准而被提出的技术中,有用于解决以下这种问题的技术(非专利文献3)。如图32所示,在该技术中变更了以往的H.264标准的直接模式的运算方法。具体而言,在以两个参考图片L0和参考图片L1的解码宏块的相同位置为中心的规定范围内,按照以下说明的搜索方法,通过检测相关性最高的部分也就是说最类似的部分来决定运动矢量。
在上述的搜索方法中,以解码宏块的位置为中心,上下左右对称地进行搜索。首先,对参考图片L0的搜索区域的左上位置与参考图片L1的搜索区域的右下位置进行比较,算出SAD(Sum of Absolute Difference:绝对误差和)。接着,在使比较位置在参考图片L0向右方向移动、在参考图片L1向左方向移动的同时,按顺序算出SAD。
这样,按顺序算出SAD,将最小的SAD的位置视为最类似的位置。并且,将该矢量变换为以解码图片的解码宏块为起点的运动矢量mvL0以及mvL1,并算出运动矢量。这样,通过利用参考图像本身来算出运动矢量,从而不会像以往那样使用过去解码时的信息,因此能够一直算出最佳的运动矢量。其结果是,既不使系数信息增加也不必将运动矢量信息插入到编码流中,因此能够使压缩效率提高。
并且,在H.264标准中,即使是B图片的跳过模式(skip mode)也能够进行与直接模式相同的运动矢量运算,在本说明书中将包括跳过模式的情况统称为直接模式。
现有技术文献
非专利文献
非专利文献1 ITU-T H.264标准书Advanced video coding forgeneric audiovisual services,2005年3月发行
非专利文献2 Thomas Wiegand et al,″Overview of the H.264/AVCVideo Coding Standard″,IEEE TRANSACTIONS ON CIRCUITS ANDSYSTEMS FOR VIDEO TECHNOLOGY,JULY 2003,PP.1-19.
非专利文献3 Tomokazu Murakami著,「Advanced B Skip Modewith Decoder-side Motion Estimation」,[online],ITU-T Video Coding ExpertsGroup,2009年4月15日,[2009年9月18日检索],互联网<URL:http://wftp3.itu.int/av-arch/video-site/0904Yok/VCEG-AK12.zip>
发明概要
发明所要解决的技术问题
如以上所示,在非专利文献3中示出了,通过在直接模式时的参考图像的搜索,来决定运动矢量的运算方法。然而,与以往的运动矢量算出相比利用了数据量极大的参考图像,而没有具体示出怎样进行运动矢量的搜索,以及从帧存储器中怎样获得必要的参考图像。
在以往的直接模式中,用于运动矢量的算出的数据是过去的图片的运动矢量,1个运动矢量充其量不过4Byte左右。而在非专利文献3所示的方法中,由于利用了被存储在帧存储器中的图像本身,因此在进行一次的搜索中至少需要16像素×16像素×2个图片=512像素,并且,在进行运动矢量的搜索时,在搜索区域为32×32的情况下,由于需要17×17的289次搜索,因此在进行一次的直接模式的运动矢量的算出中,需要从帧存储器中读出的数据为512×289=147,968Byte。这相当于以往的方法中的约4倍的数据量。而且,在高保真影像的情况下,由于1秒间的宏块数量为244,800个,因此来自帧存储器的数据传送量则会变得非常庞大。若以示出每秒的传送量的比特宽来表示每秒的传送量,则相当于36GByte/sec。
处理性能大致上由运算性能和数据传送性能这两方面来决定,即使能够进行快速运算,但是在进行必要的数据传送时花费时间的情况下,也会造成性能降低。
一般而言,由于在图像解码装置中帧存储器容量较大,因此被放置在被连接于经常进行运算的LSI(Large Scale Integration:大规模集成电路)之外的DRAM(Dynamic Random Access Memory:动态随机存储器)上的情况较多。然而,实现这种大的传送带宽的DRAM的构成是比较困难的,而且也是比较昂贵的。并且,在普通的DRAM中由于传送性能不足,因此会造成处理性能降低。因此,为了实现高性能,就需要减少来自帧存储器的数据传送量以及降低传送带宽。
发明内容
本发明鉴于上述以往的问题,目的在于提供一种图像解码装置,其能够在运动矢量的算出处理中,减少来自帧存储器的数据传送量以及降低传送带宽。
用于解决课题的手段
本发明的一个实施例所涉及的解码装置对构成编码图像的块进行解码。具体而言包括:第一记忆部,记忆在对所述块进行解码时所参考的参考图像的像素数据,所述参考图像是已经由该解码装置解码的图像;第二记忆部,比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快;搜索区域传送部,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;运动矢量运算部,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;以及解码部,利用在所述运动矢量运算部算出的运动矢量,对所述块进行解码。
根据上述构成,能够预先将搜索区域的像素数据从第一记忆部一次性地传送到第二记忆部,从数据地读出速度快地第二记忆部反复地读出搜索区域地像素数据,从而能够算出运动矢量。这样,不仅能够减少来自第一记忆部地数据传送量,而且还能够降低数据传送时所需要地消费电力。另外,本说明书中的“块”有代表性地是指宏块,但是并非受此所限。
作为一个实施例,也可以是,所述块是不附加信息而被编码的第一块或者是附加信息而被编码的第二块,所述信息是示出在解码时所使用的运动矢量的信息。也可以是,所述搜索区域传送部只有在被解码的块为所述第一块的情况下,才将所述搜索区域的像素数据从所述第一记忆部传送到所述第二记忆部。也可以是,所述解码部利用在所述运动矢量运算部算出的所述运动矢量,对所述第一块进行解码,利用被附加的所述运动矢量,对所述第二块进行解码。这样,能够使从第一记忆部传送到第二记忆部的数据量降低为所需最低限。其结果是,能够进一步降低在数据传送时所需要的消耗电力。
作为其他的实施例,也可以是,所述块是不附加信息而被编码的第一块或者是附加信息而被编码的第二块,所述信息是示出在解码时所使用的运动矢量的信息;也可以是,所述搜索区域传送部在判断被解码的块是所述第一块还是所述第二块之前,开始进行将所述搜索区域的像素数据从所述第一记忆部传送到所述第二记忆部的处理;也可以是,所述解码部利用在所述运动矢量运算部算出的所述运动矢量,对所述第一块进行解码,利用被附加的所述运动矢量,对所述第二块进行解码。这样,能够减少由运动矢量运算部进行的搜索区域的像素数据的传送结束的等待时间。
并且,也可以是,所述搜索区域传送部,在被解码的块为所述第二块的情况下,中止将所述搜索区域的像素数据从所述第一记忆部传送到所述第二记忆部的处理。这样,由于降低了不必要的数据的传送量,因此能够进一步降低数据传送时所需要的消耗电力。
并且,也可以是,所述第二记忆部,至少对由所述搜索区域传送部传送的过去的像素数据中的一部分继续进行记忆;并且,也可以是,所述搜索区域传送部,仅将所述搜索区域的像素数据之中的没有被记忆在所述第二记忆部的像素数据,从所述第一记忆部传送到所述第二记忆部。这样,能够进一步减少来自第一记忆部的数据传送量。
而且,也可以是,所述搜索区域传送部,将过去的像素数据中的在算出后续的所述块的所述运动矢量时不使用的像素数据,从所述第二记忆部中删除。这样,能够减小第二记忆部的记忆容量。
作为一个实施例,也可以是,该解码装置,在对构成所述编码图像的多个所述块,从所述编码图像的左上开始朝右下依次进行解码的情况下,所述搜索区域传送部,将相当于所述搜索区域的右下角这一部分的像素数据,从所述第一记忆部传送到所述第二记忆部,将相当于所述搜索区域的左上端这一部分之前被传送的像素数据,从所述第二记忆部中删除。
并且,也可以是,所述搜索区域传送部,在构成所述编码图像的多个所述块中的第n个所述块的运动矢量,由所述运动矢量运算部进行运算之时,同时还将与第(n+1)个所述块相对应的所述搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,在此,n为自然数。这样,通过将解码时所需的多个处理进行流水线化,从而不仅能够消除数据传送的空闲时间,而且还能够减少来自第一记忆部的传送带宽。
而且,也可以是,该解码装置包括:运动补偿运算部,利用所述运动矢量以及所述参考图像的像素数据,生成所述块的预测图像;第三记忆部,记忆由所述运动补偿运算部参考的参考区域的像素数据,所述参考区域是所述参考图像的一部分区域;以及参考区域传送部,将所述参考区域的像素数据,从所述第一记忆部以及所述第二记忆部中的一方传送到所述第三记忆部。这样,能够进一步减少来自第一记忆部的数据传送量。
作为一个实施例,也可以是,所述块是不附加信息而被编码的第一块或者是附加信息而被编码的第二块,所述信息是示出在解码时所使用的运动矢量的信息。并且,也可以是,所述参考区域传送部,将与所述第一块相对应的所述参考区域的像素数据,从所述第二记忆部传送到所述第三记忆部,将与所述第二块相对应的所述参考图像的像素数据,从所述第一记忆部传送到所述第三记忆部。在直接模式的情况下,由于搜索区域与参考区域实质上是相同的,因此,能够将参考区域的像素数据从第二记忆部传送到第三记忆部。另一方面,也可以不局限于是否为直接模式,可以判断参考区域的像素数据是否被存储在第二记忆部中,在被存储了的情况下,从第二记忆部传送。
并且,也可以是,所述第二记忆部包括搜索区域记忆部和广域记忆部,所述搜索区域记忆部由所述运动矢量运算部直接进行存取,所述广域记忆部中记忆有广域中的像素数据,该广域是指,不仅包括所述搜索区域记忆部所记忆的所述搜索区域而且比所述参考图像中的所述搜索区域大。并且,也可以是,所述参考区域传送部,将所述参考区域的像素数据,从所述广域记忆部传送到所述第三记忆部。这样,在能够减小搜索区域记忆部的记忆容量的同时,还能够减少向搜索区域记忆部的存取。
并且,也可以是,所述搜索区域包含第一搜索区域以及第二搜索区域,所述第一搜索区域是在再生顺序中,被包含在包括所述块的所述编码图像之前的参考图像之中的区域,所述第二搜索区域是在再生顺序中,被包含在包括所述块的所述编码图像之后的参考图像之中的区域。并且,也可以是,所述运动矢量运算部,一边使所述第一搜索区域以及所述第二搜索区域内的搜索范围的位置移动,一边反复地进行将所述第一搜索区域以及所述第二搜索区域各自的所述搜索范围的像素数据,从所述第二记忆部读出并算出绝对值差分和的处理,并且根据被算出的绝对值差分和为最小的所述搜索范围的位置,算出所述运动矢量。但是,运动矢量算出方法并非受此所限。
本发明的一个实施例所涉及的解码方法是由解码装置对构成编码图像的块进行解码的方法,所述解码装置包括第一记忆部以及第二记忆部,所述第一记忆部记忆在对所述块进行解码之时所参考的参考图像的像素数据,所述参考图像是已经被解码的图像,所述第二记忆部比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快。具体而言包括:搜索区域传送步骤,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;运动矢量运算步骤,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;以及解码步骤,利用在所述运动矢量运算步骤算出的运动矢量,对所述块进行解码。
本发明的一个实施例所涉及的程序,使解码装置对构成编码图像的块进行解码,所述解码装置包括第一记忆部以及第二记忆部,所述第一记忆部记忆在对所述块进行解码之时所参考的参考图像的像素数据,所述参考图像是已经被解码的图像,所述第二记忆部比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快。具体而言,所述程序使解码装置执行以下步骤:搜索区域传送步骤,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;运动矢量运算步骤,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;以及解码步骤,利用在所述运动矢量运算步骤算出的运动矢量,对所述块进行解码。
本发明的一个实施例所涉及的集成电路,被搭载在解码装置,并且对构成编码图像的块进行解码,所述解码装置包括第一记忆部,用于记忆在对所述块进行解码之时所参考的参考图像的像素数据,所述参考图像是已经被解码的图像。具体而言,所述集成电路包括:第二记忆部,比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快;搜索区域传送部,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;运动矢量运算部,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;以及解码部,利用在所述运动矢量运算部算出的运动矢量,对所述块进行解码。
通过本发明所得到的效果是,实现了能够减少来自第一记忆部的数据传送量或降低数据传送带宽的解码装置。
附图说明
图1A是示出图像解码装置的概略构成的方框图。
图1B是示出图像解码装置的详细构成的方框图。
图2是示出图像解码装置的工作流程的说明图。
图3A是示出在不是帧间宏块的情况下的图像解码装置的时间序列的工作的说明图。
图3B是示出在是帧间宏块而不是直接模式的情况下的、图像解码装置的时间序列的工作的说明图。
图3C是示出在直接模式的情况下的图像解码装置的时间序列的工作的说明图。
图4是示出图像解码装置的构成的构成图。
图5是示出图像解码装置的工作流程的说明图。
图6是示出图像解码装置的时间序列的工作的说明图。
图7A示出了宏块MBn中的搜索区域。
图7B示出了宏块MBn的下一个宏块MBn+1的搜索区域。
图7C是将宏块MBn和宏块MBn+1的搜索区域扩大了的图。
图8A示出了宏块宏块MBn的搜索区域。
图8B示出了宏块MBn的下一个宏块MBn+8的搜索区域。
图8C是将宏块MBn和宏块MBn+8的搜索区域扩大了的图。
图8D示出了参考图像中的搜索图像存储器所记忆的区域。
图9是示出图像解码装置的工作流程的说明图。
图10是示出图像解码装置的时间序列的工作的说明图。
图11是示出图像解码装置的工作的说明图。
图12是示出图像解码装置的构成的构成图。
图13是示出图像解码装置的工作流程的说明图。
图14是示出图像解码装置的工作流程的说明图。
图15是示出图像解码装置的构成的构成图。
图16是示出图像解码装置的参考图像传送的工作流程的说明图。
图17是示出图像解码装置的构成的构成图。
图18是示出图像解码装置的参考图像传送的工作流程的说明图。
图19是示出图像解码装置的构成的构成图。
图20是示出图像解码装置的搜索图像传送的工作流程的说明图。
图21A示出了参考图像中的广域记忆部所记忆的区域。
图21B示出了参考图像中的搜索区域记忆部所记忆的区域。
图22示出图像解码装置的参考图像传送的工作流程的说明图。
图23是实现内容分发服务的内容提供系统的整体构成图。
图24是数字广播用系统的整体构成图。
图25是示出电视机构成例子的方框图。
图26是示出向作为光盘的记录介质进行信息的读写的信息再生/记录部的构成例子的方框图。
图27是示出作为光盘的记录介质的构成例子的图。
图28是示出以集成电路来实现的各个实施例中的图像解码处理的方框图。
图29是示出以集成电路来实现的各个实施例中的图像解码处理的方框图。
图30是示出以往的图像解码装置的构成图。
图31是示出以往的H.264标准的直接模式时的运算方法的说明图。
图32是示出在以往的直接模式时,搜索参考图像并的到运动矢量的方式的运算方法的说明图。
具体实施方式
以下参照附图对本发明的实施例中的图像解码装置进行说明。
(实施例1)
对本发明的实施例1所涉及的图像解码装置的概要进行说明。本发明的实施例1所涉及的图像解码装置以构成编码流(编码图像)的宏块为单位来进行可变长解码。接着,在下一个宏块为直接模式的情况下,从参考图片中读出搜索区域的像素数据(也称作“搜索图像”),并存储到搜索图像存储器。并且,通过从该搜索图像存储器中反复读出搜索区域的像素数据并进行规定的运算,从而进行运动矢量的搜索并决定运动矢量。
以上是对本发明的图像解码装置的概要进行的说明。
接着,参照图1A以及图1B对本实施例1的图像解码装置100的构成进行说明。图1A是示出本实施例1的图像解码装置100的概略构成的方框图。图1B是示出本实施例1的图像解码装置100的详细构成的方框图。
图像解码装置100如图1A所示,包括:第一记忆部20、第二记忆部30、搜索区域传送部40、运动矢量运算部50、解码部60,并且该图像解码装置100以宏块为单位对编码图像进行解码,并输出解码图像。另外,在以后的说明中,将以对每个宏块进行解码为例来说明,但是本发明并非受此所限。即,图像解码装置100也能够以比宏块大或比宏块小的任意的块为单位来进行解码。
第一记忆部20记忆在对宏块进行解码时被参考的参考图像的像素数据,该参考图像是已经由图像解码装置100解码后的图像。第二记忆部30是记忆容量比第一记忆部20小,但是数据的读出速度比第一记忆部20快的记忆部。典型的例子是,第一记忆部20是DRAM(Dynamic Random AccessMemory:动态随机存储器),第二记忆部30是SRAM(Static Random AccessMemory:静态存取存储器),但并非受此所限。
搜索区域传送部40,将在算出宏块的运动矢量时所需要的搜索区域的像素数据,从第一记忆部20传送到第二记忆部30,所述搜索区域是参考图像的一部分的区域。运动矢量运算部50,通过反复从第二记忆部30读出搜索区域的像素数据并进行规定的运算,从而算出宏块的运动矢量。解码部60利用在运动矢量运算部50算出的运动矢量,来对宏块进行解码。
本实施例1中的图像解码装置100如图1B所示,包括:控制部101,用于进行整体控制;比特流缓冲器102,存储被输入的编码流;帧存储器103,存储解码的图像数据;可变长解码部104,读取编码流并进行可变长解码;逆量化部105,进行逆量化;逆频率变换部106,进行逆频率变换;画面内预测部107,进行画面内预测(也称为帧内预测)并生成预测图像;运动矢量算出部108,算出运动矢量;运动补偿部109,进行运动补偿并生成预测图像;开关110,对预测图像进行切换;再构成部111,依据被进行了逆频率变换的差分图像和预测图像来生成解码图像;以及解块滤波器部112,去除被再构成的图像中的块噪声并进行高画质化。
运动矢量算出部108进一步包括:运动矢量运算部181,进行运动矢量运算;以及搜索图像存储器182,存储用于算出运动矢量的搜索区域的图像数据(也称为“搜索图像”)。运动补偿部109包括:运动补偿运算部191,进行运动补偿运算;以及参考图像存储器192,存储被用于运动补偿的参考区域的像素数据(也称为“参考图像”)。
在此,图1A的第一记忆部20与图1B的帧存储器103相对应。图1A的第二记忆部30与图1B的搜索图像存储器182相对应。图1A的搜索区域传送部40虽然在图1B中没有明确示出,但是被包含在运动矢量算出部108中。图1A的运动矢量运算部50与图1B的运动矢量运算部181相对应。图1A的解码部60与图1B的可变长解码部104、逆量化部105、逆频率变换部106、以及再构成部111等相对应。
以上是对图像解码装置100的构成进行的说明。
接着,利用图2的流程图对图1A以及图1B所示的图像解码装置100的工作进行说明。图2示出了一个宏块的解码工作。在本实施例1中,除直接模式情况以外的处理与H.264标准同样,在直接模式的情况下,采用非专利文献3所示的运算方法。
首先,在可变长解码部104对被输入的编码流进行可变长解码(S101)。可变长解码部104输出编码信息以及与各个像素数据相对应的系数信息,所述编码信息例如包括:宏块类别、画面内预测(帧内预测)模式、运动矢量信息、量化参数等。编码信息被输出到控制部101后被输入到各个处理部。系数信息被输出到逆量化部105。接着,在逆量化部105进行逆量化处理(S102)。接着,在逆频率变换部106进行逆频率变换(S103)。
接着,进行解码的宏块是帧间宏块还是帧内宏块的判断(S104)。在帧间宏块的情况下(S104的“是”),进一步进行是否为直接模式的判断(S105)。即,判断解码对象的宏块是第一块还是第二块,所述第一块是不附加表示在解码时所使用的的运动矢量的信息而被编码的块,所述第二块是附加了表示运动矢量的信息而被编码的块。
在直接模式的情况下(S105的“是”),将用于搜索运动矢量的搜索区域的像素数据,从帧存储器103传送到搜索图像存储器182(S106)。如图32所示,关于两张参考图像内的搜索区域的位置,在将搜索区域视为32×32像素的情况下,该搜索区域为被解码的宏块的周边的32×32像素,在将解码宏块的左上的位置作为(x,y),以二维坐标来表示的情况下,将成为(x-8,y-8)的位置作为左上的32×32像素的区域则为搜索区域。换而言之,搜索区域是指,在参考图像内,包含与解码对象图像内的解码对象宏块的位置相对应的位置,且比宏块大的区域。
接着,利用被存储在搜索图像存储器182中的搜索区域的像素数据,在运动矢量运算部181进行运动矢量的搜索,并算出运动矢量(S107)。运动矢量的搜索例如可以如以下所示来进行。
首先,针对搜索图像存储器182上的两张参考图片L0和L1,如图32所示,首先对参考图片L0的搜索区域的左上位置与参考图片L1的搜索区域的右下位置进行比较,算出SAD(Sums of Absolute Difference:绝对误差和)。接着,将比较位置在参考图片L0向右方向移动,在参考图片L1向左方向移动,算出SAD。这样,按顺序算出SAD,SAD最小的位置被视为最类似的位置。并且,将该矢量变换为以解码图片的解码宏块为起点的运动矢量mvL0以及mvL1,并算出运动矢量。
具体而言,在搜索图像存储器182中记忆有参考图片L0中所包含的第一搜索区域(以虚线示出的区域)以及参考图片L1中所包含的第二搜索区域的像素数据,所述参考图片L0是在再生顺序中在包括解码对象宏块的编码图像之前的图片,所述参考图片L1是之后的图片。
运动矢量运算部181首先从搜索图像存储器182中,读出参考图片L0的第一搜索区域的左上的块(搜索范围)的像素数据以及参考图片L1的第二搜索区域的右下的块(搜索范围)的像素数据,并算出两个块的像素数据的SAD。在此被读出的块的大小与解码对象块的大小相同。
接着,运动矢量运算部181一边使搜索范围在第一以及第二搜索区域内移动,一边反复执行上述的处理。并且,运动矢量运算部181根据算出的SAD最小的搜索范围的位置,算出运动矢量。
在不是直接模式的情况下(S105的“否”),在运动矢量运算部181进行运动矢量运算,并算出运动矢量(S108)。在H.264标准中,运动矢量是指,在将周边的运动矢量作为mvA、mvB、mvC的情况下,将他们的中值作为预测运动矢量。通过对该预测运动矢量与被包含在编码流中的运动矢量信息(运动矢量的差分值)进行相加,从而求出运动矢量。
在此得到的运动矢量被输出到运动补偿部109。接着,将运动矢量所示的参考区域(也称作“参考图像”)中的像素数据,从帧存储器103传送到参考图像存储器192(S109)。并且,运动补偿运算部191利用被存储在参考图像存储器192中的参考区域的像素数据,生成1/2像素精度以及1/4像素精度的预测图像。
另一方面,在不是帧间宏块的情况下(S104的“否”),即在帧内宏块的情况下,在画面内预测部107进行画面内预测的处理,生成预测图像(S111)。关于是否为帧间宏块的选择,在图1B的构成图中由开关110来进行。
通过在再构成部111对得到的预测图像与逆频率变换部106所输出的差分图像进行相加,从而生成解码图像(S112)。接着,针对得到的解码图像,在解块滤波器部112进行降低块噪声的解块滤波处理,并将结果存储到帧存储器103(S113)。
图3A至图3C在时间序列上示出了这些工作。图3A示出了不是帧间宏块的情况,图3B示出了是帧间宏块而不是直接模式的情况,图3C示出了直接模式的情况。不论哪个情况都按照图2所示的流程来依次工作。图中的TS(Time Slot:时隙)示出了一个宏块在解码时所需要的时间,可根据不同的宏块而发生变动。
在本实施例1中,在帧间宏块的情况中包括了直接模式和不是直接模式的这两种情况,理由如下所示。关于直接模式,由于在编码流中不对与运动矢量有关的信息进行编码,因此直接模式是能够提高压缩率的优良方式。但是,由于在解码侧需要预测并生成运动矢量,因此根据图像的种类的不同,会出现运动矢量的值不是最佳值的情况。在不是最佳值的情况下,编码流的系数信息的代码量就会增大,这样会导致压缩率降低。因此,通过持有直接模式和不是直接模式这两种情况,从而在编码侧能够选择压缩率更高的模式来进行编码。其结果是,能够提高压缩率。
以上是针对图像解码装置100的工作进行的说明。
这样,在实施例1中,通过将用于进行运动矢量搜索的搜索图像存储器182设置到以往的运动矢量算出部中,从而能够减少来自帧存储器103的数据传送量。只要在进行运动矢量搜索之前,先将搜索区域的像素数据传送到搜索图像存储器182,则在进行运动矢量搜索运算的每一次时无需对帧存储器103进行存取,仅对搜索图像存储器182进行存取即可。这样,能够将从帧存储器103读出的数据量减少到,每一宏块32×32×2=2048Byte。
并且,通过减少传送量,同时还能够达到降低在传送时所消耗的电力的效果。
另外,在本实施例1中,虽然采用了可变长编码,不过也可以是霍夫曼编码、行程编码(Run Length Encoding)或算术编码等编码方式。
并且,在本实施例1中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例1中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例1所参考的非专利文献3所示那样,利用被记忆在帧存储器中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例1中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例1中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
(实施例2)
以下,对本实施例2中的图像解码装置的概要进行说明。在实施例1中,在进行了逆频率变换后,只有在直接模式的情况下才进行搜索图像的传送。因此,需要在等待搜索图像的传送结束后才能进行运动矢量的搜索处理,因此产生了不必要的等待时间。于是,在本实施例2中,在运动矢量算出部中进一步设置搜索图像传送部(搜索区域传送部)。并且,通过在开始运动矢量算出处理之前,先开始搜索图像的传送,从而能够省掉等待时间。这样,既能够提高处理性能,又能够降低来自帧存储器的传送带宽。
以上是针对本实施例2中的图像解码装置的概要进行的说明。
接着,对本实施例2的图像解码装置200的构成进行说明。图4示出了本实施例2的图像解码装置200的构成。本实施例2的图像解码装置200包括搜索图像传送部283,对从帧存储器103向搜索图像存储器182的数据传送进行控制,其他的构成要素与实施例1中的图1B相同,在此赋予相同的符号并省略说明。
以上是对图像解码装置200的构成进行的说明。
接着利用图5的流程图对图4所示的图像解码装置200的工作进行说明。图5示出了一个宏块的解码工作。在本实施例2中与实施例1相同,直接模式的情况以外的处理与H.264相同,在直接模式的情况下,采用非专利文献3所示的运算方法。
首先,在搜索图像传送部283开始进行将用于直接模式时的运动矢量的搜索的搜索区域的像素数据,从帧存储器103传送到搜索图像存储器182的处理(S200)。如图32所示,关于两张参考图像内的搜索区域的位置,在将搜索区域视为32×32像素的情况下,该搜索区域为被解码的宏块的周边的32×32像素,在将解码宏块的左上的位置作为(x,y),以二维坐标来表示的情况下,将成为(x-8,y-8)的位置作为左上的32×32像素的区域则为搜索区域。
在此,不需要结束传送。最初能够开始搜索图像传送的是,在非专利文献3中的运动矢量搜索如图32所示那样,搜索以与解码宏块相同的空间位置为中心的32×32像素的搜索区域。因此,通过可变长解码部104所进行的可变长解码,在被包含在编码流中的编码信息以及系数信息被解码之前(即,在判断是否为直接模式之前),就能够决定搜索区域,并能够传送搜索区域的像素数据。
接着,在可变长解码部104对被输入的编码流进行可变长解码(S201)。可变长解码部104输出宏块类别、画面内预测(帧内预测)模式、运动矢量信息、量化参数等编码信息以及与各个像素数据对应的系数信息。编码信息被输出到控制部101,之后被输入到各个处理部。系数信息被输出到下一个的逆量化部105。接着,在逆量化部105进行逆量化处理(S202)。接着,在逆频率变换部106进行逆频率变换(S203)。
接着,进行被解码宏块是帧间宏块还是帧内宏块的判断(S204)。在是帧间宏块的情况下(S204的“是”),进一步进行是否为直接模式的判断(S205)。
在是直接模式的情况下(S205的“是”),检查在搜索图像传送部283的搜索图像的传送是否结束,在没有结束的情况下一直等待到结束(S206)。若传送结束,接着利用搜索图像存储器182的搜索图像,在运动矢量运算部181进行运动矢量的搜索,并算出运动矢量(S207)。
关于运动矢量的搜索是,针对搜索图像存储器182上的两张参考图片L0和L1,如图32所示,首先对参考图片L0的搜索区域的左上位置与参考图片L1的搜索区域的右下位置进行比较,算出SAD。接着,将比较位置在参考图片L0向右方向移动,在参考图片L1向左方向移动,算出SAD。这样,按顺序算出SAD,SAD最小的位置被视为最类似的位置。并且,将该矢量变换为以解码图片的解码宏块为起点的运动矢量mvL0以及mvL1,并算出运动矢量。
在不是直接模式的情况下(S205的“否”),在运动矢量运算部181进行运动矢量运算,并算出运动矢量(S208)。在H.264标准中,运动矢量是指,在将周边的运动矢量作为mvA、mvB、mvC的情况下,将他们的中值作为预测运动矢量。通过对该预测运动矢量与被包含在编码流中的运动矢量信息(运动矢量的差分值)进行相加,从而求出运动矢量。
在此,由于知道不使用搜索图像,因此既可以等待在搜索图像传送部283的搜索图像的传送结束,也可以在传送没有结束时中断传送。得到的运动矢量被输入到运动补偿部109,运动矢量所示的参考图像从帧存储器103被传送到参考图像存储器192(S209)。并且,运动补偿运算部191利用被存储在参考图像存储器192中的参考图像,生成1/2像素精度以及1/4像素精度的预测图像(S210)。
另一方面,在不是帧间宏块的情况下(S204的“否”),即在帧内宏块的情况下,在画面内预测部107进行画面内预测的处理,生成预测图像(S211)。在此,由于也知道不使用搜索图像,因此既可以等待在搜索图像传送部283的搜索图像的传送结束,也可以在传送没有结束时中断传送。并且,关于是否为帧间宏块的选择,在图4的构成图中由开关110来进行。
通过在再构成部111对得到的预测图像与逆频率变换部106所输出的差分图像进行相加,从而生成解码图像(S212)。接着,针对得到的解码图像,在解块滤波器部112进行降低块噪声的解块滤波处理,并将结果存储到帧存储器103(S213)。
在这些工作中,以时间序列上的工作来表示直接模式时的工作由图6示出。如图6所示,通过在进行可变长解码之前开始搜索图像的传送,由于在运动矢量搜索之前传送已结束,因此,不需要等待时间就能够进行运动矢量的搜索。
另外,搜索图像的传送并非限定于要等到逆频率变换结束后才能结束。然而,由于搜索图像的传送与可变长解码、逆量化、逆频率变换并行进行,因此与图3C所示的情况相比较,逆频率变换与运动矢量搜索之间的等待时间明显地减少了。
以上是针对图像解码装置200的工作进行的说明。
在实施例1中,为了使性能提高,需要缩短搜索图像传送的时间,从而示出每单位时间的传送量的频带宽度就会增大。但是,在本实施例2中,通过设置搜索图像传送部283,并事先开始搜索图像的传送,因此在进行其他的处理之间能够传送搜索图像,这样,与实施例1相比传送时间变长。其结果是,能够减少来自帧存储器103的传送带宽。
另外,在本实施例2中,虽然采用了可变长编码,不过也可以是霍夫曼编码、行程编码(Run Length Encoding)或算术编码等编码方式。
并且,在本实施例2中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例2中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例2所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例2中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例2中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
另外,开始传送搜索图像的定时在本实施例2被设定为在将要进行可变长解码之前,不过只要是在运动矢量搜索之前就可以。并且,也可以是在前一个的宏块处理过程中。
并且,关于在帧内宏块时以及不是直接模式的帧间宏块的情况下的搜索图像的传送结束或中断处理,只要知道不是直接模式,不论以哪个定时都可以。通过提前进行中断,能够减少不必要地传送,并能够降低电力消耗。
(实施例3)
接着,对本实施例3中地图像解码装置的概要进行说明。在实施例1以及实施例2中,按照每个解码宏块来进行搜索图像的传送。对于某一宏块的运动矢量的算出中所需要的搜索区域,只要在下一个宏块中向右移动16像素,大多数的像素能够直接用于搜索。因此,只需要从帧存储器中向搜索图像存储器传送所需的像素。
据此,能够减少传送量,并能够降低传送带宽。以上是针对实施例3中的图像解码装置的概要进行的说明。
以下针对实施例3中图像解码装置200的构成进行说明。本实施例3的图像解码装置200的构成由于与实施例2的图4相同,因此省略说明。
另外,实施例3所涉及的搜索图像存储器182继续记忆以前从帧存储器103传送来的像素数据的至少一部分。并且,实施例3所涉及的搜索图像传送部283,仅将解码对象宏块的搜索区域的像素数据中的、没有被记忆在搜索图像存储器182的像素数据,重新从帧存储器103传送到搜索图像存储器182。而且,搜索图像传送部283,将以前传送的像素数据中的、在算出后续的宏块的运动矢量时没有被使用的像素数据,从搜索像素存储器182中删除。
以上是对本实施例3中的图像解码装置200的构成进行的说明。
以下,对本实施例3中的图像解码装置200的工作进行说明。由于全体的工作流程与实施例2的图5相同,因此省略详细说明。本实施例3也与实施例1相同,除直接模式以外的情况的处理与H.264标准相同,在直接模式的情况下,采用非专利文献3的运算方法。
实施例3与实施例2的不同之处是,根据搜索图像传送部283的搜索图像的传送范围。在实施例2中,搜索图像传送部283将运动矢量的搜索所需要的所有搜索图像,从帧存储器103传送到搜索图像存储器182。然而,实际上如图7A至图7C所示,大部分的搜索图像与前一个宏块的搜索图像重复。
图7A示出了宏块MBn中的搜索区域。在搜索区域为32×32像素的情况下,如图7A所示,到周边的宏块的正中央正好是搜索区域。图7B是宏块MBn的下一个宏块MBn+1的搜索区域。图7C是将宏块MBn和宏块MBn+1的搜索区域扩大后在一个图中示出的例子。
如图7C所示,搜索区域能够被分成三个区域。区域A是仅在宏块MBn的情况下的作为搜索区域的必要区域。区域B是在宏块MBn以及宏块MBn+1的情况下,作为搜索区域的必要区域。区域C是仅在宏块MBn+1的情况下的作为搜索区域的必要区域。即,在宏块MBn+1的运动矢量算出处理中,可以从已经被传送到搜索图像存储器182的区域A和区域B中删除区域A的数据,而仅将区域C的数据从帧存储器103传送到搜索图像存储器182即可。
以上是对本实施例3中的图像解码装置200的工作进行的说明。
这样,通过将搜索区域在水平方向上移动,并仅将重新需要的区域从帧存储器103传送到搜索图像存储器182,从而能够减少传送量,并与此相应地减少传送带宽。在实施例1中,一个宏块在传送时需要2048Byte,在实施例3中,能够将一个宏块的传送量降低到16×32×2=1024Byte。
并且,通过减少传送量,同时还能够实现降低传送时所需的消耗电力。
另外,在本实施例3对适用于实施例2为例进行了说明,不过也能够适用于实施例1,并且能够得到同样的效果。
并且,在本实施例3中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例3中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例3所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例3中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例3中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,在本实施例3中搜索的是解码宏块的周边32×32像素,也可以搜索在水平方向或垂直方向上移动后的位置。若移动量在每一个宏块都相同的情况下能够得到同样的效果。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
(实施例4)
以下,对本实施例4中的图像解码装置的概要进行说明。在实施例3中,所传送的区域仅是在运动矢量的搜索中所需要的搜索图像中的、作为刚刚被解码的宏块的搜索图像而不被使用的区域。然而,若事先将一个宏块之上的宏块中所使用的搜索图像保持到搜索图像存储器中,则只需要向下移动16像素,就能够使更多的像素直接用于搜索。因此,通过从帧存储器仅将必要的像素传送到搜索图像存储器,从而比起实施例3而言,能够进一步减少传送量并降低传送带宽。
以上是对本实施例4中的图像解码装置的概要进行的说明。
以下,对本实施例4的图像解码装置200的构成进行说明。由于本实施例4的图像解码装置200的构成与实施例2的图4完全相同,因此省略说明。
以上是对本实施例4中的图像解码装置200的构成进行的说明。
接着,对本实施例4中的图像解码装置200的工作进行说明。全体的工作流程由于与实施例2的图5相同,因此省略说明。在本实施例4也与实施例1相同,直接模式以外的处理与H.264标准相同,在直接模式的情况下则采用非专利文献3所示的运算方法。
实施例4与实施例3的不同之处是,根据搜索图像传送部283的搜索图像的传送范围。在实施例3中,搜索图像传送部283仅将在被解码的宏块的运动矢量搜索中所需要的搜索区域中,与刚刚被解码的宏块的搜索区域的差分,从帧存储器103传送到搜索图像存储器182。然而,实际上如图8A至图8D所示,大部分的搜索图像与上侧的宏块的搜索图像重复。
图8A示出了宏块MBn中的搜索区域。在搜索区域为32×32像素的情况下,如图8A所示,到周边的宏块的正中央正好是搜索区域。图8B是宏块MBn的下侧的宏块MBn+8的搜索区域。图8C是将宏块MBn和宏块MBn+8的搜索区域扩大后在一个图中示出的例子。
如图8C所示,搜索区域能够被分成三个区域。区域D是仅在宏块MBn的情况下的作为搜索区域的必要区域。区域E是在宏块MBn以及宏块MBn+8的情况下,作为搜索区域的必要区域。区域F是仅在宏块MBn+8的情况下的作为搜索区域的必要区域。即,在宏块MBn+8的运动矢量算出处理中,可以从已经被传送到搜索图像存储器182的区域D和区域E中删除区域D的数据,而仅将区域F的数据从帧存储器103传送即可。
并且,如实施例3的说明那样,在宏块MBn+8前一个的宏块,即宏块MBn+7的运动矢量搜索中,图8C的区域F的左半边的区域是已经从帧存储器103传送到搜索图像存储器182的区域。因此,在进行宏块MBn+8的运动矢量的搜索中,只需要新增加区域F的右半边的区域即可。因此,可以仅将该区域的像素数据从帧存储器103传送即可。
即,在图像解码装置200从编码图像的左上向右下,依次对构成编码图像的多个宏块进行解码的情况下,搜索图像传送部283将相当于搜索区域的右下角的部分(区域F的右半边)的像素数据,从帧存储器103传送到搜索图像存储器182,将相当于搜索区域的左上端的部分之前被传送的像素数据从搜索图像存储器182中删除。
在本实施例4的情况下,搜索图像存储器182需要将一旦保持了的搜索区域的像素数据,继续保持到下一个宏块被使用为止,因此如图8D所示,需要与解码图像所用的水平大小成比例的容量。
另外,在图8D的例子中,虽然举例示出了以宏块为单位,将参考图像的像素数据从帧存储器103传送,或从搜索图像存储器182中删除,但是本发明并非受此所限。即,可以不必介意宏块的边界,而是只需要将重新需要的区域的像素数据从帧存储器103传送,或将不需要的像素数据全部从搜索图像存储器182中删除。
以上是对本实施例4中的图像解码装置200的工作进行的说明。
这样,通过搜索区域在水平与垂直方向上移动,并仅将重新需要的区域从帧存储器103传送到搜索图像存储器182,从而能够减少传送量,并能够相应地降低传送带宽。在实施例1中,一个宏块在传送时需要2048Byte,在实施例4中,能够将一个宏块的传送量降低到16×16×2=512Byte。
并且,通过减少传送量,同时还能够实现降低传送时所需的消耗电力。
并且,在本实施例4中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例4中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例4所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例4中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例4中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,在本实施例4中搜索的是解码宏块的周边32×32像素,也可以搜索在水平方向或垂直方向上移动后的位置。若移动量在每一个宏块都相同的情况下能够得到同样的效果。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
(实施例5)
以下,对本实施例5中的图像解码装置的概要进行说明。在实施例1至4中各个处理是被依次执行的。在本实施例5中,通过将各个处理针对不同的宏块同时进行,从而在使处理并行化以及提高性能的同时,还能够使从帧存储器103向搜索图像存储器182的搜索图像在传送时的传送时间最大化,以及使传送带宽最小化。
以上是针对本实施例5中的图像解码装置的概要进行的说明。
以下,对本实施例5的图像解码装置的构成进行说明。本实施例5的图像解码装置的构成由于与实施例2的图4相同,因此省略说明。
以上是针对本实施例5中图像解码装置的构成进行的说明。
以下,利用图9的流程图对图4所示的图像解码装置200的工作进行说明。图9示出了一个宏块的解码工作,在本实施例5中,各个处理功能块是针对不同的宏块进行的,因此与实施例2有一部分不同的处理。并且,流程图中的横方向的点线表示将几个处理归纳起来的处理阶段的边界,详细将在以后说明。在本实施例5也与实施例1相同,直接模式以外的处理与H.264标准相同,在直接模式的情况下则采用非专利文献3所示的运算方法。
首先,在搜索图像传送部283,将在直接模式时的运动矢量的搜索中所使用的搜索图像,从帧存储器103传送到搜索图像存储器182(S300)。如图32所示,关于两张参考图像内的搜索区域的位置,在将搜索区域视为32×32像素的情况下,该搜索区域为被解码的宏块的周边的32×32像素,在将解码宏块的左上的位置作为(x,y),以二维坐标来表示的情况下,将成为(x-8,y-8)的位置作为左上的32×32像素的区域则为搜索区域。
在工作的最开始,能够开始搜索图像传送的是,与实施例2相同,在非专利文献3中的运动矢量搜索如图32所示那样,搜索以与解码宏块相同的空间位置为中心的32×32像素的搜索区域。因此,通过可变长解码部104所进行的可变长解码,在被包含在编码流中的编码信息以及系数信息被解码之前,就能够决定搜索区域,并能够传送搜索区域的像素数据。
接着,在可变长解码部104对被输入的编码流进行可变长解码(S301)。可变长解码部104输出编码信息以及与各个像素数据相对应的系数信息,所述编码信息例如包括:宏块类别、画面内预测(帧内预测)模式、运动矢量信息、量化参数等。编码信息被输出到控制部101后被输入到各个处理部。
接着,进行是帧间宏块还是帧内宏块的判断(S302)。在帧间宏块的情况下(S302的“是”),进一步进行是为直接模式还是其他模式的判断(S303)。在直接模式的情况下(S303的“是”),在运动矢量运算部181利用搜索图像存储器182的搜索图像进行运动矢量的搜索,并算出运动矢量(S304)。
关于运动矢量的搜索是,针对搜索图像存储器182上的两张参考图片L0和L1,如图32所示,首先对参考图片L0的搜索区域的左上位置与参考图片L1的搜索区域的右下位置进行比较,算出SAD。接着,将比较位置在参考图片L0向右方向移动,在参考图片L1向左方向移动,算出SAD。这样,按顺序算出SAD,SAD最小的位置被视为最类似的位置。并且,将该矢量变换为以解码图片的解码宏块为起点的运动矢量mvL0以及mvL1,并算出运动矢量。
在不是直接模式的情况下(S303的“否”),在运动矢量运算部181进行运动矢量运算,并算出运动矢量(S305)。在H.264标准中,运动矢量是指,在将周边的运动矢量作为mvA、mvB、mvC的情况下,将他们的中值作为预测运动矢量。通过对该预测运动矢量与被包含在编码流中的运动矢量信息(运动矢量的差分值)进行相加,从而求出运动矢量。
在此,帧间宏块的判断(S302)以及直接模式的判断(S303)是在可变长解码部104结束可变长解码处理之后被执行的,不过也可以在进行这些判断所需要的编码信息被解码的时刻进行判断。
接着,针对可变长解码部104输出的系数信息,在逆量化部105进行逆量化(S306),在逆频率变换部106进行逆频率变换(S307)。
接着,再次进行是帧间宏块还是帧内宏块的判断(S308)。在是帧间宏块的情况下(S308的“是”),在运动补偿部109利用由运动矢量算出部208输出的运动矢量,将搜索图像从帧存储器103传送到参考图像存储器192(S309)。运动补偿部109利用被存储在参考图像存储器192中的参考区域的像素数据进行运动补偿,并生成预测图像。另一方面,在不是帧间宏块的情况下(S308的“否”),在画面内预测部107进行画面内预测,并生成预测图像(S311)。
通过在再构成部111对得到的预测图像与逆频率变换部106所输出的差分图像进行相加,从而生成解码图像(S312)。接着,针对得到的解码图像,在解块滤波器部112进行降低块噪声的解块滤波处理,并将结果存储到帧存储器103(S313)。
在此,在图9中,将搜索图像传送(S300)作为阶段0,将从可变长解码(S301)至逆量化(S306)之前作为阶段1,将逆量化(S306)以及逆频率变换(S307)作为阶段2,将画面内预测(S311)、参考图像传送(S309)、运动补偿(S310)、以及再构成处理(S312)作为阶段3,将解块滤波处理(S313)作为阶段4。控制部101对各个处理部的工作定时进行控制,以使这些阶段0到阶段4的各个阶段对不同的宏块进行处理。利用图10对这些工作进行说明。
在图10中,TS(Time Slot:时隙)示出了时间间隔,并且是示出一个宏块在解码时所需要的处理时间的时间单位。在图10中虽然是等间隔排列的,不过也可以不必是等间隔。并且,在图10中省略了宏块MBn-1以前以及宏块MBn+3以后的宏块的记载。
在TSn,阶段0进行针对宏块MBn的处理。在TSN+1,阶段0进行宏块MBn+1的处理,阶段1进行宏块MBn的处理。即,搜索图像传送部283,在构成编码图像的多个宏块中的、解码顺序的第n(n:自然数)个宏块的运动矢量的运算或搜索被进行之时,同时还将与第(n+1)个的宏块相对应的搜索区域的像素数据,从帧存储器103中传送到搜索图像存储器182。
在此,图11示出了一般的编码流的构成。在阶段1,通过可变长解码部104进行可变长解码(S301),在图11的编码信息中的至少宏块类别以及运动矢量信息被解码之后,由运动矢量运算部181进行运动矢量的算出(S305),或进行运动矢量搜索(S304)。
即,根据被存储在编码流的先头的宏块类别以及运动矢量信息,只有在判断为解码宏块以直接模式被编码的情况下,才开始运动矢量运算或运动矢量搜索的处理。据此,可以不必执行不必要的处理,从而能够减少消耗电力。
在TSn+2,阶段0进行宏块MBn+2的处理,阶段1进行宏块MBn+1的处理,阶段2进行宏块MBn的处理。通过将这些处理同时进行,从而能够使各个处理块并行工作,提高工作速度。在划分为5个阶段的情况下,与不划分阶段的情况相比,能够以5倍的速度来工作。
以上是针对本实施例5中的图像解码装置200的工作进行的说明。
在本实施例5中,通过将一连串的处理划分为阶段,并在阶段0进行搜索图像传送处理,从而能够省掉不不要的时间,从而以所有的时间来进行搜索图像的传送。因此,与实施例2的图6相比较,由于不存在不进行传送的时间,因此能够将更多的时间利用于搜索图像传送,这样能够降低传送带宽。
另外,在本实施例5对适用于实施例4为例进行了说明,不过也能够适用于实施例2和3,并且能够得到同样的降低传送带宽的效果。
另外,在本实施例5中,虽然采用了可变长编码,不过也可以是霍夫曼编码、行程编码或算术编码等编码方式。
并且,在本实施例5中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例5中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例5所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例5中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例5中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
并且,在本实施例5中的处理阶段的划分只是一个例子,并非受该划分方法所限,可以按照处理的特性来自由选择。
(实施例6)
以下对本实施例6的图像解码装置的概要进行说明。在实施例5中,通过并行执行搜索图像的传送,从而降低了传送带宽,在实施例6中,通过按照时机事先开始运动矢量的搜索,从而能够进一步省掉不必要的时间,并能够高效率地进行运动矢量搜索处理。
以上是对本实施例6中的图像解码装置的概要进行的说明。
接着,对本实施例6中的图像解码装置300的构成进行说明。图12示出了本实施例6的图像解码装置300的构成。本实施例6中的图像解码装置300包括:运动矢量搜索部(与图1B的运动矢量运算部50相对应)384,在直接模式的情况下,利用参考图像进行运动矢量的搜索;运动矢量运算部381,在直接模式以外的情况下,算出运动矢量;以及开关385,对由运动矢量运算部381输出的运动矢量与由运动搜索部384输出的运动矢量进行切换。关于其他的构成要素由于与实施例2的图4相同,因此赋予相同的符号并省略说明。
以上是针对本实施例6中的图像解码装置300的构成进行的说明。
以下,利用图13的流程图对图12所示的图像解码装置300的工作进行说明。
图13示出了一个宏块的解码工作,在本实施例6中,由于新增加了运动矢量搜索部384,因此与实施例5有一部分不同的处理。并且,与图9相同,流程图中的横方向的点线表示处理阶段的边界,详细将在以后说明。在本实施例6中也与其他的实施例1至5同样,在直接模式以外的情况下的处理与H.264标准同样,在直接模式的情况下采用非专利文献3所示的运算方法。
首先,在搜索图像传送部283,将在直接模式时的运动矢量的搜索中所使用的搜索图像,从帧存储器103传送到搜索图像存储器182(S400)。如图32所示,关于两张参考图像内的搜索区域的位置,在将搜索区域视为32×32像素的情况下,该搜索区域为被解码的宏块的周边的32×32像素,在将解码宏块的左上的位置作为(x,y),以二维坐标来表示的情况下,将成为(x-8,y-8)的位置作为左上的32×32像素的区域则为搜索区域。
在工作的最开始,能够开始搜索图像传送的是,与实施例2相同,在非专利文献3中的运动矢量搜索如图32所示那样,搜索以与解码宏块相同的空间位置为中心的32×32像素的搜索区域。因此,通过可变长解码部104所进行的可变长解码,在被包含在编码流中的编码信息以及系数信息被解码之前,就能够决定搜索区域,并能够传送搜索区域的像素数据。
接着,在运动矢量搜索部384进行运动矢量的搜索(S401)。在其他的处理最开始能够进行运动矢量搜索的理由,与以前说明的由搜索图像传送部283进行的传送相同,搜索区域的像素数据若存在于搜索图像存储器182中,则能够进行运动矢量的搜索。
接着,在可变长解码部104对被输入的编码流进行可变长解码(S402)。可变长解码部104输出编码信息以及与各个像素数据相对应的系数信息,所述编码信息例如包括:宏块类别、画面内预测(帧内预测)模式、运动矢量信息、量化参数等。编码信息被输出到控制部101后被输入到各个处理部。
接着,进行是否为直接模式以外的帧间宏块的判断(S403)。在是直接模式以外的帧间宏块的情况下(S403的“是”),在运动矢量运算部381进行运动矢量运算,并算出运动矢量(S404)。在H.264标准中,运动矢量是指,在将周边的运动矢量作为mvA、mvB、mvC的情况下,将他们的中值作为预测运动矢量。通过对该预测运动矢量与被包含在编码流中的运动矢量信息(运动矢量的差分值)进行相加,从而求出运动矢量。
接着,针对可变长解码部104输出的系数信息,在逆量化部105进行逆量化(S405),在逆频率变换部106进行逆频率变换(S406)。
接着,再次进行是帧间宏块还是帧内宏块的判断(S407)。在是帧间宏块的情况下(S407的“是”),在运动补偿部109利用由开关385选择的运动矢量,将搜索图像从帧存储器103传送到参考图像存储器192(S409)。
并且,在运动矢量算出部308,在直接模式的情况下,开关385选择运动矢量搜索部384输出的运动矢量,在不是直接模式的情况下,选择运动矢量运算部381输出的运动矢量,并进行输出(S408)。
运动补偿部109利用被存储在参考图像存储器192中的参考区域的像素数据进行运动补偿,并生成预测图像。另一方面,在不是帧间宏块的情况下(S407的“否”),在画面内预测部107进行画面内预测,并生成预测图像(S411)。
通过在再构成部111对得到的预测图像与逆频率变换部106所输出的差分图像进行相加,从而生成解码图像(S412)。接着,针对得到的解码图像,在解块滤波器部112进行降低块噪声的解块滤波处理,并将结果存储到帧存储器103(S413)。
在此,在图13中,将搜索图像传送(S400)作为阶段0,将从运动矢量搜索(S401)到逆量化(S405)之前作为阶段1,将逆量化(S405)以及逆频率变换(S406)作为阶段2,将画面内预测(S411)、参考图像传送(S409)、运动补偿(S410)以及再构成处理(S411)作为阶段3、将解块滤波(S412)作为阶段4。
控制部101对各个处理部的工作定时进行控制,以使这些阶段0到阶段4的各个阶段对不同的宏块进行处理。利用图14对这些工作进行说明。在图14中,TS(Time Slot:时隙)示出了时间间隔,并且是示出一个宏块在解码时所需要的处理时间的时间单位。在图14中虽然是等间隔排列的,不过也可以不必是等间隔。并且,在图14中省略了宏块MBn-1以前以及宏块MBn+3以后的宏块的记载。
在TSn,阶段0进行针对宏块MBn的处理。在TSN+1,阶段0进行宏块MBn+1的处理,阶段1进行宏块MBn的处理。在此,在图9的阶段1中,运动矢量运算部181所进行的运动矢量搜索处理(S304),是从由可变长解码部104进行可变长解码(S301)的途中开始的,即是从宏块类别以及运动矢量信息的解码之后开始的,而在图14的阶段1中不同之处是,在TSn+1开始之后,立即对宏块MBn进行由运动矢量搜索部384执行的运动矢量搜索(S401)的处理。即,不是进行解码对象宏块是否为直接模式的判断,而是开始运动矢量运算或运动矢量搜索的处理。
在TSn+2,阶段0进行宏块MBn+2的处理,阶段1进行宏块MBn+1的处理,阶段2进行宏块MBn的处理。通过将这些处理同时进行,从而能够使各个处理块并行工作,提高工作速度。在划分为5个阶段的情况下,与不划分阶段的情况相比,能够以5倍的速度来工作。
以上是针对本实施例6中的图像解码装置300的工作进行的说明。
根据本实施例6,在由可变长解码部104进行宏块类别等解码之前,使运动矢量搜索部384工作。在此之后,通过在开关385对运动矢量搜索部384所输出的运动矢量与由运动矢量运算部381输出的运动矢量进行切换,从而能够省掉运动矢量搜索部384不进行工作的空闲时间,从而能够高效率地运算。
另外,在本实施例6中,虽然采用了可变长编码,不过也可以是霍夫曼编码、行程编码或算术编码等编码方式。
并且,在本实施例6中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例6中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例6所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例5中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例6中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
并且,在本实施例6中的处理阶段的划分只是一个例子,并非受该划分方法所限,可以按照处理的特性来自由选择。
并且,在本实施例6中,虽然运动矢量搜索部384总是在进行直到算出运动矢量为止的工作,实际上,在得知不使用由运动矢量搜索部384输出的运动矢量时,可以控制为停止运算。
(实施例7)
接着,对本实施例7中的图像解码装置的概要进行说明。在实施例1至6中,进行运动矢量搜索的搜索图像存储器与进行运动补偿的参考图像存储器没有连接。即,运动补偿部总是从帧存储器中将参考区域的像素数据传送到参考图像存储器,并进行运动补偿处理的。
另外,在本实施例7,在直接模式的情况下,利用在运动补偿处理所使用的参考图像已经存在于搜索图像存储器中这一特点,在直接模式的情况下从搜索图像存储器中获得参考图像。据此,能够减少不必要的传送,并能够减少传送量。
以上是针对本实施例7中的图像解码装置的概要所进行的说明。
以下,对本实施例7的图像解码装置400的构成进行说明。图15示出了本实施例7的图像解码装置400的构成。本实施例7中的图像解码装置400包括开关(参考区域传送部)493,该开关493对是从帧存储器103将参考区域的像素数据传送到参考图像存储器(第三记忆部)192,还是从搜索图像存储器182将参考区域的像素数据传送到参考图像存储器192进行切换。其他构成要素由于与实施例6的图12相同,因此赋予相同的符号,省略说明。
以上是针对本实施例7中的图像解码装置400的构成所进行的说明。
图15所示的图像解码装置400的工作虽然与实施例6的图13所示的流程图相同,但是由于图13的参考图像传送(S409)的工作不同,因此,以下将利用图16所示的流程图进行详细说明。在本实施例7中也与其他的实施例同样,在直接模式以外的情况下的处理与H.264标准同样,在直接模式的情况下采用非专利文献3所示的运算方法。
在通过运动补偿部409进行参考图像传送时,如图16所示,首先判断解码宏块是否为直接模式(S501)。在是直接模式的情况下(S501的“是”),使用的参考区域的像素数据必定被保持在搜索图像存储器182。因此,切换开关493,将参考区域的像素数据从搜索图像存储器182传送到参考图像存储器192(S502)。
另外,在不是直接模式的情况下(S501的“否”),与到此为止的实施例1至7相同,将参考区域的像素数据从帧存储器103传送到参考图像存储器192。
由于其他的处理与实施例5相同,因此省略说明。
通过这样的构成,在直接模式被选择的情况下,由于在搜索图像存储器182中存在运动补偿部409所使用的参考图像,因此,可以不进行从帧存储器103向参考图像存储器192的传送。因此,能够减少来自外部存储器的传送量。
并且,通过减少传送量,同时还能够降低传送时所需的耗电量。
并且,在本实施例7中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例7中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例7所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例7中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例7中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
并且,在本实施例7中示出的是,从搜索图像存储器182向参考图像存储器192传送,不过,也可以是运动补偿运算部191直接访问搜索图像存储器182,读取参考图像并进行运动补偿的运算。
(实施例8)
以下,对本实施例8中的图像解码装置的概要进行说明。在实施例7中,只有在直接模式的情况下,才从搜索图像存储器向参考图像存储器进行传送,并进行运动补偿处理。在本实施例8中,即使不是直接模式的情况,也判断运动矢量所示出的参考图像是否存在于搜索图像存储器上。并且,在存在于搜索图像存储器上的情况下,从搜索图像存储器中获得参考图像。这样,能够减少不不要的传送,并且能够减少传送量。
以上是针对本实施例8中的图像解码装置的概要所进行的说明。
以下,对本实施例8的图像解码装置500的构成进行说明。图17示出了本实施例8的图像解码装置500的构成。在本实施例8的图像解码装置500中包括运动矢量判断部513,判断运动矢量所示出的参考图像是否存在于搜索图像存储器182中。其他构成要素由于与实施例7的图15相同,因此赋予相同的符号,省略说明。
以上是针对本实施例8中的图像解码装置500的构成所进行的说明。
接着,图17所示的图像解码装置500的工作虽然与实施例6的图13所示的流程图相同,但是由于图13的参考图像传送(S409)的工作不同,因此,以下将利用图18所示的流程图进行详细说明。在本实施例8也与实施例1至7相同,直接模式以外的处理与H.264标准相同,在直接模式的情况下则采用非专利文献3所示的运算方法。
在运动补偿部409进行参考图像传送时,如图18所示,运动矢量判断部513判断由运动矢量算出部308算出的运动矢量所示出的参考图像是否存在于搜索图像存储器182中(S601)。在参考图像存在于搜索图像存储器182中的情况下(S601的“是”),通过开关493,进行从搜索图像存储器182向参考图像存储器192的传送(S602)。运动矢量判断部513在直接模式的情况下,判断在搜索图像存储器182中必定存在参考图像。
另外,在运动矢量判断部513判断为参考图像不存在于搜索图像存储器182上的情况下(S601的“否”),进行从帧存储器103向参考图像存储器192的传送。
其他的处理由于与实施例7相同,因此省略说明。
以上是针对本实施例8中的图像解码装置500的工作所进行的说明。
通过这种构成,不管是否为直接模式,在运动补偿部409所使用的参考图像存在于搜索图像存储器182中的情况下,可以不进行从帧存储器103向参考图像存储器192的传送。因此,能够减少来自外部存储器的传送量。
并且,通过减少传送量,同时还能够实现降低传送时所需的消耗电力。
并且,在本实施例8中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例8中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例8所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例8中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例8中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182以及参考图像存储器192被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
并且,在本实施例8中示出的是,从搜索图像存储器182向参考图像存储器192传送,不过,也可以是运动补偿运算部191直接访问搜索图像存储器182,读取参考图像并进行运动补偿的运算。
(实施例9)
以下对本实施例9中的图像解码装置的概要进行说明。在实施例8中,由于是针对搜索图像存储器进行从帧存储器的写入、向参考图像存储器的读出、以及由运动矢量搜索部进行的读出,因此造成存取集中,从而出现搜索图像存储器难于实现的情况。
因此,在本实施例9,通过将从帧存储器读出的像素数据中当前的检索没有使用的区域设置在另外的一个共享存储器中,从而能够仅将当前的宏块在解码时所需要的搜索区域的像素数据设置在搜索图像存储器中。据此,能够减少向搜索图像存储器的存取,从而能够容易地构成搜索图像存储器。
以上是针对本实施例9中的图像解码装置600的概要所进行的说明。
以下对本实施例9的图像解码装置600的构成进行说明。图19示出了本实施例9的图像解码装置600。本实施例9中的图像解码装置600具有比搜索图像存储器182的记忆容量大的共享存储器614。由于其他的构成要素与实施例8的图17相同,因此赋予相同的符号并省略说明。
即,实施例9所涉及的图像解码装置600包括:由运动矢量搜索部384直接进行存取的搜索图像存储器(搜索区域记忆部)182,以及共享存储器614(广域记忆部)614,该共享存储器614包含被记忆在搜索图像存储器182中的搜索区域,并且记忆有比参考图像中的搜索区域更广的区域中的像素数据。并且,开关493将参考区域的像素数据从共享存储器614传送到参考图像存储器192。
以上是针对本实施例9中的图像解码装置600的构成所进行的说明。
接着,关于图19所示的图像解码装置600的工作,虽然与实施例6的图13的流程图相同,但是与图13的搜索图像传送(S400)以及参考图像传送(S409)的工作不同。在本实施例9也与实施例1至7相同,直接模式以外的处理与H.264标准相同,在直接模式的情况下则采用非专利文献3所示的运算方法。
首先,利用图20所示的流程图对图13中的搜索图像传送(S400)的工作进行说明。搜索图像传送部283从帧存储器103将搜索区域的像素数据传送到共享存储器614(S701)。如图21A所示,在共享存储器614中保持下一个宏块的搜索时也能够使用的所有区域。因此,共享存储器614需要与对应的像素大小的水平方向上的大小成比例的容量。
接着,搜索图像传送部283,仅将运动矢量搜索部384所使用的搜索区域的像素数据,从共享存储器614传送到搜索图像存储器182(S702)。如图21B所示,由于搜索图像存储器182所保持的仅是该宏块所需要的搜索区域,因此能够使搜索图像存储器182的容量变小。
接着,利用图22所示的流程图对图13中的参考图像传送(S409)的工作进行说明。在运动补偿部409进行参考图像传送时,如图22所示,运动矢量判断部513判断由运动矢量算出部308算出的运动矢量所示出的参考图像(即参考区域)是否存在于共享存储器614中(S801)。在存在于共享存储器614中的情况下(S801的“是”),通过开关493,进行从共享存储器614向参考图像存储器192的传送(S802)。运动矢量判断部513在直接模式的情况下,判断在共享存储器中必定存在参考图像。
另外,在运动矢量判断部513判断为参考图像不存在于共享存储器614上的情况下(S801的“否”),进行从帧存储器103向参考图像存储器192的传送。
其他的处理由于全部与实施例8相同,因此省略说明。
以上是针对本实施例9的图像解码装置600的工作进行的说明。
根据这样的构成,搜索图像存储器182只需要应对来自存取量大的运动矢量搜索部384的读出以及来自共享存储器614的写入即可,因此能够使搜索图像存储器182的构成变得简单。
另外,在本实施例9对适用于实施例8为例进行了说明,不过也能够适用于实施例7。
并且,在本实施例9中,虽然使用了直接模式这一表述,不过也可以是跳过模式等实质上包含了使用直接模式情况的模式。
并且,在本实施例9中,虽然在直接模式以外采用了与H.264标准相同的处理,不过也可以是MPEG2标准、MPEG4标准、VC-1标准等其他的图像编码标准。并且,在进行直接模式时可以存在多个模式,其中只要有一个是本实施例9所参考的非专利文献3所示那样,利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法即可。
并且,在本实施例9中虽然使用了非专利文献3的方法,不过只要是利用被记忆在帧存储器103中的参考图像的像素数据来算出运动矢量的方法,不论怎样的方法都可以。并且,关于运动矢量的搜索范围以及搜索精度在本实施例9中没有被限定,可以自由决定。并且,在搜索运动矢量之时,在为了算出小数精度位置而需要周边像素的情况下,也可以将这一部分包含在内一起保持到搜索图像存储器182中。
并且,各个处理部的构成可以通过专用的硬件以电路来实现,也可以采用处理器的程序来实现。
并且,搜索图像存储器182、参考图像存储器192以及共享存储器614被作为了存储器,不过只要是能够进行数据记忆的记忆元件,也可以是触发电路的其他的构成。而且,也可以利用处理器的存储区域的一部分以及高速缓存的一部分来构成。
并且,在本实施例9中示出的是,从共享存储器614向参考图像存储器192传送,不过,也可以是运动补偿运算部191直接访问共享存储器614,读取参考图像并进行运动补偿的运算。
(实施例10)
通过将用于实现在上述的各个实施例所示的图像解码方法的程序记录到记录介质,从而可以将上述的各个实施例所示的处理在独立的计算机系统简单执行。记录介质可以是磁盘、光盘、磁光盘、IC卡、半导体等,只要能够记录程序就可以。
在此,对在上述的各个实施例所示的图像解码方法的应用实例以及利用此应用实例的系统进行说明。
图23是示出实现内容分发服务的内容供给系统ex100的全体构成图。将通信服务的提供区域划分为所希望的大小,在各单元内分别设置有作为固定无线局的基站ex106至ex110。
此内容供给系统ex100连接有各种机器,例如,互联网ex101上的互联网服务提供商ex102和电话网ex104,以及通过基站ex106至ex110,与计算机ex111、PDA(个人数字助理:personal digital assistant)ex112、摄像机ex113、便携式电话ex114、游戏机ex115等。
然而,内容供给系统ex100并非局限于图23所示的构成,也可以对任意的要素进行组合接续。并且,可以不通过作为固定无线局的基站ex106至ex110,而是各个设备直接与电话网ex104相连接。并且,也可以是各个设备通过近距离无线等而彼此直接连接。
摄像机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 Handy-phone System:低功率移动电话系统)等任一个来构成。
在内容供给系统ex100中,摄像机ex113等通过无线基站ex109、电话网ex104与流播放服务器ex103连接,从而进行实况录音分发等。在实况录音分发中,针对用户利用摄像机ex113拍摄的内容(例如音乐实况的影像等)进行在上述的各个实施例所说明的编码处理,并发送到流播放服务器ex103。另外,流播放服务器ex103针对提出请求的客户端,对被发送的内容数据进行流的分发。作为客户端,包括可以解码上述的被编码处理的数据的计算机ex111、PDAex112、摄像机ex113、便携式电话ex114、以及游戏机ex115等。在接收了被分发的数据的各个设备,对接收的数据进行解码处理并再生。
并且,拍摄的数据的编码处理可以在摄像机ex113进行,也可以在进行数据的发送处理的流播放服务器ex103进行,也可以相互分担进行。同样,被分发的数据的解码处理可以由客户端进行,也可以在流播放服务器ex103进行,也可以相互分担进行。并且,不仅限于摄像机ex113,由摄像机ex116拍摄的静态图像数据以及/或者动态图像数据,也可以通过计算机ex111而被发送到流播放服务器ex103。此时的编码处理可以在摄像机ex116、计算机ex111、流播放服务器ex103的任一个中进行,也可以相互分担进行。
并且,这些编码以及解码处理一般来说可以在计算机ex111以及各个设备所具有的LSIex500中进行。LSIex500可以由一个芯片构成,也可以由多个芯片构成。另外,也可以将运动图像编码以及图像解码用的软件安装到能够在计算机ex111等读取的某种记录介质(CD-ROM、软盘、硬盘等)中,并利用软件来进行编码处理以及解码处理。而且,在便携式电话ex114是附带有摄像机的情况下,也可以发送该摄像机所获得的运动图像数据。在这种情况下的运动图像数据是由便携式电话ex114所具有的LSIex500进行编码处理后的数据。
并且,流播放器ex103可以是多个服务器或多个计算机,并可以对数据进行分散处理以及记录、分发等。
如以上所述,在内容供给系统ex100,能够在客户端接收并再生被编码的数据。在这样的内容供给系统ex100中,在客户端能够即时地接收并解码由用户发送的信息并且能够再生,这样,即使是没有特殊权利或设备的用户也能够实现个人播放。
并且,不仅限于内容供给系统ex100的例子,如图24所示,在数字广播用系统ex200上也能够组装上述各个实施例所示的运动图像编码装置以及运动图像解码装置中的至少一个。具体而言,在广播电台ex201,影像信息的比特流通过电波来通信或被传送到广播卫星ex202。该比特流是上述的各个实施例中所说明的通过运动图像编码方法而被编码的编码流。接收了这些的广播卫星ex202发送用于广播的电波,这些电波由能够进行卫星广播接收的家庭的天线ex204来接收。接收的比特流由电视机(接收机)ex300或机顶盒(STB)ex217等装置解码再生。
并且,在用于读取并解码被记录在作为记录介质的CD或DVD等存储媒体ex214中的比特流的再生装置ex212上,也能够安装上述的各个实施例所示的图像解码装置。在此情况下,被再生的影像信号被显示在监视器ex213。
并且,在用于读取并解码被记录在DVD、BD等记录介质ex215中的编码比特流,或编码影像信号并写入到记录介质ex215的阅读器/记录器ex218上,也可以安装上述的各个实施例所示的运动图像解码装置或运动图像编码装置。在这种情况下,被再生的影像信号由监视器ex219来显示,并且通过记录有编码比特流的记录介质ex215,影像信号能够在其他的装置或系统中再生。并且,也可以将运动图像解码装置安装到与有线电视的电缆ex203或卫星/地波广播的天线ex204连接的机顶盒ex217内,并在电视机的监视器ex219上显示。此时,可以不组装机顶盒,而是将运动图像解码装置组装到电视机内。
图25示出了利用了在上述的实施例中说明的图像解码方法的电视机(接收机)ex300。电视机ex300包括:调谐器ex301,通过接收上述广播的天线ex204或电缆ex203等获得或者输出影像信息的比特;调制/解调部ex302,解调接收的编码数据,或者为了将编码数据发送到外部而进行调制;以及多路复用/分离部ex303,对解调的影像数据和声音数据进行分离,或者对被编码的影像数据和声音数据进行多路复用。并且,电视机ex300具有信号处理部ex306和输出部ex309,所述信号处理部ex306具有分别对声音数据和影像数据进行解码或者对各个信息分别进行编码的声音信号处理部ex304和影像信号处理部ex305;所述输出部ex309具有对被解码的声音信号进行输出的扬声器ex307,以及对被解码的影像信号进行显示的显示器等显示部ex308。而且,电视机ex300具有接口部ex317,该接口部ex317具有接受用户的操作输入的操作输入部ex312等。而且,电视机ex300具有统括控制各个部的控制部ex310,以及向各个部提供电力的电源电路部ex311。接口部ex317除可以具有操作输入部ex312以外,还可以具有与阅读器/记录器ex218等外部设备连接的电桥ex313、用于安装SD卡等记录介质ex216的插槽部ex314、用于与硬盘等外部记录介质连接的驱动器ex315、以及与电话网连接的调制解调器ex316等。并且,记录介质ex216能够通过存储的非易失性/易失性的半导体存储器元件进行信息的电记录。电视机ex300的各个部通过同步总线相互连接。
首先,对电视机ex300通过天线ex204等从外部获得的数据进行解码并再生的构成进行说明。电视机ex300接受来自远程控制器ex220等的用户的操作,并根据具有CPU等的控制部ex310的控制,将在调制/解调部ex302解调的影像数据和声音数据,在多路复用/分离部ex303进行分离。并且,电视机ex300将分离的声音数据在声音信号处理部ex304进行解码,利用上述的实施例中说明的解码方法,将分离的影像数据在影像信号处理部ex305进行解码。解码的声音信号和影像信号分别从输出部ex309被输出到外部。在进行输出时,为了使声音信号和影像信号同步再生,而可以在缓冲器ex318、ex319等暂时蓄积这些信号。并且,电视机ex300可以不从广播等读出被编码的编码位流,而是从磁性/光盘、SD卡等记录介质ex215、ex216中读出被编码的编码位流。以下将要说明的构成是,电视机ex300对声音信号以及影像信号进行编码,并发送到外部或写入到记录介质。电视机ex300接受来自远程控制器ex220等的用户的操作,并根据控制部ex310的控制,在声音信号处理部ex304对声音信号进行编码,并利用在上述的实施例中说明的编码方法,在影像信号处理部ex305对影像信号进行编码。被编码的声音信号和影像信号在多路复用/分离部ex303被多路复用,并被输出到外部。在进行多路复用时,为了使声音信号和影像信号同步,而可以将这些信号暂时蓄积到缓冲器ex320、ex321等。另外,关于缓冲器ex313至ex321,可以如图中所示那样具备多个,也可以共享一个以上的缓冲器。而且,除图中所示以外,例如可以在调制/解调部ex302与多路复用/分离部ex303之间等,作为回避系统的上溢和下溢的缓冲部分,可以在缓冲器中蓄积数据。
并且,电视机ex300除具有获得广播以及来自记录介质等的声音数据以及影像数据的构成以外,还可以具有接受麦克风以及摄像机的AV输入的构成,并且也可以对从这些获得的数据进行编码处理。并且,在此虽然对电视机ex300能够进行上述的编码处理、多路复用以及外部输出的构成进行了说明,不过也可以是不进行上述的全部的处理,而仅进行上述的接收、解码处理以及外部输出中的某一个处理。
并且,在阅读器/记录器ex218从记录介质中读出或写入编码比特流的情况下,上述的解码处理或编码处理也可以在电视机ex300以及阅读器/记录器ex218的某一个中进行,也可以是电视机ex300和阅读器/记录器ex218彼此分担进行。
作为一个例子,图26示出了从光盘进行数据的读取或写入的情况下的信息再生/记录部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 optical)来进行高密度的记录。
图27是作为光盘的记录介质ex215的模式图。在记录介质ex215的记录面上,导槽(槽)被形成为螺旋状,在代码道ex230上预先被记录有按照槽的形状的变化示出盘上的绝对位置的地址信息。该地址信息包括用于确定记录块ex231的位置的信息,该记录块ex231是记录数据的单位,进行记录以及再生的装置能够通过再生代码道ex230以及读取地址信息,来确定记录块。并且,记录介质ex215包括:数据记录区域ex233、内周区域ex232、以及外周区域ex234。用于记录用户数据的区域为数据记录区域ex233,被配置在数据记录区域ex233的内周或外周的内周区域ex232和外周区域ex234被用于用户数据的记录以外的特殊用途。信息再生/记录部ex400针对这种记录介质ex215的数据记录区域ex233,进行被编码的声音数据、影像数据或对这些数据进行多路复用后的编码数据的读写。
以上以具有一层结构的DVD、BD等光盘为例进行了说明,但并非受此所限,也可以是多层结构的能够在表面以外进行记录的光盘。并且,也可以在盘的同一位置上记录利用了各种不同波长的光的信息,或者从各种角度记录不同的信息的层等,具有进行多维的记录/再生的结构的光盘。
并且,在数字广播用系统ex200,能够在具有天线ex205的车辆ex210从卫星ex202等接收数据,并且能够在车辆ex210所具有的车辆导航系统ex211等显示装置再生运动图像。并且,关于车辆导航系统ex211的构成可以考虑到在图25所示的构成中添加GPS接收部,同样也可以考虑到添加计算机ex111以及便携式电话ex114等。并且,上述便携式电话ex114等终端与电视机ex300同样,除可以考虑到是具有编码器以及解码器双方的收发信型终端的形式以外,还可以考虑到是仅具有编码器的发送终端,以及仅具有解码器的接收终端的共三种形式。
这样,在上述的各个实施例所示的运动图像编码方法或运动图像解码方法能够适用于上述的任一个设备以及系统,这样,能够得到在上述的实施例中说明的效果。
并且,本发明并非受上述的实施例所限,在不超过本发明的范围内的各种变形以及修改均是可能的。
(实施例11)
在本实施例中,将实施例1所示的图像解码装置作为LSI来实现的状态由图28示出,典型的LSI例如是半导体集成电路。将比特流缓冲器102以及帧存储器103在DRAM上实现,将其他的电路和存储器构成在LSI上。
这些可以被分别制成一个芯片,也可以将其中的一部分或全部包含在一个芯片之中。在此,虽然例示了LSI,不过根据集成度的不同,也可以称为IC、系统LSI、超级LSI、极超级LSI。
并且,集成电路化的方法不仅限于LSI,也可以以专用电路或通用处理器来实现。在LSI制造后,也可以利用可编程的FPGA(Field ProgrammableGate Array:现场可编程门阵列)或利用能够将LSI内部的电路单元的连接以及设定重新构建的可重装处理器。
而且,随着半导体技术的进步或派生出的其他的技术,若出现了能够取代LSI的集成电路化的技术,当然也可以利用这些技术来对功能块进行进行集成化。生物技术的适用等也将成为可能。
而且,将对本实施例的图像解码装置集成化后的半导体芯片与用于描绘图像的显示器组合,从而能够构成适用于各种用途的描绘设备。本发明能够作为便携式电话、电视机、数字录像机、数字摄像机、车辆导航系统等中的信息描绘单元来利用。作为显示器,除电子束管(CRT)以外,还有液晶、PDP(等离子显示板)、有机EL等平面显示器,并且也可以与以投影仪为代表的投射型显示器等相组合。
并且,在本实施例中,虽然示出了系统LSI和DRAM(Dynamic RandomAccess Memory:动态随机存储器)的构成,不过,也可以以eDRAM(embededDRAM:混载DRAM)、SRAM(Static Random Access Memory:静态存取存储器)以及硬盘等其他的记忆装置来构成。
(实施例12)
上述的各个实施例所示的图像解码装置以及方法典型的可以以作为集成电路的LSI来实现。作为一个例子,图29示出了被制成一个芯片的LSIex500的构成。LSIex500包括以下将要说明的要素ex502至ex509,各个要素通过总线ex510连接。电源电路部ex505在电源为打开状态的情况下,通过向各个部提供电力,从而启动为能够工作的状态。
并且,例如在进行解码处理的情况下,LSIex500根据CPUex502的控制,通过流输入输出ex506,经由无线基站ex107得到的编码数据或从记录介质ex215读出而得到的编码数据被暂时蓄积到存储器ex511。根据CPUex502的控制,按照处理量以及处理速度,蓄积的数据被适当地分多次被发送到信号处理部ex507,在信号处理部ex507进行声音数据的解码以及/或影像数据的解码。在此,影像信号的编码处理是在上述的各个实施例中所说明的解码处理。并且,为了使被解码的声音信号和被解码的影像信号同步再生,可以根据情况将各个信号暂时蓄积到存储器ex511等。被解码的输出信号通过存储器ex511等,从AV输入输出ex509被输出到监视器ex219。在对存储器ex511进行存取之时,是通过存储器控制器ex503进行的。
另外,以上虽然对存储器ex511作为LSIex500的外部构成进行了说明,不过也可以被包括在LSIex500的内部。并且,LSIex500可以被制成一个芯片,也可以是多个芯片。
在此,虽然例示了LSI,不过根据集成度的不同,也可以称为IC、系统LSI、超级LSI、极超级LSI。
并且,集成电路化的方法不仅限于LSI,也可以以专用电路或通用处理器来实现。在LSI制造后,也可以利用可编程的FPGA(Field ProgrammableGate Array:现场可编程门阵列)或利用能够将LSI内部的电路单元的连接以及设定重新构建的可重装处理器。
而且,随着半导体技术的进步或派生出的其他的技术,若出现了能够取代LSI的集成电路化的技术,当然也可以利用这些技术来对功能块进行进行集成化。生物技术的适用等也将成为可能。
工业实用性
本发明的图像解码装置能够利用于各种用途。例如,能够利用于电视机、数字录像机、车辆导航系统、便携式电话、数字相机、数字摄像机等高分辨率的信息显示设备以及摄像设备中,并且利用价值非常高。
符号说明
20 第一记忆部
30 第二记忆部
40 搜索区域传送部
50 移动矢量运算部
60 解码部
100,200,300,400,500,600 图像解码装置
101,701 控制部
102,702 比特流缓冲器
103,703 帧存储器
104,704 可变长解码部
105,705 逆量化部
106,706 逆频率变换部
107,707 画面内预测部
108,208,308,708 运动矢量算出部
109,409,709 运动补偿部
110,385,493 开关
111,711 再构成部
112,712 解块滤波器部
181,381 运动矢量运算部
182 搜索图像存储器
191 运动补偿运算部
192 参考图像存储器
283 搜索图像传送部
384 运动矢量搜索部
513 运动矢量判断部
614 共享存储器
ex100 内容供给系统
ex101 互联网
ex102 互联网服务提供商
ex103 流播放服务器
ex104 电话网
ex106 无线基站
ex107 无线基站
ex108 无线基站
ex109 无线基站
ex110 无线基站
ex111 计算机
ex112 个人数字助理(Personal Digital Assistant)
ex113 摄像机
ex114 便携式电话
ex115 游戏机
ex116 摄像机
ex117 麦克风
ex200 数字广播用系统
ex201 广播电台
ex202 广播卫星
ex203 电缆
ex204 天线
ex205 天线
ex210 车辆
ex211 车辆导航系统
ex212 再生装置
ex213 监视器
ex215 记录介质
ex216 记录介质
ex217 机顶盒(STB)
ex218 阅读器/记录器
ex219 监视器
ex220 远程控制器
ex230 代码道
ex231 记录块
ex232 内侧区域
ex233 数据记录区域
ex234 外侧区域
ex300 电视机(接收机)
ex301 调谐器
ex302 调制/解调部
ex303 多路复用/分离部
ex304 声音信号处理部
ex305 影像信号处理部
ex306 信号处理部
ex307 扬声器
ex308 显示部
ex309 输出部
ex310 控制部
ex311 电源电路部
ex312 操作输入部
ex313 电桥
ex314 插槽部
ex315 驱动器
ex316 调制解调器
ex317 接口部
ex318 缓冲器
ex319 缓冲器
ex400 信息再生/记录部
ex401 光学头
ex402 调制记录部
ex403 再生解调部
ex404 缓冲器
ex405 盘式电机
ex406 伺服控制部
ex407 系统控制部
ex500 LSI(大规模集成电路)
ex502 CPU(中央处理单元)
ex503 存储器控制器
ex505 电源电路部
ex506 流输入输出
ex507 信号处理部
ex509 AV输入输出
ex510 总线
ex511 存储器
Claims (13)
1.一种解码装置,对构成编码图像的块进行解码,该解码装置包括:
第一记忆部,记忆在对所述块进行解码时所参考的参考图像的像素数据,所述参考图像是已经由该解码装置解码的图像;
第二记忆部,比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快;
搜索区域传送部,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;
运动矢量运算部,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;
运动补偿运算部,利用所述运动矢量以及所述参考图像的像素数据,生成所述块的预测图像;
第三记忆部,记忆由所述运动补偿运算部参考的参考区域的像素数据,所述参考区域是所述参考图像的一部分区域;
参考区域传送部,将所述参考区域的像素数据,从所述第一记忆部以及所述第二记忆部中的一方传送到所述第三记忆部;以及
解码部,利用在所述运动补偿运算部生成的预测图像,对所述块进行解码。
2.如权利要求1所述的解码装置,
所述块是不附加信息而被编码的第一块或者是附加信息而被编码的第二块,所述信息是示出在解码时所使用的运动矢量的信息;
所述搜索区域传送部,只有在被解码的块为所述第一块的情况下,才将所述搜索区域的像素数据从所述第一记忆部传送到所述第二记忆部;
所述解码部,利用在所述运动矢量运算部算出的所述运动矢量,对所述第一块进行解码,利用被附加的所述信息所示出的运动矢量,对所述第二块进行解码。
3.如权利要求1所述的解码装置,
所述块是不附加信息而被编码的第一块或者是附加信息而被编码的第二块,所述信息是示出在解码时所使用的运动矢量的信息;
所述搜索区域传送部,在判断被解码的块是所述第一块还是所述第二块之前,开始进行将所述搜索区域的像素数据从所述第一记忆部传送到所述第二记忆部的处理;
所述解码部,利用在所述运动矢量运算部算出的所述运动矢量,对所述第一块进行解码,利用被附加的所述信息所示出的运动矢量,对所述第二块进行解码。
4.如权利要求3所述的解码装置,
所述搜索区域传送部,在被解码的块为所述第二块的情况下,中止将所述搜索区域的像素数据从所述第一记忆部传送到所述第二记忆部的处理。
5.如权利要求1所述的解码装置,
所述第二记忆部,至少对由所述搜索区域传送部传送的过去的像素数据中的一部分继续进行记忆;
所述搜索区域传送部,仅将所述搜索区域的像素数据之中的没有被记忆在所述第二记忆部的像素数据,从所述第一记忆部传送到所述第二记忆部。
6.如权利要求5所述的解码装置,
所述搜索区域传送部,将所述第二记忆部中记忆的由该搜索区域传送部传送的过去的像素数据中的在算出后续的所述块的所述运动矢量时不使用的像素数据,从所述第二记忆部中删除。
7.如权利要求6所述的解码装置,
该解码装置,在对构成所述编码图像的多个所述块,从所述编码图像的左上开始朝右下依次进行解码的情况下,
所述搜索区域传送部,将相当于所述搜索区域的右下角这一部分的像素数据,从所述第一记忆部传送到所述第二记忆部,将相当于所述搜索区域的左上端这一部分之前被传送的像素数据,从所述第二记忆部中删除。
8.如权利要求1所述的解码装置,
所述搜索区域传送部,在构成所述编码图像的多个所述块中的第n个所述块的运动矢量,由所述运动矢量运算部进行运算之时,同时还将与第(n+1)个所述块相对应的所述搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,在此,n为自然数。
9.如权利要求1所述的解码装置,
所述块是不附加信息而被编码的第一块或者是附加信息而被编码的第二块,所述信息是示出在解码时所使用的运动矢量的信息;
所述参考区域传送部,将与所述第一块相对应的所述参考区域的像素数据,从所述第二记忆部传送到所述第三记忆部,将与所述第二块相对应的所述参考图像的像素数据,从所述第一记忆部传送到所述第三记忆部。
10.如权利要求9所述的解码装置,
所述第二记忆部包括搜索区域记忆部和广域记忆部,所述搜索区域记忆部由所述运动矢量运算部直接进行存取,所述广域记忆部中记忆有广域中的像素数据,该广域是指,不仅包括所述搜索区域记忆部所记忆的所述搜索区域而且比所述参考图像中的所述搜索区域大;
所述参考区域传送部,将所述参考区域的像素数据,从所述广域记忆部传送到所述第三记忆部。
11.如权利要求1所述的解码装置,
所述搜索区域包含第一搜索区域以及第二搜索区域,所述第一搜索区域是在所述编码图像的再生的时间顺序中,被包含在包括所述块的所述编码图像之前的参考图像之中的区域,所述第二搜索区域是在再生顺序中,被包含在包括所述块的所述编码图像之后的参考图像之中的区域;
所述运动矢量运算部,一边使所述第一搜索区域以及所述第二搜索区域内的搜索范围的位置移动,一边反复地进行将所述第一搜索区域以及所述第二搜索区域各自的所述搜索范围的像素数据,从所述第二记忆部读出并算出绝对值差分和的处理,并且根据被算出的绝对值差分和为最小的所述搜索范围的位置,算出所述运动矢量。
12.一种解码方法,是由解码装置对构成编码图像的块进行解码的方法,所述解码装置包括第一记忆部、第二记忆部、以及第三记忆部,所述第一记忆部记忆在对所述块进行解码之时所参考的参考图像的像素数据,所述参考图像是已经被解码的图像,所述第二记忆部比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快,所述解码方法包括:
搜索区域传送步骤,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;
运动矢量运算步骤,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;
运动补偿运算步骤,利用所述运动矢量以及所述参考图像的像素数据,生成所述块的预测图像;
参考区域传送步骤,将在所述运动补偿运算步骤被参考的参考区域的像素数据,从所述第一记忆部以及所述第二记忆部的一方传送到所述第三记忆部,所述参考区域是所述参考图像的一部分的区域;以及
解码步骤,利用在所述运动补偿运算步骤生成的预测图像,对所述块进行解码。
13.一种集成电路,被搭载在解码装置,并且对构成编码图像的块进行解码,所述解码装置包括第一记忆部,用于记忆在对所述块进行解码之时所参考的参考图像的像素数据,所述参考图像是已经被解码的图像,所述集成电路包括:
第二记忆部,比所述第一记忆部的记忆容量小,并且比所述第一记忆部读出数据的速度快;
搜索区域传送部,将在算出所述块的运动矢量时所需要的搜索区域的像素数据,从所述第一记忆部传送到所述第二记忆部,所述搜索区域是所述参考图像的一部分区域;
运动矢量运算部,通过反复从所述第二记忆部读出所述搜索区域的像素数据并进行规定的运算,从而算出所述块的运动矢量;
运动补偿运算部,利用所述运动矢量以及所述参考图像的像素数据,生成所述块的预测图像;
第三记忆部,记忆由所述运动补偿运算部参考的参考区域的像素数据,所述参考区域是所述参考图像的一部分区域;
参考区域传送部,将所述参考区域的像素数据,从所述第一记忆部以及所述第二记忆部中的一方传送到所述第三记忆部;以及
解码部,利用在所述运动补偿运算部生成的预测图像,对所述块进行解码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009-240902 | 2009-10-19 | ||
JP2009240902 | 2009-10-19 | ||
PCT/JP2010/006009 WO2011048764A1 (ja) | 2009-10-19 | 2010-10-07 | 復号装置、復号方法、プログラム、及び集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102197652A CN102197652A (zh) | 2011-09-21 |
CN102197652B true CN102197652B (zh) | 2013-09-11 |
Family
ID=43900009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080003007.9A Expired - Fee Related CN102197652B (zh) | 2009-10-19 | 2010-10-07 | 解码装置、解码方法、程序以及集成电路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110235716A1 (zh) |
JP (1) | JPWO2011048764A1 (zh) |
CN (1) | CN102197652B (zh) |
WO (1) | WO2011048764A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009142021A1 (ja) | 2008-05-23 | 2009-11-26 | パナソニック株式会社 | 画像復号化装置、画像復号化方法、画像符号化装置、及び画像符号化方法 |
JP5698644B2 (ja) * | 2011-10-18 | 2015-04-08 | 株式会社Nttドコモ | 動画像予測符号化方法、動画像予測符号化装置、動画像予測符号化プログラム、動画像予測復号方法、動画像予測復号装置及び動画像予測復号プログラム |
EP2740270A4 (en) * | 2011-10-31 | 2015-04-29 | Mediatek Inc | APPARATUS AND METHOD FOR BUILDING REFERENCED CONTEXT TABLES TO PERFORM AN ENTROPTIC DECODING OF A MULTI-TILE ENCODED IMAGE AND CORRESPONDING ENTROPY DECODER |
JP6490896B2 (ja) * | 2013-12-17 | 2019-03-27 | 株式会社メガチップス | 画像処理装置 |
CN103873874B (zh) * | 2014-02-19 | 2017-06-06 | 同观科技(深圳)有限公司 | 一种基于可编程并行处理器的全搜索运动估计方法 |
JP6451175B2 (ja) * | 2014-09-24 | 2019-01-16 | 富士ゼロックス株式会社 | 画像処理装置、システム及びプログラム |
JP6329521B2 (ja) * | 2015-04-09 | 2018-05-23 | 日本電信電話株式会社 | 参照画像バッファ |
CN109729352B (zh) * | 2017-10-27 | 2020-07-21 | 华为技术有限公司 | 确定仿射编码块的运动矢量的方法和装置 |
JP7060802B2 (ja) | 2018-06-11 | 2022-04-27 | 日本電信電話株式会社 | バッファ装置 |
JP7460638B2 (ja) | 2019-01-02 | 2024-04-02 | オッポ広東移動通信有限公司 | イントラ予測方法および装置、ビデオコーディング機器、記憶媒体 |
WO2022110131A1 (zh) * | 2020-11-30 | 2022-06-02 | 深圳市大疆创新科技有限公司 | 帧间预测方法、装置、编码器、解码器和存储介质 |
CN115190302A (zh) * | 2021-04-01 | 2022-10-14 | Oppo广东移动通信有限公司 | 在视频解码装置中进行图像处理的方法、装置及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101052128A (zh) * | 2006-04-03 | 2007-10-10 | 松下电器产业株式会社 | 运动检测装置和方法、运动检测集成电路和图像编码装置 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04311216A (ja) * | 1991-04-09 | 1992-11-04 | Toshiba Corp | 外部記憶制御装置 |
US6226414B1 (en) * | 1994-04-20 | 2001-05-01 | Oki Electric Industry Co., Ltd. | Image encoding and decoding method and apparatus using edge synthesis and inverse wavelet transform |
EP2173103A3 (en) * | 1997-02-13 | 2010-09-08 | Mitsubishi Denki Kabushiki Kaisha | Moving picture prediction system |
US20020015513A1 (en) * | 1998-07-15 | 2002-02-07 | Sony Corporation | Motion vector detecting method, record medium on which motion vector calculating program has been recorded, motion detecting apparatus, motion detecting method, picture encoding apparatus, picture encoding method, motion vector calculating method, record medium on which motion vector calculating program has been recorded |
US6961063B1 (en) * | 2000-06-30 | 2005-11-01 | Intel Corporation | Method and apparatus for improved memory management of video images |
JP3887178B2 (ja) * | 2001-04-09 | 2007-02-28 | 株式会社エヌ・ティ・ティ・ドコモ | 信号符号化方法及び装置並びに復号方法及び装置 |
JP2002325258A (ja) * | 2001-04-25 | 2002-11-08 | Nec Corp | 画像符号化装置及びそれに用いる画像符号化方法 |
US7190724B2 (en) * | 2002-04-12 | 2007-03-13 | Seiko Epson Corporation | Method and apparatus for transform domain video processing |
US20030202603A1 (en) * | 2002-04-12 | 2003-10-30 | William Chen | Method and apparatus for fast inverse motion compensation using factorization and integer approximation |
JP4841101B2 (ja) * | 2002-12-02 | 2011-12-21 | ソニー株式会社 | 動き予測補償方法及び動き予測補償装置 |
JP4155118B2 (ja) * | 2003-06-13 | 2008-09-24 | カシオ計算機株式会社 | 静止画合成装置、及び動画像からの静止画合成方法 |
US20040252762A1 (en) * | 2003-06-16 | 2004-12-16 | Pai R. Lakshmikanth | System, method, and apparatus for reducing memory and bandwidth requirements in decoder system |
JP4931034B2 (ja) * | 2004-06-10 | 2012-05-16 | 株式会社ソニー・コンピュータエンタテインメント | 復号装置および復号方法、並びに、プログラムおよびプログラム記録媒体 |
US20070230579A1 (en) * | 2006-03-31 | 2007-10-04 | Masstech Group Inc. | Serial processing of video signals using a programmable hardware device |
US8447933B2 (en) * | 2007-03-06 | 2013-05-21 | Nec Corporation | Memory access control system, memory access control method, and program thereof |
-
2010
- 2010-10-07 JP JP2011506521A patent/JPWO2011048764A1/ja active Pending
- 2010-10-07 CN CN201080003007.9A patent/CN102197652B/zh not_active Expired - Fee Related
- 2010-10-07 US US13/121,041 patent/US20110235716A1/en not_active Abandoned
- 2010-10-07 WO PCT/JP2010/006009 patent/WO2011048764A1/ja active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101052128A (zh) * | 2006-04-03 | 2007-10-10 | 松下电器产业株式会社 | 运动检测装置和方法、运动检测集成电路和图像编码装置 |
Non-Patent Citations (1)
Title |
---|
JP特开平4-311216A 1992.11.04 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2011048764A1 (ja) | 2013-03-07 |
US20110235716A1 (en) | 2011-09-29 |
WO2011048764A1 (ja) | 2011-04-28 |
CN102197652A (zh) | 2011-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102197652B (zh) | 解码装置、解码方法、程序以及集成电路 | |
JP5518069B2 (ja) | 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法、プログラムおよび集積回路 | |
CN102124741B (zh) | 图像编码方法及图像编码装置 | |
CN102550030B (zh) | 图像解码装置、图像编码装置、及其方法、程序、集成电路以及代码转换装置 | |
WO2012046435A1 (ja) | 画像処理装置、画像符号化方法および画像処理方法 | |
JP6390883B2 (ja) | 画像処理装置 | |
JP5659160B2 (ja) | 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 | |
CN102301720A (zh) | 图像编码方法以及图像解码方法 | |
WO2011161949A1 (ja) | 画像復号装置、画像復号方法、集積回路およびプログラム | |
CN103765903B (zh) | 图像解码装置、图像编码装置、图像解码方法及图像编码方法 | |
JP5999515B2 (ja) | 画像処理装置、及び、画像処理方法 | |
JP6260921B2 (ja) | 画像処理装置および画像処理方法 | |
JP5468604B2 (ja) | 画像復号装置、集積回路、画像復号方法及び画像復号システム | |
WO2013076897A1 (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130911 Termination date: 20191007 |