界面处理方法及装置、电子设备转让专利

申请号 : CN201910107586.4

文献号 : CN109859258B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈嘉坤

申请人 : 网易(杭州)网络有限公司

摘要 :

本发明公开了一种界面处理方法及装置、电子设备。其中,该方法包括:获取对屏幕界面进行模糊处理后的界面模糊纹理;确定屏幕界面中待处理的屏幕区域;根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理;将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。本发明解决了相关技术中在虚化处理界面上图像时,存在无法显示界面局部模糊的图像处理的技术问题。

权利要求 :

1.一种界面处理方法,其特征在于,应用于包含屏幕界面的触控终端中,包括:获取对所述屏幕界面进行模糊处理后的界面模糊纹理;

确定所述屏幕界面中待处理的屏幕区域;

根据所述屏幕区域的区域参数,获取所述界面模糊纹理中与所述屏幕区域对应的目标模糊纹理;

将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面,所述屏幕界面上的纹理通道至少包括:alpha通道,则将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面的步骤,包括:将所述屏幕界面上的alpha通道与所述目标模糊纹理进行混合处理,以得到与所述屏幕区域对应的渲染界面,在得到与所述屏幕区域对应的渲染界面之后,所述方法还包括:若检测到所述渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将所述alpha通道与预设数值相乘,并将所述屏幕界面上的alpha通道再次与所述目标模糊纹理进行混合处理,以返回混合后的渲染界面。

2.根据权利要求1所述的方法,其特征在于,获取对所述屏幕界面进行模糊处理后的界面模糊纹理的步骤,包括:获取所述屏幕界面上的图像的帧缓冲;

对所述帧缓冲进行下采样处理;

对所述下采样处理后的图像的帧缓冲进行模糊处理;

获取模糊处理后的第一纹理图像,其中,所述第一纹理图像对应有界面模糊纹理。

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:确定所述屏幕界面的界面虚拟材质;

将与所述第一纹理图像对应的界面模糊纹理传入所述屏幕界面的界面虚拟材质中,得到初始虚化界面。

4.根据权利要求3所述的方法,其特征在于,所述区域参数包括:区域坐标和区域大小,则根据所述屏幕区域的区域参数,获取所述界面模糊纹理中与所述屏幕区域对应的目标模糊纹理的步骤,包括:根据所述屏幕区域的区域坐标和区域大小,采集所述初始虚化界面中与所述屏幕区域对应的目标虚化界面;

确定所述目标虚化界面中与所述屏幕区域对应的目标模糊纹理。

5.根据权利要求2所述的方法,其特征在于,对所述下采样处理后的图像的帧缓冲进行模糊处理的步骤,包括:在检测到下采样处理完成后,得到与所述屏幕界面上的图像对应的初始纹理图像;

确定多个采样点;

根据所述多个采样点,对所述初始纹理图像进行高斯模糊处理。

6.根据权利要求5所述的方法,其特征在于,在对所述初始纹理图像进行高斯模糊处理之后,所述方法还包括:确定在每个采样点周围的多个线性区域;

获取每个线性区域的邻近像素值以及每个线性区域的权重值;

根据所述邻近像素值和所述权重值,计算每个采样点的像素值,以完成对所述初始纹理图像的双线性采样。

7.根据权利要求2所述的方法,其特征在于,所述帧缓冲的参数中至少包括:颜色缓冲,则获取模糊处理后的第一纹理图像的步骤,包括:在对屏幕界面上的图像完成模糊处理后,输出帧缓冲;

保存所述帧缓冲的颜色缓冲,以得到所述第一纹理图像。

8.根据权利要求1所述的方法,其特征在于,将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面的步骤,还包括:在所述alpha通道为0的时候,对所述屏幕区域进行透明化处理,以实现所述屏幕区域的透明化处理;返回包含透明颜色的屏幕区域的渲染界面。

9.一种界面处理装置,其特征在于,应用于包含屏幕界面的触控终端中,包括:获取单元,用于获取对所述屏幕界面进行模糊处理后的界面模糊纹理;

确定单元,用于确定所述屏幕界面中待处理的屏幕区域;

采集单元,用于根据所述屏幕区域的区域参数,获取所述界面模糊纹理中与所述屏幕区域对应的目标模糊纹理;

混合单元,用于将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面,所述屏幕界面上的纹理通道至少包括:alpha通道,则所述混合单元包括:混合模块,用于将所述屏幕界面上的alpha通道与所述目标模糊纹理进行混合处理,以得到与所述屏幕区域对应的渲染界面;

所述界面处理装置还包括:乘积单元,用于在得到与所述屏幕区域对应的渲染界面之后,若检测到所述渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将所述alpha通道与预设数值相乘,并将所述屏幕界面上的alpha通道再次与所述目标模糊纹理进行混合处理,以返回混合后的渲染界面。

10.一种电子设备,其特征在于,包括:

处理器;以及

存储器,用于存储所述处理器的可执行指令;

其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至8中任意一项所述的界面处理方法。

11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至8中任意一项所述的界面处理方法。

说明书 :

界面处理方法及装置、电子设备

技术领域

[0001] 本发明涉及信息处理技术领域,具体而言,涉及一种界面处理方法及装置、电子设备。

背景技术

[0002] 在相关技术中,许多终端的界面上都会有虚化背景模拟毛玻璃的效果,但是对于处理界面上的图像以获得毛玻璃的图像,存在多种缺陷,例如,有的是直接使用一张预先处理虚化过的贴图,直接将该贴图与原界面图像混合,实现毛玻璃的效果,但是这种方式,只能在固定的界面中使用,不能对动态的场景界面进行虚化;另外一种是在在打开或进入界面时,根据进入界面的背景作为虚化的贴图使用,但是这种方式,也不能对动态的场景界面进行虚化,一旦有变化就会穿帮;还有一种是直接绘制一次局部虚化图像,作为贴图使用,但是这种方式,无法进行模糊处理,在一次绘制中需要进行无数次采样,会使得终端负荷加大,造成性能处理上的问题。
[0003] 针对上述的问题,目前尚未提出有效的解决方案。

发明内容

[0004] 本发明实施例提供了一种界面处理方法及装置、电子设备,以至少解决相关技术中在虚化处理界面上图像时,存在无法显示界面局部模糊的图像处理的技术问题。
[0005] 根据本发明实施例的一个方面,提供了一种界面处理方法,应用于包含屏幕界面的触控终端中,包括:获取对所述屏幕界面进行模糊处理后的界面模糊纹理;确定所述屏幕界面中待处理的屏幕区域;根据所述屏幕区域的区域参数,获取所述界面模糊纹理中与所述屏幕区域对应的目标模糊纹理;将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面。
[0006] 可选地,获取对所述屏幕界面进行模糊处理后的界面模糊纹理的步骤,包括:获取所述屏幕界面上的图像的帧缓冲;对所述帧缓冲进行下采样处理;对所述下采样处理后的图像的帧缓冲进行模糊处理;获取模糊处理后的第一纹理图像,其中,所述第一纹理图像对应有界面模糊纹理。
[0007] 可选地,所述方法还包括:确定所述屏幕界面的界面虚拟材质;将与所述第一纹理图像对应的界面模糊纹理传入所述屏幕界面的界面虚拟材质中,得到初始虚化界面。
[0008] 可选地,所述区域参数包括:区域坐标和区域大小,则根据所述屏幕区域的区域参数,获取所述界面模糊纹理中与所述屏幕区域对应的目标模糊纹理的步骤,包括:根据所述屏幕区域的区域坐标和区域大小,采集所述初始虚化界面中与所述屏幕区域对应的目标虚化界面;确定所述目标虚化界面中与所述屏幕区域对应的目标模糊纹理。
[0009] 可选地,对所述下采样处理后的图像的帧缓冲进行模糊处理的步骤,包括:在检测到下采样处理完成后,得到与所述屏幕界面上的图像对应的初始纹理图像;确定多个采样点;根据所述多个采样点,对所述初始纹理图像进行高斯模糊处理。
[0010] 可选地,在对所述初始纹理图像进行高斯模糊处理之后,所述方法还包括:确定在每个采样点周围的多个线性区域;获取每个线性区域的邻近像素值以及每个线性区域的权重值;根据所述邻近像素值和所述权重值,计算每个采样点的像素值,以完成对所述初始纹理图像的双线性采样。
[0011] 可选地,所述帧缓冲的参数中至少包括:颜色缓冲,则获取模糊处理后的第一纹理图像的步骤,包括:在对屏幕界面上的图像完成模糊处理后,输出帧缓冲;保存所述帧缓冲的颜色缓冲,以得到所述第一纹理图像。
[0012] 可选地,所述屏幕界面上的纹理通道至少包括:alpha通道,则将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面的步骤,包括:将所述屏幕界面上的alpha通道与所述目标模糊纹理进行混合处理,以得到与所述屏幕区域对应的渲染界面。
[0013] 可选地,将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面的步骤,还包括:在所述alpha通道为0的时候,对所述屏幕区域进行透明化处理,以实现所述屏幕区域的透明化处理;返回包含透明颜色的屏幕区域的渲染界面。
[0014] 可选地,在得到与所述屏幕区域对应的渲染界面之后,所述方法还包括:若检测到所述渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将所述alpha通道与预设数值相乘,并将所述屏幕界面上的alpha通道再次与所述目标模糊纹理进行混合处理,以返回混合后的渲染界面。
[0015] 根据本发明实施例的另一方面,还提供了一种界面处理装置,应用于包含屏幕界面的触控终端中,包括:获取单元,用于获取对所述屏幕界面进行模糊处理后的界面模糊纹理;确定单元,用于确定所述屏幕界面中待处理的屏幕区域;采集单元,用于根据所述屏幕区域的区域参数,获取所述界面模糊纹理中与所述屏幕区域对应的目标模糊纹理;混合单元,用于将所述目标模糊纹理和所述屏幕界面上的纹理通道进行混合处理,以得到与所述屏幕区域对应的渲染界面。
[0016] 可选地,所述获取单元包括:第一获取单元,用于获取所述屏幕界面上的图像的帧缓冲;下采样单元,用于对所述帧缓冲进行下采样处理;模糊单元,用于对所述下采样处理后的图像的帧缓冲进行模糊处理;第二获取单元,用于获取模糊处理后的第一纹理图像,其中,所述第一纹理图像对应有界面模糊纹理。
[0017] 可选地,所述界面处理装置还包括:第一确定模块,用于确定所述屏幕界面的界面虚拟材质;传入单元,用于将与所述第一纹理图像对应的界面模糊纹理传入所述屏幕界面的界面虚拟材质中,得到初始虚化界面。
[0018] 可选地,所述区域参数包括:区域坐标和区域大小,则所述采集单元包括:第一采集模块,用于根据所述屏幕区域的区域坐标和区域大小,采集所述初始虚化界面中与所述屏幕区域对应的目标虚化界面;第二确定模块,用于确定所述目标虚化界面中与所述屏幕区域对应的目标模糊纹理。
[0019] 可选地,所述模糊单元包括:第三确定模块,用于在检测到下采样处理完成后,得到与所述屏幕界面上的图像对应的初始纹理图像;第四确定模块,用于确定多个采样点;第一模糊处理模块,用于根据所述多个采样点,对所述初始纹理图像进行高斯模糊处理。
[0020] 可选地,所述界面处理装置还包括:第五确定模块,用于在对所述初始纹理图像进行高斯模糊处理之后,确定在每个采样点周围的多个线性区域;第三获取单元,用于获取每个线性区域的邻近像素值以及每个线性区域的权重值;计算单元,用于根据所述邻近像素值和所述权重值,计算每个采样点的像素值,以完成对所述初始纹理图像的双线性采样。
[0021] 可选地,所述帧缓冲的参数中至少包括:颜色缓冲,则所述第二获取单元包括:输出模块,用于在对屏幕界面上的图像完成模糊处理后,输出帧缓冲;保存模块,用于保存所述帧缓冲的颜色缓冲,以得到所述第一纹理图像。
[0022] 可选地,所述屏幕界面上的纹理通道至少包括:alpha通道,则所述混合单元包括:混合模块,用于将所述屏幕界面上的alpha通道与所述目标模糊纹理进行混合处理,以得到与所述屏幕区域对应的渲染界面。
[0023] 可选地,所述混合单元还包括:透明化单元,用于在所述alpha通道为0的时候,对所述屏幕区域进行透明化处理,以实现所述屏幕区域的透明化处理;返回单元,用于返回包含透明颜色的屏幕区域的渲染界面。
[0024] 可选地,所述界面处理装置还包括:乘积单元,用于在得到与所述屏幕区域对应的渲染界面之后,若检测到所述渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将所述alpha通道与预设数值相乘,并将所述屏幕界面上的alpha通道再次与所述目标模糊纹理进行混合处理,以返回混合后的渲染界面。
[0025] 根据本发明实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的界面处理方法。
[0026] 根据本发明实施例的另一方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述任意一项所述的界面处理方法。
[0027] 在本发明实施例中,采用获取对屏幕界面进行模糊处理后的界面模糊纹理;确定屏幕界面中待处理的屏幕区域,根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理,将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。在该实施例中,可以对整个屏幕界面进行模糊处理,得到一张界面模糊纹理,若需要对某一个区域或者多个区域进行模糊处理,就可以直接依据整张已经进行模糊处理过的图像来显示该区域对应的局部模糊的渲染界面,这样就可以实现局部模糊图像的效果,进而解决相关技术中在虚化处理界面上图像时,存在无法显示界面局部模糊的图像处理的技术问题。

附图说明

[0028] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0029] 图1是根据本发明实施例的一种可选的界面处理方法的流程图;
[0030] 图2是根据本发明实施例的另一种界面处理装置的示意图。

具体实施方式

[0031] 为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0032] 需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0033] 为便于用户理解本发明,下面对本发明下述各实施例中涉及到的术语或名词做出解释:
[0034] 下采样:Subsampled,也可以称为降采样或缩小图像,指示降分辨率缩小,即将原分辨率的帧缓冲渲染到一个分辨率降低的帧缓冲中,对于一个样值序列间隔几个样值取样一次,这样得到新序列就是原序列的下采样。
[0035] 下采样原理:对于一幅图像I尺寸为M*N,若对其进行s倍下采样,即得到(M/s)*(N/s)尺寸的得分辨率图像,这里s应该是M和N的公约数。
[0036] 帧缓冲,Framebuffer,包括颜色缓冲(color buffer),深度缓冲(depth buffer),模板缓冲(stencil buffer),可以存储于内存中,其可以将场景渲染到一个帧缓冲中,然后在屏幕界面上显示出来。
[0037] Alpha通道,可以理解为透明通道或阿尔法通道(Alpha Channel),指一张图片的透明和半透明度,可以是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中白表示不透明,黑表示透明,灰表示半透明。
[0038] 纹理,可以是指物体表面呈现凹凸不平的沟纹,同时也包括在物体的光滑表面上的彩色图案,通常我们更多地称之为花纹。
[0039] 高斯模糊,Gaussian Blur,也可以指高斯平滑,是指用于减少图像噪声以及降低细节层次。
[0040] 像素,Pixel,包括图像中的小方格,小方各都有一个明确的位置和被分配的色彩数值,小方格颜色和位置就决定该图像所呈现出来的样子。
[0041] 后处理,本发明实施例中是指在渲染完场景图像后,对场景做一些后期处理,类似图像处理,常见的有Bloom,HDR,景深模糊,抗锯齿等等。
[0042] 材质,在本发明实施例中是指表示虚拟界面或场景中各种物体的方式,即指示图像中各个物体的属性信息,在UI或者游戏场景中的物体,需要通过材质渲染出来,例如,石头的材质较为粗糙,而镜子的材质较为光滑。
[0043] 双线性采样,可以是指基于源图像新创造的像素值,由源图像位置在它附近的2*2区域4个邻近像素的值通过加权平均计算得到,双线性采样后的图像质量较高,减少像素值不连续的情况发生。
[0044] 本发明下述各实施例可以应用于各种UI界面、游戏场景、移动端开机界面、壁纸等设计中,对于具体使用的终端不做限制,优选的,可以为移动终端。相对于当前的界面设计中,存在不能动态虚化场景以及支持的图像必须是矩形等缺陷,本发明实施例,可以实现动态实时的虚化场景,得到任何局部的界面场景模糊/虚化效果,尤其是在移动端上能使用更低的性能消耗来获得局部模糊(如毛玻璃效果)的效果表现。下面对本发明各实施例进行详细说明。
[0045] 本发明下述实施例可以获得经过处理后的渲染界面,该渲染界面中会包括已经模糊处理的屏幕区域,使得界面的视觉体验效果更佳。
[0046] 根据本发明实施例,提供了一种界面处理的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0047] 图1是根据本发明实施例的一种可选的界面处理方法的流程图,应用于包含屏幕界面的触控终端中,如图1所示,该方法包括如下步骤:
[0048] 步骤S102,获取对屏幕界面进行模糊处理后的界面模糊纹理;
[0049] 步骤S104,确定屏幕界面中待处理的屏幕区域;
[0050] 步骤S106,根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理;
[0051] 步骤S108,将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。
[0052] 通过上述步骤,可以采用获取对屏幕界面进行模糊处理后的界面模糊纹理;确定屏幕界面中待处理的屏幕区域,根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理,将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。在该实施例中,可以对整个屏幕界面进行模糊处理,得到一张界面模糊纹理,若需要对某一个区域或者多个区域进行模糊处理,就可以直接依据整张已经进行模糊处理过的图像来显示该区域对应的局部模糊的渲染界面,这样就可以实现局部模糊图像的效果,进而解决相关技术中在虚化处理界面上图像时,存在无法显示界面局部模糊的图像处理的技术问题。
[0053] 下面对上述各步骤进行详细说明。
[0054] 本发明实施例中,在实现界面上的虚化处理时,重点可以实现局部/区域的场景虚化,如实现图像中部分区域的毛玻璃效果,具体方式包括如下步骤:
[0055] 第一步,对图像进行后处理、下采样处理、模糊处理。
[0056] 第二步,对上述步骤得到的帧缓冲保存作为一张纹理。
[0057] 第三步,确定需要进行虚化处理的屏幕区域的区域参数(包括屏幕空间坐标和屏幕大小),利用区域参数采样得到模糊纹理。
[0058] 第四步,利用界面贴图的方式,将模糊纹理和图像的纹理通道进行混合,得到渲染界面。
[0059] 其中,对图像进行后处理、下采样处理、模糊处理。
[0060] 本发明实施例中,会先对要虚化处理的整个界面图像进行采样和模糊处理。
[0061] 可选地,本发明实施例中会先确定要虚化处理的界面图像是哪一张,例如,用户在使用移动终端时,要实现一块区域的毛玻璃效果,这时可以先提取出当前终端界面图像,然后对提取出的图像进行后处理操作,本发明实施例中的后处理操作可以包括但不限于:Bloom,HDR,景深模糊,抗锯齿,在完成后处理操作后,会得到输出后的帧缓冲数据。
[0062] 对一张图像进行处理时,会涉及到其像素处理和透明化处理,像素处理中可以包括RGB的处理,而透明化处理可以设计到Alpha通道混合处理。
[0063] 步骤S102,获取对屏幕界面进行模糊处理后的界面模糊纹理。
[0064] 本发明实施例中会先获取到整个屏幕界面图像,然后对整个屏幕中的图像进行模糊处理。然后依据需要模糊的局部区域来确定显示时需要模糊的屏幕区域。
[0065] 作为本发明一可选地实施例,在获取对屏幕界面进行模糊处理后的界面模糊纹理的步骤,包括:获取屏幕界面上的图像的帧缓冲;对帧缓冲进行下采样处理;对下采样处理后的图像的帧缓冲进行模糊处理;获取模糊处理后的第一纹理图像,其中,第一纹理图像对应有界面模糊纹理。
[0066] 即可以在完成其他后处理操作后,对当前的帧缓冲进行一次下采样处理,通过下采样处理可以采集缩小分辨率的帧缓冲,例如,对整个界面图像或游戏场景图像完成后处理,获取整个场景图像或者界面图像的帧缓冲,然后进行一次下采样,具体下采样的倍数可以自行设定,例如,场景图像使用一次25倍的下采样,把原图像缩小到了1/25的大小,这样进行随后的模糊处理所需的处理量就下降了非常多,并且下采样会使图片像素化,合适的倍数能使得模糊取得更好的效果。
[0067] 本发明实施例中,在完成下采样处理后,可以对下采样得到的纹理进行模糊处理,可选地,对下采样处理后的图像的帧缓冲进行模糊处理的步骤,包括:在检测到下采样处理完成后,得到与屏幕界面上的图像对应的初始纹理图像;确定多个采样点;根据多个采样点,对初始纹理图像进行高斯模糊处理。
[0068] 在本发明实施例中,除了上述说明的高斯模糊处理方式,还可以通过其他模糊算法代替,对图像进行模糊处理。
[0069] 在进行模糊处理时,对模糊处理的次数不做限定,以能实现最终得到的渲染界面为优选准则,例如,需要进行两次模糊处理,例如,在第一次模糊处理时,选用5个采样点,然后进行5次横向采样和5次竖向采样分段叠加,以更少的贴图采样率来达到相同的效果;之后,进行第二高斯模糊处理(同时增加步长),以获得更好的模糊效果,在第二次模糊处理时,还可以选用5个采样点,然后进行5次横向采样和5次竖向采样分段叠加。
[0070] 通过上述实施方式,可以实现对UI图像/游戏场景/壁纸等进行后处理、下采样处理、模糊处理,得到一张模糊处理的图像,在输出时,输出得到与模糊处理图像对应的帧缓冲。
[0071] 在本发明另一可选的实施例中,对初始纹理图像进行高斯模糊处理之后,方法还包括:对模糊处理后的第一纹理图像进行双线性采样,将第一纹理图像的分辨率恢复至屏幕界面上的图像的帧缓冲的分辨率。具体的,确定在每个采样点周围的多个线性区域;获取每个线性区域的邻近像素值以及每个线性区域的权重值;根据邻近像素值和权重值,计算每个采样点的像素值。
[0072] 这样,可以对模糊处理后的图像进行一次双线性采样,经过双线性采样做一次加速版的模糊处理,使得最终得到图像不再有像素感,同时,可以恢复其分辨率,便于后期混合处理。
[0073] 对上述步骤得到的帧缓冲保存作为一张纹理。
[0074] 作为本发明另一可选的实施例,帧缓冲的参数中至少包括:颜色缓冲,则获取模糊处理后的第一纹理图像的步骤,包括:在对屏幕界面上的图像完成模糊处理后,输出帧缓冲;保存帧缓冲的颜色缓冲,以得到第一纹理图像。
[0075] 其中,输出的帧缓冲数据中除了上述的颜色缓冲,还可以包括:深度缓冲,模板缓冲,在输出时,重点保存帧缓冲的颜色缓冲,即可以将上述经过后处理、下采样、高斯模糊、双线性采样得到而图像对应的帧缓冲中的颜色缓冲保存下来,以准备在界面图像的渲染时使用。
[0076] 步骤S102,确定屏幕界面中待处理的屏幕区域。
[0077] 由于本发明实施例中需要模糊显示的可能指示整个屏幕界面上的部分区域,即屏幕区域,这时,就需要预先确定出哪些区域是需要模糊显示的。
[0078] 在屏幕界面上进行模糊显示的区域可以是通过开发人员指定,也可以是用户通过触摸操作指定,可选地,触摸操作可以是指用户在触摸屏上进行的触摸操作,其触摸的位置可以包括但不限于:虚拟按钮、虚拟物体、虚拟人物,触摸操作可以直接触摸一个按钮,例如,当前的终端界面中,往往是显示透明化的按钮,这些按钮在显示时,用户可能无法明显查看到,这样就可以通过虚化界面(如添加毛玻璃)的方式将该区域进行虚化处理,以用户手指或者其它操作介质在终端的屏幕界面上的触摸操作的位置为基准,可以确定出用户想要进行虚化处理的区域位置和区域大小。
[0079] 即可以通过接收触摸操作的位置,确定出用户想要进行虚化处理的屏幕区域,该屏幕区域的形状可以为矩形,也可以为非矩形,其形状和大小可以是自行设置或调整的。
[0080] 例如,在游戏UI的背部有部分区域需要显示模糊的部分,这时就可以先将该部分区域先划分出来。
[0081] 本发明实施例中,在实现模糊显示时,有两种方式,第一种,先进行整个屏幕界面的模糊处理,然后根据需要待处理的屏幕区域(即需要模糊显示的区域)来混合该区域的通道,实现具备模糊的效果;第二种,直接对需要模糊显示的局部区域进行模糊处理,例如,可以通过帧缓冲中的模板缓冲在模糊处理之前先标记这些局部区域的位置,再在进行模糊处理时利用early stencil(在像素着色器之前进行的模板缓冲)只对这些地方进行模糊处理,本发明实施例中重点以第一种进行说明。
[0082] 在确定要进行模糊处理/虚化处理的屏幕区域后,可以定位该区域的区域参数,例如,区域坐标、区域大小等。
[0083] 可选地,本发明实施例中待处理的屏幕区域可以为多个,即可以对一个屏幕界面中的多个屏幕区域进行模糊处理,例如,对多个屏幕区域进行模糊背景,实现毛玻璃的效果。
[0084] 作为本发明一个可选的实施,上述实施方法还包括:确定屏幕界面的界面虚拟材质;将与第一纹理图像对应的界面模糊纹理传入屏幕界面的界面虚拟材质中,得到初始虚化界面。
[0085] 在可选的实施例中,确定屏幕界面的界面虚拟材质时,可以重点获取到待处理的屏幕区域的界面虚拟材质。
[0086] 对于界面虚拟材质来说,可以是指界面图像中表现各个物体、环境的属性,例如,粗糙、光滑、平坦、凹凸、金属、木头等。例如,在要得到一个UI界面材质时,先确定UI界面/游戏场景中的物体,然后通过材质渲染出来,帧缓冲的颜色缓冲就是一个纹理,把之前得到的界面模糊纹理传入材质中(可以当作是这个材质的一个纹理属性),这个纹理和普通物体材质的漫反射纹理(颜色纹理),法线纹理等没有什么差别,从而实现模糊纹理的传入操作,得到对应的虚化界面。
[0087] 通过上述的材质,可以将上述得到的界面模糊纹理传入界面虚拟材质中,并根据屏幕区域的区域坐标,得到截面虚化部分背景的效果,并且,通过屏幕区域的区域坐标和屏幕位置,其界面位置大小也可以随时变化。
[0088] 确定需要进行虚化处理的屏幕区域的区域参数(包括屏幕空间坐标和屏幕大小),利用区域参数采样得到模糊纹理。
[0089] 步骤S106,根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理。
[0090] 可选地,区域参数包括:区域坐标和区域大小,则根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理的步骤,包括:根据屏幕区域的区域坐标和区域大小,采集初始虚化界面中与屏幕区域对应的目标虚化界面;确定目标虚化界面中与屏幕区域对应的目标模糊纹理。
[0091] 上述的区域坐标,可以是指对一个屏幕界面/待处理的图像/游戏场景建立图像坐标,划分坐标区域,进而依据图像坐标原点,确定出待处理的屏幕区域所在的区域坐标,例如,待处理的一个屏幕区域的区域坐标为(0.7,0)(0,0.3)(0.7,0.2)(0.3,0.2)。而屏幕大小可以依据区域坐标确定,对于矩形的屏幕区域可以直接依据坐标端点来确定,而对于非矩形的屏幕区域,可以通过多个测量点的坐标确定。
[0092] 即可以针对待处理的屏幕区域,采集初始虚化界面中与屏幕区域对应的目标虚化界面,该目标虚化界面的大小、范围与屏幕区域对应,进而依据目标虚化界面来确定出需要进行混合处理的目标模糊纹理。
[0093] 利用界面贴图的方式,将模糊纹理和图像的纹理通道进行混合,得到渲染界面。
[0094] 步骤S108,将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。
[0095] 该渲染界面中的局部(即待处理的屏幕区域所在的位置)是模糊的。
[0096] 该步骤S108,可以理解为通过一个纹理通道,实现模糊纹理与源图像的贴合,得到一个界面贴图,由于模糊纹理与源图像相比是经过后处理、下采样处理、模糊处理过的,因此,该模糊纹理所在的屏幕区域与源图像其他区域的界面内容相比是具有明显的差别的,让用户能更清晰的查看到经过模糊虚化处理后的图像中的屏幕区域。
[0097] 在本发明一可选的实施例中,屏幕界面上的纹理通道至少包括:alpha通道,则将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面的步骤,包括:将屏幕界面上的alpha通道与目标模糊纹理进行混合处理,以得到与屏幕区域对应的渲染界面。
[0098] 即可以根据屏幕界面上的纹理alpha通道和经过模糊处理得到的纹理进行混合处理,以得到相应的渲染界面。该渲染界面中会包括一个与屏幕区域大小、范围对应的虚化框,其它区域是原屏幕界面上的像素,例如,在一个源屏幕界面图像/游戏场景上虚化一个毛玻璃区域,除了毛玻璃区域外,其它区域与源图像是相同的,这样就可以让用户能得到局部的场景虚化效果,如得到模糊处理结果,场景的视觉体验效果更佳,且实现了动态实时的虚化场景。
[0099] 作为本发明另一可选的实施例,将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面的步骤,还包括:在alpha通道为0的时候,对屏幕区域进行透明化处理,以实现屏幕区域的透明化处理;返回包含透明颜色的屏幕区域的渲染界面。
[0100] 即可以在alpha通道为0的时候,返回完全透明的颜色,得到透明化的虚化区域。
[0101] 另一种可选地,由于在进行虚化处理,会出现虚化区域的边缘与背景颜色差距较大,出现明显的锯齿状的模糊纹理,这时就需要进行细化处理,在得到与屏幕区域对应的渲染界面之后,若检测到渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将alpha通道与预设数值相乘,并将屏幕界面上的alpha通道再次与目标模糊纹理进行混合处理,以返回混合后的渲染界面。
[0102] 即可以在混合处理后,若在界面上虚化区域的边缘部分有锯齿状的模糊纹理时,对alpha通道乘以预设数值(例如,设定预设数值为10)返回进行混合后(blend)来降低锯齿感,实现虚化的屏幕区域的边缘是平滑的,让用户在查看时的观感更好,提高用户的使用率。
[0103] 下面通过另一种可选的实施例来说明本发明。
[0104] 图2是根据本发明实施例的另一种界面处理装置的示意图,应用于包含屏幕界面的触控终端中,如图2所示,该装置可以包括:获取单元21,确定单元23,采集单元25,混合单元27,其中,
[0105] 获取单元21,用于获取对屏幕界面进行模糊处理后的界面模糊纹理;
[0106] 确定单元23,用于确定屏幕界面中待处理的屏幕区域;
[0107] 采集单元25,用于根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理;
[0108] 混合单元27,用于将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。
[0109] 上述界面处理装置,可以通过获取单元21获取对屏幕界面进行模糊处理后的界面模糊纹理,通过确定单元23确定屏幕界面中待处理的屏幕区域,通过采集单元25根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理,通过混合单元27将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。在该实施例中,可以对整个屏幕界面进行模糊处理,得到一张界面模糊纹理,若需要对某一个区域或者多个区域进行模糊处理,就可以直接依据整张已经进行模糊处理过的图像来显示该区域对应的局部模糊的渲染界面,这样就可以实现局部模糊图像的效果,进而解决相关技术中在虚化处理界面上图像时,存在无法显示界面局部模糊的图像处理的技术问题。
[0110] 可选地,获取单元包括:第一获取单元,用于在检测到对屏幕界面上的图像进行后处理完成,获取屏幕界面上的图像的帧缓冲;下采样单元,用于对帧缓冲进行下采样处理;模糊单元,用于对下采样处理后的图像的帧缓冲进行模糊处理;第二获取单元,用于获取模糊处理后的第一纹理图像,其中,第一纹理图像对应有界面模糊纹理。
[0111] 另一种可选地,界面处理装置还包括:第一确定模块,用于确定屏幕界面的界面虚拟材质;传入单元,用于将与第一纹理图像对应的界面模糊纹理传入屏幕界面的界面虚拟材质中,得到初始虚化界面。
[0112] 可选地,区域参数包括:区域坐标和区域大小,则采集单元包括:第一采集模块,用于根据屏幕区域的区域坐标和区域大小,采集初始虚化界面中与屏幕区域对应的目标虚化界面;第二确定模块,用于确定目标虚化界面中与屏幕区域对应的目标模糊纹理。
[0113] 在本发明实施例中,模糊单元包括:第三确定模块,用于在检测到下采样处理完成后,得到与屏幕界面上的图像对应的初始纹理图像;第四确定模块,用于确定多个采样点;第一模糊处理模块,用于根据多个采样点,对初始纹理图像进行高斯模糊处理。
[0114] 作为本发明一可选的实施例,界面处理装置还包括:第五确定模块,用于在对初始纹理图像进行高斯模糊处理之后,确定在每个采样点周围的多个线性区域;第三获取单元,用于获取每个线性区域的邻近像素值以及每个线性区域的权重值;计算单元,用于根据邻近像素值和权重值,计算每个采样点的像素值,以完成对初始纹理图像的双线性采样。
[0115] 另一种可选地,帧缓冲的参数中至少包括:颜色缓冲,则第二获取单元包括:输出模块,用于在对屏幕界面上的图像完成模糊处理后,输出帧缓冲;保存模块,用于保存帧缓冲的颜色缓冲,以得到第一纹理图像。
[0116] 在本发明一可选的实施例中,屏幕界面上的纹理通道至少包括:alpha通道,则混合单元包括:混合模块,用于将屏幕界面上的alpha通道与目标模糊纹理进行混合处理,以得到与屏幕区域对应的渲染界面。
[0117] 可选地,混合单元还包括:透明化单元,用于在alpha通道为0的时候,对屏幕区域进行透明化处理,以实现屏幕区域的透明化处理;返回单元,用于返回包含透明颜色的屏幕区域的渲染界面。
[0118] 另一种可选地,界面处理装置还包括:乘积单元,用于在得到与屏幕区域对应的渲染界面之后,若检测到渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将alpha通道与预设数值相乘,并将屏幕界面上的alpha通道再次与目标模糊纹理进行混合处理,以返回混合后的渲染界面。
[0119] 上述的界面处理装置还可以包括处理器和存储器,上述获取单元21,确定单元23,采集单元25,混合单元27等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
[0120] 上述处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来得到与屏幕区域对应的渲染界面。
[0121] 上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
[0122] 根据本发明实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,处理器配置为经由执行可执行指令来执行下述步骤:获取对屏幕界面进行模糊处理后的界面模糊纹理;确定屏幕界面中待处理的屏幕区域;根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理;将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。
[0123] 可选地,上述处理器的可执行指令,还包括如下步骤:获取屏幕界面上的图像的帧缓冲;对帧缓冲进行下采样处理;对下采样处理后的图像的帧缓冲进行模糊处理;获取模糊处理后的第一纹理图像,其中,第一纹理图像对应有界面模糊纹理。
[0124] 可选地,上述处理器的可执行指令,还包括如下步骤:确定屏幕界面的界面虚拟材质;将与第一纹理图像对应的界面模糊纹理传入屏幕界面的界面虚拟材质中,得到初始虚化界面。
[0125] 可选地,区域参数包括:区域坐标和区域大小,则根据屏幕区域的区域参数,上述处理器的可执行指令,还包括如下步骤:根据屏幕区域的区域坐标和区域大小,采集初始虚化界面中与屏幕区域对应的目标虚化界面;确定目标虚化界面中与屏幕区域对应的目标模糊纹理。
[0126] 可选地,上述处理器的可执行指令,还包括如下步骤:在检测到下采样处理完成后,得到与屏幕界面上的图像对应的初始纹理图像;确定多个采样点;根据多个采样点,对初始纹理图像进行高斯模糊处理。
[0127] 可选地,上述处理器的可执行指令,还包括如下步骤:在对初始纹理图像进行高斯模糊处理之后,确定在每个采样点周围的多个线性区域;获取每个线性区域的邻近像素值以及每个线性区域的权重值;根据邻近像素值和权重值,计算每个采样点的像素值,以完成对初始纹理图像的双线性采样。
[0128] 可选地,帧缓冲的参数中至少包括:颜色缓冲,上述处理器的可执行指令,还包括如下步骤:包括:在对屏幕界面上的图像完成模糊处理后,输出帧缓冲;保存帧缓冲的颜色缓冲,以得到第一纹理图像。
[0129] 可选地,屏幕界面上的纹理通道至少包括:alpha通道,上述处理器的可执行指令,还包括如下步骤:将屏幕界面上的alpha通道与目标模糊纹理进行混合处理,以得到与屏幕区域对应的渲染界面。
[0130] 可选地,上述处理器的可执行指令,还包括如下步骤:在alpha通道为0的时候,对屏幕区域进行透明化处理,以实现屏幕区域的透明化处理;返回包含透明颜色的屏幕区域的渲染界面。
[0131] 可选地,上述处理器的可执行指令,还包括如下步骤:在得到与屏幕区域对应的渲染界面之后,若检测到渲染界面上的渲染区域的边缘存在差异化的模糊纹理,将alpha通道与预设数值相乘,并将屏幕界面上的alpha通道再次与目标模糊纹理进行混合处理,以返回混合后的渲染界面。
[0132] 根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的界面处理方法。
[0133] 本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:获取对屏幕界面进行模糊处理后的界面模糊纹理;确定屏幕界面中待处理的屏幕区域;根据屏幕区域的区域参数,获取界面模糊纹理中与屏幕区域对应的目标模糊纹理;将目标模糊纹理和屏幕界面上的纹理通道进行混合处理,以得到与屏幕区域对应的渲染界面。
[0134] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0135] 在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0136] 在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0137] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0138] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0139] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0140] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。