1.本技术属于通信技术领域,具体涉及一种数据处理方法及其装置。
背景技术:2.随着网络通信技术的不断发展和人们对屏幕显示清晰度要求的不断提高,手机、电视、电脑等电子设备的分辨率在朝着4k和8k的方向逐渐发展,使得图像、视频数据的传输和存储要求也在不断提升。
3.在相关技术中,可以通过嵌入式压缩方式对图像、视频数据进行处理,但是,该方式在满足有限的传输带宽和存储需求的前提下,通常无法实现视觉无损的性能,影响图像、视频数据成像质量。
技术实现要素:4.本技术实施例的目的是提供一种数据处理方法、装置、电子设备和可读存储介质,能够解决目前图像、视频压缩方式无法在降低数据传输带宽和存储的同时实现视觉无损的问题。
5.第一方面,本技术实施例提供了一种数据处理方法,该方法可以包括:
6.获取第一对象的待压缩子块;
7.通过n种预设压缩模式,分别对待压缩子块进行压缩编码处理,得到压缩编码数据集,压缩编码数据集包括与n种预设压缩模式中每种预设压缩模式对应的编码数据,n为大于1的整数;
8.根据待压缩子块和重构子块的对比结果,在n种预设压缩模式中筛选目标压缩模式,重构子块由编码数据通过解码和重构处理得到;
9.根据所述目标压缩模式对待压缩子块进行处理。
10.第二方面,本技术实施例提供了一种数据处理装置,该装置可以包括:
11.获取模块,用于获取第一对象的待压缩子块;
12.处理模块,用于通过n种预设压缩模式,分别对待压缩子块进行压缩编码处理,得到压缩编码数据集,压缩编码数据集包括与n种预设压缩模式中每种预设压缩模式对应的编码数据,n为大于1的整数;
13.筛选模块,用于根据待压缩子块和重构子块的对比结果,在n种预设压缩模式中筛选目标压缩模式,重构子块由编码数据通过解码和重构处理得到;
14.生成模块,用于根据目标压缩模式对待压缩子块进行处理。
15.第三方面,本技术实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面所示的数据处理方法的步骤。
16.第四方面,本技术实施例提供了一种可读存储介质,可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如第一方面所示的数据处理方法的步骤。
17.第五方面,本技术实施例提供了一种芯片,芯片包括处理器和数据处理接口,数据处理接口和处理器耦合,处理器用于运行程序或指令,实现如第一方面所示的数据处理方法的步骤。
18.第六方面,本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面的方法。
19.在本技术实施例中,通过n种预设压缩模式,分别对第一对象的待压缩子块进行压缩编码处理,得到与n种预设压缩模式中每种预设压缩模式对应的编码数据,接着,将每种预设压缩模式对应的编码数据进行解码和重构,得到重构子块,这样,可以对比未压缩编码待压缩子块和已压缩编码并解码、重构后的重构子块,并基于两者的对比结果,在n种预设压缩模式中筛选可以压缩待压缩子块的目标压缩模式,如此,可以在n种预设压缩模式之中,为第一对象中的每个待压缩子块,选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,并通过每个待压缩子块对应的目标压缩模式对每个待压缩子块进行处理,以得到与每个待压缩子块对应的既可以满足传输带宽要求、也可以实现视觉无损性能的压缩结果,从而进一步提高解压后的第一对象的成像质量。
附图说明
20.图1为本技术实施例提供的数据处理方法的流程图;
21.图2为本技术实施例提供的一种数据处理方法中对应关系示意图;
22.图3为本技术实施例提供的一种数据处理装置的结构示意图;
23.图4为本技术实施例提供的一种电子设备的结构示意图;
24.图5为本技术实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
25.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本技术保护的范围。
26.本技术的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
27.随着网络通信技术的不断发展和人们对屏幕显示清晰度要求的不断提高,手机、电视、电脑等电子设备的分辨率在朝着2k、4k和8k的方向逐渐发展。然而,需要传输和存储的图像、视频数据的不断增大,为电子设备的内存带宽和计算能力带来了极大的挑战,如此,图像、视频压缩技术对于减小数据传输带宽和内存消耗有着十分重要意义。
28.在相关技术中,可以通过嵌入式压缩方式或采用单一压缩模式进行压缩。然而,前者在满足有限传输带宽和存储需求的前提下通常无法达到视觉无损的性能;后者则忽略了主观人眼视觉对不同画面误差的敏感度和客观数据压缩误差最小并不完全统一,往往也无
法在满足有限传输带宽和存储需求的前提下实现视觉无损性能,或者在实现视觉无损性能的情况下满足传输带宽和存储需求。
29.因此,本技术实施例提供了一种基于多压缩模式的图像、视频压缩和解压的数据处理方法,可以通过n种预设压缩模式,分别对第一对象的待压缩子块进行压缩编码处理,得到与n种预设压缩模式中每种预设压缩模式对应的编码数据,接着,将每种预设压缩模式对应的编码数据进行解码和重构,得到重构子块,这样,可以对比未压缩编码待压缩子块和已压缩编码并解码、重构后的重构子块,并基于两者的对比结果,在n种预设压缩模式中筛选可以压缩待压缩子块的目标压缩模式,如此,可以在n种预设压缩模式之中,为第一对象中的每个待压缩子块,选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,并通过每个待压缩子块对应的目标压缩模式对每个待压缩子块进行处理,以得到与每个待压缩子块对应的既可以满足传输带宽要求、也可以实现视觉无损性能的压缩结果,从而进一步提高解压后的第一对象的成像质量。
30.基于此,本技术实施例提供了一种数据处理方法,下面结合图1至图3对本技术实施例提供的数据处理方法进行详细说明。
31.图1为本技术实施例提供的一种数据处理方法的流程图。
32.如图1所示,该数据处理方法,具体可以包括如下步骤:
33.步骤110,获取第一对象的待压缩子块;步骤120,通过n种预设压缩模式,分别对待压缩子块进行压缩编码处理,得到压缩编码数据集,压缩编码数据集包括与n种预设压缩模式中每种预设压缩模式对应的编码数据,n为大于1的整数;步骤130,根据待压缩子块和重构子块的对比结果,在n种预设压缩模式中筛选目标压缩模式,重构子块由编码数据通过解码和重构处理得到;步骤140,根据目标压缩模式对待压缩子块进行处理。
34.这样,可以对比未压缩编码待压缩子块和已压缩编码并解码、重构后的重构子块,并基于两者的对比结果,在n种预设压缩模式中筛选可以压缩待压缩子块的目标压缩模式,如此,可以在n种预设压缩模式之中,为第一对象中的每个待压缩子块,选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,并通过每个待压缩子块对应的目标压缩模式对每个待压缩子块进行处理,以得到与每个待压缩子块对应的既可以满足传输带宽要求、也可以实现视觉无损性能的压缩结果,从而进一步提高解压后的第一对象的成像质量。
35.下面对上述步骤进行详细说明,具体如下所示。
36.首先,涉及步骤110,在一种或多种可能的实施例中,该步骤110具体可以包括:
37.按照划分条件对第一对象进行分割,得到m个待压缩子块,m为正整数,划分条件包括下述中的至少一种:分割数量、分割尺寸。
38.示例性地,以第一对象为图像为例,可以对该图像按照分割尺寸进行划分,得到m个待压缩子块(range block),这里,待压缩子块可以为压缩该图像的基本单元。具体地,待压缩子块的分割尺寸可以是i*j的像素区域,i和j的取值范围分别是[1,图像高度]和[1,图像宽度],例如,图像尺寸是1920*1080,n的取值范围即为[1,1080],m的取值范围即为[1,1920]。
[0039]
另外,还可以对该图像按照分割数量进行划分,其m为预设的分割数量。同理,还可以对该图像既按照预设的分割数量,还按照预设的分割尺寸对图像进行划分,这样,可以得到与预设的分割数量对应的待压缩子块,且每个待压缩子块的尺寸为预设的分割尺寸。
[0040]
需要说明的是,本技术实施例中的待压缩子块如果其尺寸小于或等于预设尺寸,那么,可以将其第一对象作为一个整体作为待压缩子块。
[0041]
以及,在另一种或多种可能的实施例中,在步骤110之前,该数据处理方法还可以包括:
[0042]
获取第一对象,第一对象可以包括下述中的至少一种:图像、视频。其中,视频可以为多帧图像的视频流。具体地,第一对象可以是具有rgb、yuv格式的对象。rgb格式可以包括red(红色)、green(绿色)和blue(蓝色)三通道的色彩空间数据。yuv格式可以用来描述图像的色彩饱和度,其中,y表示明亮度,u/v表示色度。
[0043]
需要说明的是,上述涉及的第一对象还可以是未经加工(raw)图像或灰度图。其中,raw图像是sensor出来的最原始的数据,通常为4通道,会有不同的bayer类型,如gbrg、grbg、rbbg、gbbr等;灰度图是指只有单一通道的图像如g通道、b通道或r通道。
[0044]
接着,涉及步骤120,本技术实施例中的预设压缩模式可以包括下述中的至少两种算法:预测、变换、量化,这样,可以通过前述中的一种算法或多种算法的组合,对上述步骤110中m个待压缩子块中的每个待压缩子块进行近无损或有损压缩编码处理。
[0045]
具体地,上述涉及的预测算法可以包括利用当前像素和邻近像素对当前像素进行预测的算法,如水平方向预测、垂直方向预测、中值边缘预测(median-edge detector,med预测)等。上述涉及的变换算法可以包括将第一对象如图像的图像信号在时域和空域之间进行相互转换的变换算法,如离散余弦变换(discrete cosine transform,dct变换)、离散傅里叶变换(discrete fourier transform,dft变换)、离散小波变换(discrete wavelet transform、dwt变换)、离散沃尔什-哈达玛变换(discrete walsh-hadamard transform,dwht变换)等。上述涉及的量化算法可以包括标量量化和矢量量化算法,如均匀量化、非均匀量化等。基于此,可以采用预测和量化算法组合的模式,如差分脉冲编码调制(differential pulse code modulation,dpcm)算法。
[0046]
基于此,本技术实施例中的编码数据可以包括通过上述预设压缩模式对待压缩子块进行压缩编码处理后得到的压缩数据。
[0047]
示例性地,如图2所示,n取3,即预设压缩模式1、预设压缩模式2和预设压缩模式3,这样,可以通过预设压缩模式1、预设压缩模式2和预设压缩模式3对待压缩子块a进行压缩编码处理,得到与预设压缩模式1对应的编码数据1、与预设压缩模式2对应的编码数据2和与预设压缩模式3对应的编码数据3,该编码数据1、编码数据2和编码数据3可以构成待压缩子块a的压缩编码数据集。
[0048]
同理,基于上述步骤110中的实例,若待压缩子块的数量为n个,那么,基于同样的压缩编码处理过程,得到n个待压缩子块中每个待压缩子块的压缩编码数据集。
[0049]
这里,需要说明的是,由于经过无损压缩编码前、后的第一对象如图像是完全相等的,且对于不同的图像,压缩后的编码数据大小也不同,无法控制其需要的存储需求和传输带宽大小,因此,本技术实施例中预设压缩模式可以包括预测、变换、量化等近无损或有损压缩编码算法,其无损压缩编码算法可以并不包含在本技术实施例中的预设压缩模式中。
[0050]
再者,涉及步骤130,在一种或多种可能的实施例中,预设压缩模式对应预设解压模式,基于此,在步骤130之前,该数据处理方法还可以包括:
[0051]
根据与预设压缩模式对应预设解压模式,对编码数据进行解码和重构处理,得到
重构子块。
[0052]
具体地,本技术实施例中的解码和重构处理过程,可以为通过n种预设压缩模式中的每种预设压缩模式对应的预设解压模式,对编码数据进行解码,并对解码后的数据进行重构,得到被压缩、解压缩后的子块(range)即重构子块的过程。例如,待压缩子块大小为8*8,对其进行压缩、解压缩后,得到仍为8*8大小的重构子块。
[0053]
虽然,两者的子块尺寸相同,但是,子块中的像素值、像素分布等特征会有不同,下面分别对两种子块的区别进行说明。
[0054]
为了计算待压缩子块和重构子块的对比结果,在一种或多种可能的实施例中,对比结果可以包括全局误差数据和局部误差数据,其中,全局误差数据用于表征待压缩子块和重构子块之间的整体误差大小和误差分布;局部误差数据用于表征待压缩子块中各像素点和重构子块中各像素点之间的误差极值大小和误差分布范围。
[0055]
基于此,该步骤130具体可以包括:
[0056]
步骤1301,从待压缩子块与n个重构子块的每个重构子块的对比结果中,筛选目标对比结果,目标对比结果满足下述中的至少一项:全局误差数据小于或等于第一预设阈值、局部误差数据小于或等于第二预设阈值;
[0057]
步骤1302,将与目标对比结果对应的预设压缩模式确定为目标压缩模式。
[0058]
进一步地,可以通过下述内容对获取全局误差数据和局部误差数据的步骤进行详细说明,这里,需要提示的是,获取全局误差数据和局部误差数据的先后顺序再次并不限定。
[0059]
在一个实例中,计算全局误差数据,基于此,在步骤1301之前,该数据处理方法还可以包括:
[0060]
步骤1303,根据待压缩子块的尺寸和重构子块的像素值,通过预设算法,计算全局误差数据;
[0061]
其中,预设算法包括下述中的至少一种:绝对误差和、误差平方和、平均绝对误差、均方误差、均方根误差。
[0062]
具体地,全局误差数据可以包括子块误差(block_error),是指重构子块和待压缩子块之间的子块误差。
[0063]
预设算法包括但不限于下述中的至少一种:绝对误差和算法(sum of absolute difference/sum of absolute error,sad/sae)、误差平方和算法(sum of squared difference/sum of squared error,ssd/sse)、平均绝对误差算法(mean absolute difference/mean absolute error,mad/mae)、均方误差(mean squared difference/mean squared error,msd/mse)、均方根误差(root mean squared difference/root mean squared error,rmsd/rmse)
[0064]
示例性地,每种预设算法的计算公式如下:
[0065]
绝对误差和算法,即公式(1):
[0066][0067]
误差平方和算法,即公式(2):
[0068][0069]
平均绝对误差算法,即公式(3):
[0070][0071]
均方误差算法,即公式(4):
[0072][0073]
均方根误差算法,即公式(5):
[0074][0075]
其中,上述公式(1)至公式(5)中的n和m分别表示待压缩子块的高和宽,y
i,j
表示重构子块的像素值,x
i,j
表示待压缩子块的像素值。
[0076]
在另一个实例中,计算局部误差数据,基于此,在步骤1301之前,该数据处理方法还可以包括:
[0077]
步骤1304,根据待压缩子块中第一像素点的像素值与重构子块中第二像素点的像素值,计算局部误差数据,第一像素点和第二像素点的像素坐标相同。
[0078]
进一步地,局部误差数据包括最大误差值、中间误差值和最小误差值;基于此,该步骤1304具体可以包括:
[0079]
计算待压缩子块中第一像素点的像素值与重构子块中第二像素点的差值;
[0080]
将差值中绝对值最小的值确定为最小误差值、将差值中绝对值最大的值确定为最大误差值、以及将差值中绝对值的中值确定为中间误差值。
[0081]
具体地,最小误差值(min_error)为重构子块和待压缩子块内各像素相减所得到的绝对误差子块中的最小值;中间误差值(middle_error)为重构子块和待压缩子块内各像素相减所得到的绝对误差子块中的中间值;最大误差值(max_error)为重构子块和待压缩子块内各像素相减所得到的绝对误差子块中的最大值。其中,绝对误差子块是指重构子块与待压缩子块差值的绝对值。
[0082]
示例性地,待压缩子块为8*8像素矩阵,重构子块也为8*8像素矩阵,二者进行矩阵减法并对相减得到的矩阵中的每一个元素取绝对值,得到的矩阵即为绝对误差矩阵;在8*8绝对误差矩阵中,取数值最大的元素作为最大误差,取数值最小的元素作为最小误差,取数值在中间的元素作为中值误差。
[0083]
基于上述内容,该步骤1301中的对比结果,具体可以通过如下公式(6)实现:
[0084]
multi-mode_select_deviation=block_error*weight_0+max_error*weight_1+min_error*weight_2+middle_error*weight_3
ꢀꢀꢀꢀꢀ
(6)
[0085]
其中,multi-mode_select_deviation为待压缩子块与n个重构子块的每个重构子块的,block_error为子块误差,max_error为最大误差值,min_error为最小误差值,
middle_error为中间误差值,weight_0、weight_1、weight_2和weight_3,分别是指和子块误差、最大误差值、最小误差值和中值误差值对应的权重系数。
[0086]
进一步地,权重系数的取值范围均在[0,1]之间,且weight_0+weight_1+weight_2+weight_3=1。
[0087]
由于人眼主观视觉往往更容易观察到局部误差较大或误差分布不均匀的区域,因此通过权重系数,在全局误差数据和局部误差数据之间进行平衡,计算不同预设压缩模式的对比结果,所得对比结果中偏差最小的预设压缩模式,即为平衡全局和局部后得到的兼顾客观压缩误差和主观视觉效果的最佳压缩模式,即目标压缩模式。
[0088]
然后,涉及步骤140,在一种或多种实施例中,目标压缩模式对应目标模式序列标识,压缩结果包括码流数据,基于此,该步骤140具体可以包括:
[0089]
按照预设位宽比,将与目标模式序列标识和编码数据进行封装,得到待压缩子块压缩后的码流数据。
[0090]
具体地,模式序列标识,是指每个预先压缩模式预先指定的、互不相同的序列号,例如,n为5,这5种压缩模式对应的模式序列标识可以分别为0,1,2,3,4,不同预设压缩模式的序列号互不相同。基于此,其目标模式序列标识为目标压缩模式预先指定的、互不相同的序列号。
[0091]
以及,上述涉及的封装,是指将与待压缩子块对应的目标压缩模式对应的目标模式序列标识和编码数据,按照预设位宽比进行打包,打包成一个数据包,作为对应待压缩子块的码流数据。其中,预设位宽比,是指模式序列标识和编码数据之间的位宽比,为了方便解码,多种预设压缩模式的预设位宽比是固定的,或者遵循预设规律,例如,预设位宽比4:64,则模式序列标使用4bit保存,编码数据使用64bit保存。
[0092]
如此,本技术实施例中能够存储每个待压缩子块的最优的压缩结果,降低存储压力,减少内存消耗,避免存储第一对象作为一个整体经过n种预设压缩模式压缩后的n个压缩结果。
[0093]
然后,在一种或多种可能的实施例中,在步骤140之后,该数据处理方法还可以包括:
[0094]
将待压缩子块对应的压缩结果,按照预设顺序存储到存储单元中。
[0095]
具体地,预设顺序可以是光栅扫描的顺序,即光栅扫描显示器对相应的像素区域进行扫描的顺序(例如从左至右、从上至下进行扫描)。以及存储单元可以指用于写入压缩结果,如码流数据的存储空间。
[0096]
如此,本技术实施例提供的数据处理方法能够在多个预设压缩模式之间,为第一对象中的每个待压缩子块,选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,以通过目标压缩模式对待压缩子块进行处理,这样,能够为每个待压缩子块选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,并分别存储每个待压缩子块的最优的压缩结果,降低存储压力,减少内存消耗,避免存储第一对象作为一个整体经过n种预设压缩模式压缩后的n个压缩结果,降低了内。
[0097]
此外,本技术实施例还提供了数据解码的过程,基于此,该步骤140之后,该数据处理方法还可以包括:
[0098]
步骤150,按照预设位宽比,对待压缩子块的压缩结果进行解析,得到目标模式序
列标识;
[0099]
步骤160,根据模式序列标识和预设解压模式的关联信息,获取与目标模式序列标识对应的目标预设解压模式;
[0100]
步骤170,通过目标预设解压模式,对压缩子块的压缩结果进行解压和重构处理,得到与压缩结果对应的重构子块;
[0101]
步骤180,在重构子块为多个重构子块的情况下,拼接多个重构子块,得到解压后的第二对象。
[0102]
具体地,从存储单元中按照预设顺序读取待压缩子块的压缩结果,如码流数据。接着,对待压缩子块的码流数据,根据预设位宽比,先解出目标模式序列标识,再使用与目标模式序列标识对应的目标压缩模式的目标预设解压模式,对码流数据中的编码数据进行解码,得到与码流数据对应的重构子块重构子块。
[0103]
例如,如图3所示,若n为5,其模式序列标识分别为0,1,2,3,4,如果目标压缩模式为模式3,则对应的目标模式序列标识为3,预设位宽比为4:64,那么先取出前4bit的码流数据进行解析,得到目标模式序列标识为3,可知目标压缩模式为模式3;再使用模式3对应的预设解码模式对剩余64bit编码数据进行解码,即可得到重构子块。然后,将多个重构子块进行输出,并按照上述预设顺序对多个重构子块进行排列,得到解压后的第二对象,以便在接收到用户触发显示第二对象时,显示第二对象。
[0104]
由于本技术实施例中能够通过上述方式,为每个待压缩子块选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,且能够分别对每个待压缩子块的最优的压缩结果进行解压,以保证解压后的图像或视频达到视觉无损的性能,从而实现解压重构后呈现的图像、视频视觉效果的提升。
[0105]
此外,需要说明的是,在传输压缩后的图像的场景中,可以分批次发送上述涉及的通过目标压缩模式对待压缩子块进行处理后的最优压缩结果,以减少每次数据传输带宽,从而在满足有限的传输带宽的前提下,实现传输视觉无损的第一对象。
[0106]
本技术实施例提供的数据处理方法,执行主体可以为数据处理装置。本技术实施例中以数据处理装置执行数据处理方法为例,说明本技术实施例提供的数据处理的装置。
[0107]
基于相同的发明构思,本技术还提供了一种数据处理装置。具体结合图3进行详细说明。
[0108]
图3为本技术实施例提供的一种数据处理装置的结构示意图。
[0109]
如图3所示,该数据处理装置30,具体可以包括:
[0110]
获取模块301,用于获取第一对象的待压缩子块;
[0111]
处理模块302,用于通过n种预设压缩模式,分别对待压缩子块进行压缩编码处理,得到压缩编码数据集,压缩编码数据集包括与n种预设压缩模式中每种预设压缩模式对应的编码数据,n为大于1的整数;
[0112]
筛选模块303,用于根据待压缩子块和重构子块的对比结果,在n种预设压缩模式中筛选目标压缩模式,重构子块由编码数据通过解码和重构处理得到;
[0113]
处理模块302还用于基于与目标压缩模式对待压缩子块进行处理。
[0114]
下面对该数据处理装置30进行详细说明,具体如下所示:
[0115]
在一个或者多个可能的实施例中,本技术实施例中的数据处理装置30还可以包括
第一确定模块;其中,
[0116]
筛选模块303还可以用于,在对比结果包括全局误差数据和局部误差数据的情况下,从待压缩子块与n个重构子块的每个重构子块的对比结果中,筛选目标对比结果,目标对比结果满足下述中的至少一项:全局误差数据小于或等于第一预设阈值、局部误差数据小于或等于第二预设阈值;
[0117]
第一确定模块,用于将与目标对比结果对应的预设压缩模式确定为目标压缩模式;
[0118]
其中,全局误差数据用于表征待压缩子块和重构子块之间的整体误差大小和误差分布;局部误差数据用于表征待压缩子块中各像素点和重构子块中各像素点之间的误差极值大小和误差分布范围。
[0119]
在另一个或者多个可能的实施例中,本技术实施例中的数据处理装置30还可以包括计算模块和第二确定模块;其中,
[0120]
计算模块,用于在局部误差数据包括最大误差值、中间误差值和最小误差值的情况下,计算待压缩子块中第一像素点的像素值与重构子块中第二像素点的差值,第一像素点和第二像素点的像素坐标相同;
[0121]
第二确定模块,用于将差值中绝对值最小的值确定为最小误差值、将差值中绝对值最大的值确定为最大误差值、以及将差值中绝对值的中值确定为中间误差值。
[0122]
在又一个或者多个可能的实施例中,本技术实施例中的处理模块302具体用于,在目标压缩模式对应目标模式序列标识,压缩结果包括码流数据的情况下,按照预设位宽比,将与目标模式序列标识和编码数据进行封装,得到待压缩子块压缩后的码流数据。
[0123]
在再一个或者多个可能的实施例中,本技术实施例中的数据处理装置30还可以包括解析模块、解压模块和拼接模块;其中,
[0124]
解析模块,用于按照预设位宽比,对待压缩子块的压缩结果进行解析,得到目标模式序列标识;
[0125]
获取模块301还可以用于,根据模式序列标识和预设解压模式的关联信息,获取与目标模式序列标识对应的目标预设解压模式;
[0126]
解压模块,用于通过目标预设解压模式,对压缩子块的压缩结果进行解压和重构处理,得到与压缩结果对应的重构子块;
[0127]
拼接模块,用于在重构子块为多个重构子块的情况下,拼接多个重构子块,得到解压后的第二对象。
[0128]
本技术实施例中的数据处理装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(mobile internet device,mid)、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,还可以为服务器、网络附属存储器(network attached storage,nas)、个人计算机(personal computer,pc)、电视机(television,tv)、柜员机或者自助机等,本技术实施例不作具体限定。
[0129]
本技术实施例中的数据处理装置可以为具有操作系统的装置。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本技术实施例不作具体限定。
[0130]
本技术实施例提供的数据处理装置能够实现图1至图3的方法实施例实现的各个过程,达到相同的技术效果,为避免重复,这里不再赘述。
[0131]
在本技术实施例中,通过n种预设压缩模式,分别对第一对象的待压缩子块进行压缩编码处理,得到与n种预设压缩模式中每种预设压缩模式对应的编码数据,接着,将每种预设压缩模式对应的编码数据进行解码和重构,得到重构子块,这样,可以对比未压缩编码待压缩子块和已压缩编码并解码、重构后的重构子块,并基于两者的对比结果,在n种预设压缩模式中筛选可以压缩待压缩子块的目标压缩模式,如此,可以在n种预设压缩模式之中,为第一对象中的每个待压缩子块,选出兼顾客观压缩误差和主观视觉效果的最佳的目标压缩模式,并通过每个待压缩子块对应的目标压缩模式对每个待压缩子块进行处理,以得到与每个待压缩子块对应的既可以满足传输带宽要求、也可以实现视觉无损性能的压缩结果,从而进一步提高解压后的第一对象的成像质量。
[0132]
可选的,如图4所示,本技术实施例还提供一种电子设备40,包括处理器401和存储器402,存储器402上存储有可在处理器401上运行的程序或指令,该程序或指令被处理器401执行时实现上述数据处理方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0133]
需要说明的是,本技术实施例中的电子设备如第一电子设备和第二电子设备包括上述的移动电子设备和非移动电子设备。
[0134]
图5为本技术实施例提供的一种电子设备的硬件结构示意图。
[0135]
该电子设备500包括但不限于:射频单元501、网络模块502、音频输出单元503、输入单元504、传感器505、显示单元606、用户输入单元507、接口单元508、存储器509以及处理器510等部件。
[0136]
本领域技术人员可以理解,电子设备500还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器510逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图5中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
[0137]
其中,在本技术实施例中,处理器510,用于获取第一对象的待压缩子块。处理器510还可以用于,通过n种预设压缩模式,分别对待压缩子块进行压缩编码处理,得到压缩编码数据集,压缩编码数据集包括与n种预设压缩模式中每种预设压缩模式对应的编码数据,n为大于1的整数。处理器510还可以用于,根据待压缩子块和重构子块的对比结果,在n种预设压缩模式中筛选目标压缩模式,重构子块由编码数据通过解码和重构处理得到。处理器510还可以用于,基于与目标压缩模式对待压缩子块进行处理。
[0138]
在一个或者多个可能的实施例中,本技术实施例中的处理器510具体可以用于,在对比结果包括全局误差数据和局部误差数据的情况下,从待压缩子块与n个重构子块的每个重构子块的对比结果中,筛选目标对比结果,目标对比结果满足下述中的至少一项:全局误差数据小于或等于第一预设阈值、局部误差数据小于或等于第二预设阈值;
[0139]
将与目标对比结果对应的预设压缩模式确定为目标压缩模式;
[0140]
其中,全局误差数据用于表征待压缩子块和重构子块之间的整体误差大小和误差分布;局部误差数据用于表征待压缩子块中各像素点和重构子块中各像素点之间的误差极值大小和误差分布范围。
[0141]
在另一个或者多个可能的实施例中,本技术实施例中的处理器510还可以用于,在局部误差数据包括最大误差值、中间误差值和最小误差值的情况下,计算待压缩子块中第一像素点的像素值与重构子块中第二像素点的差值,第一像素点和第二像素点的像素坐标相同;将差值中绝对值最小的值确定为最小误差值、将差值中绝对值最大的值确定为最大误差值、以及将差值中绝对值的中值确定为中间误差值。
[0142]
在又一个或者多个可能的实施例中,本技术实施例中的处理器510具体用于,在目标压缩模式对应目标模式序列标识,压缩结果包括码流数据的情况下,按照预设位宽比,将与目标模式序列标识和编码数据进行封装,得到待压缩子块压缩后的码流数据。
[0143]
在再一个或者多个可能的实施例中,本技术实施例中的处理器510还可以用于,按照预设位宽比,对待压缩子块的压缩结果进行解析,得到目标模式序列标识;
[0144]
根据模式序列标识和预设解压模式的关联信息,获取与目标模式序列标识对应的目标预设解压模式;
[0145]
通过目标预设解压模式,对压缩子块的压缩结果进行解压和重构处理,得到与压缩结果对应的重构子块;
[0146]
在重构子块为多个重构子块的情况下,拼接多个重构子块,得到解压后的第二对象。
[0147]
应理解的是,输入单元504可以包括图形处理器(graphics processing unit,gpu)5041和麦克风5042,图形处理器5041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图像或视频的图像数据进行处理。显示单元606可包括显示面板,可以采用液晶显示器、有机发光二极管等形式来配置显示面板。用户输入单元507包括触控面板5071以及其他输入设备5072中的至少一种。触控面板5071,也称为触摸屏。触控面板5071可包括触摸检测装置和触摸显示器两个部分。其他输入设备5072可以包括但不限于物理键盘、功能键(比如音量显示按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
[0148]
存储器509可用于存储软件程序以及各种数据,存储器509可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器509可以包括易失性存储器或非易失性存储器,或者,存储器509可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,
drram)。本技术实施例中的存储器509包括但不限于这些和任意其它适合类型的存储器。
[0149]
处理器510可包括一个或多个处理单元;可选的,处理器510集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线数据处理信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器510中。
[0150]
本技术实施例还提供一种可读存储介质,可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0151]
其中,处理器为上述实施例中的电子设备中的处理器。其中,可读存储介质,包括计算机可读存储介质,如计算机只读存储器rom、随机存取存储器ram、磁碟或者光盘等。
[0152]
另外,本技术实施例另提供了一种芯片,芯片包括处理器和数据处理接口,数据处理接口和处理器耦合,处理器用于运行程序或指令,实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0153]
应理解,本技术实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
[0154]
本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0155]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0156]
此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
[0157]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
[0158]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。