首页 / 专利库 / 图形技术 / 图像互换格式 / 一种GIF文件在数字电视系统中的处理方法和装置

一种GIF文件在数字电视系统中的处理方法和装置

阅读:1017发布:2020-06-16

专利汇可以提供一种GIF文件在数字电视系统中的处理方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种GIF文件在 数字电视 系统中的处理方法和装置。处理方法包括前端处理方法和终端处理方法。前端处理方法包括:对GIF文件进行解码,得到RGB图像 帧 和RGB图像帧 像素 点的透明信息;根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理;将进行了RGB值调整后的RGB图像帧转换为YUV图像帧;按照预设的 视频编码 标准对YUV图像帧进行视频编码得到视频数据;发送所述视频数据。本发明公开的装置包括前端处理系统和终端处理装置。本发明所公开的处理方法和装置节省了数字电视机顶盒CPU资源,进而可以使用高帧率和大尺寸图像的GIF文件,并且在终端显示带有透明效果的GIF文件 动态图像 。,下面是一种GIF文件在数字电视系统中的处理方法和装置专利的具体信息内容。

1.一种GIF文件在数字电视系统中的终端处理方法,其特征在于,包括:
接收视频数据,所述视频数据是通过以下方式处理得到:
图像互换格式GIF文件进行解码,得到RGB图像和RGB图像帧像素点的透明信息;
根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理,具体包括:若RGB图像帧像素点的透明信息为透明,则该像素点的RGB值调整为(255,255,255);否则,将该像素点的RGB值调整为(R/2,G/2,B/2);
将进行了RGB值调整后的RGB图像帧转换为YUV图像帧;
按照预设的视频编码标准对YUV图像帧进行视频编码得到视频数据;
按照所述视频编码标准对应的解码标准对所述视频数据进行解码得到YUV图像帧;
将YUV图像帧转换为RGB图像帧;
根据所述RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值,具体包括:若所述RGB图像帧像素点的RGB值为(R>X,G>X,B>X),则该像素点的透明信息为全透明,X为区别透明与不透明的限值,取值为128至255之间的一个整数值,否则,像素点的透明信息为全不透明,并按照以下方式调整像素点的RGB值:将RGB值的三个分量分别进行乘2处理,将乘2处理后的分量值与255进行比较,并将其中的较小者作为相应分量的调整后的值;
将所述RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与RGB图像帧像素点的透明信息进行ALPHA混合,并输出显示。
2.一种GIF文件在数字电视系统中的终端处理装置,其特征在于,包括:
视频数据接收单元,用于接收视频数据,所述视频数据通过以下方式处理得到:对图像互换格式GIF文件进行解码,得到RGB图像帧和RGB图像帧像素点的透明信息;
根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理,具体包括:若RGB图像帧像素点的透明信息为透明,则该像素点的RGB值调整为(255,255,255);否则,将该像素点的RGB值调整为(R/2,G/2,B/2);
将进行了RGB值调整后的RGB图像帧转换为YUV图像帧;
按照预设的视频编码标准对YUV图像帧进行视频编码得到视频数据;
视频解码单元,用于按照视频数据编码标准对应的解码标准对视频数据进行解码得到YUV图像帧;
YUV至RGB转换单元,用于将YUV图像帧转换为RGB图像帧;
透明信息获取及RGB值调整单元,根据所述RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值,具体用于:
若所述RGB图像帧像素点的RGB值为(R>X,G>X,B>X),则该像素点的透明信息为全透明,X为区别透明与不透明的门限值,取值为128至255之间的一个整数值,否则,像素点的透明信息为全不透明,并按照以下方式调整像素点的RGB值:将RGB值的三个分量分别进行乘2处理,将乘2处理后的分量值与255进行比较,并将其中的较小者作为相应分量的调整后的值;混合输出显示单元,用于将所述RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与RGB图像帧像素点的透明信息进行ALPHA混合,并输出显示。

说明书全文

一种GIF文件在数字电视系统中的处理方法和装置

技术领域

[0001] 本发明涉及数字电视技术领域,特别涉及一种GIF文件在数字电视系统中的处理方法和装置。

背景技术

[0002] 随着数字电视使用的推广和数字电视技术的发展,数字电视用户对收看的画面效果提出了更高的要求,例如,希望看到嵌入动态图像的超文本标记语言(Hyper Text Mark-up Language,HTML)页面。HTML页面允许嵌入不同数据格式的动态图像,这些动态图像不仅生动,而且透明背景效果的应用使得动态效果丰富多彩。在各种动态图像格式中,图像互换格式Graphics Interchange Format,GIF)格式是一种被广泛使用的动态图像格式。
[0003] 目前数字电视系统处理GIF文件通常的做法是通过机顶盒的中央处理器(Central Processing Unit,CPU)对GIF文件进行解码,但是这种解码属于软解码,需要消耗大量的CPU资源,系统负荷高,尤其当GIF文件率较高或图像尺寸较大时,会导致机顶盒CPU有限的资源不能满足GIF文件中图像的实时解码,可能会出现显示时动画效果不流畅的现象,用户观看时会感受到画面明显的跳跃和停顿感。因此,现有的数字电视HTML页面中一般不支持高帧率、大尺寸图像的GIF文件,或是通过降低帧率、减小图像尺寸的方法显示GIF文件,但是这些解决方法要么不能使用GIF文件,要么降低了GIF文件图像的品质和动画的效果,使得GIF文件动态图像在数字电视系统中的应用和发展受到限制。

发明内容

[0004] 有鉴于此,本发明的目的在于提供一种GIF文件在数字电视系统中的处理方法和装置,使得在终端能够实时显示高帧率、大尺寸图像的GIF文件,并且显示的画面带有透明效果。
[0005] 本发明提供一种GIF文件在数字电视系统中的前端处理方法,包括:
[0006] 对图像互换格式GIF文件进行解码,得到RGB图像帧和RGB图像帧像素点的透明信息;
[0007] 根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理;
[0008] 将进行了RGB值调整后的RGB图像帧转换为YUV图像帧;
[0009] 按照预设的视频编码标准对YUV图像帧进行视频编码得到视频数据;
[0010] 发送所述视频数据。
[0011] 优选地,所述根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,具体包括:
[0012] 若RGB图像帧像素点的透明信息为透明,则该像素点的RGB值调整为[0013] (255,255,255);
[0014] 否则,将该像素点的RGB值调整为(R/2,G/2,B/2)。
[0015] 优选地,所述将进行了RGB值调整后的RGB图像帧转换为YUV图像帧之前还包括:
[0016] 根据预设的视频编码标准对进行了RGB值调整后的RGB图像帧的大小进行调整。
[0017] 优选地,所述预设的视频编码标准为动态图像专家组MPEG-2视频编码标准或H.264视频编码标准,所述根据预设的视频编码标准对所述进行了RGB值调整后的RGB图像帧的大小进行调整,包括:将所述进行了RGB值调整后的RGB图像帧的宽高扩展至能被16像素整除。
[0018] 一种GIF文件在数字电视系统中的终端处理方法,包括:
[0019] 接收前端按照权利要求1所述的方法发送的视频数据;
[0020] 按照所述视频编码标准对应的解码标准对所述视频数据进行解码得到YUV图像帧;
[0021] 将YUV图像帧转换为RGB图像帧;
[0022] 根据所述RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值;
[0023] 将所述RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与RGB图像帧像素点的透明信息进行ALPHA混合,并输出显示。
[0024] 优选地,所述根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,具体包括:若RGB图像帧像素点的透明信息为透明,则该像素点的RGB值调整为(255,255,255);否则,将该像素点的RGB值调整为(R/2,G/2,B/2);
[0025] 所述根据所述RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值,包括:
[0026] 若所述RGB图像帧像素点的RGB值为(R>X,G>X,B>X),则该像素点的透明信息为全透明,X为区别透明与不透明的限值,取值为128至255之间的一个整数值;
[0027] 否则,像素点的透明信息为全不透明,并按照以下方式调整像素点的RGB值:将RGB值的三个分量分别进行乘2处理,将乘2处理后的分量值与255进行比较,并将其中的较小者作为相应分量的调整后的值。
[0028] 一种GIF文件在数字电视系统中的前端处理装置,包括:
[0029] GIF文件解码单元,用于对GIF文件进行解码,得到RGB图像帧和RGB图像帧像素点的透明信息;
[0030] RGB值调整单元,用于根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理;
[0031] RGB至YUV转换单元,用于将进行了RGB值调整后的RGB图像帧转换为YUV图像帧;
[0032] 视频编码单元,用于按照预设的视频编码标准对YUV图像帧进行视频编码得到视频数据;
[0033] 视频数据发送单元,用于发送所述视频数据。
[0034] 优选地,所述RGB值调整单元,根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,具体用于:
[0035] 若RGB图像帧像素点的透明信息为透明,则该像素点的RGB值调整为(255,255,255);
[0036] 否则,将该像素点的RGB值调整为(R/2,G/2,B/2)。
[0037] 优选地,所述RGB至YUV转换单元,进一步包括:RGB帧大小调整单元,用于根据预设的视频编码标准对进行了RGB值调整后的RGB图像帧的大小进行调整;
[0038] 所述RGB至YUV转换单元,用于将所述大小调整后的RGB图像帧转换为YUV图像帧。
[0039] 优选地,所述预设的视频编码标准为动态图像专家组MPEG-2视频编码标准或H.264视频编码标准,所述RGB帧大小调整单元,用于将所述进行了RGB值调整后的RGB图像帧的宽高扩展至能被16像素整除。
[0040] 一种GIF文件在数字电视系统中的终端处理装置,包括:
[0041] 视频数据接收单元,用于接收前端按照权利要求7所述的装置发送的视频数据;
[0042] 视频解码单元,用于按照视频数据编码标准对应的解码标准对视频数据进行解码得到YUV图像帧;
[0043] YUV至RGB转换单元,用于将YUV图像帧转换为RGB图像帧;
[0044] 透明信息获取及RGB值调整单元,根据所述RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值;
[0045] 混合输出显示单元,用于将所述RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与RGB图像帧像素点的透明信息进行ALPHA混合,并输出显示。
[0046] 优选地,所述RGB值调整单元根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,具体包括:若RGB图像帧像素点的透明信息为透明,则该像素点的RGB值调整为(255,255,255);否则,将该像素点的RGB值调整为(R/2,G/2,B/2);
[0047] 所述透明信息获取及RGB值调整单元,具体用于:
[0048] 若所述RGB图像帧像素点的RGB值为(R>X,G>X,B>X),则该像素点的透明信息为全透明,X为区别透明与不透明的门限值,取值为128至255之间的一个整数值;
[0049] 否则,像素点的透明信息为全不透明,并按照以下方式调整像素点的RGB值:将RGB值的三个分量分别进行乘2处理,将乘2处理后的分量值与255进行比较,并将其中的较小者作为相应分量的调整后的值。
[0050] 根据本申请提供的具体实施例,本申请公开了以下技术效果:
[0051] 通过在数字电视前端对GIF文件进行解码,得到RGB图像帧和RGB图像帧像素点的透明信息,通过特殊处理使RGB图像帧像素点的RGB值反映出RGB图像帧像素点的透明信息,并将包含透明信息的图像帧进行视频编码,得到视频数据,使得数字电视终端可以通过硬件解码和相应处理从视频数据中还原出RGB图像帧像素点的RGB值和对应像素点的透明信息,避免了在终端机顶盒使用CPU进行GIF文件解码,节省了机顶盒有限的CPU资源,进而可以使用高帧率和大尺寸图像的GIF文件。RGB图像帧像素点的RGB值、显示位置背景像素点的RGB值与图像帧像素点的透明信息由终端机顶盒底层系统进行ALPHA混合后输出,使显示出的GIF文件动态图像带有透明效果。因此,内容提供商可以开发内容更丰富、画面更绚丽的GIF文件,提高了用户收看到的GIF文件动态图像的画面品质,促进了多媒体数字内容在数字电视系统领域的应用附图说明
[0052] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0053] 图1为本发明前端处理方法的流程示意图;
[0054] 图2为本发明终端处理方法的流程示意图;
[0055] 图3为本发明前端处理装置的结构示意图;
[0056] 图4为本发明终端处理装置的结构示意图。

具体实施方式

[0057] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0058] 为了使本发明的上述目的、特征、和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0059] GIF是一种位图动画格式,一个GIF文件中可以存多幅彩色图像。一幅彩色图像为一个基本的图像帧,如果把GIF文件中的多幅图像帧连续地显示到屏幕上,便得到了动画效果,图像帧的帧率越高,得到的动画效果就越流畅。
[0060] 本发明实施例的前端对GIF文件的处理方法主要包括GIF文件解码、RGB图像帧像素调整与像素点的透明信息处理、RGB图像帧转YUV图像帧及视频编码等步骤。
[0061] 参考图1所示,下面对本发明实施例的前端处理方法作详细的说明。
[0062] S101)对GIF文件进行解码,得到RGB图像帧数据和RGB图像帧像素点的透明信息。
[0063] GIF文件包含文件头、应用扩展和文件尾。其中应用扩展块中包括图像控制扩展块和图像数据块。对GIF文件进行解码,可以得到图像数据块里包含的RGB图像帧。GIF文件图像帧像素点的透明信息由图形控制扩展块的图像透明标志(Transparent Color Flag)字段和透明色索引(Transparent Color Index)字段来表示。通过对GIF文件解码可以获得RGB图像帧像素点的透明信息。GIF文件图像帧像素点的透明信息由图像透明标志字段和透明色索引字段共同决定。图像透明标志字段只有1比特,GIF文件图像帧像素点的透明度有两种:全透明或全不透明。当图像透明标志为1时,透明色索引所指示的颜色为透明。
[0064] 因此,按照GIF格式标准对GIF文件进行解码,可以得到图像数据块里包含的RGB图像帧和RGB图像帧像素点的透明信息。
[0065] S102)根据所述RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理。
[0066] 在本发明的实施例中,后续步骤中需要利用数字电视系统的前端对RGB图像帧进行转换处理并进行视频编码,但转换处理和视频编码过程没有对图像帧像素点的透明信息进行保存,因此,为在终端显示出带透明效果的GIF文件动态图像,需要对RGB图像帧像素点的透明信息进行特殊处理,使终端能够获得该透明信息。针对GIF文件图像透明度的特点,即只有全透明和全不透明两种情况,前端可以根据RGB图像帧像素点的透明信息调整像素点的RGB值,使调整后的RGB值能够反映对应的像素点是否需要进行透明处理,进而终端能够通过RGB图像帧的RGB值获得像素点的透明信息。
[0067] 前端调整像素点的RGB值的具体处理的方法如下:
[0068] RGB图像帧像素点的透明信息为透明,即图像透明标志为1,则该像素点的RGB值调整为(255,255,255);
[0069] 否则,将该像素点的RGB值调整为(R/2,G/2,B/2)。
[0070] 当然,在实际应用中,除了这种方法以外,也可以采用其他方式来实现,例如,对所有透明像素点的RGB值调整为其他的值,对所有非透明像素点进行上述实施例类似的调整方法,使终端能够进行区别,这里不再一一列举。
[0071] S103)将进行了RGB值调整后的RGB图像帧转换为YUV图像帧。
[0072] 根据视频编码的要求,在进行视频编码前需要将RGB颜色空间转换为电视系统使用的YUV颜色空间,得到YUV图像帧。YUV图像帧中“Y”表示亮度,“U”和“V”表示色度。对于YUV图像帧,一个颜色图像的完整描述由亮度值Y和两个色度Cb、Cr表示。RGB到YUV的转换是按照标准定义的转换公式来实现的。
[0073] 亮度值Y,由R,G,B的加权平均得到:
[0074] Y=krR+kgG+kbB,kr、kg、kb是加权因子,由标准规定。
[0075] 色度Cb,Cr由不同的颜色差别来表示:
[0076] Cb=B-Y
[0077] Cr=R-Y
[0078] 具体实现时,将RGB图像帧转换为YUV图像帧可以由不同的算法计算出YUV值。为获得更高的转换效率,也可以通过预先制定转换表,通过RGB值查询转换表得到RGB值对应的YUV值。
[0079] 在将RGB图像帧转换为YUV图像帧的过程中,通常还需要根据RGB图像帧的延时时间控制YUV图像帧重复次数,使转换后的YUV图像帧画面的变化具有更好的连续性。
[0080] 在将RGB图像帧转换为YUV图像帧之前,可能还需要根据视频编码标准对转换前的RGB图像帧的大小进行调整,以方便视频编码。数字电视系统采用的视频编码标准可以是动态图像专家组织(Moving Pictures Experts Group)制定的MPEG-2视频编码标准。MPEG-2视频编码标准也是我国数字电视系统当前广泛使用的视频编码标准。由于MPEG2视频图像是以16*16的像素大小为单位做压缩,因此,如果图像帧的长宽不能被16像素整除,则无法得到整数个视频单位。对此,通常的处理方法是将RGB图像帧的大小进行调整,即将RGB图像帧的宽高扩展至能被16像素整除。
[0081] 除MPEG-2视频编码标准外,H.264视频编码标准也是一种被广泛使用的视频编码标准。H.264视频图像也是以16*16的像素大小为单位作压缩的,因此若预设的视频编码标准为H.264,也需要将RGB图像帧的大小进行调整,调整方法是将RGB图像帧的宽高扩展至能被16像素整除。
[0082] S104)按照预设的视频编码标准对YUV图像帧进行视频编码得到视频数据。
[0083] 在完成RGB图像帧到YUV图像帧的转换后,针对特定的视频编码标准,采用该标准的视频编码工具,产生符合该视频编码标准规定的编码视频流。若预设的视频编码标准为MPEG-2视频编码标准,则采用MPEG-2编码器将YUV图像帧进行MPEG-2视频编码,获得MPEG-2视频流。
[0084] 若预设的视频编码标准为H.264视频编码标准,则可以采用H.264编码器将YUV图像帧进行H.264视频编码,得到H.264视频流。
[0085] S105)发送所述视频数据。
[0086] 前端将采用编码标准完成编码后,将编码后的视频数据向终端发送。
[0087] 在本实施例中,终端对接收到的视频数据主要完成视频数据解码、转换YUV图像帧为RGB图像帧、RGB图像帧像素点的RGB值调整与像素点的透明信息获取,以及图像显示等。
[0088] 参见图2所示,下面对本发明实施例的终端处理方法作详细的说明。
[0089] S201)接收前端按照步骤S105)发送的视频数据。
[0090] 终端接收按照前述前端处理方法发送的包含GIF文件动态图像内容的视频数据。
[0091] S202)按照所述视频编码标准对应的解码标准对所述视频数据进行解码得到YUV图像帧。
[0092] 接收到视频数据后,对视频数据解码可以采用包含解码模块的芯片完成,即采用硬解码。硬解码的优点就是效率高,功耗低,而与之相对的是软解码,也就是用CPU进行视频数据解码。通过将GIF文件的图像帧进行特殊处理,并采用预设的视频编码标准对处理后的图像帧进行视频编码,使得终端可以对该视频数据采用硬解码,减少了对CPU资源的占用,也避免了由于CPU资源不足和不能实时解码高帧率和大尺寸图像GIF文件所导致的动态图像显示不连续。
[0093] 针对不同的视频编码标准,标准中定义了与之对应的解码标准用于解码视频数据。终端可以采用包含对应解码标准的解码模块芯片,对接收到的视频数据进行硬解码,得到YUV图像帧。对于使用MPEG-2或H.264编码标准编码的视频数据,分别使用支持MPEG-2或H.264解码的解码模块芯片对接收到的视频数据进行解码。实际上,目前已经有多种解码模块芯片同时支持MPEG-2和H.264解码。
[0094] 无论MPEG2视频编码标准,还是H.264视频编码标准,它们都属于有损编码,因此最终视频解码出来的图像帧的像素值会有一定的偏差,但这种偏差用户肉眼一般是看不出来的。
[0095] S203)将YUV图像帧转换为RGB图像帧。
[0096] 在获得解码后的YUV图像帧后,需要将YUV颜色空间转换回RGB颜色空间,获得RGB图像帧。转换的方法是S103)中转换方法的逆过程。这里不再详述。
[0097] 类似地,具体实现时,将YUV图像帧转换为RGB图像帧可以由不同的算法计算出RGB值。为获得更高的转换效率,也可以通过预先制定转换表,通过YUV值查询转换表得到YUV值对应的RGB值。
[0098] S204)根据所述RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值。
[0099] 在前端对RGB图像帧的RGB值进行了特殊处理,处理的方法是将RGB图像帧中需要全透明的像素点的RGB值调整为(255,255,255);将不需要透明的像素点的RGB值调整为(R/2,G/2,B/2),由于RGB值的数值取值范围为0到255,因此得到的RGB值为(R<128,G<128,B<128)。
[0100] 无论采用MPEG2视频编码标准或H.264视频编码标准,它们都属于有损编码,因此视频解码出来并进行色彩空间转换后的RGB图像帧的RGB值会有一定的偏差,会出现一部分像素点的RGB值介于128和255之间,即出现RGB值为(128
[0101] 终端在显示图像时是根据一个透明通道来决定该图像是否透明,透明通道通常为0至255,0为全不透明,255为全透明,介于两者之间的数值为不同程度的透明。由于GIF文件图像的透明程度只有全透明和全不透明两种,因此通过RGB图像帧的RGB值得到RGB图像帧像素点的透明信息即透明通道值只有两种:0或255。
[0102] 根据前述说明,由RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值,具体方法如下:
[0103] 若RGB图像帧像素点的RGB值为(R>X,G>X,B>X),则该像素点的透明信息为全透明,即透明通道值为255,由于该像素点无论RGB值取何值,都将为显示为透明,因此不再对RGB值做调整;
[0104] 否则,像素点的透明信息为全不透明,并按照以下方式调整像素点的RGB值:将RGB值的三个分量分别进行乘2处理,将乘2处理后的分量值与255进行比较,并将其中的较小者作为相应分量的调整后的值。之所以要进行这样的调整,是因为,虽然前端将不需要透明的像素点的RGB值调整为(R/2,G/2,B/2),但由于上述编解码误差的原因,若直接取值(R*2,G*2,B*2)调整还原,可能会出现RGB值大于255的情况。由于RGB值的取值范围为0至255,因此,若在终端出现RGB值大于255的情况,则直接取值255,即透明通道值为0,调整像素点的RGB值为(min(255,R*2),min(255,G*2),min(255,B*2)),其中min(x,y)为“取最小”函数,也即min(x,y)的取值为x与y中的较小者。
[0105] 虽然MPEG2或H.264视频编码属于有损编码,在编码和解码过程中带来了图像RGB值的偏差,但是这个偏差是在一定范围内的,经过上述处理后,使得终端能够根据RGB图像帧像素点的RGB值得到像素点的透明信息,并还原透明程度为全不透明的像素点的RGB值。
[0106] S205)将RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与RGB图像帧像素点的透明信息进行ALPHA混合,并输出显示。
[0107] ALPHA混合是一种混合源像素和目标像素的一种图像处理技术,将图像帧包含的图像、显示位置的背景与图像对应的透明信息进行ALPHA混合,使显示的图像产生透明效果。在本实施例中,RGB图像帧里包含了各像素点的RGB值和该显示位置背景像素点的RGB值,因此可以通过将RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与像素点的透明信息进行ALPHA混合,并输出显示带有透明效果的GIF文件动态图像。具体实现中,可以由机顶盒的底层系统进行图像的ALPHA混合处理,并输出到在彩色电视机或其他显示设备上显示。
[0108] 参考图3所示,该图为本申请实施例所述的GIF文件在数字电视系统中的前端处理装置。
[0109] GIF文件解码单元301对GIF文件进行解码,得到RGB图像帧和RGB图像帧像素点的透明信息。GIF文件解码单元解码GIF文件得到GIF文件中图像数据块里包含的RGB图像帧,以及图形控制扩展块所包含的图像透明标志和透明色索引。图像透明标志和透明色索引共同表示了RGB图像帧像素点的透明信息。
[0110] RGB值调整单元302根据RGB图像帧像素点的透明信息调整像素点的RGB值,其中,调整后的RGB值用于反映对应的像素点是否需要进行透明处理。RGB值调整单元具体调整的方法如下:若RGB图像帧像素点的透明信息是透明,即图像透明标志为1,则该图像帧的RGB值调整为(255,255,255);否则,将该像素点的RGB值调整为(R/2,G/2,B/2)。
[0111] RGB至YUV转换单元303将RGB值调整单元输出的RGB图像帧转换为YUV图像帧。RGB至YUV转换单元按照标准定义的转换公式来实现的,具体实现时,可以由不同的算法来计算出YUV值,或者通过预先制定的转换表,通过RGB值查转换表得到为YUV值来实现。在将RGB图像帧转换为YUV图像帧的过程中,RGB至YUV转换单元还需要根据RGB图像帧的延时时间控制YUV图像帧重复次数,使转换后的YUV图像帧画面的变化具有更好的连续性。
[0112] 在将RGB图像帧转换为YUV图像帧之前,可能还需要根据视频编码标准对转换前的RGB图像帧的大小进行调整,以方便视频编码,因此,进一步增加RGB帧大小调整单元,用于根据预设的视频编码标准对RGB值调整单元输出的RGB图像帧的大小进行调整。若预设的视频编码标准为MPEG-2,则RGB帧大小调整单元将RGB图像帧的宽高扩展至能被16像素整除。若使用H.264视频编码标准,根据H.264压缩的特点,RGB帧大小调整单元调整方法也是将RGB图像帧的宽高扩展至能被16像素整除。
[0113] 视频编码单元304按照预设的视频编码标准对YUV图像帧进行视频编码得到视频数据。视频编码单元可以采用特定的视频编码工具,产生符合该视频编码标准规定的编码流。对于MPEG-2视频编码标准,采用MPEG-2编码器将YUV图像帧进行MPEG-2视频编码,获得MPEG-2视频流。同理,对于H.264视频编码标准,则可以采用H.264编码器将YUV图像帧进行H.264视频编码,获得H.264视频流。
[0114] 视频数据发送单元305发送视频编码单元按照视频编码标准编码后的视频数据,以便终端进行接收。
[0115] 在本实施例中,数字电视系统的终端可以是数字电视机顶盒。数字电视机顶盒是一种将数字电视信号转换成模拟信号的变换设备,是使用户能够用原有的模拟电视机收看数字电视节目和高清数字电视节目。
[0116] 参见图4所示,该图为本申请实施例所述的GIF文件在数字电视系统中的终端处理装置。
[0117] 视频数据接收单元401接收前端处理装置发送的视频数据,将接收到的视频数据送入视频解码单元402。
[0118] 视频解码单元402按照视频数据编码标准对应的解码标准对视频数据进行解码得到YUV图像帧。具体实现中,视频解码单元可以为包含解码模块的芯片。由于前端对GIF文件的图像帧进行了特殊处理,并采用视频编码标准对处理后的图像帧进行视频编码,使得终端可以通过视频解码单元对该视频数据进行硬解码,避免了使用CPU对GIF文件进行解码而带来的对CPU资源的占用,以及当CPU资源不足时所导致的不能实时解码而出现的画面不连续。对于使用MPEG-2和H.264编码标准编码的视频数据,终端可以采用包含对应解码标准的解码模块芯片,对接收到的视频数据进行硬解码,得到YUV图像帧。实际上,目前已经有多种解码模块芯片同时支持MPEG-2和H.264解码。
[0119] YUV至RGB转换单元403对解码后获得的YUV图像帧进行转换,由YUV图像帧转换为RGB图像帧。具体实现时,YUV至RGB转换单元可以由不同的算法来计算RGB值,或者通过预先制定转换表,通过查转换表获得RGB值。
[0120] 透明信息获取及RGB值调整单元404根据YUV至RGB转换单元输出RGB图像帧,从RGB图像帧像素点的RGB值得到像素点的透明信息,并调整像素点的RGB值,具体用于:
[0121] 若所述RGB图像帧像素点的RGB值为(R>X,G>X,B>X),则该像素点的透明信息为全透明,X为区别透明与不透明的门限值,取值为128至255之间的一个整数值;
[0122] 否则,像素点的透明信息为全不透明,并通过以下方式调整像素点的RGB值:将RGB值的三个分量分别进行乘2处理,将乘2处理后的分量值与255进行比较,并将其中的较小者作为相应分量的调整后的值。
[0123] 得到RGB图像帧后,由于RGB图像帧里包含了各像素点的RGB值和该显示位置背景像素点的RGB值,因此混合输出显示单元405将RGB图像帧包含的像素点的RGB值、显示位置背景像素点的RGB值与RGB图像帧像素点的透明信息进行ALPHA混合,并输出显示。混合输出显示单元可以包含数字电视机顶盒的底层系统模块,该模块完成RGB图像帧、背景图像与RGB图像帧像素点的透明信息的ALPHA混合,得到带有透明效果的图像,并输出显示,呈现给用户带有透明效果的GIF文件的动态图像。
[0124] 以上对本发明所提供的一种GIF文件在数字电视系统中的处理方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈