技术领域
[0001] 本
发明属于显示终端领域,特别涉及一种屏幕菜单色彩的处理方法及装置。
背景技术
[0002] 随着电视技术的发展,电视的应用范围越来越大,用户对屏幕菜单OSD(on-screen display,屏幕菜单)色彩的要求越来越高。
现有技术中,通过在
中央处理器中对同一功能的界面储存了多种
颜色的图片,用户选择好需要显示的颜色后,在中央处理器中查找出对应颜色的图片。其
缺陷在于,由于图片的数量较多,中央处理器内存的占用量较大,导致中央处理器的运行速较慢,亟需改进。
发明内容
[0003] 本发明的主要目的在于提供一种屏幕菜单色彩的处理方法,旨在降低中央处理器的占用量,提高中央处理器的运行速度。
[0004] 为了实现发明目的,本发明提供一种屏幕菜单色彩的处理方法,包括以下步骤:
[0005] 中央处理器获取当前图像的物理模型的
顶点数据,并输出至图形处理器;
[0006] 图形处理器根据所述当前图像的物理模型的顶点数据绘制所述图像的纹理,对所述纹理
采样获得至少一个图像
片段;
[0008] 将所述图像片段混合至所述纹理内形成新的图像,并将所述新的图像光栅化处理;
[0009] 输出光栅化处理后的图像数据至
帧缓存以供显示屏显示。
[0010] 优选地,所述中央处理器获取当前图像的物理模型的顶点数据,并输出至图形处理器的同时,还包括:获取当前图像的纹理图像数据,并输出至图形处理器;
[0011] 所述对图像片段进行像素颜色处理的步骤具体为:
[0012] 根据所述纹理图像数据和预置的阿尔法值对所述图像片段进行像素颜色处理。
[0013] 优选地,所述对图像片段进行像素颜色处理的步骤具体为:
[0014] 根据预置的红颜色值、绿颜色值、蓝颜色值、阿尔法值对所述图像片段进行像素颜色处理。
[0015] 优选地,在执行所述中央处理器获取当前图像的纹理图像数据和物理模型的顶点数据,并输出至图形处理器步骤之前还包括:
[0016] 所述图形处理器创建与所述显示屏匹配的显示区域。
[0017] 优选地,所述将图像片段混合至所述纹理内形成新的图像,并将所述新的图像光栅化处理步骤具体包括:
[0018] 将所述图像片段依次映射至所述纹理内;
[0019] 将由所述纹理和所述图像片段混合形成的新的图像输出至所述显示区域;
[0020] 删除所述新的图像超出所述显示区域的部分;
[0021] 将删除后的图像光栅化处理。
[0022] 本发明还提供一种屏幕菜单色彩的处理装置,包括:
[0023] 中央处理器,用于获取当前图像的物理模型的顶点数据,并输出至图形处理器;
[0024] 图形处理器,包括:
[0025] 绘图模
块,用于根据所述当前图像的物理模型的顶点数据绘制所述图像的纹理,对所述纹理采样获得至少一个图像片段;
[0026] 像素颜色处理模块,用于对所述图像片段进行像素颜色处理;
[0027] 混合模块,用于将所述图像片段混合至所述纹理内形成新的图像,并将所述新的图像光栅化处理;
[0028] 输出模块,用于输出光栅化处理后的图像数据至帧缓存以供显示屏显示。
[0029] 优选地,所述中央处理器,还用于获取当前图像的纹理图像数据,并输出至图形处理器;
[0030] 所述像素颜色处理模块,具体用于根据所述纹理图像数据和预置的阿尔法值对所述图像片段进行像素颜色处理。
[0031] 优选地,所述像素颜色处理模块,具体用于根据预置的红颜色值、绿颜色值、蓝颜色值、阿尔法值对所述图像片段进行像素颜色处理。
[0032] 优选地,所述图形处理器还包括:
[0033] 显示区域创建模块,用于创建与所述显示屏匹配的显示区域。
[0034] 优选地,所述混合模块包括:
[0035] 映射单元,用于将所述图像片段依次映射至所述纹理内;
[0036] 输出单元,将由所述纹理和所述图像片段混合形成的新的图像输出至所述显示区域;
[0037] 删除单元,用于删除所述新的图像超出所述显示区域的部分;
[0038] 光栅化单元,用于将删除后的图像光栅化处理。。
[0039] 本发明通过一图形处理器与中央处理器连接,由中央处理器采集图像的顶点数据,并输出至图形处理器进行绘图处理;图形处理器直接对图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值
修改,将该纹理和图像片段混合形成新的图像后,对该新的图像进行光栅化处理,并将光栅化处理后的数据输出至帧缓存以供显示屏显示。因此,本发明可降低中央处理器的储存空间占用量,减小中央处理器的运算量,提高了中央处理器的运行速度。
附图说明
[0040] 图1为本发明屏幕菜单色彩的处理方法第一
实施例的流程示意图;
[0041] 图2为本发明屏幕菜单色彩的处理方法第二实施例的流程示意图;
[0042] 图3为本发明屏幕菜单色彩的处理方法第三实施例的流程示意图;
[0043] 图4为本发明屏幕菜单色彩的处理方法第四实施例的流程示意图;
[0044] 图5为图4中图形处理器混合纹理和图像片段的流程示意图;
[0045] 图6为本发明屏幕菜单色彩的处理装置一实施例的结构示意图;
[0046] 图7为本发明屏幕菜单色彩的处理装置另一实施例的结构示意图;
[0047] 图8为图7中的混合模块结构示意图。
[0048] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0049] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0050] 参照图1,图1为本发明屏幕菜单色彩的处理方法第一实施例的流程示意图。本实施例提供的屏幕菜单色彩的处理方法包括以下步骤:
[0051] 步骤S10,中央处理器获取当前图像的物理模型的顶点数据,并输出至图形处理器;
[0052] 例如,当需要对一图标进颜色处理时,中央处理器将首先获取该图标的顶点数据,然后将该顶点数据图形处理器。本实施例中该顶点数据为绘制该图标纹理对应的点的数据。
[0053] 步骤S20,图形处理器根据上述当前图像的物理模型的顶点数据绘制上述图像的纹理,对该纹理采样获得至少一个图像片段;
[0054] 步骤S30,对上述图像片段进行像素颜色处理;
[0055] 当图形处理器接收到中央处理器输出的顶点数据,通过调用OpenGL(Open Graphics Library,开放的图形程序
接口)中的API(Application Programming Interface,
应用程序编程接口)将该纹理图像数据和顶点数据输出至图形处理器,图形处理器根据该顶点数据通过OpenGL技术以及OpenGL Shader Language显卡编程技术将上述图形的纹理映射至物理模型上。例如该图标为正方形,则该顶点数据包括该四个顶点的坐标值。同时,获取至少一个上述图像的图像片段,该图像片段可以为整个图像,也可以是对该图像的纹理进行采样。然后根据对该图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值进行修改。具体地,图形处理器中包括一顶点
着色器和一片段着色器,由
顶点着色器根据该顶点数据将该图像的纹理映射至物理模型上,并对该纹理进行纹理采样,将采样后的图像片段输出至片段着色器;片段着色器接收到该图像片段后,对该图像片段的每一像素点的像素值进行修改,该像素值包括红颜色值、绿颜色值、蓝颜色值、阿尔法值。
[0056] 步骤S40,将上述图像片段混合至上述纹理内形成新的图像,并将该新的图像光栅化处理;
[0057] 步骤S50,输出光栅化处理后的图像数据至帧缓存以供显示屏显示。
[0058] 将该图像片段依次映射到上述纹理的对应
位置,从而形成新的图像,当图形处理器绘制图像片段均映射至纹理内后;然后将该新的图像光栅化处理;最后将光栅化处理后得到的图像数据输出至帧缓存中,供显示屏显示。
[0059] 本发明通过一图形处理器与中央处理器连接,由中央处理器采集图像的顶点数据,并输出至图形处理器进行绘图处理;图形处理器直接对图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值修改,将该纹理和图像片段混合形成新的图像后,对该新的图像进行光栅化处理,并将光栅化处理后的数据输出至帧缓存以供显示屏显示。因此,本发明可降低中央处理器的储存空间占用量,减小中央处理器的运算量,提高了中央处理器的运行速度。
[0060] 参照图2,图2为本发明屏幕菜单色彩的处理方法第二实施例的流程示意图。基于第一实施例,本实施例中,上述步骤S10还包括:获取当前图像的纹理图像数据,并输出至图形处理器。上述步骤S30具体为根据上述纹理图像数据和预置的阿尔法值对上述图像片段进行像素颜色处理。
[0061] 例如,当需要对当前的图像进行透明度等特效处理时,只需要由中央处理器获取当前的图像的纹理图像数据发送给图形处理器,图形处理器根据该纹理图像数据和预置的阿尔法值对上述图像片段的像素颜色进行修改即可。该纹理图像数据包括红颜色值、绿颜色值、蓝颜色值。
[0062] 参照图3,图3为本发明屏幕菜单色彩的处理方法第三实施例的流程示意图。基于第一实施例,本实施例中,上述步骤S30具体为根据预置的红颜色值、绿颜色值、蓝颜色值、阿尔法值对上述图像片段进行像素颜色处理。
[0063] 例如,当需要对当前的图像进行灰度处理时,只需要由图形处理器根据预置的红颜色值、绿颜色值、蓝颜色值、阿尔法值对上述图像片段的像素颜色进行修改即可。具体地,该预置的红颜色值、绿颜色值、蓝颜色值和阿尔法值可以是以固定的值(如一灰度值),还可以是通过一计算公式获得的变化的值,如设置渐变颜色效果,可根据时间的先后计算获得的红颜色值、绿颜色值、蓝颜色值随时间的推移逐渐增加或减小。
[0064] 应当说明的是,对该图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值进行修改的方式可根据实际需要选择,具体参照第二实施例和第三实施例。
[0065] 进一步地,参照图4,图4为本发明屏幕菜单色彩的处理方法第四实施例的流程示意图。基于上述实施例,在执行上述步骤S10之前还包括:
[0066] 步骤S60,图形处理器创建与上述显示屏匹配的显示区域。
[0067] 本实施例中,在上述OpenGL初始化时,建立显示区域,该显示区域的大小与上述显示屏的大小一致。
[0068] 参照图5,图5为图4中图形处理器混合纹理和图像片段的流程示意图。本实施例中,上述步骤S40具体包括:
[0069] 步骤S401,将上述图像片段依次映射至上述纹理内;
[0070] 步骤S402,将由纹理和图像片段混合形成的新的图像输出至上述显示区域;
[0071] 步骤S403,删除上述新的图像超出显示区域的部分;
[0072] 步骤S404,将删除后的图像光栅化处理。
[0073] 基于上述实施例,当片段着色器处理完一个图像片段后通过OpenGL技术以及OpenGL Shader Language显卡编程技术映射至上述物理模型上,当所有的图像片段映射到该物理模型后,控制输出由该纹理和图像片段形成的新的图像至上述显示区域;然后对该图像超出显示区域的部分进行剪切;最后,对剪切后的图像光栅化处理,并将处理后的数据输出至帧缓存以供显示屏进行显示。
[0074] 本发明还提供一种屏幕菜单色彩的处理装置,用于实现上述方法,参照图6,图6为本发明屏幕菜单色彩的处理装置一实施例的结构示意图。本实施例提供的屏幕菜单色彩的处理装置包括:
[0075] 中央处理器10,用于获取当前图像的物理模型的顶点数据,并输出至图形处理器;
[0076] 例如,当需要对一图标进颜色处理时,中央处理器10将首先获取该图标的顶点数据,然后将该顶点数据输出至图形处理器20。本实施例中该顶点数据为绘制该图标的纹理对应的点的数据。
[0077] 图形处理器20,包括:
[0078] 绘图模块201,图形处理器根据上述当前图像的物理模型的顶点数据绘制上述图像的纹理,对该纹理采样获得至少一个图像片段;
[0079] 像素颜色处理模块202,用于对上述图像片段进行像素颜色处理。
[0080] 当图形处理器20接收到中央处理器10输出的顶点数据,通过调用OpenGL中的API将该纹理图像数据和顶点数据输出至图形处理器,由图形处理器10中的绘图模块201根据该顶点数据通过OpenGL技术以及OpenGL Shader Language显卡编程技术将上述图形的纹理映射至物理模型上。例如该图标为正方形,则该顶点数据包括该四个顶点的坐标值。同时,该绘图模块201获取至少一个上述图像的图像片段,并将该图像片段输出至由像素颜色处理模块202,该图像片段可以为整个图像,也可以是对该图像的纹理采样。然后由像素颜色处理模块202对该图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值进行修改。
[0081] 应说明的是,上述绘图模块201为图形处理器10中的顶点着色器,像素颜色处理模块202为图形处理器10中的片段着色器。具体地,图形处理器中包括一顶点着色器和一片段着色器,由顶点着色器根据该顶点数据将该图像的纹理映射至物理模型上,并对该纹理进行纹理采样,将采样后的图像片段输出至片段着色器;片段着色器接收到该图像片段后,对该图像片段的每一像素点的像素值进行修改,该像素值包括红颜色值、绿颜色值、蓝颜色值、阿尔法值。
[0082] 混合模块203,用于将上述图像片段混合至上述纹理内形成新的图像,并将该新的图像光栅化处理;
[0083] 输出模块204,用于输出光栅化处理后的图像数据至帧缓存以供显示屏显示。
[0084] 当上述绘图模块201绘制形成上述纹理后,将其输出至混合模块203,由混合模块203将像素颜色处理模块202处理后的图像片段依次映射到上述纹理的对应位置,从而形成新的图像;当绘图模块201绘制的图像片段均映射至纹理内后,然后将该新的图像光栅化处理;最后通过输出模块204将光栅化处理后得到的图像数据输出至帧缓存中以供的显示屏显示。
[0085] 本发明通过一图形处理器20与中央处理器10连接,由中央处理器10采集图像的顶点数据,并输出至图形处理器20的绘图模块201进行绘图处理;由像素颜色处理模块202直接对图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值修改,通过混合模块203将纹理和图像片段混合形成新的图像,并对该新的图像光栅化处理,通过输出模块204光栅处理后的图像数据输出至帧缓存以供显示屏显示。因此,本发明可降低中央处理器的储存空间占用量,减小中央处理器的运算量,提高了中央处理器的运行速度。
[0086] 具体地,基于上述实施例,本实施例中,上述中央处理器10还用于获取当前图像的纹理图像数据,并输出至图形处理器20。上述像素颜色处理模块202具体用于根据上述纹理图像数据和预置的阿尔法值对上述图像片段进行像素颜色处理。
[0087] 例如,当需要对当前的图像进行透明度等特效处理时,只需要由中央处理器10获取当前的图像的纹理图像数据发送给图形处理器20,图形处理器20中的像素颜色处理模块202根据该纹理图像数据和预置的阿尔法值对上述图像片段的像素颜色进行修改即可。该纹理图像数据包括红颜色值、绿颜色值、蓝颜色值。
[0088] 具体地,基于上述实施例,本实施例中,上述像素颜色处理模块202具体用于根据预置的红颜色值、绿颜色值、蓝颜色值、阿尔法值对上述图像片段进行像素颜色处理。
[0089] 例如,当需要对当前的图像进行灰度处理时,只需要由图形处理器10中的像素颜色处理模块202根据预置的红颜色值、绿颜色值、蓝颜色值、阿尔法值对上述图像片段的像素颜色进行修改即可。具体地,该预置的红颜色值、绿颜色值、蓝颜色值和阿尔法值可以是以固定的值(如一灰度值),还可以是通过一计算公式获得的变化的值,如设置渐变颜色效果,可根据时间的先后计算获得的红颜色值、绿颜色值、蓝颜色值随时间的推移逐渐增加或减小。
[0090] 应当说明的是,对该图像片段的红颜色值、绿颜色值、蓝颜色值和阿尔法值进行修改的方式可根据实际需要选择,具体参照上述实施例。
[0091] 参照图7,图7为本发明屏幕菜单色彩的处理装置另一实施例的结构示意图。基于上述实施例,本实施例中上述图形处理器20还包括:
[0092] 显示区域创建模块205,用于创建与上述显示屏匹配的显示区域。
[0093] 本实施例中,在上述OpenGL初始化时,由显示区域创建模块205建立显示区域,该显示区域的大小与上述显示屏的大小一致。
[0094] 参照图8,图8为图7中的混合模块结构示意图。本实施例中该混合模块203包括:
[0095] 映射单元2031,用于将上述图像片段依次映射至上述纹理内;
[0096] 输出单元2032,用于当图形处理器绘制的所有图像片段均映射到上述纹理内后,将由该纹理和图像片段混合形成的新的图像输出至上述显示区域;
[0097] 删除单元2033,用于删除上述新的图像超出该显示区域的部分;
[0098] 光栅化单元2034,用于将删除后的图像光栅化处理。
[0099] 基于上述实施例,当片段着色器处理完一个图像片段后,由映射单元2031通过OpenGL技术以及OpenGL Shader Language显卡编程技术映射至上述物理模型上;由输出单元2032在所有的图像片段映射到该物理模型后,控制输出由该纹理和图像片段形成的新的图像至上述显示区域。然后通过删除单元2033判断该图像是否超出显示区域,若是,则将超出的部分进行剪切。最后,当删除单元2033处理完成后,将处理后图像输出至光栅化单元2034,该光栅化单元2034对该图像光栅化处理,并将光栅化后的数据输出至帧缓存以供显示屏进行显示。
[0100] 以上仅为本发明的优选实施例,并非因此限制本发明的
专利范围,凡是利用本发明
说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。