1.本公开涉及计算机技术领域,特别涉及一种图像处理方法、装置、电子设备及存储介质。
背景技术:
2.随着计算机图像渲染技术的发展,在电子游戏的渲染、视频特效的渲染、电影特效的渲染等广泛的应用场景中,纹理(uv)贴图是一种较为常用的渲染技术,例如,用户自拍视频中添加的魔法表情、特效挂件等,均可以采用纹理贴图的技术来实现。
3.虽然gpu(graphics processing unit,图像处理器)能够直接读取某些未经压缩的纹理贴图,但在移动端设备上如果直接加载未经压缩的纹理贴图,会导致内存消耗高、传输带宽大,从而引发设备发烫、应用卡顿等一系列性能问题。因此,通常需要对纹理贴图进行纹理压缩,以保证压缩得到的图像降低内存占用且能够被gpu读取。
4.常见的纹理压缩算法包括dxt(directx texture,directx纹理压缩)、etc(ericsson texture compression,爱立信纹理压缩)等,上述纹理压缩算法都是有损纹理压缩算法,对端解压并渲染出的纹理贴图均相较于原始的纹理贴图会带来不同程度的图像质量下降。
技术实现要素:
5.本公开提供一种图像处理方法、装置、电子设备及存储介质,以至少在保证在经过压缩前后的图像质量无损的前提下极大节约内存占用。本公开的技术方案如下:
6.根据本公开实施例的一方面,提供一种图像处理方法,包括:
7.对原始图像进行分块,得到多个图像块;
8.确定所述多个图像块中的多个目标图像块,所述目标图像块包括所述原始图像中的前景像素;
9.基于所述多个目标图像块,生成压缩图像和索引信息,所述压缩图像为所述多个目标图像块重排得到的图像,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系。
10.在一些实施例中,所述基于所述多个目标图像块,生成压缩图像包括:
11.对所述多个目标图像块进行复制,将复制得到的多个目标图像块进行重新排列,得到所述压缩图像,其中,所述压缩图像的尺寸小于所述原始图像的尺寸。
12.在一些实施例中,所述基于所述多个目标图像块,生成压缩图像包括:
13.确定每个目标图像块对应的第一图像块,所述第一图像块中包含对应的目标图像块和从所述目标图像块边缘向外部延伸的第一边缘区域;
14.将各个所述第一图像块进行重新排列,得到所述压缩图像。
15.在一些实施例中,所述基于所述多个目标图像块,生成压缩图像包括:
16.基于目标比例,对所述原始图像进行缩小,得到第一图像;
17.在所述第一图像中,确定每个目标图像块对应的第二图像块,所述第二图像块中包含对应的缩小后的目标图像块和从所述缩小后的目标图像块边缘向外部延伸的第二边缘区域;
18.将各个所述第二图像块进行重新排列,得到所述压缩图像;其中,所述目标比例为所述缩小后的目标图像块与缩小前的目标图像块的尺寸之比。
19.在一些实施例中,所述基于所述多个目标图像块,生成索引信息包括:
20.对所述多个目标图像块中的每个目标图像块,确定每个目标图像块在所述原始图像中的位置坐标与在所述压缩图像中的位置坐标之间的映射关系;
21.基于每个目标图像块的所述映射关系,生成所述索引信息。
22.在一些实施例中,所述索引信息为索引图,所述索引图中的每个元素与所述原始图像中的每个图像块一一对应,且所述索引图中与目标图像块对应的元素中存储有所述目标图像块在所述压缩图像中的位置坐标。
23.在一些实施例中,所述索引信息为索引图,所述索引图中的每个元素与所述原始图像中的每个图像块一一对应,且所述索引图中与目标图像块对应的元素中存储有所述目标图像块分别在所述原始图像和所述压缩图像中的位置坐标。
24.在一些实施例中,所述方法还包括:
25.基于多个预设的图像块尺寸,确定多个压缩率,每个压缩率为以对应的预设的图像块尺寸对所述原始图像进行分块时,划分得到的目标图像块在相应的多个图像块中的占比;
26.从所述多个压缩率中,选择目标压缩率;
27.以所述目标压缩率对应的预设的图像块尺寸,执行对所述原始图像进行分块,得到所述多个图像块的步骤。
28.根据本公开实施例的另一方面,提供一种图像处理方法,包括:
29.获取压缩图像和索引信息,所述压缩图像为原始图像的多个目标图像块重排得到的图像,所述目标图像块包括所述原始图像中的前景像素,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系;
30.基于所述索引信息,对每个待渲染的图像块,从所述压缩图像中对应的目标图像块中获取前景像素;
31.基于每个待渲染的图像块对应的前景像素,对相应的图像块进行渲染,得到所述原始图像。
32.在一些实施例中,所述基于所述索引信息,对每个待渲染的图像块,从所述压缩图像中对应的目标图像块中获取前景像素包括:
33.对每个待渲染的图像块,基于所述索引信息,确定所述压缩图像中与所述图像块对应的目标图像块;
34.从所述压缩图像的所述目标图像块中,读取所述前景像素。
35.根据本公开实施例的另一方面,提供一种图像处理装置,包括:
36.分块单元,被配置为执行对原始图像进行分块,得到多个图像块;
37.确定单元,被配置为执行确定所述多个图像块中的多个目标图像块,所述目标图像块包括所述原始图像中的前景像素;
38.生成单元,被配置为执行基于所述多个目标图像块,生成压缩图像和索引信息,所述压缩图像为所述多个目标图像块重排得到的图像,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系。
39.在一些实施例中,所述生成单元被配置为执行:
40.对所述多个目标图像块进行复制,将复制得到的多个目标图像块进行重新排列,得到所述压缩图像,其中,所述压缩图像的尺寸小于所述原始图像的尺寸。
41.在一些实施例中,所述生成单元被配置为执行:
42.确定每个目标图像块对应的第一图像块,所述第一图像块中包含对应的目标图像块和从所述目标图像块边缘向外部延伸的第一边缘区域;
43.将各个所述第一图像块进行重新排列,得到所述压缩图像。
44.在一些实施例中,所述生成单元被配置为执行:
45.基于目标比例,对所述原始图像进行缩小,得到第一图像;
46.在所述第一图像中,确定每个目标图像块对应的多个第二图像块,所述第二图像块中包含对应的缩小后的目标图像块和从所述缩小后的目标图像块边缘向外部延伸的第二边缘区域;
47.将各个所述第二图像块进行重新排列,得到所述压缩图像;其中,所述目标比例为所述缩小后的目标图像块与缩小前的目标图像块的尺寸之比。
48.在一些实施例中,所述生成单元被配置为执行:
49.对所述多个目标图像块中的每个目标图像块,确定每个目标图像块在所述原始图像中的位置坐标与在所述压缩图像中的位置坐标之间的映射关系;
50.基于每个目标图像块的所述映射关系,生成所述索引信息。
51.在一些实施例中,所述索引信息为索引图,所述索引图中的每个元素与所述原始图像中的每个图像块一一对应,且所述索引图中与目标图像块对应的元素中存储有所述目标图像块在所述压缩图像中的位置坐标。
52.在一些实施例中,所述索引信息为索引图,所述索引图中的每个元素与所述原始图像中的每个图像块一一对应,且所述索引图中与目标图像块对应的元素中存储有所述目标图像块分别在所述原始图像和所述压缩图像中的位置坐标。
53.在一些实施例中,所述分块单元还被配置为执行:
54.基于多个预设的图像块尺寸,确定多个压缩率,每个压缩率为以对应的预设的图像块尺寸对所述原始图像进行分块时,划分得到的目标图像块在相应的多个图像块中的占比;
55.从所述多个压缩率中,选择目标压缩率;
56.以所述目标压缩率对应的预设的图像块尺寸,执行对所述原始图像进行分块,得到所述多个图像块的步骤。
57.根据本公开实施例的另一方面,提供一种图像处理装置,包括:
58.第一获取单元,被配置为执行获取压缩图像和索引信息,所述压缩图像为原始图像的多个目标图像块重排得到的图像,所述目标图像块包括所述原始图像中的前景像素,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系;
59.第二获取单元,被配置为执行基于所述索引信息,对每个待渲染的图像块,从所述压缩图像中对应的目标图像块中获取前景像素;
60.渲染单元,被配置为执行基于每个待渲染的图像块对应的前景像素,对相应的图像块进行渲染,得到所述原始图像。
61.在一些实施例中,所述第二获取单元被配置为执行:
62.对每个待渲染的图像块,基于所述索引信息,确定所述压缩图像中与所述图像块对应的目标图像块;
63.从所述压缩图像的所述目标图像块中,读取所述前景像素。
64.根据本公开实施例的另一方面,提供一种电子设备,包括:
65.一个或多个处理器;
66.用于存储所述一个或多个处理器可执行指令的一个或多个存储器;
67.其中,所述一个或多个处理器被配置为执行上述一方面的任一种可能实施方式中的图像处理方法。
68.根据本公开实施例的另一方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的至少一条指令由电子设备的一个或多个处理器执行时,使得所述电子设备能够执行上述一方面的任一种可能实施方式中的图像处理方法。
69.根据本公开实施例的另一方面,提供一种计算机程序产品,包括一条或多条指令,所述一条或多条指令可以由电子设备的一个或多个处理器执行,使得所述电子设备能够执行上述一方面的任一种可能实施方式中的图像处理方法。
70.本公开的实施例提供的技术方案至少带来以下有益效果:
71.通过对原始图像进行分块后,识别出原始图像中的目标图像块,并将目标图像块重排得到压缩图像,使得压缩图像中摒弃了原始图像中原本占比较大的背景像素,而仅保留包含前景像素的目标图像块,同时生成一个索引信息以指示目标图像块在重排前后的位置映射关系,方便了将压缩图像恢复成原始图像,由于索引信息的存储开销很小,因此能够在保证图像质量无损的情况下,大大降低了图像占用的内存。
72.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
73.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
74.图1是根据一示例性实施例示出的一种图像处理方法的实施环境示意图;
75.图2是根据一示例性实施例示出的一种图像处理方法的流程图;
76.图3是根据一示例性实施例示出的一种图像处理方法的流程图;
77.图4是本公开实施例提供一种镂空贴图的示意图;
78.图5是本公开实施例提供的一种图像分块的示意图;
79.图6是本公开实施例提供的图块重排过程的原理性示意图;
80.图7是本公开实施例提供的一种图块重排过程的原理性示意图;
81.图8是本公开实施例提供的一种基于不同索引图进行图像恢复时的渲染结果对比
图;
82.图9是本公开实施例提供的一种恢复得到的图像中的边缘瑕疵的示意图;
83.图10是本公开实施例提供的一种加边方式的原理性示意图;
84.图11是本公开实施例提供的一种不同加边方式的图像质量对比图;
85.图12是根据一示例性实施例示出的一种图像处理方法的流程图;
86.图13是本公开实施例提供的一种图像恢复流程的原理性示意图;
87.图14是本公开实施例提供的一种图像压缩和图像恢复的原理性示意图;
88.图15是本公开实施例提供的一种纹理压缩前后的渲染效果对比图;
89.图16是根据一示例性实施例示出的一种图像处理装置的逻辑结构框图;
90.图17是根据一示例性实施例示出的一种图像处理装置的逻辑结构框图;
91.图18示出了本公开一个示例性实施例提供的一种终端的结构框图;
92.图19是本公开实施例提供的一种服务器的结构示意图。
具体实施方式
93.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
94.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
95.本公开所涉及的用户信息可以为经用户授权或者经过各方充分授权的信息。
96.在计算机图像渲染领域中,纹理(uv)贴图是一种常见的渲染技术,适用于电子游戏的渲染、视频特效的渲染、电影特效的渲染等广泛的应用场景,例如,电子游戏中的场景模型、人物模型等模型表面的细节,可采用将纹理贴图贴到三维模型的方式来渲染,又例如,用户自拍视频中添加的魔法表情、特效挂件等视频特效,可采用将纹理贴图贴到用户面部区域的方式来渲染。
97.为降低纹理贴图占用的内存,通常会对纹理贴图进行纹理压缩,其中,dxt是一种较多pc(personal computer,个人计算机)端显卡支持的有损纹理压缩算法,dxt的格式包括dxt1~dxt5等,其中dxt1和dxt5较为多见。由于dxt算法是有损压缩,使得将一张纹理贴图在经过压缩、解压之后恢复得到的图像,相较于原本的纹理贴图来说图像质量会存在明显下降;另外,dxt算法只能在windows系统使用,跨平台性不好;且dxt算法不能与h264等音视频编码技术结合,即与其他技术的兼容性较差。
98.除了pc端常见的dxt算法之外,etc是一种移动端常见的有损纹理压缩算法,目前是安卓设备的标准纹理压缩方案,且opengl(open graphics library,开放图形库或开放式图形库)和opengl es(opengl for embedded systems,面向嵌入式系统的开放图形库或开放式图形库)中均支持etc1。由于etc算法也是有损压缩,因此将一张纹理贴图在经过压缩、解压之后恢复得到的图像,相较于原本的纹理贴图来说图像质量会存在明显下降;另
外,etc算法只能在安卓系统使用,跨平台性不好;且etc算法不能与h264等音视频编码技术结合,即与其他技术的兼容性较差。
99.综上所述,传统的纹理压缩算法都会造成图像质量的损失,且无法与h264视频编码技术兼容,本公开实施例提出了一种兼容性好、计算成本低、跨平台的无损纹理压缩方案,对于各种类型的原始图像,例如一些背景像素占比大于比例阈值的原始图像(镂空部分较多的纹理贴图等),纹理压缩性能具有显著提升,下面进行详述。
100.以下,对本公开实施例的架构进行说明。
101.图1是根据一示例性实施例示出的一种图像处理方法的实施环境示意图,参见图1,在该实施环境中可以包括终端101和服务器102,终端101和服务器102均为电子设备的示例性说明。
102.终端101安装和运行有支持图像渲染的应用程序,可选地,该应用程序包括但不限于:短视频应用、游戏应用、音视频应用、视频点播应用、社交应用、会议应用、企业应用等,本公开实施例对该应用程序的类型不进行具体限定。
103.终端101通过有线或无线方式与服务器102进行直接或间接地通信连接。
104.服务器102包括一台服务器、多台服务器、云计算平台或者虚拟化中心中的至少一种。服务器102用于为支持图像渲染的应用程序提供后台服务,例如,服务器102用于对原始图像进行纹理压缩。可选地,服务器102承担主要计算工作,终端101承担次要计算工作;或者,服务器102承担次要计算工作,终端101承担主要计算工作;或者,终端101和服务器102之间采用分布式计算架构进行协同计算。
105.可选地,服务器102是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)以及大数据和人工智能平台等基础云计算服务的云服务器。
106.示意性地,以视频特效渲染场景为例,在流式媒体传输方式下,终端101基于应用程序来录制自拍视频,在该应用程序中提供多种魔法表情或特效挂件,用户选择感兴趣的魔法表情或特效挂件之后,终端101从服务器102中下载该魔法表情或特效挂件的纹理贴图的压缩图像和索引信息,并根据索引信息,将经过纹理压缩的压缩图像恢复成原始的纹理贴图,再将恢复得到的纹理贴图在视频流中贴到指定的区域,例如,将魔法表情贴到人脸区域,又例如,将头部挂件贴到头发区域等,又例如,随着用户手指的拖拽将特效挂件贴到拖拽的轨迹终点等,本公开实施例对此不进行具体限定。
107.终端101泛指多个终端中的一个,终端101的设备类型包括:智能手机、平板电脑、智能音箱、智能手表、笔记本电脑或者台式计算机中的至少一种,但并不局限于此。例如,终端101可以是智能手机或其他手持便携式通信设备。
108.本领域技术人员可以知晓,上述终端101的数量可以更多或更少。比如上述终端101可以仅为一个,或者上述终端101为几十个或几百个,或者更多数量。本公开实施例对终端101的数量和设备类型不加以限定。
109.图2是根据一示例性实施例示出的一种图像处理方法的流程图,参见图2,该图像处理方法应用于电子设备,下面以电子设备为服务器为例进行说明。
110.在步骤201中,对原始图像进行分块,得到多个图像块。
111.在步骤202中,确定该多个图像块中的多个目标图像块,该目标图像块包括该原始图像中的前景像素。
112.在步骤203中,基于该多个目标图像块,生成压缩图像和索引信息,该压缩图像为该多个目标图像块重排得到的图像,该索引信息用于指示该目标图像块在该原始图像和该压缩图像中的位置映射关系。
113.本公开实施例提供的方法,通过对原始图像进行分块后,识别出原始图像中的目标图像块,并将目标图像块重排得到压缩图像,使得压缩图像中摒弃了原始图像中原本占比较大的背景像素,而仅保留包含前景像素的目标图像块,同时生成一个索引信息以指示目标图像块在重排前后的位置映射关系,方便了将压缩图像恢复成原始图像,由于索引信息的存储开销很小,因此能够在保证图像质量无损的情况下,大大降低了图像占用的内存。
114.在一些实施例中,基于该多个目标图像块,生成压缩图像包括:对该多个目标图像块进行复制,将复制得到的多个目标图像块进行重新排列,得到该压缩图像,其中,该压缩图像的尺寸小于该原始图像的尺寸。
115.在一些实施例中,基于该多个目标图像块,生成压缩图像包括:确定每个目标图像块对应的第一图像块,该第一图像块中包含对应的目标图像块和从该目标图像块边缘向外部延伸的第一边缘区域;将各个该第一图像块进行重新排列,得到该压缩图像。
116.在一些实施例中,基于该多个目标图像块,生成压缩图像包括:基于目标比例,对该原始图像进行缩小,得到第一图像;在该第一图像中,确定每个目标图像块对应的第二图像块,该第二图像块中包含对应的缩小后的目标图像块和从该缩小后的目标图像块边缘向外部延伸的第二边缘区域;将各个该第二图像块进行重新排列,得到该压缩图像;其中,该目标比例为该缩小后的目标图像块与缩小前的目标图像块的尺寸之比。
117.在一些实施例中,基于该多个目标图像块,生成索引信息包括:对该多个目标图像块中的每个目标图像块,确定每个目标图像块在该原始图像中的位置坐标与在该压缩图像中的位置坐标之间的映射关系;基于每个目标图像块的该映射关系,生成该索引信息。
118.在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块在该压缩图像中的位置坐标。
119.在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块分别在该原始图像和该压缩图像中的位置坐标。
120.在一些实施例中,该方法还包括:基于多个预设的图像块尺寸,确定多个压缩率,每个压缩率为以对应的预设的图像块尺寸对该原始图像进行分块时,划分得到的目标图像块在相应的多个图像块中的占比;从该多个压缩率中,选择目标压缩率;以该目标压缩率对应的预设的图像块尺寸,执行对该原始图像进行分块,得到该多个图像块的步骤。
121.上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
122.图3是根据一示例性实施例示出的一种图像处理方法的流程图,如图3所示,在本公开实施例中将对图像压缩流程进行详细介绍,图像压缩流程可由电子设备执行,以该电子设备为上述实施环境中的服务器102为例进行说明。
123.在步骤301中,服务器获取原始图像中的背景像素占比。
124.其中,该原始图像是任一待处理的图像,例如为纹理贴图,或者待压缩的图像等,该原始图像可由服务器从本地图像数据库中读取,或者由服务器从云端图像数据库中下载,或者由终端制作完毕后上传到服务器中,本公开实施例不对原始图像的来源进行具体限定。
125.在一些实施例中,服务器获取该原始图像中的背景像素的数量,将背景像素的数量与原始图像总像素的数量之间的比值确定为背景像素占比。也即是说,服务器可以将原始图像中的像素划分为前景像素和背景像素,前景像素相当于是原始图像中的有效像素信息,而背景像素则相当于是原始图像中的无效像素信息。
126.在一些实施例中,服务器基于像素值来划分前景像素和背景像素,例如,针对镂空贴图来说,镂空贴图中透明度(α)通道的取值为0即全透明的像素是指背景像素,而透明度通道取值不为0的像素是指前景像素。
127.图4是本公开实施例提供一种镂空贴图的示意图,如图4所示,示出了5种可能的镂空贴图401~405,镂空贴图在视频特效渲染、游戏渲染中十分普遍,镂空贴图的特点就是背景像素占比较高,即存在大面积的镂空区域(透明度通道的取值为0,即背景区域),如镂空贴图401~405中每张贴图都包含大面积的镂空区域(图中显示为白色背景,但可设置为全透明背景),此时可采用本公开实施例提供的图像压缩流程,对镂空贴图进行空间上的图块重排,摒弃掉无效的镂空区域,保证得到的压缩图像符合gpu的纹理要求,且能够在渲染时占用更小的内存空间。
128.在一些实施例中,服务器使用基于机器学习的图像分割算法或图像分割模型,来区分出原始图像中的背景区域和前景区域,将背景区域的面积与原始图像的面积之比确定为背景像素占比。例如,针对肤色贴图来说,将肤色贴图输入到图像分割模型中,以使得图像分割模型区分出肤色贴图中的前景区域和背景区域,位于前景区域的像素是前景像素,位于背景区域的像素是背景像素,进一步的,将背景区域的面积与原始图像的面积之比确定为背景像素占比。
129.在一些实施例中,服务器在获取到原始图像中的背景像素占比之后,如果背景像素占比大于比例阈值,执行下述步骤302,如果背景像素占比小于或等于比例阈值,则代表原始图像中的前景像素即有效像素信息较多,此时本纹理压缩方案进行纹理压缩时效果提升不明显,可采用传统的dxt或者etc等纹理压缩算法。
130.需要说明的是,本公开实施例仅以在背景像素占比大于比例阈值时,启动纹理压缩方案为例进行说明,在一些实施例中,无需计算原始图像的背景像素占比,而是对任一原始图像都可直接启动该纹理压缩方案,以进行纹理压缩,即对任一原始图像直接执行下述步骤302中“对原始图像进行分块,得到多个目标图像块”的操作,本公开实施例不对原始图像的背景像素占比是否需要大于比例阈值进行具体限定。
131.在步骤302中,服务器响应于原始图像中背景像素占比大于比例阈值,对该原始图像进行分块,得到多个图像块。
132.其中,该比例阈值是任一大于或等于0且小于或等于1的数值,例如,该比例阈值为0.6或者其他数值。
133.当原始图像中的背景像素占比大于该比例阈值时,代表可摒弃的背景区域面积越
大,因此纹理压缩的效果提升会越明显,因此进入本公开实施例的图像压缩流程,对原始图像进行图像分块处理,将该原始图像划分为多个图像块。
134.在一些实施例中,该多个图像块中每个图像块的尺寸是相同的,例如16
×
16、32
×
32或者64
×
64等;或者,该多个图像块中不同图像块的尺寸也可以不同,比如大面积的背景区域中划分成较大的图像块,而背景区域与前景区域交界的地方也精细划分成较小的图像块,本公开实施例不对图像块尺寸是否相同进行具体限定。
135.在每个图像块尺寸相同为例,针对不同大小的原始图像,可设定不同的图像块尺寸,比如,针对1024
×
1024的原始图像,默认采用32
×
32的图像块尺寸,当然也可设置为其他的默认尺寸,本公开实施例对此不进行具体限定。
136.在一些实施例中,对尺寸处于某一范围内的原始图像采用相同的图像块尺寸,也即是说,建立原始图像的尺寸范围与图像块尺寸之间的映射关系,从而在确定出原始图像的尺寸所属的尺寸范围时,基于该映射关系确定与该尺寸范围对应的图像块尺寸。
137.在一些实施例中,可采用多个预设的图像块尺寸对原始图像进行分块后,按照分块后计算的压缩率来选择最终的图像块尺寸。可选地,服务器基于多个预设的图像块尺寸,确定多个压缩率,每个压缩率为以对应的预设的图像块尺寸对该原始图像进行分块时,划分得到的目标图像块在相应的多个图像块中的占比,其中,该相应的多个图像块是指以对应预设的图像块尺寸对原始图像所划分得到的全部图像块,也即是说,服务器对每个预设的图像块尺寸,使用该图像块尺寸对原始图像进行分块之后,统计分块后整体图像块的数量,再确定出整体图像块中目标图像块的数量,将目标图像块的数量与整体图像块的数量之间的比值确定为在该图像块尺寸下进行分块的压缩率。
138.图5是本公开实施例提供的一种图像分块的示意图,如图5所示,服务器预设3个图像块尺寸:16
×
16、32
×
32和64
×
64,分别使用上述3个图像块尺寸对同一张原始图像进行分块,以原始图像为图4中的镂空贴图402为例,得到图5中示出的3种分块结果4021~4023。在进行图像分块后,分块结果中包含前景像素(即透明度取值不为0的像素)的图像块属于目标图像块,如分块结果4021~4023中阴影部分的图像块即为目标图像块。进一步地,将目标图像块的数量与整体图像块的数量之间的比值确定为对应的压缩率,从而计算得到上述3个图像块尺寸各自对应的压缩率:0.140、0.186和0.258。
139.在一些实施例中,服务器从该多个压缩率中,选择目标压缩率,并以该目标压缩率对应的预设的图像块尺寸,执行上述步骤302中对该原始图像进行分块,得到该多个图像块的操作。在上述过程中,通过灵活选择目标压缩率对应的预设的图像块尺寸,只需要更改目标压缩率的选择策略,就能够适应性调整对原始图像采取分块的图像块尺寸,从而满足不同场景下的业务需求,比如,选择多个压缩率中的中位数作为目标压缩率,能够兼顾压缩率和索引信息的内存占用情况,当然,也可以选择多个压缩率中的最大值或最小值作为目标压缩率,本公开实施例不对目标压缩率的选择策略进行具体限定。
140.在一些实施例中,服务器选择目标压缩率的策略可以是灵活多样的,比如,选择该多个压缩率中的中位数,例如,采取上述示例中的中位数0.186作为目标压缩率,并以目标压缩率0.186对应的图像块尺寸32
×
32来对原始图像进行图像分块,由于在计算目标压缩率的时候已经过图像分块了,因此直接删除其余两个图像块尺寸的分块结果,再基于以图像块尺寸32
×
32的分块结果执行后续流程即可。这时由于图像块尺寸越小、压缩率越小的
情况下,整体图像块的数量就越多,会导致后续压缩所需生成的索引信息的数据量越大,比如对于索引图形式的索引信息来说,会则增加索引图的尺寸,从而占用更多额外的内存,因此可采取选择较为折中的图像块尺寸,从而兼顾压缩率和索引信息的内存占用情况。
141.在步骤303中,服务器确定该多个图像块中的多个目标图像块,该目标图像块包括该原始图像中的前景像素。
142.在一些实施例中,由于在上述步骤301中确定背景像素占比时,已经对原始图像划分出了前景像素和背景像素,因此可较为方便地将包含前景像素的图像块确定为目标图像块,换言之,服务器遍历该原始图像的每个图像块,对每个图像块判断是否包含前景像素,如果当前图像块包含前景像素,则确定为目标图像块,继续对下一个图像块执行类似操作,最终可确定出原始图像中的所有目标图像块。
143.在步骤304中,服务器基于该多个目标图像块,生成压缩图像和索引信息,该压缩图像为该多个目标图像块重排得到的图像,该索引信息用于指示该目标图像块在该原始图像和该压缩图像中的位置映射关系。
144.在一些实施例中,在生成压缩图像时,服务器对该多个目标图像块进行复制,将复制得到的多个目标图像块进行重新排列,得到该压缩图像,由于原始图像本身的背景像素占比就比较高,代表目标图像块的数量相对于整体图像块的数量较少,从而导致该压缩图像的尺寸小于该原始图像的尺寸,换言之,在保全了原始图像中的有效像素信息(前景像素)的基础上,压缩了原始图像的尺寸,从而缩小了原始图像占用的内存,且由于目标图像块仅仅是进行了重排而并未进行任何修改,从而不会损失图像质量,达到了一种无损压缩的效果。
145.图6是本公开实施例提供的图块重排过程的原理性示意图,如图6所示,本公开实施例的纹理压缩过程,实际上是将目标图像块从原始图像迁移或复制到压缩图像的过程,在通过上述步骤303定位了目标图像块的位置的基础上,只需要按照顺序将每个目标图像块逐个迁移到另外一张压缩图像中,同时记录迁移的索引信息,就能够达到图像压缩的效果,由于目标图像块在压缩图像中是紧密排列的,换言之,压缩图像中仅包含目标图像块,因此压缩图像实际上丢弃了原始图像中的背景像素,而索引信息虽然会带来额外的内存开销,但是索引信息所占的内存是远小于原始图像中背景像素所占的内存的,因此总体在不损失图像质量的情况下大大节约了内存开销。
146.请参考图6,示意性地,采用图5中以图像块尺寸为32
×
32进行分块所得的分块结果4022作为原始图像。原始图像4022的尺寸为1024
×
1024,对每个像素记录r(红)、g(绿)、b(蓝)3通道的颜色值和α(透明度)通道的透明度,则原始图像4022占用的内存为1024
×
1024
×
4,在将原始图像4022中的目标图像块迁移到另一张图像中进行重排列,得到压缩图像601,压缩图像601中不包含原始图像4022的背景像素,因此压缩图像601的尺寸必定远小于原始图像4022的尺寸,假设压缩图像601的尺寸为1024
×
256,对每个像素同样保留rgb通道的颜色值和α通道的透明度,则压缩图像601占用的内存为1024
×
256
×
4。同时,为记录目标图像块在迁移前后的位置映射关系,还额外生成一张索引图602,索引图602中每个元素只需要记录一个位置坐标(横坐标和纵坐标一共占2位),则索引图602占用的内存表示为32
×
32
×
2。显然可见,索引图602仅带来了少量的额外内存开销,压缩图像601和索引图602两者总体占用的内存远小于原始图像4022占用的内存,且压缩图像601中每个像素都保留了原
始图像4022中对应像素的全部信息(颜色值和透明度),即图像质量是无损的,因此在不损失图像质量的情况下大大节约了内存开销。
147.在一些实施例中,在生成索引信息时,对该多个目标图像块中的每个目标图像块,服务器确定每个目标图像块在该原始图像中的位置坐标与在该压缩图像中的位置坐标之间的映射关系;基于每个目标图像块的该映射关系,生成该索引信息,也即是说,所有目标图像块的映射关系的集合构成该索引信息。
148.可选地,索引信息的数据结构是多种多样的,例如:索引图、键值对、动态数组、哈希表等,本公开实施例不对索引信息的数据结构进行具体限定。
149.在上述过程中,由于基于每个目标图像块在原始图像和压缩图像中的位置映射关系来生成最终的索引信息,使得索引信息能够反映出所有目标图像块的映射关系的集合,这保证了将压缩图像恢复成原始图像时不会将对应的图像块迁移到错误的位置,因此保证了纹理压缩不会对图像恢复流程造成不良影响。
150.在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块在该压缩图像中的位置坐标。正是由于索引图中的每个元素唯一对应于原始图像中的一个图像块,因此每个元素在索引图中的位置坐标与每个图像块中的位置坐标是相同的,即索引图中元素的位置坐标天然代表了图像块在原始图像中的位置坐标,因此只需要在每个元素中存储目标图像块在压缩图像中的位置坐标即可,因此指每个元素自身在索引图中的位置坐标与元素中存储的位置坐标就能够反映出目标图像块在原始图像和压缩图像中的位置映射关系,从而能够保证索引图占用最小的内存。
151.基于图6的示例,图6示出了索引图形式的索引信息,假设要将原始图像4022中位置坐标为(8,14)的目标图像块迁移到压缩图像601中,按照顺序排列后该目标图像块将会迁移到压缩图像601的第4行、第22列,即目标图像块在原始图像4022中的位置坐标为(8,14),在压缩图像601中的位置坐标为(22,4),因此在索引图602中位于(8,14)的元素中存储(22,4)。
152.在一些实施例中,由于目标图像块的位置坐标实际上是指目标图像块的左上角的位置坐标,假设图像块的尺寸为a,针对位置坐标为(8,14)的图像块,在压缩过程中,需要将原始图像中(8,14)~(8+a,14+a)这一范围内的像素复制到压缩图像中(22,4)~(22+a,4+a)这一范围中;同理,在解压即恢复过程中,需要将压缩图像中(22,4)~(22+a,4+a)这一范围内的像素复制到待渲染图像中(8,14)~(8+a,14+a)这一范围内。为了保证上述整个范围内像素的复制过程不出错,就涉及到图像块内部局部坐标的求解,图像块内部局部坐标的求解过程表达为如下公式:
153.fraccoord=frac(coord*tilesnum)/tilesnum
154.其中,frac()代表取小数的函数,coord代表原始图像或待渲染图像(两者一样)中的位置坐标,tilesnum代表原始图像中包含的图像块的数量,考虑到coord包括图像块内部的横坐标和纵坐标两种情况,如果计算的coord是横坐标,则tilesnum使用原始图像中横向包含的图像块的数量,如果计算的coord是纵坐标,则tilesnum使用原始图像中纵向包含的图像块的数量,例如,针对正方形的原始图像来说,tilesnum在横向和纵向上的取值相等。
155.需要说明的是,上述压缩过程通常由cpu(central processing unit,中央处理
器)来执行,而恢复过程则通常由gpu执行,两者在对图像块内部的每个像素进行复制的过程中,计算原理是不完全相同的,考虑到取整函数的作用,可能会存在数值精度上的误差,从而导致gpu在计算图像块的边缘像素的局部坐标时,与从索引图中读取的图像块的位置坐标产生边缘误差,即引发恢复出的原始图像在图像块边缘存在瑕疵的问题。
156.针对上一问题,在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块分别在该原始图像和该压缩图像中的位置坐标。
157.图7是本公开实施例提供的一种图块重排过程的原理性示意图,如图7所示,以索引信息为索引图701为例,相较于图6来说,假设要将原始图像4022中位置坐标为(8,14)的目标图像块迁移到压缩图像601中,按照顺序排列后该目标图像块将会迁移到压缩图像601的第4行、第22列,即目标图像块在原始图像4022中的位置坐标为(8,14),在压缩图像601中的位置坐标为(22,4),因此在索引图701中位于(8,14)的元素中存储(8,14)和(22,4)这一对位置坐标。此时由于记录了一对位置坐标,每一位置坐标包括横坐标和纵坐标2位,即每个元素共占用4位,因此索引图701占用的内存为32
×
32
×
4。
158.由于在索引图的每个元素中,不但存储对应的目标图像块在压缩图像中的位置坐标,还存储目标图像块在该原始图像中位置坐标,以使得gpu直接从索引图中能够读取到一对位置坐标,而无需自身进行局部坐标求解,虽然会略微增大索引图占用的内存,但可减轻gpu的计算开销,且有效缓解了图像恢复流程中由于上述原理所带来的边缘瑕疵。
159.图8是本公开实施例提供的一种基于不同索引图进行图像恢复时的渲染结果对比图,如图8所示,最左边的部分801示出了gpu在恢复图像块边缘处的纹理坐标的计算误差,误差处采用白色圆圈来圈出,这里的误差是指相邻图像块之间边缘纹理不平滑导致的瑕疵。而中间的部分则示出了索引图中每个元素仅存储有单个位置坐标(即对应的目标图像块在压缩图像中的位置坐标)时,恢复得到的渲染结果802,能够看出来在边缘处存在一定的瑕疵,瑕疵处采用白色圆圈来圈出,可以看出,由于渲染结果802的瑕疵成因是纹理坐标局部求解的边缘误差,因此渲染结果802中的瑕疵处与最左边的部分801中纹理坐标的误差处是相对应的。而最右边的部分则示出了索引图中每个元素存储有一对位置坐标(即对应的目标图像块分别在原始图像和压缩图像中各自的位置坐标)时,恢复得到的渲染结果803,能够看出来明显改善了边缘处的瑕疵情况,从而进一步优化了恢复出的图像质量。
160.本公开实施例提供的方法,通过对原始图像进行分块后,识别出原始图像中的目标图像块,并将目标图像块重排得到压缩图像,使得压缩图像中摒弃了原始图像中原本占比较大的背景像素,而仅保留包含前景像素的目标图像块,同时生成一个索引信息以指示目标图像块在重排前后的位置映射关系,方便了将压缩图像恢复成原始图像,由于索引信息的存储开销很小,因此能够在保证图像质量无损的情况下,大大降低了图像占用的内存。
161.上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
162.在上述实施例中,介绍了一种图像压缩流程,将原始图像中的目标图像块重排得到了压缩图像,如果只是简单地对目标图像块进行迁移,很可能在压缩图像重采样(即采样原始图像中目标图像块的像素再复制到压缩图像中)时,在目标图像块的边缘处混杂了临近的其他图像块的信息,致使在对压缩图像进行恢复时边缘处产生明显瑕疵。
163.由于在gpu渲染纹理时通常使用双线性采样方式,如果直接将原始图像中的目标图像块采样迁移到压缩图像中,难免会在目标图像的边缘处混合其他图像块的分量(这是由双线性采样方式决定的),使得最终恢复出来的图像存在较为明显的拼接感,即恢复出来的图像的拼接效果不好。图9是本公开实施例提供的一种恢复得到的图像中的边缘瑕疵的示意图,如图9所示,左侧示出了恢复得到的图像901,如果针对左侧的圆圈区域进行放大,得到右侧的图像9011,可以发现在放大之后能够明显看出来图像块的拼接痕迹比较严重,拼接效果不好。
164.针对上一问题,可采用对目标图像块进行加边的方式来进行改善,对于目标图像块的边缘像素来说,考虑到gpu的双线性采样方式只会对周围的4个像素进行双线性插值,因此可以考虑在重采样目标图像块时,对目标图像块多采样一圈额外的外边(即从目标图像块边缘向外部延伸的边缘区域),以改善上述边缘处的瑕疵问题。加边方式可划分为外部加边和内部加边,外部加边是指在目标图像块的外部额外采样一圈边缘区域,从而会导致压缩图像中存储的目标图像块的尺寸变大,而内部加边则是指将原始图像按一定的目标比例缩小后,仍采用原本的图像块尺寸进行采样,使得图像块尺寸不变的情况下,采样到的图像块中包括缩小后的目标图像块以及一圈额外的边缘区域。
165.在一些实施例中,外部加边的过程包括:确定每个目标图像块对应的第一图像块,该第一图像块中包含对应的目标图像块和从该目标图像块边缘向外部延伸的第一边缘区域;将各个该第一图像块进行重新排列,得到该压缩图像。可以看出由于第一图像块包括目标图像块和第一边缘区域,因此第一图像块的图像块尺寸大于目标图像块的图像块尺寸。可选地,将第一图像块重排得到压缩图像的过程与上述步骤304中将目标图像块重排得到压缩图像的过程类似,这里不做赘述。
166.在上述外部加边过程中,通过对目标图像块额外采样了一圈第一边缘区域,极大地改善了由于双线性采样方式带来的边缘瑕疵问题,提升了纹理效果的效果。
167.在一些实施例中,内部加边的过程包括:基于目标比例,对该原始图像进行缩小,得到第一图像;在该第一图像中,确定每个目标图像块对应的第二图像块,该第二图像块中包含对应的缩小后的目标图像块和从该缩小后的目标图像块边缘向外部延伸的第二边缘区域;将各个该第二图像块进行重新排列,得到该压缩图像;其中,该目标比例为该缩小后的目标图像块与缩小前的目标图像块的尺寸之比。可选地,将第二图像块重排得到压缩图像的过程与上述步骤304中将目标图像块重排得到压缩图像的过程类似,这里不做赘述。
168.可选地,第二图像块的图像块尺寸和目标图像块的图像块尺寸相同,由于预先对原始图像进行了缩小,以得到第一图像,使得即使在第一图像中采用相同的图像块尺寸进行采样,但采样得到的第二图像块中却包含了缩小后的目标图像块和位于该缩小后的目标图像块外部的第二边缘区域,这样能够在不改变压缩图像中存储的各个图像块的图像块尺寸的情况下,极大改善边缘瑕疵问题。
169.图10是本公开实施例提供的一种加边方式的原理性示意图,如图10所示,第一排示出了直接对原始图像中的目标图像块进行采样,以复制到压缩图像中的无加边方式,即,对原始图像采样16
×
16的目标图像块1001,并迁移到压缩图像中进行重排。第二排示出了采用外部加边的方式,针对原始图像中16
×
16的目标图像块,采样18
×
18的第一图像块1002,以复制到压缩图像中进行重排,需要说明的是,在恢复流程中,仅对18
×
18的第一图
像块1002中包含的16
×
16的目标图像块(采用白色虚线框出)进行恢复。第三排示出了采用内部加边方式,针对原始图像中16
×
16的目标图像块,先将原始图像按照14/16的目标比例进行缩小,再在缩小后的第一图像中,采样16
×
16的第二图像块1003以复制到压缩图像中进行重排,需要说明的是,在恢复流程中,仅对16
×
16的第二图像块1003中包含的14
×
14的缩小后的目标图像块(采用白色虚线框出)进行放大并恢复。由于外部加边方式会使得压缩图像中存储的图像块的图像块尺寸变大,很容易导致变大后的图像块尺寸不是2的幂次方,会带来其他计算处理的不便,因此可以默认使用内部加边方式。
170.图11是本公开实施例提供的一种不同加边方式的图像质量对比图,如图11所示,从左至右分别示出了:原始图像1101、无加边方式恢复得到的图像1102、内部加边方式恢复得到的图像1103和外部加边方式恢复得到的图像1104,对比原始图像1101可以发现,无加边方式恢复得到的图像1102中存在多处图像块边缘的瑕疵(参见图像1102中间的水平纹路)。在采用外部加边或内部加边方式之后,恢复得到的图像1103或1104均比无加边方式恢复得到的图像1102改善了边缘瑕疵问题,提升了恢复得到的图像的图像质量。
171.图12是根据一示例性实施例示出的一种图像处理方法的流程图,如图12所示,在本公开实施例中将对图像恢复流程进行详细介绍,图像恢复流程可由电子设备执行,以该电子设备为上述实施环境中的终端101为例进行说明。
172.在步骤1201中,终端获取压缩图像和索引信息,该压缩图像为原始图像的多个目标图像块重排得到的图像,该目标图像块包括该原始图像中的前景像素,该索引信息用于指示该目标图像块在该原始图像和该压缩图像中的位置映射关系。
173.在一些实施例中,终端响应于用户触发的操作指令,从服务器中下载该压缩图像和索引信息,可选地,压缩图像和索引信息都是服务器基于上述实施例中的图像压缩流程,对原始图像进行纹理压缩所得的。
174.可选地,该操作指令为对原始图像的加载指令,用户输入对该原始图像的加载指令之后,终端向服务器发送图像加载请求,服务器响应于该图像加载请求,不会返回原始图像,而是向终端返回经过纹理压缩得到的压缩图像和索引信息,能够节约终端与服务器之间的通信开销。
175.可选地,在游戏渲染场景下,原始图像通常是用于丰富物体模型或者人物模型的表面细节,因此该操作指令并不一定是针对原始图像的加载指令,有可能是游戏开局指令,或者对某一虚拟道具的装配指令等,本公开实施例对此不进行具体限定。
176.在另一些实施例中,终端也可以从本地磁盘读取该压缩图像和索引信息,例如,在视频特效渲染场景下,用户在编辑录制完毕的自拍视频时,可能会选择试用多种特效挂件,只有在首次点击某一特效挂件时终端才会从服务器中下载对应的压缩图像和索引信息,此后如果用户再次点击该特效挂件,终端可直接从缓存中读取对应的压缩图像和索引信息,本公开实施例不对压缩图像和索引信息的获取方式进行具体限定。
177.在步骤1202中,终端基于该索引信息,对每个待渲染的图像块,从该压缩图像中对应的目标图像块中获取前景像素。
178.在一些实施例中,对每个待渲染的图像块,终端基于该索引信息,确定该压缩图像中与该图像块对应的目标图像块;从该压缩图像的该目标图像块中,读取该前景像素。
179.在上述过程中,由于索引信息中存储了目标图像块在原始图像和压缩图像中的位
置映射关系,从而对每个待渲染的图像块,只需要以自身的位置坐标作为原始图像的位置坐标,从索引信息中查询出对应的目标图像块在压缩图像中的位置坐标,就能够找到与该图像块对应的目标图像块,接着读取前景像素,能够保证待渲染的图像块与目标图像块之间一一对应,且不会出错,保证了良好的图像恢复效果。
180.可选地,终端创建一张待渲染图像,对待渲染图像执行与原始图像相同的分块处理,以保证待渲染图像中待渲染的图像块和原始图像中图像块的尺寸相同,同理各个待渲染的图像块和原始图像中的各个图像块的位置坐标也是相同的。由于索引信息代表的是目标图像块在原始图像和压缩图像之间的位置映射关系,在图像恢复流程中,需要根据索引信息将压缩图像恢复成原始图像,即对每个待渲染的图像块,以该图像块的在待渲染图像中的位置坐标(相当于对应的图像块在原始图像中的位置坐标),从索引信息中查询对应的目标图像块在压缩图像中的位置坐标,并基于查询得到的目标图像块在压缩图像中的位置坐标,在压缩图像中确定该目标图像块,读取该目标图像块中的前景像素,将该前景像素复制给待渲染的图像块,对每个待渲染的图像块都执行上述操作,从而能够保证待渲染图像渲染完毕后显示的是原始图像。
181.在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块在该压缩图像中的位置坐标。在这种情况下,终端创建待渲染图像,并对待渲染图像分块得到各个待渲染的图像块之后,可以遍历每个待渲染的图像块,在索引图中确定与当前的图像块对应的元素,如果该元素中没有存储位置坐标,则将当前的图像块中每个像素的透明度取值置为0,如果该元素中存储有位置坐标,则按照该位置坐标在压缩图像中采样对应的目标图像块,从该目标图像块中读取前景像素,将该前景像素赋值给当前的图像块,重复执行上述操作直到对所有待渲染的图像块遍历完毕,完成图像恢复流程。
182.图13是本公开实施例提供的一种图像恢复流程的原理性示意图,如图13所示,假设要恢复待渲染图像1301中待渲染的图像块(8,14),则根据位置坐标(8,14),从索引图1302中查询位于(8,14)的元素中存储的另一位置坐标(22,4),这一位置坐标(22,4)代表了目标图像块在压缩图像1303中的位置坐标是第4行第22列,因此,根据索引图1302中查询得到的该另一位置坐标(22,4),在压缩图像1303中第4行第22列的目标图像块中读取前景像素,并赋值给待渲染图像1301中待渲染的图像块(8,14)。
183.在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块分别在该原始图像和该压缩图像中的位置坐标。在这种情况下,终端创建待渲染图像,并对待渲染图像分块得到各个待渲染的图像块之后,可以遍历索引图中的每个元素,如果当前元素中没有存储位置坐标,则将当前元素对应的待渲染的图像块的透明度取值置为0,如果当前元素中存储有一对位置坐标,则先按照目标图像块在原始图像中的位置坐标,定位到待渲染图像中对应的待渲染的图像块,再按照目标图像块在压缩图像中的位置坐标,在压缩图像中采样该目标图像块,从该目标图像块中读取前景像素,将该前景像素赋值之前在待渲染图像中定位到的图像块,重复执行上述操作直到对索引图遍历完毕,即可完成图像恢复流程。
184.在步骤1203中,终端基于每个待渲染的图像块对应的前景像素,对相应的图像块
进行渲染,得到该原始图像。
185.在一些实施例中,终端渲染图像块的操作可由渲染引擎控制gpu来实现,对每个待渲染的图像块,在渲染引擎的渲染管线shader中,根据当前的图像块的纹理坐标,从索引信息中读取对应的目标图像块在压缩图像中位置坐标,然后定位到压缩图像中的该目标图像块,采样该目标图像块以得到该前景像素(包括颜色值和透明度取值),将该前景像素赋值给当前待渲染的图像块,最终能够将原始图像渲染到终端屏幕中。
186.图14是本公开实施例提供的一种图像压缩和图像恢复的原理性示意图,如图14所示,在图像压缩阶段中,利用上一实施例中的图像压缩方式,将原始图像1401中的目标图像块进行重排,得到压缩图像1402和索引信息1403,在图像恢复流程中,利用本公开实施例中的图像恢复方式,基于索引信息1403中记载的位置映射关系,将压缩图像1402恢复成原始图像1401,能够在保证恢复得到的图像质量无损的情况下,极大节约图像所占用的内存。
187.本公开实施例提供的方法,通过获取压缩图像和索引信息,并直接基于索引信息,将压缩图像恢复为原始图像,由于压缩图像的各个目标图像块中都存储的是原始图像中原本的前景像素,使得恢复出的原始图像是无损的,即在大大节约了内存占用的情况下,保证了恢复出的原始图像的图像质量无损,极大地改善了纹理压缩效果。
188.上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
189.在一些实施例中,基于上述各个实施例提供的纹理压缩方式,对原始图像进行压缩和恢复之后,按照不同的原始图像尺寸、不同的图像分块尺寸进行了测试,测试结果如下表1所示。
190.表1
[0191][0192]
示意性地,假设原始图像的边长为a,进行分块的图像块边长为a,原始图像和图像块均为正方形,压缩比为r,该压缩比是指想要运用本方案对原始图像压缩的比例(相当于理想压缩率),但由于采用加边方法、压缩图像的实际填充率等因素,会导致最终的有效压缩率大于理想的压缩比。
[0193]
此外,内部加边纵向缩放一列的取值是指采用内部加边时对原始图像进行缩小时
采用的目标比例,其中对原始图像中的每个像素保存rgb红绿蓝3个通道的颜色值和α通道的透明度取值。
[0194]
在此基础上,由于总共4个通道,压缩前总内存是指原始图像占用的内存量,即压缩前总内存可以表示为:a*a*4。
[0195]
而压缩后总内存则包括两部分,一部分是压缩图像占用的内存量,压缩图像占用的内存量等于原始图像占用的内存量与压缩比之间的乘积,因此可以表示为:a*a*4*r;另一部分是索引图占用的内存量,由于图像块边长为a,因此图像块的总数量可以表示为:(a/a)*(a/a),显然,索引图占用的内存量可以表示为:(a/a)*(a/a)*4。综合两个部分可知,压缩后总内存=压缩图像内存+索引图内存=a*a*4*r+(a/a)*(a/a)*4。
[0196]
其中,有效压缩率是指压缩后总内存与压缩前总内存之间的比值,即将表格中每一行内倒数第二列的数值除以倒数第三列的数值即得到最后一列的数值,有效压缩率可以表示为:[a*a*4*r+(a/a)*(a/a)*4]/(a*a*4),可以看出,采用本公开实施例提供的纹理压缩方式,能够带来纹理压缩的2~4倍的内存节省。
[0197]
以移动端的视频特效渲染场景为例,假设对帽子特效的不同视角(共269张图)进行特效渲染,以单张图像为例,图15是本公开实施例提供的一种纹理压缩前后的渲染效果对比图,如图15所示,左侧图像1501是压缩前的渲染效果,其内存占用为167mb,右侧图像1502是压缩后的渲染效果,其内存占用为103mb,左侧图像1501和右侧图像1502的图像质量是无损的,有效压缩率为0.62,共计节约了38%的内存占用,这对于内存空间十分有效的移动端设备来说,具有非常重大的渲染意义,并且在将原始图像转换成压缩图像时,仅仅是对目标图像块进行重排,没有改变纹理格式,很容易地与其他技术如h264音视频编码技术兼容,而且具有高可用性和高拓展性,能够在任一系统平台中得到实现。
[0198]
图16是根据一示例性实施例示出的一种图像处理装置的逻辑结构框图。参照图16,该装置包括分块单元1601、确定单元1602和生成单元1603。
[0199]
分块单元1601,被配置为执行对原始图像进行分块,得到多个图像块;
[0200]
确定单元1602,被配置为执行确定该多个图像块中的多个目标图像块,该目标图像块包括该原始图像中的前景像素;
[0201]
生成单元1603,被配置为执行基于该多个目标图像块,生成压缩图像和索引信息,该压缩图像为该多个目标图像块重排得到的图像,该索引信息用于指示该目标图像块在该原始图像和该压缩图像中的位置映射关系。
[0202]
本公开实施例提供的装置,通过对原始图像进行分块后,识别出原始图像中的目标图像块,并将目标图像块重排得到压缩图像,使得压缩图像中摒弃了原始图像中原本占比较大的背景像素,而仅保留包含前景像素的目标图像块,同时生成一个索引信息以指示目标图像块在重排前后的位置映射关系,方便了将压缩图像恢复成原始图像,由于索引信息的存储开销很小,因此能够在保证图像质量无损的情况下,大大降低了图像占用的内存。
[0203]
在一些实施例中,该生成单元1603被配置为执行:
[0204]
对该多个目标图像块进行复制,将复制得到的多个目标图像块进行重新排列,得到该压缩图像,其中,该压缩图像的尺寸小于该原始图像的尺寸。
[0205]
在一些实施例中,该生成单元1603被配置为执行:
[0206]
确定每个目标图像块对应的第一图像块,该第一图像块中包含对应的目标图像块
和从该目标图像块边缘向外部延伸的第一边缘区域;
[0207]
将各个该第一图像块进行重新排列,得到该压缩图像。
[0208]
在一些实施例中,该生成单元1603被配置为执行:
[0209]
基于目标比例,对该原始图像进行缩小,得到第一图像;
[0210]
在该第一图像中,确定每个目标图像块各自对应的多个第二图像块,该第二图像块中包含对应的缩小后的目标图像块和从该缩小后的目标图像块边缘向外部延伸的第二边缘区域;
[0211]
将各个该第二图像块进行重新排列,得到该压缩图像;其中,该目标比例为该缩小后的目标图像块与缩小前的目标图像块的尺寸之比。
[0212]
在一些实施例中,该生成单元1603被配置为执行:
[0213]
对该多个目标图像块中的每个目标图像块,确定每个目标图像块在该原始图像中的位置坐标与在该压缩图像中的位置坐标之间的映射关系;
[0214]
基于每个目标图像块的该映射关系,生成该索引信息。
[0215]
在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块在该压缩图像中的位置坐标。
[0216]
在一些实施例中,该索引信息为索引图,该索引图中的每个元素与该原始图像中的每个图像块一一对应,且该索引图中与目标图像块对应的元素中存储有该目标图像块分别在该原始图像和该压缩图像中的位置坐标。
[0217]
在一些实施例中,该分块单元1601还被配置为执行:
[0218]
基于多个预设的图像块尺寸,确定多个压缩率,每个压缩率为以对应的预设的图像块尺寸对该原始图像进行分块时,划分得到的目标图像块在相应的多个图像块中的占比;
[0219]
从该多个压缩率中,选择目标压缩率;
[0220]
以该目标压缩率对应的预设的图像块尺寸,执行对该原始图像进行分块,得到该多个图像块的步骤。
[0221]
关于上述实施例中的装置,其中各个单元执行操作的具体方式已经在有关该图像处理方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0222]
图17是根据一示例性实施例示出的一种图像处理装置的逻辑结构框图,如图17所示,该装置包括第一获取单元1701、第二获取单元1702和渲染单元1703。
[0223]
第一获取单元1701,被配置为执行获取压缩图像和索引信息,该压缩图像为原始图像的多个目标图像块重排得到的图像,该目标图像块包括该原始图像中的前景像素,该索引信息用于指示该目标图像块在该原始图像和该压缩图像中的位置映射关系;
[0224]
第二获取单元1702,被配置为执行基于该索引信息,对每个待渲染的图像块,从该压缩图像中对应的目标图像块中获取前景像素;
[0225]
渲染单元1703,被配置为执行基于每个待渲染的图像块对应的前景像素,对相应的图像块进行渲染,得到该原始图像。
[0226]
本公开实施例提供的装置,通过获取压缩图像和索引信息,并直接基于索引信息,将压缩图像恢复为原始图像,由于压缩图像的各个目标图像块中都存储的是原始图像中原
本的前景像素,使得恢复出的原始图像是无损的,即在大大节约了内存占用的情况下,保证了恢复出的原始图像的图像质量无损,极大地改善了纹理压缩效果。
[0227]
在一些实施例中,该第二获取单元1702被配置为执行:
[0228]
对每个待渲染的图像块,基于该索引信息,确定该压缩图像中与该图像块对应的目标图像块;
[0229]
从该压缩图像的该目标图像块中,读取该前景像素。
[0230]
关于上述实施例中的装置,其中各个单元执行操作的具体方式已经在有关该图像处理方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0231]
图18示出了本公开一个示例性实施例提供的一种终端的结构框图。终端1800是电子设备的一种示例性说明,该终端1800可以是:智能手机、平板电脑、mp3播放器(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
[0232]
通常,终端1800包括有:处理器1801和存储器1802。
[0233]
处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1801还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0234]
存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1801所执行以实现本公开中各个实施例提供的图像处理方法。
[0235]
在一些实施例中,终端1800还可选包括有:外围设备接口1803和至少一个外围设备。处理器1801、存储器1802和外围设备接口1803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1803相连。具体地,外围设备包括:射频电路1804、触摸显示屏1805、摄像头组件1806、音频电路1807、定位组件1808和电源1809中的至少一种。
[0236]
外围设备接口1803可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1801和存储器1802。在一些实施例中,处理器1801、存储器1802和外围设备接口1803被集成在同一芯片或电路板上;在一些其他实施例中,处理器1801、存储器1802和外围设备接口1803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施
例对此不加以限定。
[0237]
射频电路1804用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路1804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1804包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wireless fidelity,无线保真)网络。在一些实施例中,射频电路1804还可以包括nfc(near field communication,近距离无线通信)有关的电路,本公开对此不加以限定。
[0238]
显示屏1805用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1805是触摸显示屏时,显示屏1805还具有采集在显示屏1805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1801进行处理。此时,显示屏1805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1805可以为一个,设置终端1800的前面板;在另一些实施例中,显示屏1805可以为至少两个,分别设置在终端1800的不同表面或呈折叠设计;在再一些实施例中,显示屏1805可以是柔性显示屏,设置在终端1800的弯曲表面上或折叠面上。甚至,显示屏1805还可以设置成非矩形的不规则图形,也即异形屏。显示屏1805可以采用lcd(liquid crystal display,液晶显示屏)、oled(organic light-emitting diode,有机发光二极管)等材质制备。
[0239]
摄像头组件1806用于采集图像或视频。可选地,摄像头组件1806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtual reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
[0240]
音频电路1807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1801进行处理,或者输入至射频电路1804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1801或射频电路1804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1807还可以包括耳机插孔。
[0241]
定位组件1808用于定位终端1800的当前地理位置,以实现导航或lbs(location based service,基于位置的服务)。定位组件1808可以是基于美国的gps(global positioning system,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的
伽利略系统的定位组件。
[0242]
电源1809用于为终端1800中的各个组件进行供电。电源1809可以是交流电、直流电、一次性电池或可充电电池。当电源1809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
[0243]
在一些实施例中,终端1800还包括有一个或多个传感器1810。该一个或多个传感器1810包括但不限于:加速度传感器1811、陀螺仪传感器1812、压力传感器1813、指纹传感器1814、光学传感器1815以及接近传感器1816。
[0244]
加速度传感器1811可以检测以终端1800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1811可以用于检测重力加速度在三个坐标轴上的分量。处理器1801可以根据加速度传感器1811采集的重力加速度信号,控制触摸显示屏1805以横向视图或纵向视图进行用户界面的显示。加速度传感器1811还可以用于游戏或者用户的运动数据的采集。
[0245]
陀螺仪传感器1812可以检测终端1800的机体方向及转动角度,陀螺仪传感器1812可以与加速度传感器1811协同采集用户对终端1800的3d动作。处理器1801根据陀螺仪传感器1812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。
[0246]
压力传感器1813可以设置在终端1800的侧边框和/或触摸显示屏1805的下层。当压力传感器1813设置在终端1800的侧边框时,可以检测用户对终端1800的握持信号,由处理器1801根据压力传感器1813采集的握持信号进行左右手识别或快捷操作。当压力传感器1813设置在触摸显示屏1805的下层时,由处理器1801根据用户对触摸显示屏1805的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
[0247]
指纹传感器1814用于采集用户的指纹,由处理器1801根据指纹传感器1814采集到的指纹识别用户的身份,或者,由指纹传感器1814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1814可以被设置终端1800的正面、背面或侧面。当终端1800上设置有物理按键或厂商logo时,指纹传感器1814可以与物理按键或厂商logo集成在一起。
[0248]
光学传感器1815用于采集环境光强度。在一个实施例中,处理器1801可以根据光学传感器1815采集的环境光强度,控制触摸显示屏1805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1805的显示亮度;当环境光强度较低时,调低触摸显示屏1805的显示亮度。在另一个实施例中,处理器1801还可以根据光学传感器1815采集的环境光强度,动态调整摄像头组件1806的拍摄参数。
[0249]
接近传感器1816,也称距离传感器,通常设置在终端1800的前面板。接近传感器1816用于采集用户与终端1800的正面之间的距离。在一个实施例中,当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变小时,由处理器1801控制触摸显示屏1805从亮屏状态切换为息屏状态;当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变大时,由处理器1801控制触摸显示屏1805从息屏状态切换为亮屏状态。
[0250]
本领域技术人员可以理解,图18中示出的结构并不构成对终端1800的限定,可以
包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
[0251]
图19是本公开实施例提供的一种服务器的结构示意图,服务器1900是电子设备的一种示例性说明。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)1901和一个或一个以上的存储器1902,其中,该存储器1902中存储有至少一条程序代码,该至少一条程序代码由该处理器1901加载并执行以实现上述各个实施例提供的图像处理方法。当然,该服务器1900还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1900还可以包括其他用于实现设备功能的部件,在此不做赘述。
[0252]
在示例性实施例中,还提供了一种包括至少一条指令的计算机可读存储介质,例如包括至少一条指令的存储器,上述至少一条指令可由电子设备中的处理器执行以完成上述实施例中的图像处理方法。可选地,上述计算机可读存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以包括rom(read-only memory,只读存储器)、ram(random-access memory,随机存取存储器)、cd-rom(compact disc read-only memory,只读光盘)、磁带、软盘和光数据存储设备等。
[0253]
在示例性实施例中,还提供了一种计算机程序产品,包括一条或多条指令,该一条或多条指令可以由电子设备的处理器执行,以完成上述各个实施例提供的图像处理方法。
[0254]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0255]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
技术特征:
1.一种图像处理方法,其特征在于,包括:对原始图像进行分块,得到多个图像块;确定所述多个图像块中的多个目标图像块,所述目标图像块包括所述原始图像中的前景像素;基于所述多个目标图像块,生成压缩图像和索引信息,所述压缩图像为所述多个目标图像块重排得到的图像,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系。2.根据权利要求1所述的图像处理方法,其特征在于,所述基于所述多个目标图像块,生成压缩图像包括:对所述多个目标图像块进行复制,将复制得到的多个目标图像块进行重新排列,得到所述压缩图像,其中,所述压缩图像的尺寸小于所述原始图像的尺寸。3.根据权利要求1所述的图像处理方法,其特征在于,所述基于所述多个目标图像块,生成压缩图像包括:确定每个目标图像块对应的第一图像块,所述第一图像块中包含对应的目标图像块和从所述目标图像块边缘向外部延伸的第一边缘区域;将各个所述第一图像块进行重新排列,得到所述压缩图像。4.根据权利要求1所述的图像处理方法,其特征在于,所述基于所述多个目标图像块,生成压缩图像包括:基于目标比例,对所述原始图像进行缩小,得到第一图像;在所述第一图像中,确定每个目标图像块对应的第二图像块,所述第二图像块中包含对应的缩小后的目标图像块和从所述缩小后的目标图像块边缘向外部延伸的第二边缘区域;将各个所述第二图像块进行重新排列,得到所述压缩图像;其中,所述目标比例为所述缩小后的目标图像块与缩小前的目标图像块的尺寸之比。5.一种图像处理方法,其特征在于,包括:获取压缩图像和索引信息,所述压缩图像为原始图像的多个目标图像块重排得到的图像,所述目标图像块包括所述原始图像中的前景像素,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系;基于所述索引信息,对每个待渲染的图像块,从所述压缩图像中对应的目标图像块中获取前景像素;基于每个待渲染的图像块对应的前景像素,对相应的图像块进行渲染,得到所述原始图像。6.一种图像处理装置,其特征在于,包括:分块单元,被配置为执行对原始图像进行分块,得到多个图像块;确定单元,被配置为执行确定所述多个图像块中的多个目标图像块,所述目标图像块包括所述原始图像中的前景像素;生成单元,被配置为执行基于所述多个目标图像块,生成压缩图像和索引信息,所述压缩图像为所述多个目标图像块重排得到的图像,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系。
7.一种图像处理装置,其特征在于,包括:第一获取单元,被配置为执行获取压缩图像和索引信息,所述压缩图像为原始图像的多个目标图像块重排得到的图像,所述目标图像块包括所述原始图像中的前景像素,所述索引信息用于指示所述目标图像块在所述原始图像和所述压缩图像中的位置映射关系;第二获取单元,被配置为执行基于所述索引信息,对每个待渲染的图像块,从所述压缩图像中对应的目标图像块中获取前景像素;渲染单元,被配置为执行基于每个待渲染的图像块对应的前景像素,对相应的图像块进行渲染,得到所述原始图像。8.一种电子设备,其特征在于,包括:一个或多个处理器;用于存储所述一个或多个处理器可执行指令的一个或多个存储器;其中,所述一个或多个处理器被配置为执行所述指令,以实现如权利要求1至权利要求4中任一项或权利要求5所述的图像处理方法。9.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的至少一条指令由电子设备的一个或多个处理器执行时,使得所述电子设备能够执行如权利要求1至权利要求4中任一项或权利要求5所述的图像处理方法。10.一种计算机程序产品,其特征在于,包括一条或多条指令,所述一条或多条指令由电子设备的一个或多个处理器执行,使得所述电子设备能够执行如权利要求1至权利要求4中任一项或权利要求5所述的图像处理方法。
技术总结
本公开关于一种图像处理方法、装置、电子设备及存储介质,属于计算机技术领域。该方法包括:对原始图像进行分块,得到多个图像块;确定多个图像块中包含前景像素的多个目标图像块;将多个目标图像块重排得到压缩图像,并生成用于指示目标图像块在原始图像和压缩图像中的位置映射关系的索引信息。本公开能够在保证在经过压缩前后的图像质量无损的前提下极大节约内存占用。大节约内存占用。大节约内存占用。
技术研发人员:杨鼎超 朱恬倩 施侃乐
受保护的技术使用者:北京达佳互联信息技术有限公司
技术研发日:2021.11.15
技术公布日:2022/3/8