本发明涉及图像处理,尤其涉及一种图像的下采样方法及装置。
背景技术:
1、图像下采样(subsampled)又称为图像降采样(down sampled),是一种对图像的进行缩小的技术。在需要使用图像的场景中,常常会有将图像缩小为预设显示区域的尺寸、生成图像的缩略图等将目标图像缩小为预设尺寸的图像的需求,因此图像下采样是一个常见的图像处理问题。
2、目前的图像下采样算法很难兼顾下采样得到的图像的画质和实现图像下采样的设备的性能开销,因此如何在保证下采样图像的画质的同时,减少图像下采样的性能开销是一个需要不断探究的问题。
技术实现思路
1、有鉴于此,本发明提供了一种图像的下采样方法及装置,用于保证下采样图像的画质的同时,减少图像下采样的性能开销。
2、为了实现上述目的,本发明实施例提供技术方案如下:
3、第一方面,本发明的实施例提供了一种图像的下采样方法,包括:
4、获取目标图像和所述目标图像的下采样率;
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、本发明实施例提供的图像的下采样方法在对目标图像进行下采样时,先确定目标图像的下采样率所属的下采样区间,然后当所述下采样率属于第一下采样区间时,使用第一下采样算法对所述目标图像进行下采样,获取所述目标图像的下采样图像,当所述下采样率属于第二下采样区间时,使用第二下采样算法对所述目标图像进行下采样,获取所述目标图像的下采样图像。由于下采样率越大,则相同采样算法得到的下采样图像的画质越弱,因此本发明实施例在下采样率属于第一下采样区间(下采样率较小)时,使用性能开销相对最小的第一下采样算法对所述目标图像进行下采样获取所述目标图像的下采样图像,从而节省对图像进行下采样的性能开销,在下采样率属于第二下采样区间(下采样率较大)时,使用对图像进行下采样得到的下采样图像的画质最强的第二下采样算法对目标图像进行下采样获取所述目标图像的下采样图像,从而提升对目标图像进行下采样得到的下采样图像的画质。由于本发明实施例可以针对不同的下采样率使用相应的采样算法对目标图像进行下采样,因此本发明实施例可以在保证下采样图像的画质的同时,减少图像下采样的性能开销。