影像译码的方法与系统的制作方法

文档序号:7947571阅读:224来源:国知局
专利名称:影像译码的方法与系统的制作方法
技术领域
本发明涉及一种适用于MPEG(Motion Picture Experts Group)标准的影像译码方法与系统。
在目前,视频信号中数字影像的格式,是由一MPEG(motion PictureExperts Group)影像制定标准所规定。而现今数字激光视盘(DigitalVersatile disk,DVD)或是高解析电视(High Definition Television,HDTV)等主要播放格式皆是由新一代标准的MPEG 2所规定。如

图1所示,通常符合MPEG 2标准的影像数据流,主要是由下列三种类型的影像所组成(1)I画面(intra-coded pictures,I-picture),常视为是一个定位画面(Anchor Frame),编码时不需要参考任何影像,意即仅根据某一画面的信息进行编码;(2)P画面(predictive-coded pictures,P-Picture),亦可视为是一个定位画面,编码时需参考先前的I画面或是P画面,并使用动作补偿(Motion Compensation)预测方式编码,意即通过估算先前的I画面或是P画面所发生的动作进行编码,并仅编入此P画面改变的部份;以及(3)B画面(bidirectionally predictive-coded pictures)亦使用动作补偿预测方式编码,且需参考一先前的或是一后来的I画面或是P画面。意即,需要分析位于序列中的一先前的I画面或是P画面,或是根据下一个I画面或是P画面的动作而编码。
以上的I-画面,P-画面或是B-画面亦可分别称作P-影格(P-frame),I-影格(I-frame)与B-影格(B-frame)。
所有这些画面,可被分成一个8×8的像素区块(8×8 pixel block),六个像素区块组成一个大区块(macro block,MB)。而含有影像数据的视频比特流即是以此大区块为单位以光栅扫瞄次序(Raster Scan Order)的方式进行编码动作。
大部份状况下,MPEG译码器会先将视频比特流读进来,再进行译码过程。如图2所示,译码过程为送入视频比特流后,依序进行一可变长度译码(Variable Length Decoding)的步骤21,一去量化(De-Quantization,DEQ)的步骤22以及一逆向分立余弦转换(InverseDiscrete Cosine Transformation)的步骤23。另外,对P-画面与B-画面而言,需要在逆向分立余弦转换步骤23后,加入一额外的动作补偿(Motion Compensation)步骤24,用以对已输出至画面缓冲器(FrameBuffer)25的前一个P画面或是I画面的像素数据进行补偿动作,待完成动作补偿步骤后,再将影像播放。由以上可知,当我们对所有的I画面、P画面或是B画面进行译码时,必须先将解压缩过的I画面与P画面预先存于内存中的画面缓冲器(frame buffer)25内,因为P画面或是B画面,需经参考存于画面缓冲器内的I画面与P画面后,才能有效的进行译码程序。同样的,解压缩过的B画面也必须存于内存中,以使播放时能获得较好的效率,而以上所述的译码过程,也是以上述的大区块为基本单位来进行译码。
在生产此一MPEG标准的译码器中,内存是耗费生产成本最大的地方,尤其目前SOC(system on chip)的趋势,影音译码所需要的内存都放置在单颗IC上。如图3所示,在此内存30中,除了必须存放上述的解压缩过的I画面、P画面与B画面于相对应的I影格缓冲区31,P-影格缓冲区32与B-影格缓冲区33外,另外为了使播放过程中不同大小的I、P与B影像与声音能够流畅与同步,还必须贮存声音比特流(Audiobitstream)与视频比特流(Video bitstream)于相对应的声音比特流缓冲区34与视频比特流缓冲区35,以使播放时,能获得声音与影像的同步动作。
所以在图3中可见到一译码器的内存中,配置有相关于所有画面数据的缓冲器,例如声音比特流缓冲区34与视频比特流缓冲区35,以及译码后尚未播放的I画面、P画面与B画面的各画面缓冲器31,32,33(此I-画面、P-画面与B-画面已根据播放先后的次序排序过),另外在此译码器中,亦配置有其它一些非关画面的数据(non-frame data),例如为了执行DVD上的屏幕立即播放功能、搜寻功能以及声音的卡拉OK功能等,亦必须将此相关于非关画面数据缓冲区36(non-frame data),同时设置于同一内存30中,以使上述各项功能所采用的规格能兼容于此一译码器中。
如图3所示,在此内存中,该相关于所有画面数据的缓冲器占据了大部份,而非关画面数据的缓冲器则仅占有少数空间。若将所有影像数据与非关画面数据的缓冲器,同时送入内存时,常造成内存空间不足,而无法有效进行译码与播放动作,或使用者必须增加额外的内存使整体方案成本增加。
所以,如何解决内存空间的不足,为研发影像译码器的研发人员,最常遇到的难题。在过去的先前技术中,研发人员大都以减少画面数据缓冲器的空间来解决内存不足的难题。例如,有些研发人员就尝试以一复杂的数据编码方式(complex data code),去执行无损耗数据压缩方法(lossless compression),将已解压缩的I画面、P画面与B画面进行某一程度的压缩后,再贮存于内存中,以减少画面数据缓冲器占据内存的空间。此种方法虽然维持了画面的品质,但是却需耗费大量成本的数学逻辑运算才得以解决内存空间的不足的问题。另外,亦有些研发者,致力于以较简单的数学逻辑运算,但属于损耗数据压缩的方法(non-losslesscompression)去解决同样的问题,但以上种种技术,皆无法克服画面品质不良的问题。又或者,亦有其它的研发人员宣称可以用一显着减少画面数据缓冲器但却无法做动作补偿预测的方法来改善内存空间不足的问题。
所以,本发明为解决上述的问题,在不影响画面品质与无须耗费大量成本的数学逻辑运算的前提下,提出“一种影像译码的方法与装置”,以解决内存不足的问题。
根据上述构想,此种影像译码方法,用于译码一内存(memory)中的多笔待译码数字影像数据,该方法包含自该内存中的该多笔数字影像数据中,提取一B影格数据(B-frame data)与一相对于该B影格数据的一参考影格数据(reference frame data),其中该B影格数据可同时包含有一第一图场数据(first field data)与一第二图场数据(secondfield data)或两图场其中之一;参考该参考影格数据,并对该B影格数据的该第一图场数据进行译码,进而获得一第一图场译码数据,并存回该内存中;自该内存中读出该第一图场译码数据与该参考影格数据后,重新译码B影格一次,以进行第二图场数据译码,此时第二图场译码数据覆盖第一图场译码数据。
其中更佳的是,该多笔待译码数字影像是由一I画面、一P画面与一B画面所组成。
其中更佳的是,该第一图场数据与该第二图场数据,是分别选自于一上部图场(top field)与一下部图场(bottom field)。
其中更佳的是,该参考影格数据是为一影格像素数据(frame pixeldata)。
其中更佳的是,在参考该参考影格数据之前,更包括一修正步骤,用于对该参考影格数据进行修正,使其最终的B影格数据只含单一图场。
其中更佳的是,在对该B影格作第一次译码,可进一步获得一相对于该第一图场的该第一图场译码数据。
其中更佳的是,在对B影格作第二次译码,可进一步获得一相对于第二图场的该第二图场译码数据。
其中更佳的是,该第一图场或第二图场译码数据贮存在该内存中的空间,相较于该参考影格数据贮存在该内存的空间,是为该参考影格数据贮存在该内存的空间的二分之一。
其中更佳的是,本案的影像译码方法适用于译码一32下拉影像(32 pulldown picture)。
其中更佳的是,该B影格数据是由该第一图场数据、该第二图场数据与重解第一图场数据所得的一第三图场数据所组成。
其中更佳的是,第一次B影格译码获得第一图场数据。
其中更佳的是,第二次B影格译码,获得第二图场数据。
其中更佳的是,第三次B影格译码获得第一图场数据,所有三次译码所需内存只有参考影格的二分的一。
其中更佳的是,其中该参考影格数据是选自于一已解压缩的I影格数据与一已解压缩的P影格数据,两者其中之一。
其中更佳的是,该I影格数据与该P影格数据是为一I影格像素数据(I frame pixel data)与一P影格像素数据(P frame pixel data)。
其中更佳的是,该B影格数据是选自于为一16×8影像区块与一16×16影像区块其中之一。
其中更佳的是,该参考影格数据选自于一16×8影像区块与一16×16影像区块其中之一。
本发明的另一重要目的为提供一种影像译码系统,用以对一内存内的多笔待译码数字影像进行译码处理。
根据上述构想,该译码系统包含一B影格数据,为一B画面的数字影像内容,其中该B影格数据同时包含有一第一图场数据(first fielddata)与一第二图场数据(second field data)或者只含其中一个图场数据;一对应于该第一图场数据的参考影格数据,选自于该内存内的该多笔待译码数字影像之中;一修正装置,用以修正该参考影格数据,以使其可作为该单一图场B影格数据参考用;一译码单元,用于参考修正后的该参考影格数据与该B影格数据后,以进一步对该第一图场数据进行译码,以获得一第一图场译码数据;一影像重整单元,用以重整该参考影格数据与该第一图场译码数据;一内存,用于贮存该多笔数字影像、该第一图场译码数据与该参考影格数据;一播放控制器,用于控制与读出该第一图场译码数据与该参考影格数据,以使该影像译码系统再对该第二图场进行译码。
本发明的再一重要目的为提供一种影像译码方法,是用于一译码器用于控制与整合多笔数字影像数据(a plurality of picture data)。
根据上述构想该影像译码方法包含提供一B影格数据并自该多笔数字影像数据中,提取一参考影格数据,以使该译码器开始运作,其中该B影格数据同时包含有一第一图场数据与一第二图场数据或单一图场;参考并修正该参考影格数据,以使该译码器对该第一图场数据进行译码,进而获得一第一图场译码数据;重整该第一图场译码数据与该参考影格数据,以使该译码器暂存与读出该第一图场译码数据与该参考影格数据,以进一步使该译码器对该B影格数据译码。
首先,提供一B影格数据(B frame data)41,并从一内存47中的该多笔数字影像数据40中,提取一相对于该B-影格数据的一参考影格数据(reference frame data)42,其中该B-影格数据41包含有一第一图场数据(first field data)411。接着通过参考参考影格数据42之后,并对B影格数据41中的第一图场数据411进行译码处理,进而获得一第一图场译码数据46。之后经重整第一图场译码数据46与参考影格数据42,使其暂存于内存47中。接着自内存47中读出第一图场译码数据46与参考影格数据42,并继续对多笔数字影像数据进行译码,直到多笔数字影像数据40中的B画面完全被译码为止。
另外,亦可见于图4中的译码系统包含有一修正装置43,用以修正该参考影格数据,使其修正后的格式可作为译码B影格数据时参考用,一译码单元44,用于参考修正后的参考影格数据42与B影格数据41后,进一步对B影格数据41中的第一图场数据411进行译码,以获得一第一图场译码数据46,一影像重整单元45,用以重整参考影格数据42与第一图场译码数据46,一内存47,用于贮存该多笔待译码数字影像40、第一图场译码数据46与参考影格数据42,另外包含有一播放控制器48,用于控制与读出该第一图场译码数据46与该参考影格数据42,以使该影像译码系统进行影像播放。
以下为进一步说明本发明的影像译码方法施用于本发明的影像译码系统时的特色。
其一,当含有已经压缩的I画面、P画面与B画面等多笔待译码数字影像数据40进入本影像译码系统时,所传入的I画面与P画面会先经过本发明的影像译码系统进行一解压缩程序,将解压缩后的I画面与P画面暂存于内存47中。而本发明的最重要概念是在于当需要影像播放之前,才对B画面予以进行译码处理。所以当一笔B画面在播放前,本发明的译码系统会先译码此一笔B图场画面,再去提取内存47中相对于该笔B图场译码时所需的I画面与P画面来进行上述的译码步骤。
其二,本发明不同于传统的译码程序,本发明提供修正装置43用以修正该参考影格数据42,使其修正后的格式可作为译码B影格单一图场数据时参考用。
其三,本发明的另一重要特征在于每次仅对单一图场数据,例如上述的第一图场数据进行译码,第二次译码第二图场覆盖第一图场,同时间只记录单一图场数据,如此一来得以耗费较少的内存空间,且相比于经传统译码方法后的B画面、I画面或P画面占据内存空间减少达二分之一之多。
以上的特征,更可由下列的实施例获得证明。
请参照图4与图5,图5为本发明的译码方法的图场数据操作示意图。如图5(a)与图5(c)所示,该B影格数据41是由影格像素数据(framepixel data)所构成,并可进一步表示成一16×16影像区块51,或如图5(b)与图5(d)所示,该B影格数据41亦可进一步被表示成一16×8影像区块52以进行译码。其中该影像区块51是由一上部图场(top field)511(影像区块51的实线部份),与一下部图场(bottom field)512(影像区块51的虚线部份)所组成。或是如图5(b)与图5(d)所示,该影像区块52仅由一单一图场(single field)组成。
另外,如图5(a)与图5(b)所示,该多笔待译码数字影像数据40中的I画面或P画面,亦为影格像素数据所构成,可进一步被表示成一16×16影像区块53。如图5(c)与图5(d)所示,该多笔画面数据中的I画面或P画面亦可被表示成一16×8影像区块54。其中该影像区块53,亦为一上部图场531(影像区块53的实线部份)与一下部图场532(影像区块53的虚线部份)所组成,而图5(c)与图5(d)所示的影像区块54是为一单一图场数据(single field)。
而本发明是利用在B画面内容播放前,才对B画面进行译码,而且不论B影格为单一图场或同时含有两个图场,均只译码单一图场数据并储存,如图5(a)至图5(d)所示的不同译码方法,是为了对B画面译码时,因所因应的画面型态、画面预测与译码时逆向分立余弦转换步骤与动作补偿步骤的不同需求而发展的本发明的译码方法。
参照图4与图5,如图5(a)与图5(c)所示,当B画面为一影格数据(frame picture),且需完成该上部图场511与该下部图场512所示的活动补偿时,先进行逆向分立余弦转换步骤(IDCT)的译码过程后,再挑选上部图场511或该下部图场512其中任一个作为一第一图场数据411。其后,再由内存47中的该多笔待译码数字影像数据中,提取一对应于B影格数据41的上部图场511或下部图场512以作为一参考影格数据42,并经修正装置43修正格式后,以使其作为该B-影格数据译码时参考之用,其中此参考影格数据42是为已先经解压缩,并预先存于内存47的I画面或P画面,接着此译码器的译码单元44会参考该参考影格数据42(为I画面数据或P画面数据的上部图场531或下部图场532)的数据进行动作补偿,并对该第一图场数据411进行译码,进而获得一相对于该参考影格数据1/2大小的一第一图场译码数据46,再经影像重整单元45重整第一图场译码数据46与参考画面数据42后,使其暂存于内存47中,再由播放控制器48读出第一图场译码数据46,以进行影像播放。当然,剩余的另一半的上部图场511或下部图场512则作为一第二图场数据,必须待第一图场译码数据46与参考画面数据42读出与播放后,再重复上述步骤以完成影像译码过程,直到译码器中所有的B画面完全被译码与播放为止。
而图5(b)所示与图5(d)所示,不同之处在于某些B影格数据41只含单一图场,完整的影格必须由二张B影格组合而成,所以只需进行单一图场的活动补偿译码。
由上述结果可知,当I画面、P画面与B画面个别皆含有一上部图场(top field)与一下部图场(bottom field)在其内时,需经两次译码动作,但是每一次存入内存单元中的第一图场译码数据46或是第二图场译码数据则一直维持在16×8的影像区块大小,使所获得的16×8的第一图场译码数据46存于内存47时,比较于已知技术则仅占据原内存空间的二分之一。同理,如图5(b)与图5(d)所示,只要利用本发明的一次只解一图场数据的方式,可使第一图场译码数据46维持在16×8的影像区块大小,当存于内存单元时,比较于已知技术则仅占据原内存空间的二分之一,由于每次只对单一图场作译码,所以对含有上下两个图场的B影格必须重复译码,第一次获得第一图场,第二次获得第二图场。
另外,本发明所提出的影像译码方法与影像译码系统亦可操作于符合MPEG-2标准的电影或影像在播放时采用32下拉式影像(32 pulldownpicture)时的译码播放方式。在一32下拉式影像中的B影格数据由一第一图场数据、一第二图场数据与重解第一图场数据所得的一第三图场数据所组成。在利用本发明所提出的译码方法去解此含有三个图场数据的B影格数据时,则需在读出第一图场译码数据与该参考影格数据后,再对该第二图场数据进行译码。经译码单元44译码后,可进一步获得一相对于该第二图场的该第二图场译码数据,其后,第二图场译码数据可用以进一步供给暂存于内存单元47中,待该第二图场数据读出后,再对第一图场译码数据进行重新译码,以进一步获得一相对于该第一图场的该第三图场译码数据,再将该第三图场译码数据进一步读出,直至该多笔数字影像数据中的B画面完全被译码为止。
参见图6,运用本发明的译码方法与装置,可使译码后的译码数据46(不论是第一图场译码数据,第二图场译码数据或是第三图场译码数据)相较于已知技术(如图3所示),仅需占有原有内存空间的二分之一(如图6中61所示),成功的降低了对内存的需求,使内存多出了自由空间62,且仅稍加修正活动补偿步骤与逆向分立余弦转换步骤的运作流向与只需译码器二次至三次的译码运算,最重要的是不会影响到影像的品质,成功的降低了对内存的需求。
当然本发明可由此领域的技术人员进行一些相应的修改,然而皆不脱离本发明权利要求所界定的保护范围。
权利要求
1.一种影像译码方法,用于译码一内存中的多笔待译码数字影像数据,该方法包含从该内存中的所述多笔数字影像数据中,提取一B影格数据与一相对于该B影格数据的一参考影格数据;参考所述参考影格数据,并对所述B影格数据的一第一图场数据进行译码,进而获得一第一图场译码数据;以所述第一图场译码数据与所述参考影格数据,重新译码B影格,进行一第二图场数据译码,进而获得一第二图场译码数据,此时该第二图场译码数据覆盖该第一图场译码数据。
2.如权利要求1所述的影像译码方法,其中所述的多笔待译码数字影像由一I画面、一P画面与一B画面所组成。
3.如权利要求1所述的影像译码方法,其中所述的第一图场数据与所述第二图场数据,分别选自于一上部图场与一下部图场。
4.如权利要求1所述的影像译码方法,其中所述参考影格数据为一影格像素数据。
5.如权利要求1所述的影像译码方法,其中在参考所述参考影格数据之前,还包括一修正步骤,用以对所述参考影格数据进行修正,以使其适合供给所述B影格数据参考用。
6.如权利要求1所述的影像译码方法,其中所述第二图场译码数据贮存于所述内存中的空间,相较于所述参考影格数据贮存于所述内存的空间,其为所述参考影格数据贮存于所述内存的空间的二分之一。
7.如权利要求1所述的影像译码方法,其中所述第一图场译码数据贮存于该内存中的空间,相较于所述参考影格数据贮存于所述内存的空间,是为所述参考影格数据贮存于所述内存的空间的二分之一。
8.如权利要求1所述的影像译码方法应用于译码一32下拉影像,其中所述B影格数据是由所述第一图场数据、所述第二图场数据与重解所述第一图场数据所得的一第三图场数据所组成;所述第二图场译码数据暂存于该内存,以供给进一步读出;所述第二图场译码数据贮存于该内存中的空间,相较于所述参考影格数据贮存于该内存的空间,为所述参考影格数据贮存于该内存的空间的二分之一;在读出所述第二图场译码数据与所述参考影格数据后,需再对所述第一图场数据再次进行译码,以进一步获得一相对于所述第一图场的所述第三图场译码数据,用于暂存于该内存,以供给进一步读出用;以及所述第三图场译码数据贮存于该内存中的空间,相较于所述参考影格数据贮存于所述内存的空间,为所述参考影格数据贮存于所述内存的空间的二分之一。
9.如权利要求1所述的影像译码方法,其中所述参考影格数据选自于一已解压缩的I影格数据与一已解压缩的P影格数据,两者其中之一;以及该I影格数据与该P影格数据为一I影格像素数据与一P影格像素数据。
10.如权利要求1所述的影像译码方法,其中所述B影格数据选自于为一16×8影像区块与一16×16影像区块其中之一。
11.申权利要求1所述的影像译码方法,其中所述参考影格数据选自于一16×8影像区块与一16×16影像区块其中之一。
12.一影像译码系统,用以对一内存内的多笔待译码数字影像进行译码处理,该译码系统包含一B影格数据,其为一B画面的数字影像内容,其中该B影格数据包含有一第一图场数据与一第二图场数据;一对应于该第一图场数据的参考影格数据,其选自于所述内存内的所述多笔待译码数字影像之中;一修正装置,用以修正所述参考影格数据,以使其可作为所述B影格数据参考用;一译码单元,用于参考修正后的所述参考影格数据与所述B影格数据后,以进一步对所述第一图场数据进行译码,以获得一第一图场译码数据;一影像重整单元,用以重整所述参考影格数据与所述第一图场译码数据;一内存,用于贮存所述多笔数字影像、所述第一图场译码数据与所述参考影格数据;一播放控制器,用于控制与读出所述第一图场译码数据与所述参考影格数据,以使所述影像译码系统再对所述第二图场进行译码。
13.如权利要求12所述的影像译码系统,其中在对所述同一B影格的第二图场数据进行译码后,可进一步获得一相对于所述第二图场的所述第二图场译码数据;而所述第二图场译码数据贮存于所述内存中的空间与第一图场译码数据相同,相较于所述参考影格数据贮存于所述内存的空间,其为所述参考影格数据贮存于所述内存的空间的二分之一。
14.如权利要求12所述的影像译码系统应用于译码一32下拉影像;其中,该32下拉影像为所述B-影格数据,是由所述第一图场数据、所述第二图场数据与重解第一图场数据所得的一第三图场数据所组成;且在封厮述第二图场数据进行译码后,可进一步获得一相对于所述第二图场的所述第二图场译码数据。
15.如权利要求14所述的影像译码系统,其中所述第二图场译码数据贮存于所述内存中的空间与第一图场译码数据相同,相较于所述参考影格数据贮存于该内存的空间,其为所述参考影格数据贮存于所述内存的空间的二分之一。
16.如权利要求14所述的影像译码系统,其中在读出所述第二图场译码数据与所述参考影格数据后,需再对所述第一图场数据进行译码,以进一步获得一相对于所述第一图场的所述第三图场译码数据,使其暂存于所述内存,以供给进一步读出用,其中所述第三图场译码数据贮存于所述内存中的空间与第一图场译码数据相同,相较于所述参考影格数据贮存于所述内存的空间,其为所述参考影格数据贮存于所述内存的空间的二分之
17.如权利要求12所述的影像译码系统,其中所述参考影格数据选自于一I影格数据与一P影格像素数据两者其中之一。
18.一种影像译码方法,其用于一译码器用以控制与整合多笔数字影像数据,包含提供一B影格数据并从所述多笔数字影像数据中,提取一参考影格数据,以使所述译码器开始运作,其中所述B影格数据包含有一第一图场数据;参考并修正所述参考影格数据,以使所述译码器对所述第一图场数据进行译码,进而获得一第一图场译码数据;重整所述第一图场译码数据与所述参考影格数据,以使所述译码器暂存与读出所述第一图场译码数据与所述参考影格数据,以进一步使所述译码器对所述B影格数据译码。
全文摘要
本发明提供一种影像译码方法,可适用于译码一内存中的多笔待译码数字影像数据,该方法包含步骤从该内存中的该多笔待译码数字影像数据中,提取一B影格数据(Bframe data)与一相对于该B影格数据的一参考影格数据(reference frame data),其中该B影格数据包含有一第一图场数据(first field data)与一第二图场数据(second field data);参考该参考影格数据,并对该B影格数据的该第一图场数据进行译码,进而获得一第一图场译码数据,并存回该内存中;从该内存中读出该第一图场译码数据与该参考影格数据后,重复解得B影格并对该第二图场数据进行译码,第二图场使用与第一图场相同的内存空间,故内存使用量减少一半。
文档编号H04N7/50GK1402553SQ0112399
公开日2003年3月12日 申请日期2001年8月10日 优先权日2001年8月10日
发明者王继辉 申请人:华邦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1