背景技术
近年来,广泛研究了以MPEG-2(ISO/IEC 13818-2)为首的MPEG-4(ISO/IEC 14496-2)或H.264(ISO/IEC 14496-10)这样的运动图像编码技术,并在计算机、通信、民用AV设备以及广播等各种各样领域中被应用。
在这些运动图像编码技术中,通过采用画面内预测编码与画面间预测编码这两种编码方式,从而进行了信息量的压缩,其中,画面内预测编码削减同一画面上的空间方向的冗余性,画面间预测编码参考已被编码、解码前后的图像(参考图像)来生成预测图像、且通过对得到的预测图像和编码对象图像的差分值进行编码来削减时间上的冗余性。为了对被画面间预测编码的运动图像数据流进行译码并再生,需要为了生成预测图像而用于暂时存储参考图像的参考图像存储器。作为该参考图像存储器,一般使用DRAM这样的外部存储器、或者内置于***LSI中的混合存储器,为了生成预测图像,对该参考图像存储器产生存储器存取。
另一方面,近年来,以大画面的等离子显示器或液晶电视为首的高清平板显示器在市场中正在迅速普及,能够以几万日元左右的合理价格购买高清HDTV可记录运动图像的数码摄像机或数字静态照相机等民用小型照相机。为了译码并再生利用这种照相机拍摄到的运动图像数据流,需要搭载如下的参考图像存储器:即便产生对参考图像存储器的频繁的存储器存取(存取量)也不会存在问题且能正常对运动图像数据流进行译码,且具有高频带的存储器带宽。
为了确保高频带的存储器带宽,需要使用多个具有例如32bit的数据位宽度的DRAM,或者需要使用LPDDR2(Low Power Double Data Rate 2)-SDRAM这样的即便在高速的工作频率下也能工作的高性能DRAM。但是,无论在哪种情况下,由于安装成本变高或者功耗变大,因此都存在难以低成本化和省电力化的课题。尤其是,在利用小型电池进行工作的数码摄像机或数字静态照相机等民用小型照相机中,对低成本/省电力的需求非常高,为此正在盛行与运动图像数据流的译码中的低成本/省电力化相关的研究。
接着,以下说明译码并再生运动图像数据流的一般方法。
图11是简单表示输入运动图像数据流并依次进行译码后输出再生图像的一般图像再生装置的图。从输入端子2输入成为再生对象的运动图像数据流,在译码器603中针对每个图像依次进行图像层、宏块条层、宏块层的译码。被译码后的图像从输出端子13输出至未图示的显示控制部。另外,需要作为参考图像残留的图像(例如I/P图像)被写入至参考图像存储器5中,从而被暂时存储。在由具有例如32bit的数据总线的存储器构成了参考图像存储器5的情况下,利用将4像素(8bit×4像素=32bit)存储在一个地址中的方式来进行写入,在由具有64bit的数据总线的存储器构成了参考图像存储器5的情况下,利用将8像素(8bit×8像素=64bit)存储在一个地址中的形式来进行写入。
另外,在对进行了画面间预测编码的图像(例如P/B图像)实施译码的情况下,依次读出参考图像存储器5所存储的参考图像来生成预测图像,与被译码后的差分值进行相加后从输出端子13输出至未图示的显示控制部。
读出在参考图像存储器5中以上述形式暂时存储的参考图像时,基于成为译码对象的宏块画面内的位置和运动矢量值,来计算出参考图像的二维空间内的读出起始地址,并变换成参考图像存储器5的读出地址(如果是具有32bit的数据总线的存储器,则指4像素单位的地址)。
图13(1)、(2)表示其一例。在计算出的参考图像的二维空间内的读出起始地址与参考图像存储器5的读出地址的边界一致的情况下(图13(1)),用于生成16×16像素的预测图像的读出时所产生的读取信息量成为256字节(4像素单位的地址时是64个地址),根本没有产生读出中的包括无效像素的传输。另一方面,在计算出的参考图像的二维空间内的读出起始地址与参考图像存储器5的读出地址的边界不一致的情况下(图13(2)),用于生成16×16像素的预测图像的读出时所产生的读取信息量成为320字节(4像素单位的地址时是80个地址),产生较多的读出中的包括无效像素的传输,从而读出中的开销(overhead)变大。
另外,在MPEG-2的情况下,生成该预测图像时的运动补偿的单位是由16×16像素构成的较大的块单位,因此读取时所产生的开销也不会成为大问题。然而,在MPEG-4的情况下,作为运动补偿的单位,不仅支持16×16像素,而且还支持8×8像素单位,进而在H.264的情况下,在进一步提高运动补偿的精度的目的下,如图12所示,支持以16×16、16×8、8×16、8×8、8×4、4×8、4×4像素这样的更细致的块为单位中的运动补偿,从而读出中的开销也进一步变大。
具体而言,例如在运动补偿的尺寸为4×4像素的情况下,如图13(3)、(4)所示,在计算出的参考图像的二维空间内的读出起始地址与参考图像存储器5的读出地址的边界一致的情况下(图13(3)),用于生成4×4像素的预测图像的读出时所产生的读取信息量成为16字节(4像素单位的地址时是4个地址),根本没有产生读出中的包括无效像素的传输。另一方面,在计算出的参考图像的二维空间内的读出起始地址与参考图像存储器5的读出地址的边界不一致的情况下(图13(4)),用于生成4×4像素的预测图像的读出时所产生的读取信息量成为32字节(4像素单位的地址时是8个地址),产生较多的读出中的包括无效像素的传输,较之以16×16像素为单位的运动补偿,读出中的开销也变大。
即,在对运动图像数据流进行译码的情况下,由于需要从以参考图像存储器5内的运动矢量指示的任意像素位置起以块为单位进行随机存取,因此因像素位置而导致无法有效地存取参考图像存储器5,从而存储器存取时的开销变多。另外,用于生成预测图像的运动补偿的尺寸越小,存储器存取(读取访问)时的开销会变得越多。
参考图像存储器的容量、数据总线的位宽、工作频率等的规格是通过译码器所支持的运动图像数据流的分辨率、帧速率(在MPEG-2或H.264等标准中由等级规定)等来决定的事项。并且,该参考图像存储器的规格是在标准范围内假定有可能产生的最坏情况的基础上决定的。因此,在与HDTV运动图像对应的民用小型照相机等中,需要具备高性能的参考图像存储器,因此难以实现低成本和节省电力。
此外,在此提及的最坏情况具体是指,进行了运动图像数据流内的画面间预测编码的图像如下述那样被编码的情况。
·为了生成预测图像而产生的参考图像存储器存取是在图像内的所有宏块中包括无效传输像素在内的开销最大的传输。
·宏块的运动补偿尺寸在图像内的所有宏块中是最小尺寸。(例如在H.264的情况下为4×4像素)
·针对能进行向前预测/向后预测/双向预测的B图像,在图像内的所有宏块中利用双向预测进行编码。
在专利文献1~4中公开了与解决上述问题的存储器带宽削减相关的技术。
根据专利文献1以及2,译码后的图像通过滤波处理被缩小后存储到参考图像存储器中,将从参考图像存储器读出的缩小图像通过滤波处理放大后的图像用作参考图像。
根据专利文献3,将通过阿达玛变换(Hadamard transform)以及量化压缩被译码的图像后的图像存储在参考图像存储器中,将通过逆量化以及逆阿达玛变换对从参考图像存储器读出的压缩图像进行了扩展的图像用作参考图像。
根据专利文献4,在将译码后的图像存储至参考图像存储器时,以对以后的图像进行译码时在时间上不会累计的方式,自适应地控制通过实施缩小或压缩等非可逆变换处理而产生的压缩失真。
在先技术文献
专利文献
专利文献1:日本特开2000-50272号公报
专利文献2:日本特开2000-78568号公报
专利文献3:日本特开2000-04440号公报
专利文献4:日本发明专利第4384130号
具体实施方式
以下,参照附图,对本发明的实施方式进行说明。
<第1实施方式>
图1是表示第1实施方式所涉及的图像再生装置1的结构的图。在图1的结构中,向输入端子2依次输入成为再生对象的运动图像数据流。可变长解码部3对所输入的运动图像数据流进行可变长解码,输出各种编码参数和量化系数。这里的编码参数包括以图像类型(I/P/B图像)为首的宏块的编码类型(intra/inter)、预测方向类别(向前预测/向后预测/双向预测)、运动补偿尺寸以及运动矢量等。逆量化/逆DCT部4对从可变长解码部3输出的量化系数进行逆量化和逆DCT变换。
参考图像存储器5作为参考图像暂时存储已经进行译码的图像。信息量分析部6基于从可变长解码部3输出的编码参数,以图像为单位事先分析相对于参考图像存储器5的信息量。在设定端子7上设定参考图像存储器5的容许存储器带宽(规定阈值)。参考图像压缩控制部8暂时保持在信息量分析部6中计算出的各图像所涉及的相对于参考图像存储器5的信息量,通过比较参考译码对象图像的图像所涉及的信息量、和所设定的容许存储器带宽,由此设定向参考图像存储器5保存参考图像时的压缩方式。
写入控制部9按照由参考图像压缩控制部8设定的压缩方式,进行向参考图像存储器5写入参考图像的控制。读出控制部10按照与由参考图像压缩控制部8设定的压缩方式相应的扩展方式、和从可变长解码部3输出的运动矢量,进行从参考图像存储器5中读出参考图像的控制。运动补偿部11根据由读出控制部10读出的参考图像,基于从可变长解码部3输出的运动矢量,生成预测图像。加法器12向进行了画面内预测(intra)编码的宏块直接输出从逆量化/逆DCT部4输出的图像数据,而针对进行了画面间预测(inter)编码的宏块,将从逆量化/逆DCT部4输出的图像数据、和从运动补偿部11输出的预测图像相加后输出。输出端子13将加法器12的输出作为再生图像来输出。
在图1的结构中,由可变长解码部3、逆量化/逆DCT部4、运动补偿部11以及加法器12构成了译码处理部20。该译码处理部20针对进行了画面间预测编码后的运动图像数据流,以图像为单位来进行可变长解码,生成再生图像,并且为了估计相对于参考图像存储器5的信息量,只要输出编码参数即可,也可以是其他经济。
以下,参照图2~图5,依次说明利用图1的图像再生装置1来再生运动图像数据流的步骤。
图2是表示运动图像数据流的图像结构的一例的图。在图2中,上部按照输入顺序、中部按照编码顺序、下部按照再生顺序表示了运动图像数据流的各图像。另外,在图2中,用粗实线以及粗字来表示参考图像。
在图2的上部示出:采用画面间预测编码进行了编码的各图像(P/B图像)的参考图像、和为了生成预测图像而产生的参考图像的读取信息量(RT)。例如,按编码顺序位于第5个的B3图像的向前预测用的参考图像为I2图像,将在对B3图像进行译码时所产生的用于I2图像参考的读取信息量图示为“RT(I2→B3)”。另一方面,B3图像的向后预测用的参考图像为P5图像,将在对B3图像进行译码时所产生的用于P5图像参考的读取信息量图示为“RT(B3←P5)”。另外,在图2的上部也示出:在对其他图像进行译码时可作为参考图像来参考的图像(I/P图像)向参考图像存储器的写入信息量(WT)。例如,I2图像的写入信息量图示为“WT(I2)”。
在本实施方式中,事先分析在对运动图像数据流进行译码再生时实际产生的相对于参考图像存储器的信息量,在这些信息量超过搭载于图像再生装置1中的参考图像存储器5的容许存储器带宽的情况下,将参考图像压缩后保存于参考图像存储器5,而在没有超过容许存储器带宽的情况下,不压缩参考图像,而是直接保存至参考图像存储器5。由此,以极力抑制参考图像压缩引起的失真在时间上的传播的方式完成控制。即,在现有技术中,在对运动图像数据流进行译码的基础上考虑可产生的所有情形,并假定产生概率非常低的最坏情况来估计相对于参考图像存储器的信息量。因此,即便在对再生对象的运动图像数据流进行了译码再生时实际上并没有超过参考图像存储器的容许存储器带宽的情况下,也始终进行参考图像的压缩。与之相对,在本实施方式中,在对运动图像数据流进行译码再生之前,先进行用于事先分析在再生成为译码对象的各图像时实际产生的信息量的信息量估计用译码。因此,仅对在再生用译码时判断出需要参考图像的压缩的图像进行参考图像的压缩,在除此之外的情况下不进行参考图像的压缩。
即,进行了画面间预测编码后的运动图像数据流通常适当选择图像内的各宏块的编码效率变高的编码形式。因此,无论在P图像中还是在B图像中,不限于对所有宏块进行画面间预测编码,也有时存在很多无需读取参考图像的完成了画面内预测编码的宏块。另外,对于进行了画面间预测编码的所有宏块而言,并不限于必须对参考图像存储器进行开销大的读取访问(更小尺寸下的运动补偿等)。另外,即便在B图像中,也不限于针对所有宏块进行采用了参考前后2个图像的双向预测的编码,也有时进行仅采用向前预测、或者仅采用向后预测的单向预测的编码。
如以上所述,在本实施方式中,由于根据需要而最小限度地应用参考图像的压缩,因此较之现有技术,可以实现更优选的存储器带宽削减。
利用图3以及图4,说明本实施方式的具体控制流程。图3是表示信息量估计用译码的流程图,图4是表示生成再生图像的再生用译码的流程图。在此,假设再生图2所示的运动图像数据流。
首先,利用图3,具体说明信息量估计用译码的处理。此外,在信息量估计用译码中,只是针对每个图像估计相对于参考图像存储器的信息量,并不是从参考图像存储器中实际读出参考图像来生成预测图像、或者将再生图像作为以后的译码所需的参考图像而写入参考图像存储器中。因此,不进行对参考图像存储器的存取,根本不会产生信息量。
首先,启动信息量估计用译码,可变长解码部3从前头的I2图像按编码顺序依次对所输入的运动图像数据流进行译码,依次向信息量分析部6输出各种编码参数(ST101)。接着,信息量分析部6判断信息量估计对象图像的译码是否已结束。在1个图像的译码结束了时,转向ST103(ST102)。
接着,信息量分析部6识别译码后的信息量估计对象图像的图像类型(ST103)。若是I图像或P图像,则由于产生对参考图像存储器5的写入访问,因此计算出写入信息量(ST104)。针对写入信息量而言,只要获知图像的分辨率就能够容易计算出。若是P图像,则基于各种编码参数来计算出在参考向前预测对象图像时所产生的读取信息量(ST107)。另一方面,若是B图像,则基于各种编码参数来计算出在参考向后预测图像时所产生的读取信息量(ST106),进而同样地计算出在参考向前预测图像时所产生的读取信息量(ST107)。
最后,判断信息量估计对象图像是否仍有残余(ST108),在仍有残余的情况下转向ST101,反复进行上述动作。
这样,通过执行信息量估计用译码,从而在信息量分析部6中计算出在对各图像进行译码时所产生的参考图像存储器5的具体信息量。即,在再生图2所示的运动图像数据流时所产生的每个图像的信息量是利用如下的简单的计算式事先求出的。其中,ST(X)表示X图像的信息量。
ST(B0)=RT(B0←I2)…(式1)
ST(B1)=RT(B1←I2)…(式2)
ST(I2)=WT(I2)…(式3)
ST(B3)=RT(I2→B3)+RT(B3←P5)…(式4)
ST(B4)=RT(I2→B4)+RT(B4←P5)…(式5)
ST(P5)=WT(P5)+RT(I2→P5)…(式6)
ST(B6)=RT(P5→B6)+RT(B6←P8)…(式7)
ST(B7)=RT(P5→B7)+RT(B7←P8)…(式8)
ST(P8)=WT(P8)+RT(P5→P8)…(式9)
比较在如上所述的信息量估计用译码中被事先计算出的各图像的信息量、和参考图像存储器5的容许存储器带宽AW,适当地判断在再生用译码时是否需要压缩参考图像。
参考图像存储器5的容许存储器带宽AW是指,在对1图像进行译码时可容许的相对于参考图像存储器5的信息量。换言之,是将参考图像存储器5的带宽换算成图像单位后的值。例如,在作为参考图像存储器5的存储器而采用数据宽度为32bit的DDR400来对在一秒钟内存在60张图像的运动图像数据流进行了译码时,如果考虑存储器存取中的传输损耗为20%,则如下。
AW=(3.2GB/s×0.8)/60=42.7MB/s…(式10)
是否压缩参考图像的判断具体是例如按照下述方式进行的。假设在图2的运动图像数据流中将I2图像译码成再生用。将I2图像作为参考图像来进行参考的图像是位于I2图像前后的B0、B1、B3、B4以及P5图像共计5张图像。为使这些图像被正常译码,各图像所涉及的相对于参考图像存储器5的信息量必须收纳于容许存储器带宽AW以下。即,必须满足下述的(式11)~(式15)。
ST(B0)≤AW…(式11)
ST(B1)≤AW…(式12)
ST(B3)≤AW…(式13)
ST(B4)≤AW…(式14)
ST(P5)≤AW…(式15)
因此,要进行如下的判断:在(式11)~(式15)全部得到满足时,不压缩将I2图像译码后的图像而是直接保存在参考图像存储器5中,在不满足任一个式子时,压缩将I2图像译码后的图像并保存在参考图像存储器5中。
此外,为了进行如上所述的判断,需要在再生用译码之前开始信息量估计用译码。即,如图5所示,再生用译码需要从信息量估计用译码的开始起延迟与规定数的图像相对应的量之后开始。这里的延迟量只要基于运动图像数据流的GOP(Group of Pictures)结构设定即可。例如,如图2所示,在出现I图像或P图像的周期M为3(在I图像或P图像之间***的B图像为2张)的情况下,只要设定与至少6张图像相应的量的延迟即可。另外,在M=4(在I图像或P图像之间***的B图像为3张)的情况下,只要设定与至少8张图像相应的延迟即可。即,只要延迟与(M×2)张以上的图像相应的量即可。或者,在直到再生开始为止的延迟时间不会成为大问题时,也可设定例如与1GOP相应的量的延迟。
接着,利用图4,具体说明再生用译码的处理。在该再生用译码中,以图像为单位来进行上述这种是否压缩参考图像的判断。
首先,启动再生用译码,可变长解码部3从前头的I2图像开始按编码顺序依次对所输入的运动图像数据流进行译码(ST201)。另外,可变长解码部3在信息量估计用译码中也工作,因此如图5所示,分时进行译码处理,以使彼此以排他的方式工作。另外,在信息量估计用译码的情况下,由于根本不会产生对参考图像存储器5的存取,因此只要具备可高速处理的可变长解码部3,就能在比较短的时间内结束1张图像的译码处理。
接着,进行译码对象图像的图像类型的识别(ST202)。并且,若是I图像或P图像,则参考图像压缩控制部8确认参考译码对象图像的全部图像的信息量估计是否已完成(ST203)。例如,在译码对象图像为I2图像时,如上述那样,因为参考I2图像的图像是B0、B1、B3、B4、P5图像,所以确认这些图像的信息量估计用译码是否完成。如果没有完成,则待机直至通过信息量估计用译码完成估计为止。
接着,参考图像压缩控制部8确认参考译码对象图像的全部图像的信息量是否在容许存储器带宽AW(阈值)以下(ST204)。例如,在译码对象图像为I2图像时,确定上述的(式11)~(式15)是否全部得到满足。或者,在译码对象图像为P5图像时,进行
ST(B3)≤AW…(式16)
ST(B4)≤AW…(式17)
ST(B6)≤AW…(式18)
ST(B7)≤AW…(式19)
ST(P8)≤AW…(式20)
这5个条件式是否全部得到满足的确认。
在ST204中判断出参考译码对象图像的全部图像的信息量在容许存储器带宽AW以下时(“是”),参考图像压缩控制部8设定不压缩将译码对象图像译码后得到的图像而是将其写入参考图像存储器5中,并暂时存储该设定(ST205)。另一方面,判断出在参考译码对象图像的图像信息量中,即便有一个大于容许存储器带宽AW的情况下(“否”),参考图像压缩控制部8也设定压缩将译码对象图像译码后得到的图像并将其写入参考图像存储器5中,并暂时存储该设定(ST206)。进而,进行参考译码对象图像的图像信息量的更新(ST207)。即,在译码对象图像被压缩的情况下,由于参考译码对象图像的图像的信息量也发生变化,因此进行该信息量的更新。例如,在译码对象图像为I2图像时,如果I2图像被压缩并存储至参考图像存储器5,则参考I2图像的图像、即B0、B1、B3、B4、P5图像的信息量ST(B0)、ST(B1)、ST(B3)、ST(B4)、ST(P5)也发生变换。其中,对于B3、B4图像的信息量ST(B3)、ST(B4)而言,在译码对象图像为P5图像时,如(式16)、(式17)所示那样,也被用于是否压缩P5图像的判定中。由此,需要更新信息量。
如此一来,决定了将对译码对象图像进行译码后生成的复原图像保存于参考图像存储器5时的压缩方式(在此是指是否进行压缩)。此外,在ST202中识别出译码对象图像为B图像的情况下,由于没有产生对参考图像存储器5的写入,因此跳过与上述写入设定相关的处理,而转到后述的ST208。
接着,说明依次读出存储在参考图像存储器5中的参考图像并将译码对象图像译码的处理。
首先,再次识别译码对象图像的图像类型(ST208),若是P图像或B图像,则在参考图像压缩控制部8中确认译码对象图像要参考的图像是否被压缩(ST209)。若是被压缩的图像(“是”),则设定从参考图像存储器5中读出成为对象的参考图像之后进行扩展(ST210),若是未被压缩的图像(“否”),则设定在从参考图像存储器5中读出成为对象的参考图像之后不进行扩展(ST211)。此外,在ST208中识别出为I图像时,由于无需从参考图像存储器5读出参考图像,因此跳到后述的ST212。
如此一来,进行将译码对象图像译码时的参考图像的读出设定,启动图像内的宏块条层以下的译码(ST212)。在此,由写入控制部9以及读出控制部10基于已决定出的写入/读出设定,对参考图像存储器5内的参考图像进行读取/写入访问。在译码对象图像的1张图像的译码结束时,确认在运动图像数据流中是否存在未被再生的译码对象图像(ST213),在存在的情况下转到ST201,再次进行上述的处理,在不存在时结束处理。
此外,在上述的说明中,为了以图像为单位高精度地估计相对于参考图像存储器5的信息量,采用了宏块的编码类型、预测方向类别、运动补偿尺寸以及运动矢量这样的各种编码参数,但是信息量的估计方法并不限于此。例如,也可取代采用这些编码参数的全部,而使用其中一个或几个来简单地估计信息量。
例如,也可基于存在于图像内的帧间宏块的个数,来简单地估计信息量。或者,也可基于针对图像提取出的运动矢量的个数,来简单地估计信息量。另外,也可基于针对图像提取出的每个运动补偿尺寸的宏块数,来简单地估计信息量。
另外,在上述的说明中,比较事先估计出的各图像的信息量的每一个和容许存储器带宽AW,并根据该比较处理的结果来决定译码对象图像的压缩/非压缩,但是用于决定参考图像的压缩方式的比较处理并不限于此。例如,也可以将参考译码对象图像的多个图像设为一个单位,比较这些各图像所涉及的信息量的平均值和容许存储器带宽AW。具体而言,在译码对象图像为I2图像时,比较参考I2图像的5个图像的信息量ST(B0)、ST(B1)、ST(B3)、ST(B4)、ST(P5)的平均值、和容许存储器带宽AW,并根据该比较结果来决定是否压缩从I2图像得到的参考图像。
另外,在上述的说明中,将参考图像存储器5仅用于运动图像数据流再生,但是参考图像存储器5可以是也被用于与运动图像数据流再生不同的其他处理中的存储器。在该情况下,以向参考图像存储器5的存取相互不竞争的方式,协调控制运动图像数据流再生和其他处理。此时,在比较处理中使用的容许存储器带宽AW只要设定成从在上述的说明中计算出的值减去其他处理所必要的信息量而得到的值即可。
另外,在上述的说明中,仅设定了一种容许存储器带宽AW,并通过该容许存储器带宽AW和信息量的比较处理来判定了是否压缩参考图像,但是容许存储器带宽AW的设定、压缩方式的判定并不限于此。例如,也看采用如下方式:能够设定多种作为规定阈值的容许存储器带宽AW,通过该多个容许存储器带宽AW和信息量的比较处理,从多个压缩率之中选择任一个。具体而言,例如设定2个容许存储器带宽AW1、AW2,比较该容许存储器带宽AW1、AW2和各图像的信息量,如果各图像的信息量在AW1以下,则判定出不压缩译码对象图像,如果大于AW1且在AW2以下,则判定出将译码对象图像压缩成75%,如果大于AW2,则判定出将译码对象图像压缩成压缩率高的50%。
另外,也可在压缩参考图像的情况下,对亮度成分和色差成分设定分别独立的压缩率。例如,由于亮度成分的失真连人类的眼睛也都能容易确认,因此更优选设定为亮度成分的压缩率低于色差成分的压缩率。
如以上所述,根据本实施方式,在对运动图像数据流进行译码并再生的情况下,以图像为单位,事先估计实际会产生的相对于参考图像存储器的信息量,在这些信息量超过参考图像存储器的容许存储器带宽的情况下,将参考图像压缩后进行保存。由此,能够极力抑制在译码时所产生的因参考图像压缩引起的失真在时间上的传播。另外,由于无需假定产生概率极低的最坏情况来搭载所需以上的高性能存储器,因此能够同时实现低成本和节省电力。另外,无需如现有技术那样预先存储压缩后的参考图像和非压缩的参考图像这两个图像,因此能够以较少的存储器容量来实现,并且也不会产生双重的对参考图像存储器的写入访问。
<第2实施方式>
图6是表示第2实施方式所涉及的图像再生装置2的结构的图。在图6中,对于与图1相同的结构要素赋予与图1相同的符号,并在此省略其详细说明。在图6的结构中,与第1实施方式的不同之处在于,追加了用于暂时存储在可变长解码部3中被译码的中间数据的中间缓冲存储器202、和进行中间缓冲存储器202的写入/读出控制的中间缓冲存储器控制部203。
在第1实施方式的情况下,错开定时来启动了信息量估计用译码和再生用译码,使可变长解码部3以排他的方式工作。但是,一旦通过先执行的信息量估计用译码进行了运动图像数据流的可变长解码之后,为了再次进行再生用译码而对同一数据流进行可变长解码,因此译码处理存在重复,在再生用译码中会产生多余的时间。本实施方式的目的在于削减该再生用译码中的多余时间。
以下,具体说明本实施方式中的处理。
首先,与第1实施方式同样地,先启动信息量估计用译码,可变长解码部3为了估计每个图像的具体信息量,不仅对图像层进行译码,也对宏块条层、宏块层的所有层进行译码。而且,在第1实施方式中,在被译码的数据之中,只是信息量估计所需的各种编码参数被依次输出至信息量分析部6,但是在本实施方式中,除此之外还将译码后的宏块层的图像数据(量化系数)作为中间数据而暂时保存在中间缓冲存储器202中。即,从可变长解码部3依次输出的宏块层的图像数据通过中间缓冲存储器控制部203的写入控制而被存储在中间缓冲存储器202中。
而且,在再生用译码中,并非再次对运动图像数据流进行可变长解码,而是通过中间缓冲存储器控制部203的读出控制依次读出暂时存储在中间缓冲存储器202中的译码对象图像的图像数据,并采用该图像数据来进行译码处理。
这样,根据本实施方式,将通过信息量估计用译码中的译码处理而得到的中间数据暂时保存在中间缓冲存储器202中,在再生用译码中从中间缓冲存储器202中读出中间数据,生成再生图像。由此,一次便能解决每个图像的可变长解码,因此能够实现再生用译码处理的高速化。另外,也可获得无需设置可高速处理的可变长解码器的效果。
此外,在上述的说明中,作为中间数据,在中间缓冲存储器202中存储了通过可变长解码生成的图像数据(量化系数),但是保存于中间缓冲存储器202中的中间数据并不限于此。例如,在对组合二值化处理和算术编码而被进行可变长编码的H.264的运动图像数据流进行译码的情况下,也可将进行了算术译码的二值化数据作为中间数据而存储在中间缓冲存储器202中。因为该二值化数据相当于图像数据(量化系数)被压缩的情况,所以通过将其作为中间数据来保存,能够由较小容量的存储器构成中间缓冲存储器202。
另外,在上述的说明中分别独立地构成了参考图像存储器5和中间缓冲存储器202,但是并不限于此,也可由单一的共用存储器构成参考图像存储器5和中间缓冲存储器202。此时,只要以不影响彼此工作的方式排他控制即可。
<第3实施方式>
图7是表示第3实施方式所涉及的图像再生方法的流程图。在本实施方式中,具体说明在利用第1及第2实施方式中说明过的图像再生方法来再生运动图像数据流的期间内进行暂时停止或逐帧播放等时的处理。
在第1及第2实施方式中说明过的图像再生方法仅在相对于参考图像存储器5的信息量超过容许存储器带宽时压缩参考图像,因此能够极力抑制在译码时所产生的参考图像压缩引起的失真在时间上的传播。但是,在采用容许存储器带宽比较小的参考图像存储器5来构成图像再生装置、或者再生相对于参考图像存储器5的信息量较大的运动图像数据流的情况下,频繁地进行参考图像压缩,从而参考图像压缩引起的失真在时间上的传播也变大。其中,即便在这种情况下,在通常的运动图像再生时,也很难在视觉上注意到因参考图像压缩引起的失真,因此不会成为大问题,但是例如在暂时停止后显示静止图像时或进行逐帧播放时,失真会更醒目。
因此,在本实施方式中,在成为暂时停止或逐帧播放再生等、很难在视觉上注意到参考图像压缩引起的失真的状况时,其特征在于,与每个图像的信息量无关地,以不压缩参考图像的方式变更控制。
以下,参照图7来具体说明。
首先,在利用第1及第2实施方式中说明过的图像再生方法来再生运动图像数据流的过程中,判断是否指示了暂时停止、逐帧播放(ST301)。因为在运动图像再生过程中不会突然进行逐帧播放,所以如果处于运动图像的通常再生过程中,则首先进行是否指示了暂时停止的判断。在没有指示暂时停止时(“否”),直接以对参考图像进行压缩控制的(根据各图像的信息量来设定压缩方式)设定,对运动图像数据流进行再生(ST302)。另一方面,在指示了暂时停止时(“是”),判断是否刚刚暂时停止(ST303),若是刚刚暂时停止(“是”),则由于参考图像压缩引起的失真醒目,因此返回到暂时停止时的再生图像之前的I图像(ST304),以不压缩参考图像的设定来进行再次译码处理(ST305)。接着,判断译码后的图像是否与暂时停止时的再生图像相同(ST306),在不相同时(“否”),转向ST305,以不压缩参考图像的设定再次对下一个图像进行译码。同样地,图像被依次再译码,对与暂时停止时的再生图像相同的图像进行再次译码时(“是”),进行再生图像的替换(ST307),转向ST301。另外,在暂时停止之后持续进行逐帧播放时(ST301:“是”,ST303:“否”),以不压缩参考图像的设定来进行译码处理,以使参考图像压缩引起的失真在时间上不被传播(ST308)。
这样在暂时停止后显示静止图像的情况或进行逐帧播放的情况等、在视觉上容易发现参考图像压缩引起的失真的情况下,以不压缩参考图像的设定来进行译码处理。由此,在暂时停止或逐帧播放中避免了参考图像压缩引起的失真,所以能够实现更优选的运动图像数据流的再生,能够实现假定了实际使用场景的优选的图像再生装置。
此外,在本实施方式中,在暂时停止的情况下,追溯到I图像,以不压缩参考图像的设定来进行再次译码处理,并替换显示图像,因此直到生成不存在参考图像压缩引起的失真的再生图像为止,产生一些时滞(timelag)。其中,在实际的图像再生装置中,由于该时滞最大为0.5秒左右,因此从视听者的感知速度方面出发,不会成为大问题。另外,在逐帧播放时也以不压缩参考图像的设定在超过了容许存储器带宽的信息量之中进行译码,因此译码处理需要一些时间。但是,逐帧播放再生与通常的运动图像再生相比并不要求实时性,因此不会成为大问题。
<第4实施方式>
图8是表示第4实施方式所涉及的图像再生装置4的结构的图,图9是表示第4实施方式所涉及的图像再生方法的流程图。在图8中,对于与图1相同的结构要素赋予与图1相同的符号,在此省略其详细说明。在图8的结构中,与第1实施方式不同之处在于,追加了劣化程度判定部402,其在产生了暂时停止或逐帧播放等的情况下,判定由参考图像压缩引起的失真的传播带来的、再生图像的劣化程度。另外,在图9中,对于与图7相同的步骤赋予与图7相同的符号,在此省略其详细说明。在图9的流程中,与第3实施方式不同之处在于,追加在产生了暂时停止或逐帧播放等的情况下判定再生图像的劣化程度的步骤ST401。
即,在第1及第2实施方式中说明过的、以控制参考图像的压缩方式的设定来再生运动图像数据流的情况下,在指示了暂时停止时,对于此时的再生图像而言,存在参考图像压缩引起的失真在时间上的传播大的情况和小的情况。例如,在对不存在参考图像压缩引起的失真在时间上的传播的I图像进行再生之后,在比较早的阶段被暂时停止的情况下,由于参考图像压缩引起的失真在时间上的传播少,因此即使不进行追溯到I图像的再译码处理,也不会成为什么问题。另一方面,在再生I图像之后经过不久就被暂时停止的情况下,由于参考图像压缩引起的失真在时间上的传播大,因此如果不进行追溯到I图像的再译码处理,则容易在图像上发现参考图像压缩引起的失真。
在本实施方式中,其特征在于,劣化程度判定部402在步骤ST401中进行这种判断处理。即,在步骤ST401中,判断从暂时停止时的再生图像被译码的再生图像的劣化程度是否大。并且,在劣化程度相对大时(“是”),返回到暂时停止时的再生图像之前的I图像(ST304),以不压缩参考图像的设定再次进行译码处理(ST305)。同样地,图像被依次再译码,在与暂时停止时的再生图像相同的图像被再译码时(ST306:“是”),进行再生图像的替换(ST307)。另一方面,在劣化程度相对小时(ST401:“否”),之后以不压缩参考图像的设定来进行译码(ST308)。通过追加步骤ST401,从而与第3实施方式相比,能够将进行追溯到I图像的再译码处理的次数抑制得较少。
此外,步骤ST401中的判定处理例如按下述方式进行。即,作为用于判定暂时停止时的再生图像的劣化程度的阈值,由设定端子7设定与在画质方面能容许的I图像在时间上的距离。并且,通过对从I图像到暂时停止时的再生图像为止的时间上的距离、和该阈值进行比较,从而判定劣化程度是大还是小。或者,也可取代与I图像在时间上的距离,或者在此基础上采用参考图像压缩引起的失真被传播到暂时停止时的再生图像的传播次数,来进行判断。
(***的结构例)
上述的各实施方式所涉及的图像再生方法能够利用于例如数码摄像机或数字静态照相机等摄像***(影像***)。图10是表示这种摄像***的结构的一例。图10的摄像***是利用了各实施方式所涉及的图像再生方法的***,图像处理电路53包括能执行各实施方式所涉及的图像再生方法的图像再生部100,进行图像处理。
在图10的摄像***中,通过光学***50入射的图像光在传感器51上成像,并被进行光电变换。将通过光电变换得到的电信号作为模拟图像信号而提供给A/D变换电路52。A/D变换电路52将所输入的模拟图像信号变换成数字图像信号之后,输出给图像处理电路53。在图像处理电路53中,进行Y/C处理、边缘处理、图像的放大缩小、以及J PEG或MPEG等图像压缩/扩展处理、被图像压缩后的数据流的控制等。被图像处理后的信号在记录***/传输***54中被记录在介质中,或者经由因特网等被传输。通过再生***55对所记录或传输的信号进行再生。传感器51以及图像处理电路53被定时控制电路56控制,光学***50、记录***/传输***54、再生***55以及定时控制电路56分别被***控制电路57控制。
此外,图10所示的摄像***是传感器51对来自光学***50的图像光进行光电变换后输入给A/D变换电路52的、用于照相机设备等中的结构,但是并不限于此。例如,也可以是将电视等AV设备的模拟影像输入作为模拟图像信号来直接提供给A/D变换电路52的结构。
另外,在从图10所示的摄像***中省略了光学***50或传感器51等与摄像相关的部分的结构的再生***中,也同样能够应用上述的各实施方式。
此外,上述的各实施方式所涉及的图像再生方法能够通过具备执行用于实现该方法的程序的计算机的装置来实现。另外,能够通过将用于实现该方法的程序记录在计算机可读取的记录介质中,并使计算机执行在该记录介质中记录的程序来实现。
(产业上的可利用性)
在本发明中,因为能够实现低成本/省电力、且可抑制在译码时所产生的压缩失真在时间上的积累的图像再生技术,所以例如在要求廉价且高速、省电力的运动图像再生的数码摄像机或数字静态照相机等摄像设备、数码照片存储器或数字相框等图像浏览器、以及移动电话等移动设备等中是有用的。
符号说明:
1、2、4 图像再生装置
2 可变长解码部
4 逆量化/逆DCT部
5 参考图像存储器
6 信息量分析部
8 参考图像压缩控制部
9 写入控制部
10 读出控制部
11 运动补偿部
12 加法器
20 译码处理部
50 光学***
51 传感器
52 A/D变换电路
53 图像处理电路
100 图像再生部
202 中间缓冲存储器
402 劣化程度判定部