CN114363621B - 图像压缩方法、装置、计算机设备和存储介质 - Google Patents
图像压缩方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114363621B CN114363621B CN202210035324.3A CN202210035324A CN114363621B CN 114363621 B CN114363621 B CN 114363621B CN 202210035324 A CN202210035324 A CN 202210035324A CN 114363621 B CN114363621 B CN 114363621B
- Authority
- CN
- China
- Prior art keywords
- component
- difference value
- image block
- maximum
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000006835 compression Effects 0.000 claims abstract description 470
- 238000007906 compression Methods 0.000 claims abstract description 470
- 238000000034 method Methods 0.000 claims abstract description 59
- 230000006837 decompression Effects 0.000 claims description 55
- 238000004590 computer program Methods 0.000 claims description 24
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 8
- 241000023320 Luma <angiosperm> Species 0.000 claims description 3
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 3
- 238000012937 correction Methods 0.000 description 13
- 238000006066 Comins reaction Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Abstract
本申请涉及一种图像压缩方法、装置、计算机设备和存储介质。该方法包括:针对目标图像中的每个图像块,获取图像块在基色颜色空间下的第一图像块数据;将第一图像块数据转换为目标颜色空间下的第二图像块数据;针对亮度分量、第一色度分量和第二色度分量中每个分量,基于第二图像块数据确定图像块在分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,选取与第二图像块数据匹配的目标压缩编码方式;将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据。本申请方案能够提高图像压缩质量。
Description
技术领域
本申请涉及图像处理技术领域,特别是涉及一种图像压缩方法、装置、计算机设备和存储介质。
背景技术
随着图像处理技术的发展,出现了图像压缩技术。人类视觉特性导致人类对色差分量不敏感,因此可以通过对色度粗采样达到图像压缩的目的。现有的压缩技术对YUV(亮度和色差)格式的图像数据进行压缩,比如YUV422。
虽然YUV422每两个亮度分量共用一组色度分量,最终可以实现2/3的压缩比,但是,在像素色度变化范围比较大的区域,相邻的色度分量相差很大,两个亮度分量共用一组色度分量会产生较大的误差,导致压缩后图像的质量不佳。因此,有必要提出一种能够保证图像压缩质量的图像压缩方法。
发明内容
基于此,有必要针对上述技术问题,提供一种保证图像压缩质量的图像压缩方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种图像压缩方法。所述方法包括:
针对待压缩的目标图像中的每个图像块,获取所述图像块在基色颜色空间下的第一图像块数据;
将所述第一图像块数据转换为目标颜色空间下的第二图像块数据;所述目标颜色空间包括亮度分量、第一色度分量和第二色度分量;所述第二图像块数据包括所述图像块中各像素分别在所述亮度分量、第一色度分量和第二色度分量下的分量值;
针对所述亮度分量、第一色度分量和第二色度分量中每个分量,基于所述第二图像块数据确定所述图像块在所述分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;
根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式;
将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的所述目标压缩编码方式的标识;所述标识用于指示对相应图像块的压缩数据进行解压缩。
在其中一个实施例中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;所述根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式包括:
若所述最大橙度差值和最大绿度差值满足第一无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一无损压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
获取所述第二图像块数据中各像素的橙度分量值分别与最小橙度分量值之间的橙度分量差值、以及获取所述第二图像块数据中各像素的绿度分量值分别与最小绿度分量值之间的绿度分量差值;
根据所述第一无损压缩编码方式,使用第一标识存储位数的比特位存储所述第一无损压缩编码方式的标识、使用第一橙度差值存储位数和第一绿度差值存储位数的比特位分别存储各所述橙度分量差值和各所述绿度分量差值、以及使用第一分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据;
其中,第一橙度差值存储位数和第一绿度差值存储位数分别与所述最大橙度差值和最大绿度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
在其中一个实施例中,所述方法还包括:
若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二无损压缩编码方式;第二无损压缩条件比第一无损压缩条件所要求的最大绿度差值和最大橙度差值要大;
获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;
根据所述第二无损压缩编码方式,使用第二标识存储位数的比特位存储所述第二无损压缩编码方式的标识、使用第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数的比特位分别存储各所述橙度分量差值、各所述绿度分量差值及各所述亮度分量差值、以及使用第二分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的无损压缩数据;
其中,第二橙度差值存储位数和第二绿度差值存储位数分别与所述最大橙度差值和最大绿度差值相匹配;所述第一亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
在其中一个实施例中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;所述根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式包括:
若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第一有损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一有损压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;
根据所述第一有损压缩编码方式,使用第三标识存储位数的比特位存储所述第一有损压缩编码方式的标识、使用第一有损差值存储位数的比特位分别存储各所述橙度分量差值及各所述绿度分量差值的二进制数据中前第一预设位数的数据、使用第二亮度差值存储位数的比特位分别存储各所述亮度分量差值、以及使用第一橙度分量值存储位数、第一绿度分量值存储位数及第一亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据;
其中,所述第一预设位数与所述第一有损差值存储位数相符;所述第二亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
在其中一个实施例中,所述方法还包括:
若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二有损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二有损压缩编码方式;所述第二有损压缩编码方式的压缩损失高于第一有损压缩编码方式的压缩损失;
根据所述第二有损压缩编码方式,使用第四标识存储位数的比特位存储所述第二有损压缩编码方式的标识、使用橙度有损差值存储位数存储各所述橙度分量差值的二进制数据中前第二预设位数的数据、使用绿度有损差值存储位数的比特位存储各所述绿度分量差值的二进制数据中前第三预设位数的数据、使用第三亮度差值存储位数的比特位存储各所述亮度分量差值、以及使用第二橙度分量值存储位数、第二绿度分量值存储位数及第二亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据;
其中,橙度有损差值存储位数小于绿度有损差值存储位数;所述橙度有损差值存储位数与所述第二预设位数相符,所述绿度有损差值存储位数与所述第三预设位数相符;所述第三亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
在其中一个实施例中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;所述根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式包括:
若所述最大亮度差值、最大橙度差值和最大绿度差值满足原始空间压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为基色颜色空间压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
根据所述基色颜色空间压缩编码方式,使用第五标识存储位数的比特位存储所述基色颜色空间压缩编码方式的标识、使用基色空间存储位数分别存储所述第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前第四预设位数的数据,得到大小符合预设压缩比例的图像块的基色压缩数据;
其中,所述基色空间存储位数与第四预设位数相符;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
在其中一个实施例中,所述方法还包括图像解码步骤;所述图像解码步骤包括:
针对每个图像块的压缩数据,根据所述压缩数据中的目标压缩编码方式的标识,确定针对所述压缩数据的目标解压缩编码方式;所述目标解压缩方式与目标压缩编码方式一一对应;
按照所述目标解压缩方式对所述压缩数据进行解压缩,得到所述目标图像。
第二方面,本申请还提供了一种图像压缩装置。所述装置包括:
获取模块,用于针对待压缩的目标图像中的每个图像块,获取所述图像块在基色颜色空间下的第一图像块数据;将所述第一图像块数据转换为目标颜色空间下的第二图像块数据;所述目标颜色空间包括亮度分量、第一色度分量和第二色度分量;所述第二图像块数据包括所述图像块中各像素分别在所述亮度分量、第一色度分量和第二色度分量下的分量值;
匹配模块,用于针对所述亮度分量、第一色度分量和第二色度分量中每个分量,基于所述第二图像块数据确定所述图像块在所述分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式;
压缩模块,用于将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的所述目标压缩编码方式的标识;所述标识用于指示对相应图像块的压缩数据进行解压缩。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请各实施例所述方法中的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请各实施例所述方法中的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本申请各实施例所述方法中的步骤。
上述图像压缩方法、装置、计算机设备、存储介质和计算机程序产品,针对待压缩的目标图像中的每个图像块,获取图像块在基色颜色空间下的第一图像块数据;将第一图像块数据转换为目标颜色空间下的第二图像块数据;目标颜色空间包括亮度分量、第一色度分量和第二色度分量;第二图像块数据包括图像块中各像素分别在亮度分量、第一色度分量和第二色度分量下的分量值;针对亮度分量、第一色度分量和第二色度分量中每个分量,基于第二图像块数据确定图像块在分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式;将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的目标压缩编码方式的标识;标识用于指示对相应图像块的压缩数据进行解压缩。能够适应性地根据最大亮度差值、最大第一色度差值和最大第二色度差值选择目标压缩编码方式,对目标图像中的每个图像块进行同比例压缩,从而避免由于像素的色差分量相差很大,导致压缩数据存在较大误差的问题,保证图像压缩的质量。
附图说明
图1为一个实施例中图像压缩方法的应用环境图;
图2为一个实施例中图像压缩方法的流程示意图;
图3为一个实施例中图像解码步骤的流程示意图;
图4为一个实施例中图像压缩装置的结构框图;
图5为一个实施例中计算机设备的内部结构图;
图6为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的图像压缩方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102可以针对待压缩的目标图像中的每个图像块,获取图像块在基色颜色空间下的第一图像块数据。终端102可以将第一图像块数据转换为目标颜色空间下的第二图像块数据。终端102可以针对亮度分量、第一色度分量和第二色度分量中每个分量,基于第二图像块数据确定图像块在分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值。终端102可以根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式。终端102可以将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据。终端102可以将压缩数据发送至服务器104,服务器104可以存储压缩数据。可以理解,终端102可以直接存储压缩数据。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种图像压缩方法,该方法可以应用于计算机设备,计算机设备可以是图1中的终端或服务器,具体包括以下步骤:
步骤202,针对待压缩的目标图像中的每个图像块,获取图像块在基色颜色空间下的第一图像块数据;将第一图像块数据转换为目标颜色空间下的第二图像块数据。
其中,基色颜色空间是以红色(Red)、绿色(Green)和蓝色(Blue)为基本色的红绿蓝(RGB)颜色空间。基色颜色空间包括红色分量、绿色分量和红色分量。目标颜色空间是亮度和色差(YUV)颜色空间。“Y”表示明亮度(Luminance或Luma),也就是灰阶值,“U”和“V”表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。目标颜色空间包括亮度分量、第一色度分量和第二色度分量。可以理解,“U”和“V”分别是第一色度分量和第二色度分量。第一图像块数据包括图像块中各像素分别在红色分量、绿色分量和红色分量下的分量值。第二图像块数据包括图像块中各像素分别在亮度分量、第一色度分量和第二色度分量下的分量值。
具体地,计算机设备可以获取待压缩的目标图像,并将目标图像拆分成多个图像块。可以理解,各图像块的大小可以相同,也可以不相同。计算机设备可以针对拆分出的每个图像块,获取图像块在基色颜色空间下的第一图像块数据。可以理解,目标图像的数据是基色颜色空间下的基色图像数据,计算机设备可以通过拆分基色图像数据直接得到图像块的第一图像块数据,计算机设备也可以通过拆分目标图像,再按照拆分出的图像块确定第一图像块数据。计算机设备可以按照第一转换公式将第一图像块数据转换为目标颜色空间下的第二图像块数据。其中,第一转换公式是将基色颜色空间的数据转换至目标颜色空间的公式。
在一个实施例中,目标颜色空间中的第一色度分量可以是橙度分量(Co),第二色度分量可以是绿度分量(Cg)。目标颜色空间可以是亮度和橙度绿度(YCoCg)颜色空间。第一转换公式是:
Y=0.25R+0.5G+0.25B (1)
Co=0.5R-0.5B (2)
Cg=-0.25R+0.5G-0.25B (3)
可以理解,若图像块中包括4个像素,则第一图像块数据中包括R1、R2、R3、R4、G1、G2、G3、G4、B1、B2、B3和B4。其中,R1、G1和B1为基色颜色空间下第一个像素的数据,R2、G2和B2为第二个像素的数据,以此类推。计算机设备将基色颜色空间的图像数据转换到目标颜色空间,得到包括Y1、Y2、Y3、Y4、Co1、Co2、Co3、Co4、Cg1、Cg2、Cg3和Cg4的第二图像块数据。其中,Y1、Co1和Cg1为目标颜色空间下第一个像素的数据,以此类推。
在一个实施例中,计算机设备可以将目标图像拆分成同等大小的图像块,每个图像块包括两行两列4个像素。可以理解,图像块与图像块之间无任何联系,计算机设备可以将每个图像块作为一个独立的处理单元,将上个图像块压缩编码完成再压缩编码接下来的图像块。比如,第一个图像块由目标图像第1行的第1至2列及第2行的第1至2列共4个像素组成,第二个图像块由目标图像第1行的第3至4列及第2行的第3至4列共4个像素组成,计算机设备压缩编码完第一个图像块以后,才能压缩编码第二个图像块中的数据,依次循环,直至将目标图像的前两行数据全部压缩编码完成,才能够接着处理第3行、第4行的数据,压缩编码的顺序与第一行、第二行的数据方式相同,依次循环,直至遍历完目标图像的全部图像块。
步骤204,针对亮度分量、第一色度分量和第二色度分量中每个分量,基于第二图像块数据确定图像块在分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式。
其中,最大亮度差值是亮度分量下的最大分量值和最小分量值的差值。最大第一色度差值是第一色度分量下的最大分量值和最小分量值的差值。最大第二色度差值是第二色度分量下的最大分量值和最小分量值的差值。
具体地,计算机设备可以从第二图像块数据中确定各分量下的最大分量值和最小分量值,并计算各分量下的最大分量值和最小分量值之间的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值。计算机设备可以根据最大亮度差值、最大第一色度差值和最大第二色度差值,按照预设的压缩编码方式对应的压缩条件,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式。
步骤206,将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据。
其中,每个图像块的压缩数据中包括相应的目标压缩编码方式的标识。标识用于指示对相应图像块的压缩数据进行解压缩。
具体地,计算机设备可以根据预设压缩比例,将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据。
在一个实施例中,第一图像块数据和第二图像块数据中的一个分量值大小均为1字节,即,一个分量值的位数为8个比特位。可以理解,若图像块中包括4个像素,则第一图像块数据和第二图像块数据的位数均为96个比特位。计算机设备可以以2/3的预设压缩比例,将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合2/3的预设压缩比例的各图像块的大小为8字节的压缩数据。可以理解,压缩数据的位数为64个比特位。
在一个实施例中,图像压缩方法可以应用于mipi显示系统。计算机设备可以利用图像压缩方法对mipi显示系统的图像数据进行压缩编码。其中,mipi是移动产业处理器接口(Mobile Industry Processor Interface简称mipi)。
上述图像压缩方法,针对待压缩的目标图像中的每个图像块,获取图像块在基色颜色空间下的第一图像块数据;将第一图像块数据转换为目标颜色空间下的第二图像块数据;目标颜色空间包括亮度分量、第一色度分量和第二色度分量;第二图像块数据包括图像块中各像素分别在亮度分量、第一色度分量和第二色度分量下的分量值;针对亮度分量、第一色度分量和第二色度分量中每个分量,基于第二图像块数据确定图像块在分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式;将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的目标压缩编码方式的标识;标识用于指示对相应图像块的压缩数据进行解压缩。能够适应性地根据最大亮度差值、最大第一色度差值和最大第二色度差值选择目标压缩编码方式,对目标图像中的每个图像块进行同比例压缩,从而避免由于像素的色差分量相差很大,导致压缩数据存在较大误差的问题,保证图像压缩的质量。
在其中一个实施例中,第一色度分量是橙度分量;第二色度分量是绿度分量;最大第一色度差值是最大橙度差值;最大第二色度差值是最大绿度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式包括:若最大橙度差值和最大绿度差值满足第一无损压缩条件,则确定第二图像块数据匹配的目标压缩编码方式为第一无损压缩编码方式;将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:获取第二图像块数据中各像素的橙度分量值分别与最小橙度分量值之间的橙度分量差值、以及获取第二图像块数据中各像素的绿度分量值分别与最小绿度分量值之间的绿度分量差值;根据第一无损压缩编码方式,使用第一标识存储位数的比特位存储第一无损压缩编码方式的标识、使用第一橙度差值存储位数和第一绿度差值存储位数的比特位分别存储各橙度分量差值和各绿度分量差值、以及使用第一分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。
其中,第一橙度差值存储位数和第一绿度差值存储位数分别与最大橙度差值和最大绿度差值相匹配。各存储位数的总量与预设压缩比例所需的总存储位数相符。
具体地,计算机设备可以判断最大橙度差值和最大绿度差值是否满足第一无损压缩条件,若满足,则确定第二图像块数据匹配的目标压缩编码方式为第一无损压缩编码方式。计算机设备可以获取第二图像块数据中各像素的橙度分量值分别与最小橙度分量值之间的橙度分量差值、以及获取第二图像块数据中各像素的绿度分量值分别与最小绿度分量值之间的绿度分量差值,并按照第一无损压缩编码方式,使用第一标识存储位数的比特位存储第一无损压缩编码方式的标识、使用第一橙度差值存储位数和第一绿度差值存储位数的比特位分别存储各橙度分量差值和各绿度分量差值、以及使用第一分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。
在一个实施例中,图像块包括4个像素,第一图像块数据大小为96比特,预设压缩比例为2/3。第一无损压缩条件可以是最大橙度差值小于2且最大绿度差值小于4。第一标识存储位数的比特位为4个,第一橙度差值存储位数为1个、第一绿度差值存储位数的比特位为2个,第一分量值存储位数的比特位为8个。计算机设备可以使用4个比特位存储第一无损压缩编码方式的标识、使用1个比特位分别存储4个橙度分量差值、使用2个比特位分别存储4个绿度分量差值、使用8个比特位分别存储最小绿度分量值、最小橙度分量值以及4个像素在亮度分量下的各分量值。可以理解,上述各存储位数的总量为64个比特位,计算机设备可以得到64比特的无损压缩数据。由于最大橙度差值小于2,故计算机设备使用1比特就可以实现各橙度分量差值的存储。同理,由于最大绿度差值小于4,计算机设备使用2比特就可以实现各绿度分量差值的存储。其中,第一无损压缩编码方式的标识可以是1110。
本实施例中,计算机设备可以按照第一无损压缩编码方式,存储第一无损压缩编码方式的标识、各橙度分量差值、各绿度分量差值、最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。可以理解,按照第一无损压缩编码方式得到的无损压缩数据中包括完整的各像素在亮度分量下的各分量值,以及各橙度分量差值和各绿度分量差值。相较于传统的压缩方法,以差值的形式完整保留了色度分量值,能够提高图像压缩的质量。
在其中一个实施例中,方法还包括:若最大亮度差值、最大橙度差值和最大绿度差值满足第二无损压缩条件,则确定第二图像块数据匹配的目标压缩编码方式为第二无损压缩编码方式;第二无损压缩条件比第一无损压缩条件所要求的最大绿度差值和最大橙度差值要大;获取第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;根据第二无损压缩编码方式,使用第二标识存储位数的比特位存储第二无损压缩编码方式的标识、使用第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数的比特位分别存储各橙度分量差值、各绿度分量差值及各亮度分量差值、以及使用第二分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。
其中,第二橙度差值存储位数和第二绿度差值存储位数分别与最大橙度差值和最大绿度差值相匹配;第一亮度差值存储位数与最大亮度差值相匹配;各存储位数的总量与预设压缩比例所需的总存储位数相符。
具体地,计算机设备可以判断最大亮度差值、最大橙度差值和最大绿度差值是否满足第二无损压缩条件,若满足,则确定第二图像块数据匹配的目标压缩编码方式为第二无损压缩编码方式。第二无损压缩条件比第一无损压缩条件所要求的最大绿度差值和最大橙度差值要大。可以理解,若最大绿度差值和最大橙度差值中的至少一个大于第一无损压缩条件所要求的数据大小,则计算机设备按照第一无损压缩编码方式无法进行无损压缩。计算机设备可以获取第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值,并按照第二无损压缩编码方式,使用第二标识存储位数的比特位存储第二无损压缩编码方式的标识、使用第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数的比特位分别存储各橙度分量差值、各绿度分量差值及各亮度分量差值、以及使用第二分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。
在一个实施例中,图像块包括4个像素,第一图像块数据大小为96比特,预设压缩比例为2/3。第二无损压缩条件可以是最大亮度差值小于8、最大橙度差值小于8且最大绿度差值小于8。可以理解,第二无损压缩条件下的各亮度分量差值、各橙度分量差值和各绿度分量差值均可以用3个比特位进行存储。第二标识存储位数的比特位为3个,第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数均为3个,第二分量值存储位数为8个。计算机设备可以使用3个比特位存储第二无损压缩编码方式的标识、使用3个比特位分别各橙度分量差值、各绿度分量差值及各亮度分量差值、使用8个比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值。可以理解,上述各存储位数的总量为63个比特位,计算机设备可以用1个0或1编码第64个比特位。其中,第二无损压缩编码方式的标识可以是110。
在一个实施例中,计算机设备可以按照目标压缩编码方式的标识—>各像素在亮度分量下的各分量值—>各像素在橙度分量下的各分量值—>各像素在绿度分量下的各分量值—>各像素的各亮度分量差值—>各像素的各橙度分量差值—>各像素的各绿度分量差值的排序对图像块进行压缩,得到图像块的压缩数据。可以理解,若目标压缩编码方式对应的压缩数据中不完全具有上述数据,则计算机设备可以跳过相应数据的排序进行压缩编码。比如,第二无损压缩编码方式对应的无损压缩数据中第1至3比特位为第二无损压缩编码方式的标识、第4至11比特位为最小亮度分量值、第12至19比特位为最小橙度分量值、第20至27比特位为最小绿度分量值、第28至39比特位为各像素的各亮度分量差值、第40至51比特位为各像素的各橙度分量差值、第52至63比特位为各像素的各绿度分量差值。
本实施例中,即使在最大亮度差值、最大橙度差值和最大绿度差值不满足第一无损压缩条件时,即,计算机设备无法直接按照第一无损压缩编码方式进行无损压缩,计算机设备可以按照第二无损压缩编码方式,分别存储第二无损压缩编码方式的标识、各橙度分量差值、各绿度分量差值及各亮度分量差值、最小绿度分量值、最小橙度分量值以及最小亮度分量值,实现对第二图像块数据的无损压缩,从而提高图像压缩的质量。
在其中一个实施例中,第一色度分量是橙度分量;第二色度分量是绿度分量;最大第一色度差值是最大橙度差值;最大第二色度差值是最大绿度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式包括:若最大亮度差值、最大橙度差值和最大绿度差值满足第一有损压缩条件,则确定第二图像块数据匹配的目标压缩编码方式为第一有损压缩编码方式;将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:获取第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;根据第一有损压缩编码方式,使用第三标识存储位数的比特位存储第一有损压缩编码方式的标识、使用第一有损差值存储位数的比特位分别存储各橙度分量差值及各绿度分量差值的二进制数据中前第一预设位数的数据、使用第二亮度差值存储位数的比特位分别存储各亮度分量差值、以及使用第一橙度分量值存储位数、第一绿度分量值存储位数及第一亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据。
其中,第一预设位数与第一有损差值存储位数相符;第二亮度差值存储位数与最大亮度差值相匹配;各存储位数的总量与预设压缩比例所需的总存储位数相符。
具体地,计算机设备可以判断最大亮度差值、最大橙度差值和最大绿度差值是否满足第一有损压缩条件,若满足,则确定第二图像块数据匹配的目标压缩编码方式为第一有损压缩编码方式。计算机设备可以获取第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值,并按照第一有损压缩编码方式,使用第三标识存储位数的比特位存储第一有损压缩编码方式的标识、使用第一有损差值存储位数的比特位分别存储各橙度分量差值及各绿度分量差值的二进制数据中前第一预设位数的数据、使用第二亮度差值存储位数的比特位分别存储各亮度分量差值、以及使用第一橙度分量值存储位数、第一绿度分量值存储位数及第一亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据。
在一个实施例中,若橙度分量差值大于第一预设位数所表征的最大数值,则计算计算机设备可以截取橙度分量差值的二进制数据的前第二预设位数的数据。若绿度分量差值大于第一预设位数所表征的最大数值,则计算计算机设备可以截取绿度分量差值的二进制数据的前第二预设位数的数据。
在一个实施例中,图像块包括4个像素,第一图像块数据大小为96比特,预设压缩比例为2/3。第一有损压缩条件可以是最大亮度差值小于16、最大橙度差值小于16且最大绿度差值小于16。第三标识存储位数的比特位为1个,第一有损差值存储位数的比特位为3个,第二亮度差值存储位数的比特位为4个,第一橙度分量值存储位数为7个、第一绿度分量值存储位数为8个,第一亮度分量值存储位数为8个。计算机设备可以使用1个比特位存储第一有损压缩编码方式的标识、使用3个比特位分别存储各橙度分量差值及各绿度分量差值的二进制数据中前3个比特位的数据、使用4个比特位分别存储4个亮度分量差值、以及使用7个比特位存储最小橙度分量值、8个比特位存储最小绿度分量值、以及8个比特位存储最小亮度分量值。可以理解,上述各存储位数的总量为64个比特位。其中,第一有损压缩编码方式的标识可以是0。
本实施例中,计算机设备可以对亮度或色度变化大的图像块进行有损压缩,存储各分量的差值和最小值,从而保证有损压缩数据中包括每个分量下的分量值,相比于传统的直接两个亮度分量值共用一组色度分量值的压缩方法,能够提高图像压缩的质量。
在其中一个实施例中,方法还包括:若最大亮度差值、最大橙度差值和最大绿度差值满足第二有损压缩条件,则确定第二图像块数据匹配的目标压缩编码方式为第二有损压缩编码方式;第二有损压缩编码方式的压缩损失高于第一有损压缩编码方式的压缩损失;根据第二有损压缩编码方式,使用第四标识存储位数的比特位存储第二有损压缩编码方式的标识、使用橙度有损差值存储位数存储各橙度分量差值的二进制数据中前第二预设位数的数据、使用绿度有损差值存储位数的比特位存储各绿度分量差值的二进制数据中前第三预设位数的数据、使用第三亮度差值存储位数的比特位存储各亮度分量差值、以及使用第二橙度分量值存储位数、第二绿度分量值存储位数及第二亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据。
其中,橙度有损差值存储位数小于绿度有损差值存储位数;橙度有损差值存储位数与第二预设位数相符,绿度有损差值存储位数与第三预设位数相符;第三亮度差值存储位数与最大亮度差值相匹配;各存储位数的总量与预设压缩比例所需的总存储位数相符。
具体地,计算机设备可以判断最大亮度差值、最大橙度差值和最大绿度差值是否满足第二有损压缩条件,若满足,则确定第二图像块数据匹配的目标压缩编码方式为第二有损压缩编码方式。第二有损压缩编码方式的压缩损失高于第一有损压缩编码方式的压缩损失。可以理解,若最大亮度差值、最大绿度差值和最大橙度差值中的至少一个大于第一无损压缩条件所要求的数据大小,则计算机设备按照第一有损压缩编码方式无法进行有损压缩。计算机设备可以按照第二有损压缩编码方式,使用第四标识存储位数的比特位存储第二有损压缩编码方式的标识、使用橙度有损差值存储位数存储各橙度分量差值的二进制数据中前第二预设位数的数据、使用绿度有损差值存储位数的比特位存储各绿度分量差值的二进制数据中前第三预设位数的数据、使用第三亮度差值存储位数的比特位存储各亮度分量差值、以及使用第二橙度分量值存储位数、第二绿度分量值存储位数及第二亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据。
在一个实施例中,若橙度分量差值大于第二预设位数所表征的最大数值,则计算计算机设备可以截取橙度分量差值的二进制数据的前第二预设位数的数据。若绿度分量差值大于第三预设位数所表征的最大数值,则计算计算机设备可以截取绿度分量差值的二进制数据的前第二预设位数的数据。
在一个实施例中,图像块包括4个像素,第一图像块数据大小为96比特,预设压缩比例为2/3。第二有损压缩条件可以是最大亮度差值小于32、最大橙度差值小于16且最大绿度差值小于16。第四标识存储位数的比特位为2个,橙度有损差值存储位数的比特位为2个,绿度有损差值存储位数的比特位为3个,第三亮度差值存储位数的比特位为5个,第二橙度分量值存储位数为7个、第二绿度分量值存储位数为7个,第二亮度分量值存储位数为8个。计算机设备可以使用2个比特位存储第一有损压缩编码方式的标识、使用2个比特位分别存储各橙度分量差值的二进制数据中前2个比特位的数据、使用3个比特位分别存储各绿度分量差值的二进制数据中前3个比特位的数据、使用5个比特位分别存储各亮度分量差值、以及使用7个比特位存储最小橙度分量值、7个比特位存储最小绿度分量值、以及8个比特位存储最小亮度分量值。可以理解,上述各存储位数的总量为64个比特位。其中,第二有损压缩编码方式的标识可以是10。
本实施例中,若计算机设备按照第一有损压缩编码方式无法进行有损压缩,计算机设备可以按照第二有损压缩编码方式对亮度或色度变化更大的图像块进行有损压缩,存储各分量的差值和最小值,从而保证有损压缩数据中包括每个分量下的分量值,相比于传统的直接两个亮度分量值共用一组色度分量值的压缩方法,能够提高图像压缩的质量。
在其中一个实施例中,第一色度分量是橙度分量;第二色度分量是绿度分量;最大第一色度差值是最大橙度差值;最大第二色度差值是最大绿度差值;根据最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与第二图像块数据匹配的目标压缩编码方式包括:若最大亮度差值、最大橙度差值和最大绿度差值满足原始空间压缩条件,则确定第二图像块数据匹配的目标压缩编码方式为基色颜色空间压缩编码方式;将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:根据基色颜色空间压缩编码方式,使用第五标识存储位数的比特位存储基色颜色空间压缩编码方式的标识、使用基色空间存储位数分别存储第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前第四预设位数的数据,得到大小符合预设压缩比例的图像块的基色压缩数据。
其中,基色空间存储位数与第四预设位数相符;各存储位数的总量与预设压缩比例所需的总存储位数相符。
具体地,计算机设备可以判断最大亮度差值、最大橙度差值和最大绿度差值是否满足原始空间压缩条件,若满足,则确定第二图像块数据匹配的目标压缩编码方式为基色颜色空间压缩编码方式。计算机设备可以按照基色颜色空间压缩编码方式,使用第五标识存储位数的比特位存储基色颜色空间压缩编码方式的标识、使用基色空间存储位数分别存储第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前第四预设位数的数据,得到大小符合预设压缩比例的图像块的基色压缩数据。
在一个实施例中,若橙度分量差值大于第四预设位数所表征的最大数值,则计算计算机设备可以截取橙度分量差值的二进制数据的前第四预设位数的数据。若绿度分量差值大于第四预设位数所表征的最大数值,则计算计算机设备可以截取绿度分量差值的二进制数据的前第四预设位数的数据。若亮度分量差值大于第四预设位数所表征的最大数值,则计算机设备可以截取亮度分量差值的二进制数据的前第四预设位数的数据。
在一个实施例中,图像块包括4个像素,第一图像块数据大小为96比特,预设压缩比例为2/3。第五标识存储位数的比特位为4个,基色空间存储位数的比特位为5个。计算机设备可以使用4个比特位存储基色颜色空间压缩编码方式的标识、使用5个比特位分别存储第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前5个比特位的数据。可以理解,各存储位数的总量为64个比特位。其中,基色颜色空间压缩编码方式的标识可以是1111。基色颜色空间包括红色分量、绿色分量和蓝色分量。
本实施例中,计算机设备可以按照基色颜色空间压缩编码方式,使用第五标识存储位数的比特位存储基色颜色空间压缩编码方式的标识、使用基色空间存储位数分别存储第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前第四预设位数的数据,得到大小符合预设压缩比例的图像块的基色压缩数据,保存基色颜色空间的各分量下的分量值,相比于传统的直接两个亮度分量值共用一组色度分量值的压缩方法,能够提高图像压缩的质量。
在一个实施例中,如图3所示,方法还包括图像解码步骤;图像解码步骤包括:
步骤302,针对每个图像块的压缩数据,根据压缩数据中的目标压缩编码方式的标识,确定针对压缩数据的目标解压缩编码方式。
其中,目标解压缩方式与目标压缩编码方式一一对应。
具体地,计算机设备可以针对每个图像块的压缩数据,按照压缩数据中的目标压缩编码方式的标识,判定针对压缩数据的目标解压缩编码方式。
在一个实施例中,预设的压缩编码方式包括第一无损压缩编码方式、第二无损压缩编码方式、第一有损压缩编码方式、第二有损压缩编码方式和基色颜色空间压缩编码方式。其中,第一无损压缩编码方式、第二无损压缩编码方式、第一有损压缩编码方式、第二有损压缩编码方式和基色颜色空间压缩编码方式的标识分别为1110、110、0、10和1111。
步骤304,按照目标解压缩方式对压缩数据进行解压缩,得到目标图像。
具体地,计算机设备可以按照目标解压缩方式对压缩数据进行解压缩,得到解压缩后的第三图像块数据。若目标解压缩方式是基色颜色空间压缩编码方式,则计算机设备可以直接得到基色颜色空间的第三图像块数据,即,RGB格式的第三图像块数据;若目标解压缩方式非基色颜色空间压缩编码方式,则计算机设备可以将目标颜色空间的第三图像块数据,即,YCoCg格式的第三图像块数据转换成RGB格式的第三图像块数据。可以理解,计算机设备可以得到目标图像的各图像块的RGB格式的第三图像块数据,从而得到RGB格式的目标图像的数据,即,基色颜色空间下的基色图像数据。
在一个实施例中,计算机设备可以通过第二转换公式将YCoCg格式的第三图像块数据转换成RGB格式的第三图像块数据。其中,第二转换公式是将目标颜色空间的数据转换至基色颜色空间的公式。第二转换公式是:
R=Y+Co-Cg (4)
G=Y+Cg (5)
B=Y-Co-Cg (6)
在一个实施例中,若计算机设备识别到目标压缩编码方式的标识为1111,则判定针对压缩数据的目标解压缩编码方式为基色颜色空间解压缩编码方式,计算机设备可以在基色颜色空间对压缩数据进行解压缩编码。
在一个实施例中,压缩数据是二进制数据,计算机设备可以将二进制数据转换成十进制数据以进行解压缩编码。比如,计算机设备可以通过将一个字符串表示的二进制数转换成一个十进制数的函数,即,bin2dec函数,将相应比特位的二进制数据转换成十进制数据。
在一个实施例中,计算机设备可以对数据进行有损压缩编码,对于有损压缩编码后的有损压缩数据,计算机设备可以将有损压缩数据的后一比特位的权重值作为修正值对有损压缩数据进行解压缩编码。
在一个实施例中,目标压缩编码方式是基色颜色空间压缩编码方式,目标解压缩编码方式是基色颜色空间解压缩编码方式。基色压缩数据的第1至4比特位为基色颜色空间压缩编码方式的标识、第5至24比特位为各像素的红色分量值的二进制数据中的前5个比特位的数据、第25至44比特位为各像素的绿色分量值的二进制数据中的前5个比特位的数据和第45至64比特位为各像素的绿色分量值的二进制数据中的前5个比特位的数据。可以理解,计算机设备可以按照像素顺序对各像素在基色颜色空间下各分量值进行解压缩。比如,压缩数据中第5至9位为第一个像素的红色分量值(R1)的二进制数据中的前5个比特位的数据,计算机设备可以将第5至9位的二进制数据转换成十进制数据,对该十进制数据赋予相应的权重,加上修正值之后,得到解压缩编码后的第一个像素的红色分量值。同理,计算机设备可以以第一个像素的红色分量值的解压缩编码方式,得到解压缩编码后的各像素的其余分量值。
在一个实施例中,计算机设备可以先通过将数字数据转换成字符数据的函数,即,str函数,将二进制数据转换成字符串,在通过将一个字符串表示的二进制数转换成一个十进制数的函数,即,bin2dec函数,将该字符串转换成十进制的数据之后,对该十进制数据赋予相应的权重,加上修正值之后,得到解压缩编码后的第一个像素的红色分量值。其中,权重是8,修正值是4。可以理解,计算机设备以基色颜色空间压缩编码方式,得到的基色压缩数据中包括第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前5个比特位的数据,而各分量值的二进制数据具有8个比特位,因此,权重是2的(8-3)次方,即,8。由于计算机设备仅对分量值的前五位进行有损存储,因此将有损存储的分量值的后一位的权重值,即,第6位的权重作为修正值。以R1为例,计算机设备可以通过bin2dec(str(5:9))*8+4计算R1,即,解压缩编码后的第一个像素的红色分量值。
在一个实施例中,目标压缩编码方式是第一有损压缩编码方式,目标解压缩编码方式是第一有损解压缩编码方式。有损压缩数据的第1比特位为第一有损压缩编码方式的标识、第2至9比特位为最小亮度分量值(Ymin)、第10至16比特位为最小橙度分量值(Comin)的二进制数据中的前7个比特位的数据、第17至24比特位为最小绿度分量值(Cgmin)、第25至40比特位为各亮度分量差值、第41至52比特位为各橙度分量差值的二进制数据中前3位的数据和第53至64比特位为各绿度分量差值的二进制数据中前3位的数据。可以理解,计算机设备可以按照像素顺序对各像素在目标颜色空间下各分量值进行解压缩。比如,有损压缩数据中第10至16位为最小橙度分量值(Comin)的二进制数据中的前7个比特位的数据,计算机设备可以将第10至16位的二进制数据转换成十进制数据,对该十进制数据赋予相应的权重(权重为2),加上修正值(修正值为1)之后,得到解压缩编码后的最小橙度分量值,即,Comin=bin2dec(str(10:16))*2+1。有损压缩数据的第25至28位为第一个像素的亮度分量差值(DiffY1),则第一个像素的亮度分量值(Y1)为亮度分量差值与最小亮度分量值之间的和,即,Y1=Ymin+DiffY1。以此类推,计算机设备可以进行解压缩编码得到其余各像素的亮度分量值。有损压缩数据中第41至43位为第一个像素的橙度分量差值(DiffCo1)的二进制数据中前3位的数据,计算机设备可以将第41至43位的二进制数据转换成十进制数据,对该十进制数据赋予相应的权重(权重为2),加上修正值(修正值为1)之后,得到解压缩编码后的DiffCo1,即,DiffCo1=bin2dec(str(41:43))*2+1。计算机设备可以进行解压缩编码得到第一个像素的橙度分量值(Co1)为橙度分量差值与最小橙度分量值之间的和,即,Co1=Comin+DiffCo1。以此类推,计算机设备可以进行解压缩编码得到其余各像素的橙度分量值。有损压缩数据中第53至55位为第一个像素的绿度分量差值(DiffCg1)的二进制数据中前3位的数据,同上述橙度分量差值的解压缩编码,第一个像素的绿度分量差值为DiffCg1=bin2dec(str(53:55))*2+1,计算机设备可以进行解压缩编码得到第一个像素的绿度分量值(Cg1)为绿度分量差值与最小绿度分量值之间的和,即,Cg1=Cgmin+DiffCg1。以此类推,计算机设备可以进行解压缩编码得到其余各像素的绿度分量值。
在一个实施例中,目标压缩编码方式是第二有损压缩编码方式,目标解压缩编码方式是第二有损解压缩编码方式。有损压缩数据的第1至2比特位为第二有损压缩编码方式的标识、第3至10比特位为最小亮度分量值(Ymin)、第11至17比特位为最小橙度分量值(Comin)的二进制数据中的前7个比特位的数据、第18至24比特位为最小绿度分量值(Cgmin)二进制数据中的前7个比特位的数据、第25至44比特位为各亮度分量差值、第45至52比特位为各橙度分量差值的二进制数据中前2位的数据和第53至64比特位为各绿度分量差值的二进制数据中前3位的数据。可以理解,计算机设备可以按照像素顺序对各像素在目标颜色空间下各分量值进行解压缩。比如,有损压缩数据中第11至17位为最小橙度分量值(Comin)的二进制数据中的前7个比特位的数据,计算机设备可以将第11至17位的二进制数据转换成十进制数据,对该十进制数据赋予相应的权重(权重为2),加上修正值(修正值为1)之后,得到解压缩编码后的最小橙度分量值,即,Comin=bin2dec(str(11:17))*2+1。有损压缩数据的第25至29位为第一个像素的亮度分量差值(DiffY1),则第一个像素的亮度分量值(Y1)为亮度分量差值与最小亮度分量值之间的和,即,Y1=Ymin+DiffY1。以此类推,计算机设备可以进行解压缩编码得到其余各像素的亮度分量值。有损压缩数据中第45至46位为第一个像素的橙度分量差值(DiffCo1)的二进制数据中前2位的数据,计算机设备可以将第45至46位的二进制数据转换成十进制数据,对该十进制数据赋予相应的权重(权重为4),加上修正值(修正值为2)之后,得到解压缩编码后的DiffCo1,即,DiffCo1=bin2dec(str(45:46))*4+2。计算机设备可以进行解压缩编码得到第一个像素的橙度分量值(Co1)为橙度分量差值与最小橙度分量值之间的和,即,Co1=Comin+DiffCo1。以此类推,计算机设备可以进行解压缩编码得到其余各像素的橙度分量值。有损压缩数据中第53至55位为第一个像素的绿度分量差值(DiffCg1)的二进制数据中前3位的数据,同上述橙度分量差值的解压缩编码,第一个像素的绿度分量差值为DiffCg1=bin2dec(str(53:55))*2+1,计算机设备可以进行解压缩编码得到第一个像素的绿度分量值(Cg1)为绿度分量差值与最小绿度分量值之间的和,即,Cg1=Cgmin+DiffCg1。以此类推,计算机设备可以进行解压缩编码得到其余各像素的绿度分量值。
在一个实施例中,目标压缩编码方式是第二无损压缩编码方式,目标解压缩编码方式是第二无损解压缩编码方式。无损压缩数据的第1至3比特位为第二无损压缩编码方式的标识、第4至11比特位为最小亮度分量值(Ymin)、第12至19比特位为最小橙度分量值(Comin)、第20至27比特位为最小绿度分量值(Cgmin)、第28至39比特位为各亮度分量差值、第40至51比特位为各橙度分量差值和第52至63比特位为各绿度分量差值。可以理解,计算机设备可以按照像素顺序对各像素在目标颜色空间下各分量值进行解压缩。比如,无损压缩数据中第4至11位为最小亮度分量值(Ymin),有损压缩数据的第28至30位为第一个像素的亮度分量差值(DiffY1),则第一个像素的亮度分量值(Y1)为亮度分量差值与最小亮度分量值之间的和,即,Y1=Ymin+DiffY1。以此类推,计算机设备可以进行解压缩编码得到各像素的各分量值。
在一个实施例中,目标压缩编码方式是第一无损压缩编码方式,目标解压缩编码方式是第一无损解压缩编码方式。无损压缩数据的第1至4比特位为第一无损压缩编码方式的标识、第5至36比特位为各亮度分量值、第37至44比特位为最小橙度分量值(Comin)、第45至52比特位为最小绿度分量值(Cgmin)、第53至56比特位为各橙度分量差值和第57至64比特位为各绿度分量差值。可以理解,计算机设备可以按照像素顺序对各像素在目标颜色空间下各分量值进行解压缩。比如,无损压缩数据中第5至12位为第一个像素的亮度分量值(Y1),以此类推,计算机设备可以得到解压缩编码后的其余像素的亮度分量值。有损压缩数据的第37至44位为最小橙度分量值(Comin),第53位为第一个像素的橙度分量值(DiffCo1),则第一个像素的橙度分量值(Co1)为亮度分量差值与最小亮度分量值之间的和,即,Co1=Comin+DiffCo1。以此类推,计算机设备可以进行解压缩编码得到各像素的各橙度分量值及各绿度分量值。
本实施例中,针对每个图像块的压缩数据,根据压缩数据中的目标压缩编码方式的标识,确定针对压缩数据的目标解压缩编码方式;按照目标解压缩方式对压缩数据进行解压缩,得到目标图像,能够对压缩后的图像进行解压缩,由于图像压缩质量的提高,解压缩得到的目标图像相较于传统解压缩后的图像也更加清晰。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的图像压缩方法的图像压缩装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图像压缩装置实施例中的具体限定可以参见上文中对于图像压缩方法的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种图像压缩装置400,包括:获取模块402、匹配模块404和压缩模块406,其中:
获取模块402,用于针对待压缩的目标图像中的每个图像块,获取所述图像块在基色颜色空间下的第一图像块数据;将所述第一图像块数据转换为目标颜色空间下的第二图像块数据;所述目标颜色空间包括亮度分量、第一色度分量和第二色度分量;所述第二图像块数据包括所述图像块中各像素分别在所述亮度分量、第一色度分量和第二色度分量下的分量值。
匹配模块404,用于针对所述亮度分量、第一色度分量和第二色度分量中每个分量,基于所述第二图像块数据确定所述图像块在所述分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式。
压缩模块406,用于将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的所述目标压缩编码方式的标识;所述标识用于指示对相应图像块的压缩数据进行解压缩。
在一个实施例中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;匹配模块404还用于若所述最大橙度差值和最大绿度差值满足第一无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一无损压缩编码方式;压缩模块406还用于获取所述第二图像块数据中各像素的橙度分量值分别与最小橙度分量值之间的橙度分量差值、以及获取所述第二图像块数据中各像素的绿度分量值分别与最小绿度分量值之间的绿度分量差值;根据所述第一无损压缩编码方式,使用第一标识存储位数的比特位存储所述第一无损压缩编码方式的标识、使用第一橙度差值存储位数和第一绿度差值存储位数的比特位分别存储各所述橙度分量差值和各所述绿度分量差值、以及使用第一分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。
在一个实施例中,匹配模块404还用于若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二无损压缩编码方式;第二无损压缩条件比第一无损压缩条件所要求的最大绿度差值和最大橙度差值要大;压缩模块406还用于获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;根据所述第二无损压缩编码方式,使用第二标识存储位数的比特位存储所述第二无损压缩编码方式的标识、使用第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数的比特位分别存储各所述橙度分量差值、各所述绿度分量差值及各所述亮度分量差值、以及使用第二分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的无损压缩数据。
在一个实施例中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;匹配模块404还用于若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第一有损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一有损压缩编码方式;压缩模块406还用于获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;根据所述第一有损压缩编码方式,使用第三标识存储位数的比特位存储所述第一有损压缩编码方式的标识、使用第一有损差值存储位数的比特位分别存储各所述橙度分量差值及各所述绿度分量差值的二进制数据中前第一预设位数的数据、使用第二亮度差值存储位数的比特位分别存储各所述亮度分量差值、以及使用第一橙度分量值存储位数、第一绿度分量值存储位数及第一亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据。
在一个实施例中,匹配模块404还用于若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二有损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二有损压缩编码方式;所述第二有损压缩编码方式的压缩损失高于第一有损压缩编码方式的压缩损失;压缩模块406还用于根据所述第二有损压缩编码方式,使用第四标识存储位数的比特位存储所述第二有损压缩编码方式的标识、使用橙度有损差值存储位数存储各所述橙度分量差值的二进制数据中前第二预设位数的数据、使用绿度有损差值存储位数的比特位存储各所述绿度分量差值的二进制数据中前第三预设位数的数据、使用第三亮度差值存储位数的比特位存储各所述亮度分量差值、以及使用第二橙度分量值存储位数、第二绿度分量值存储位数及第二亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据。
在一个实施例中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;匹配模块404还用于若所述最大亮度差值、最大橙度差值和最大绿度差值满足原始空间压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为基色颜色空间压缩编码方式;压缩模块406还用于根据所述基色颜色空间压缩编码方式,使用第五标识存储位数的比特位存储所述基色颜色空间压缩编码方式的标识、使用基色空间存储位数分别存储所述第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前第四预设位数的数据,得到大小符合预设压缩比例的图像块的基色压缩数据。
在一个实施例中,装置还包括解压缩模块406;解压缩模块406用于针对每个图像块的压缩数据,根据所述压缩数据中的目标压缩编码方式的标识,确定针对所述压缩数据的目标解压缩编码方式;所述目标解压缩方式与目标压缩编码方式一一对应;按照所述目标解压缩方式对所述压缩数据进行解压缩,得到所述目标图像。
上述图像压缩装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储图像压缩相关数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像压缩方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种图像压缩方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5和图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种图像压缩方法,其特征在于,所述方法包括:
针对待压缩的目标图像中的每个图像块,获取所述图像块在基色颜色空间下的第一图像块数据;
将所述第一图像块数据转换为目标颜色空间下的第二图像块数据;所述目标颜色空间包括亮度分量、第一色度分量和第二色度分量;所述第二图像块数据包括所述图像块中各像素分别在所述亮度分量、第一色度分量和第二色度分量下的分量值;
针对所述亮度分量、第一色度分量和第二色度分量中每个分量,基于所述第二图像块数据确定所述图像块在所述分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;其中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;
根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式;
将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的所述目标压缩编码方式的标识;所述标识用于指示对相应图像块的压缩数据进行解压缩;
所述根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式包括:
若所述最大橙度差值和最大绿度差值满足第一无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一无损压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
获取所述第二图像块数据中各像素的橙度分量值分别与最小橙度分量值之间的橙度分量差值、以及获取所述第二图像块数据中各像素的绿度分量值分别与最小绿度分量值之间的绿度分量差值;
根据所述第一无损压缩编码方式,使用第一标识存储位数的比特位存储所述第一无损压缩编码方式的标识、使用第一橙度差值存储位数和第一绿度差值存储位数的比特位分别存储各所述橙度分量差值和各所述绿度分量差值、以及使用第一分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据;
其中,第一橙度差值存储位数和第一绿度差值存储位数分别与所述最大橙度差值和最大绿度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二无损压缩编码方式;第二无损压缩条件比第一无损压缩条件所要求的最大绿度差值和最大橙度差值要大;
获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;
根据所述第二无损压缩编码方式,使用第二标识存储位数的比特位存储所述第二无损压缩编码方式的标识、使用第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数的比特位分别存储各所述橙度分量差值、各所述绿度分量差值及各所述亮度分量差值、以及使用第二分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的无损压缩数据;
其中,第二橙度差值存储位数和第二绿度差值存储位数分别与所述最大橙度差值和最大绿度差值相匹配;所述第一亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
3.根据权利要求1所述的方法,其特征在于,所述根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式包括:
若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第一有损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一有损压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;
根据所述第一有损压缩编码方式,使用第三标识存储位数的比特位存储所述第一有损压缩编码方式的标识、使用第一有损差值存储位数的比特位分别存储各所述橙度分量差值及各所述绿度分量差值的二进制数据中前第一预设位数的数据、使用第二亮度差值存储位数的比特位分别存储各所述亮度分量差值、以及使用第一橙度分量值存储位数、第一绿度分量值存储位数及第一亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据;
其中,所述第一预设位数与所述第一有损差值存储位数相符;所述第二亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二有损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二有损压缩编码方式;所述第二有损压缩编码方式的压缩损失高于第一有损压缩编码方式的压缩损失;
根据所述第二有损压缩编码方式,使用第四标识存储位数的比特位存储所述第二有损压缩编码方式的标识、使用橙度有损差值存储位数存储各所述橙度分量差值的二进制数据中前第二预设位数的数据、使用绿度有损差值存储位数的比特位存储各所述绿度分量差值的二进制数据中前第三预设位数的数据、使用第三亮度差值存储位数的比特位存储各所述亮度分量差值、以及使用第二橙度分量值存储位数、第二绿度分量值存储位数及第二亮度分量值存储位数分别存储最小橙度分量值、最小绿度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的有损压缩数据;
其中,橙度有损差值存储位数小于绿度有损差值存储位数;所述橙度有损差值存储位数与所述第二预设位数相符,所述绿度有损差值存储位数与所述第三预设位数相符;所述第三亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
5.根据权利要求1所述的方法,其特征在于,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;所述根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式包括:
若所述最大亮度差值、最大橙度差值和最大绿度差值满足原始空间压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为基色颜色空间压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
根据所述基色颜色空间压缩编码方式,使用第五标识存储位数的比特位存储所述基色颜色空间压缩编码方式的标识、使用基色空间存储位数分别存储所述第一图像块数据中各像素分别在基色颜色空间下各分量值的二进制数据中的前第四预设位数的数据,得到大小符合预设压缩比例的图像块的基色压缩数据;
其中,所述基色空间存储位数与第四预设位数相符;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
6.根据权利要求1至5任意一项所述的方法,其特征在于,所述方法还包括图像解码步骤;所述图像解码步骤包括:
针对每个图像块的压缩数据,根据所述压缩数据中的目标压缩编码方式的标识,确定针对所述压缩数据的目标解压缩编码方式;所述目标解压缩方式与目标压缩编码方式一一对应;
按照所述目标解压缩方式对所述压缩数据进行解压缩,得到所述目标图像。
7.一种图像压缩装置,其特征在于,所述装置包括:
获取模块,用于针对待压缩的目标图像中的每个图像块,获取所述图像块在基色颜色空间下的第一图像块数据;将所述第一图像块数据转换为目标颜色空间下的第二图像块数据;所述目标颜色空间包括亮度分量、第一色度分量和第二色度分量;所述第二图像块数据包括所述图像块中各像素分别在所述亮度分量、第一色度分量和第二色度分量下的分量值;其中,所述第一色度分量是橙度分量;所述第二色度分量是绿度分量;
匹配模块,用于针对所述亮度分量、第一色度分量和第二色度分量中每个分量,基于所述第二图像块数据确定所述图像块在所述分量下的最大分量值和最小分量值的差值,以得到最大亮度差值、最大第一色度差值和最大第二色度差值;根据所述最大亮度差值、最大第一色度差值和最大第二色度差值,从预设的压缩编码方式中选取与所述第二图像块数据匹配的目标压缩编码方式;其中,所述最大第一色度差值是最大橙度差值;所述最大第二色度差值是最大绿度差值;
压缩模块,用于将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例的各图像块的压缩数据;每个图像块的压缩数据中包括相应的所述目标压缩编码方式的标识;所述标识用于指示对相应图像块的压缩数据进行解压缩;
所述匹配模块,还用于若所述最大橙度差值和最大绿度差值满足第一无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第一无损压缩编码方式;
所述将每个图像块按照相应目标压缩编码方式进行同比例压缩,得到符合预设压缩比例各个图像块的压缩数据包括:
获取所述第二图像块数据中各像素的橙度分量值分别与最小橙度分量值之间的橙度分量差值、以及获取所述第二图像块数据中各像素的绿度分量值分别与最小绿度分量值之间的绿度分量差值;
根据所述第一无损压缩编码方式,使用第一标识存储位数的比特位存储所述第一无损压缩编码方式的标识、使用第一橙度差值存储位数和第一绿度差值存储位数的比特位分别存储各所述橙度分量差值和各所述绿度分量差值、以及使用第一分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及各像素在亮度分量下的各分量值,得到大小符合预设压缩比例的图像块的无损压缩数据;
其中,第一橙度差值存储位数和第一绿度差值存储位数分别与所述最大橙度差值和最大绿度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
8.根据权利要求7所述的装置,其特征在于,所述匹配模块,还用于若所述最大亮度差值、所述最大橙度差值和最大绿度差值满足第二无损压缩条件,则确定所述第二图像块数据匹配的目标压缩编码方式为第二无损压缩编码方式;第二无损压缩条件比第一无损压缩条件所要求的最大绿度差值和最大橙度差值要大;获取所述第二图像块数据中各像素的亮度分量值分别与最小亮度分量值之间的亮度分量差值;根据所述第二无损压缩编码方式,使用第二标识存储位数的比特位存储所述第二无损压缩编码方式的标识、使用第二橙度差值存储位数、第二绿度差值存储位数及第一亮度差值存储位数的比特位分别存储各所述橙度分量差值、各所述绿度分量差值及各所述亮度分量差值、以及使用第二分量值存储位数的比特位分别存储最小绿度分量值、最小橙度分量值以及最小亮度分量值,得到大小符合预设压缩比例的图像块的无损压缩数据;其中,第二橙度差值存储位数和第二绿度差值存储位数分别与所述最大橙度差值和最大绿度差值相匹配;所述第一亮度差值存储位数与所述最大亮度差值相匹配;各存储位数的总量与所述预设压缩比例所需的总存储位数相符。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210035324.3A CN114363621B (zh) | 2022-01-13 | 2022-01-13 | 图像压缩方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210035324.3A CN114363621B (zh) | 2022-01-13 | 2022-01-13 | 图像压缩方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114363621A CN114363621A (zh) | 2022-04-15 |
CN114363621B true CN114363621B (zh) | 2025-03-14 |
Family
ID=81109581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210035324.3A Active CN114363621B (zh) | 2022-01-13 | 2022-01-13 | 图像压缩方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114363621B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103517022A (zh) * | 2012-06-29 | 2014-01-15 | 华为技术有限公司 | 一种图像数据压缩和解压缩方法、装置 |
CN104025561A (zh) * | 2012-11-23 | 2014-09-03 | 华为技术有限公司 | 图像压缩方法及图像处理装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2508439B2 (ja) * | 1987-05-29 | 1996-06-19 | ソニー株式会社 | 高能率符号化装置 |
CN1309258C (zh) * | 2003-12-19 | 2007-04-04 | 联想(北京)有限公司 | 一种应用于实时传输的无损图像压缩方法 |
JP2007312126A (ja) * | 2006-05-18 | 2007-11-29 | Toshiba Corp | 画像処理回路 |
KR20110111853A (ko) * | 2010-04-05 | 2011-10-12 | 삼성전자주식회사 | 복수의 부분에 기초한 영상 부호화, 복호화 방법 및 장치 |
US20110249959A1 (en) * | 2010-04-09 | 2011-10-13 | Korea Electronics Technology Institute | Video storing method and device based on variable bit allocation and related video encoding and decoding apparatuses |
WO2017158463A1 (en) * | 2016-03-14 | 2017-09-21 | Koninklijke Philips N.V. | Saturation processing specification for dynamic range mappings |
FR3062738B1 (fr) * | 2017-02-03 | 2019-06-07 | B-Com | Procede de traitement d'une image d'entree, dispositif, equipement terminal et programme d'ordinateur associe |
GB2593523B (en) * | 2020-03-26 | 2023-06-14 | Imagination Tech Ltd | Image data compression |
US20210314567A1 (en) * | 2020-04-04 | 2021-10-07 | Qualcomm Incorporated | Block partitioning for image and video coding |
-
2022
- 2022-01-13 CN CN202210035324.3A patent/CN114363621B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103517022A (zh) * | 2012-06-29 | 2014-01-15 | 华为技术有限公司 | 一种图像数据压缩和解压缩方法、装置 |
CN104025561A (zh) * | 2012-11-23 | 2014-09-03 | 华为技术有限公司 | 图像压缩方法及图像处理装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114363621A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102523367B (zh) | 基于多调色板的实时图像压缩和还原方法 | |
JP6703032B2 (ja) | 後方互換性拡張画像フォーマット | |
WO2018184468A1 (zh) | 图片文件处理方法、设备及存储介质 | |
US20200036993A1 (en) | Techniques for Encoding, Decoding and Representing High Dynamic Range Images | |
RU2710873C2 (ru) | Способ и устройство для декодирования цветного изображения | |
CN114222129A (zh) | 图像压缩编码方法、装置、计算机设备和存储介质 | |
US9060171B2 (en) | Image processing system and method | |
EP3453177A1 (en) | Method and apparatus for encoding/decoding a scalar integer into a parameter representative of a pivot points of a piece-wise linear function. | |
CN114363621B (zh) | 图像压缩方法、装置、计算机设备和存储介质 | |
US12008954B2 (en) | Method and system for compressing Demura compensation value | |
US11044466B2 (en) | Image processing device | |
CN115278225B (zh) | 色度编码模式的选择方法、装置和计算机设备 | |
US10362325B2 (en) | Techniques for compressing multiple-channel images | |
CN115776566A (zh) | 图像数据的处理方法、装置、计算机设备和存储介质 | |
CN110087072A (zh) | 图像处理装置 | |
US10423587B2 (en) | Systems and methods for rendering graphical assets | |
JP3633860B2 (ja) | 画像処理装置および画像処理方法 | |
CN114217758A (zh) | 图像显示方法、装置、电子设备及计算机可读存储介质 | |
CN115767085A (zh) | 数据处理方法及其装置 | |
CN113473150B (zh) | 一种图像处理方法、装置以及计算机可读存储装置 | |
CN114125456A (zh) | 数据处理方法及系统、电子设备 | |
WO2007099327A2 (en) | Data compression | |
CN111739112A (zh) | 图片处理方法、装置、计算机设备及存储介质 | |
WO2010018494A1 (en) | Image compression | |
WO2023246655A1 (zh) | 一种图像编码、解码方法及编码、解码装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 518101 District D and E, 7th Floor, Building 3, Tingwei Industrial Park, 6 Liufang Road, Xin'an Street, Baoan District, Shenzhen City, Guangdong Province Applicant after: Shenzhen Aixiesheng Technology Co.,Ltd. Address before: 518101 District D and E, 7th Floor, Building 3, Tingwei Industrial Park, 6 Liufang Road, Xin'an Street, Baoan District, Shenzhen City, Guangdong Province Applicant before: SHENZHEN AIXIESHENG TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |