图像特征压缩、解压方法、装置、存储介质及电子设备与流程

文档序号:33700009发布日期:2023-03-31 18:08阅读:27来源:国知局
1.本公开涉及图像编码
技术领域
:,尤其涉及一种图像特征压缩、解压方法、装置、存储介质及电子设备。
背景技术
::2.传统的视频压缩编码面向人类视觉,多用于娱乐用途,注重信号保真度、高帧率等,无法匹配面向智能分析任务的机器视觉对于高准确性、低延迟和抽象语义的应用需求。面向人类视觉和面向机器视觉的视频压缩编码在应用场景、评估机制、信息处理和信息使用上存在较大差异。vcm(videocodingformachines,机器视觉编码)标准组,旨在研究适合机器视觉和人机混合视觉场景以智能应用为目标的压缩编码技术。3.在一个典型的应用场景下,视频图像经过特征抽取网络后得到图像特征数据,再将图像特征数据进行压缩/解压后输入任务特定的神经网络,得到输出结果。4.视频图像经过特征抽取网络后得到特征数据,为了降低特征数据的传输量,需要对特征进行压缩,通常可采取特征量化的方式,但该方式压缩效率较不高。技术实现要素:5.本公开提供一种图像特征压缩、解压方法、装置、存储介质及电子设备,至少在一定程度上克服由于相关技术中对图像的特征数据进行压缩时,压缩效率不高。6.根据本公开的一个方面,提供了一种图像特征压缩方法,包括:获取待压缩的图像的特征数据;对所述特征数据进行分块;将各分块内的特征数据进行离散余弦变换dct,得到各分块内的dct系数;根据所述dct系数以及所述dct系数的量化区间计算基础量化步长;根据所述基础量化步长以及目标量化表对应的步长倍率确定各分块内各位置的dct系数的量化步长;根据各分块内各位置的dct系数的量化步长对各分块内的dct系数进行量化。7.在本公开一个实施例中,所述方法还包括:在对所述特征数据进行分块之前,将所述特征数据以预设移位量进行归一化,使得所述特征数据变换为以数值0为中间点进行分布。8.在本公开一个实施例中,根据所述dct系数以及所述dct系数的量化区间计算基础量化步长,包括:求取所述dct系数的绝对值的最大值;求取所述dct系数的绝对值的最大值与dct系数的量化区间中的数值的绝对值的最大值之间的比值,得到所述基础量化步长。9.在本公开一个实施例中,将所述特征数据以预设移位量进行归一化,包括:确定所述特征数据的最大值以及最小值;计算所述最大值以及所述最小值的均值,得到所述预设移位量;将所述特征数据的值减去所述均值,得到归一化后的特征数据。10.在本公开一个实施例中,将所述特征数据以预设移位量进行归一化,包括:确定所述特征数据的统计均值;将所述特征数据的值减去所述统计均值,得到归一化后的特征数据。11.在本公开一个实施例中,预先设置有多个不同的dct系数量化区间,所述方法还包括:在根据所述dct系数以及所述dct系数的量化区间计算基础量化步长之前,根据对所述图像的压缩需求从所述多个不同的dct系数量化区间中选择所述dct系数的量化区间。12.在本公开一个实施例中,预先设置有多个量化表,各量化表中预先配置有量化倍率的值,各量化表中所配置的量化倍率的值不同,所述方法还包括:在根据所述基础量化步长以及量化表对应的步长倍率确定各分块内各位置的dct系数的量化步长之前,根据对所述图像的压缩需求从所述多个量化表中选择所述目标量化表。13.根据本公开的另一个方面,还提供了一种图像特征解压方法,包括:获取压缩后的图像的特征数据,其中,所述特征数据中包括量化后的离散余弦变换dct系数;根据所述图像压缩时的基础量化步长以及步长倍率计算所述dct系数的量化步长,其中,所述基础量化步长与所述图像压缩时的dct系数以及dct系数的量化区间相关,所述步长倍率与所述图像压缩时的分块大小对应的量化表对应的步长倍率相关;根据所述量化步长对量化后的dct系数进行反量化,得原始dct系数;对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据。14.在本公开一个实施例中,所述方法还包括:在对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据之后,获取预设移位量;将反dct变换后的特征数据以所述预设移位量进行反归一化。15.在本公开一个实施例中,所述方法还包括:在根据所述图像压缩时的基础量化步长以及步长倍率计算所述特征数据的离散余弦变换dct系数的量化步长之前,获取所述图像压缩时对应的dct系数的绝对值的最大值;求取所述dct系数的绝对值的最大值与所述dct系数的量化区间中数值的绝对值的最大值之间的比值,得到所述基础量化步长。16.根据本公开的另一个方面,还提供了一种图像特征压缩装置,包括:第一获取模块,用于获取待压缩的图像的特征数据;分块模块,用于对所述特征数据进行分块;变换模块,用于将各分块内的特征数据进行离散余弦变换dct,得到各分块内的dct系数;第一计算模块,用于根据所述dct系数以及所述dct系数的量化区间计算基础量化步长;第一确定模块,用于根据所述基础量化步长以及目标量化表中的步长倍率确定各分块内各位置的dct系数的量化步长;量化模块,用于根据各分块内各位置的dct系数的量化步长对各分块内的dct系数进行量化。17.根据本公开的另一个方面,还提供了一种图像特征解压装置,包括:第二获取模块,用于获取压缩后的图像的特征数据,其中,所述特征数据中包括量化后的离散余弦变换dct系数;第二计算模块,用于根据所述图像压缩时的基础量化步长以及步长倍率计算所述dct系数的量化步长,其中,所述基础量化步长与所述图像压缩时的特征数据的dct系数以及dct系数的量化区间相关,所述步长倍率与所述图像压缩时的分块大小对应的量化表对应的步长倍率相关;反量化模块,用于根据所述量化步长对量化后的dct系数进行反量化,得到原始dct系数;反变换模块,用于对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据。18.根据本公开的另一个方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行本公开实施例所述的任意一种图像特征压缩方法以及本公开实施例所述的任意一种图像特征解压方法。19.根据本公开的另一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现公开实施例所述的任意一种图像特征压缩方法以及本公开实施例所述的任意一种图像特征解压方法。20.本公开实施例的图像特征压缩方法,在获取待压缩图像的特征数据后,先对特征数据进行dct变换,得到dct系数,再对dct系数进行量化,在对dct系数进行量化时根据基础量化步长以及目标量化表中的步长倍率确定dct系数的量化步长,而基础量化步长是根据dct系数以及dct系数的量化区间计算得到的,利用了dct系数的全局信息,从而可得到自适应的量化步长,在提高压缩效率的基础上还可有效降低量化损失。21.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明22.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。23.图1示出了一种图像压缩系统的工作流程图;24.图2是原始图像的示意图;25.图3是根据原始图像的一种dct系数的统计概率分布示意图;26.图4是根据原始图像的一种dct系数的统计概率分布示意图;27.图5是根据本公开的一个实施例的特征数据的dct系数的统计概率分布示意图;28.图6是根据本公开的一个实施例的特征数据的dct系数的统计概率分布示意图;29.图7是根据本公开一个实施例的一种图像特征压缩方法的流程图;30.图8是根据本公开一个实施例的一种图像特征压缩方法的流程图;31.图9是根据本公开一个实施例的dct系数量化示意图;32.图10是根据本公开一个实施例的一种图像压缩系统的工作流程图;33.图11是根据本公开一个实施例的对特征数据进行归一化的流程图;34.图12是根据本公开一个实施例的对特征数据进行归一化的流程图;35.图13是根据本公开一个实施例的图像特征解压方法的流程图;36.图14是根据本公开一个实施例的图像特征解压方法的流程图;37.图15是根据本公开一个实施例的图像特征压缩装置的结构示意图;38.图16是根据本公开一个实施例的一种图像特征解压装置的结构示意图;和39.图17是根据本公开一个实施例的一种电子设备的结构示意图。具体实施方式40.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。41.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。42.本公开实施例提供的方案涉及图像特征压缩技术,为了便于对本公开提供的方案进行理解,在对本公开提供的方案进行详细阐述之前,先对图像压缩系统进行说明。43.图1示出了一种图像压缩系统的工作流程图,如图1所示,该流程包括:44.在编码过程中:45.步骤s101:输入待压缩图像;46.步骤s102:图像经过特征提取网络(如cnn(convolutionalneuralnetworks,卷积神经网络))进行特征提取,得到特征数据f32_1,f32_1为浮点型特征数据;47.步骤s103:对特征数据f32_1进行量化,得到低比特特征数据,标记为f8_1;48.步骤s104:对低比特特征数据f8_1进行编码得到比特流b1;49.在解码过程中:50.步骤s105:将编码时得到的比特流b1进行解码,得到低比特特征数据f8_2;51.步骤s106:对f8_2进行反量化,输出浮点特征数据,标记为f32_2。52.步骤s107:将特征数据f32_2输入cnn任务网络,得到输出结果r1。53.基于图1所示的图像压缩系统对图像进行压缩,压缩效率不高的问题,以下分析对图像进行dct量化的情况。54.对图2所示的图像(取值范围[0,255],仅正向分布)进行8×8分块的dct变换,再以q=1进行量化(其中,q为量化步长),则dct系数的统计概率分布如图3所示。[0055]如果将取值范围减去128(取值范围变换为[-128,127],正负分布),进行8×8分块的dct变换,再以q=1进行量化,则dct系数的统计概率分布如图4所示。[0056]根据图3以及图4,可以看出,在输入范围固定为0-255时,dct变换前数据仅正向分布时dct系数量化为0的比例更高,dct系数正负不对称,且正负范围偏差大。[0057]类似的,由于特征的范围不确定,假设采取范围到0-255的方式(范围[0,255],仅正向分布),进行8×8的dct变换,再进行q=1量化,则dct系数的统计概率分布如图5所示。[0058]假设采取范围为0-255,再减去128(范围[-128,127],正负双向分布),进行8×8的dct变换,再进行q=1的量化,则dct系数的统计概率分布如图6所示。[0059]由图5以及图6所示可以看出,特征输入范围不定,dct变换前数据正负双向分布时dct系数量化为0的比例不变,dct系数正负范围偏差更小。[0060]基于以上分析,考虑到传统的dct系数量化基于图像统计特性,量化时仅利用dct块内系数,且以经验量化表来量化,信息损失大,压缩效率低的问题,提出了本公开。[0061]图7是根据本公开一个示例性实施例示出的一种图像特征压缩方法的流程图,该方法可由编码端设备执行,如图7所示,该方法包括:[0062]步骤s701:获取待压缩的图像的特征数据;[0063]其中,待压缩的图像的特征数据例如可以图像通过特征提取网络提取得到的特征数据,特征提取网络例如可以是cnn等神经网络。[0064]需要说明的是,本公开实施例中待压缩的图像,可以是静止的图像或者视频中的连续图像,本公开实施例对此不做具体限制。[0065]步骤s702:对所述特征数据进行分块;[0066]例如,可对特征数据进行4×4或8×8分块,需要说明的是,可根据对计算量的要求确定实际的分块大小。[0067]在对特征数据进行分块后,即可根据分块大小确定量化表的大小,例如,对特征数据进行4×4分块,则量化表大小也为4×4,对特征数据进行8×8分块,则量化表大小也为8×8。[0068]步骤s703:将各分块内的特征数据进行dct,得到各分块内的dct系数;[0069]为了得到更高的压缩比,实现更灵活的码率控制,以及更好的保持后续任务网络的性能,在本公开的一个示例性实施例中,在对图像的特征数据进行压缩的过程中,并非是对由特征提取网络提取得到的原始特征数据进行量化操作,而是先对特征数据进行dct变换,对变换后的dct系数进行量化压缩。故,在获取到待压缩的图像的特征数据后,先对特征数据进行分块,再对分块后的特征数据进行dct量化。dct系数有效增加了系数为0的比例,且量化后的值域区间更小,增加了压缩比,且计算简单。[0070]步骤s704:根据所述dct系数以及所述dct系数的量化区间计算基础量化步长;[0071]可选的,在对dct系数进行量化时,基础量化步长的确定可利用所有dct系数的全局信息,具体各块内dct系数的量化步长则可由基础量化步长的步长倍率和基础量化步长联合决定。从而可得到更加灵活的dct量化表,结合基础量化步长的设置,可灵活的控制码率。[0072]步骤s705:根据所述基础量化步长以及目标量化表对应的步长倍率确定各分块内各位置的dct系数的量化步长;[0073]其中,目标量化表中可设置有步长倍率的值,根据基础量化步长和其对应的步长倍率的值可计算得到各分块内各位置的dct系数的量化步长。[0074]步骤s706:根据各分块内各位置的dct系数的量化步长对各分块内的dct系数进行量化。[0075]本公开实施例的图像特征压缩方法,在获取待压缩图像的特征数据后,先对特征数据进行dct变换,得到dct系数,再对dct系数进行量化,在对dct系数进行量化时根据基础量化步长以及目标量化表中的步长倍率确定dct系数的量化步长,而基础量化步长是根据dct系数以及dct系数的量化区间计算得到的,利用了dct系数的全局信息,在提高压缩效率的基础上,还可得到自适应的量化步长,可有效降低量化损失。[0076]图8是根据本公开一个示例性实施例示出的一种图像特征压缩方法的流程图,如图8所示,该方法还可包括:[0077]步骤s808:在对所述特征数据进行分块之前,将所述特征数据以预设移位量进行归一化,使得所述特征数据变换为以数值0为中间点进行分布。从而可将低频区域0.0附近的大量小幅系数强制转为0,以及高频区域更多的稍高幅值小幅系数强制转为0,可实现更高的压缩比。[0078]仍以图8所示为例,在本公开一个示例性实施例中,根据所述dct系数计算基础量化步长,可包括:[0079]步骤s804,步骤s804可包括步骤s8041以及s8042,步骤s8041:求取所述dct系数的绝对值的最大值;[0080]步骤s8042:求取所述dct系数的绝对值的最大值与dct系数的量化区间中的数值的绝对值的最大值之间的比值,得到所述基础量化步长。[0081]图9是根据本技术一个实施例的dct系数量化示意图,在图9的示例中,假设abs(dct_max)》abs(dct_min),[dct_min,dct_max]为dct系数量化前的值域,[-int_max,int_max]表示dct系数量化后的值域,dct_coeff表示量化系数,dct_min表示dct系数中的最小值,dct_max表示dct系数中的最大值。[0082]在计算基础量化步长时,求取dct系数绝对值的最大值abs_max=max(abs(dct_coeff)),基础量化分为(2*int_max+1)个步长,则基础量化步长为abs_max/int_max。其中,如图9所示,int_max即为所述dct系数的量化区间中的数值的绝对值的最大值。[0083]图10是根据本公开一个示例性实施例示出的一种图像压缩系统的工作流程图,如图10所示,该压缩系统的工作流程包括:[0084]在编码过程中:[0085]步骤s1001:向特征提取网络输入图像;[0086]步骤s1002:图像经过特征提取网络进行特征提取,得到特征数据f32_1,f32_1为浮点型特征数据;[0087]步骤s1003:对特征数据f32_1进行分块后,对分块后的特征数据进行dct变换,得到dct系数cf32_1;[0088]步骤s1004:对dct系数cf32_1进行量化,得到量化后的系数i32_1;[0089]步骤s1005:对量化后的系数i32_1进行编码,得到比特流b2;[0090]在解码过程中:[0091]步骤s1006:获取压缩后的比特流,对该比特流进行解码,得到量化后的系数i32_2;[0092]步骤s1007:对量化后的系数i32_2进行反量化,得到dct系数cf32_2;[0093]步骤s1008:按照dct系数的分块对dct系数进行反dct变换,得到特征数据f32_2;[0094]步骤s1009:将特征数据f32_2输入cnn任务网络,得到输出结果r2。[0095]图11是根据本公开一个示例性实施例示出的对特征数据进行归一化的流程图,如图11所示,将所述特征数据以预设移位量进行归一化,可包括:[0096]步骤s1101:确定所述特征数据的最大值以及最小值;[0097]在一个例子中,待压缩图像的特征数据表示为f32_1,特征数据的最大值为:f_max=max(f32_1),特征数据的最小值为:f_min=min(f32_1);[0098]步骤s1102:计算所述最大值以及所述最小值的均值,得到所述预设移位量;[0099]f_offset=(f_max+f_min)/2,其中,f_offset表示预设移位量。[0100]步骤s1103:将所述特征数据的值减去所述均值,得到归一化后的特征数据。[0101]f32_1=f32_1-f_offset。[0102]图12是根据本公开一个示例性实施例示出的对特征数据进行归一化的流程图,如图12所示,将所述特征数据以预设移位量进行归一化,可包括:[0103]步骤s1201:确定所述特征数据的统计均值;[0104]沿用上述例子,待压缩图像的特征数据表示为f32_1,f_mean=mean(f32_1);[0105]步骤s1202:将所述特征数据的值减去所述统计均值,得到归一化后的特征数据。[0106]f32_1=f32_1-f_mean。[0107]仍以图8所示为例,在本公开一个示例性实施例中,预先设置有多个不同的dct系数量化区间,该方法还可包括:[0108]步骤s809:在根据所述dct系数以及所述dct系数的量化区间计算基础量化步长之前,根据对所述图像的压缩需求从所述多个不同的dct系数量化区间中选择所述dct系数的量化区间。[0109]仍以图8所示为例,在本公开一个示例性实施例中,预先设置有多个量化表,各量化表中预先配置有量化倍率的值,各量化表中所配置的量化倍率的值不同,所述方法还包括:[0110]步骤s810:在根据所述基础量化步长以及量化表对应的步长倍率确定各分块内各位置的dct系数的量化步长之前,根据对所述图像的压缩需求从所述多个量化表中选择所述目标量化表。[0111]可选的,可预先设置有多个量化表,量化表的大小以及其中设置的步长倍率可不同,例如,可设置有多个大小为4×4的量化表,各量化表中设置不同的步长倍率,和/或,设置有多个大小为8×8的量化表,各量化表中设置不同的步长倍率。[0112]若对特征数据进行分块的分块大小为4×4,则可相应选择4×4的大小的量化表,再根据压缩需求在多个4×4大小的量化表中选择步长倍率合适的目标量化表。通过量化表和基础量化步长的灵活搭配可满足多种不同的压缩码率诉求。[0113]以下以一个实例对本公开一示例性实施例的图像特征压缩方法进行示例性说明。[0114]实例1[0115]在该实例中,图像特征压缩方法包括如下处理:[0116]图像通过cnn特征提取网络得到特征数据f32_1;[0117]对特征数据进行初步预处理,通过对特征数据进行如下归一化处理,强制特征数据以0.0为中间点,左右正负分布;[0118]f_max=max(f32_1);[0119]f_min=min(f32_1);[0120]f_offset=(f_max+f_min)/2;[0121]f32_1=f32_1-f_offset;[0122]将特征数据转换为(-1,64)维度得到fm_64;[0123]对每一个64的小块进行8×8的dct变换,得到cf32_1=dct(fm_64);[0124]求cf32_1的最大绝对值;[0125]abs_max=max(abs(cf32_1));[0126]设置int_max为128,则量化步长为2*128+1,基础量化步长为q_base=abs_max/128;[0127]设置量化表为如下表1所示,表1中的数值表示步长倍率。[0128]表1[0129]1111222211122223112222331222233322223333222333342233334423333444[0130]则对8×8的每个位置系数,量化步长为:[0131]q=dct_table*q_base;[0132]对所有数据进行量化:[0133]dct_quant=round(cf32_1/q)。[0134]实例2[0135]在该实例中,图像特征压缩方法包括如下处理:[0136]图像通过cnn特征提取网络得到特征数据f32_1;[0137]对特征数据进行初步预处理,对特征数据进行如下归一化处理,强制特征数据以0.0为中间点,左右正负分布;[0138]f_mean=mean(f_32_1);[0139]f32_1=f32_1-f_mean;[0140]将特征数据转换为(-1,16)维度得到fm_16;[0141]对每一个16的小块进行4×4的dct变换,得到cf32_1=dct(fm_16);[0142]求cf32_1的最大绝对值;[0143]abs_max=max(abs(cf32_1));[0144]设置int_max为64,则量化步长为2*64+1,基础量化步长为q_base=abs_max/64;[0145]设置量化表如下表2所示,表2中的数值表示步长倍率。[0146]表2[0147]1111111211221222[0148]则对4×4的每个位置的dct系数,量化步长为:[0149]q=dct_table*q_base[0150]对所有数据进行量化;[0151]dct_quant=round(cf32_1/q)。[0152]本公开一个示例性实施例还提供了一种图像特征解压方法,该方法可由解码端设备执行,该方法用以对以上述任意一种图像特征压缩方法压缩后的图像特征数据进行解压。图13是根据本公开一个示例性实施例示出的图像特征解压方法的流程图,如图13所示,该方法包括:[0153]s1301:获取压缩后的图像的特征数据,其中,压缩后的图像的特征数据包括量化后的dct系数;[0154]其中,压缩后的图像的特征数据例如可以是根据上述任意一种图像特征压缩方法对待压缩图像进行压缩得到的压缩后的特征数据。例如,该压缩后的特征数据例如可以是在上述图像特征压缩方法中得到的量化后的dct系数。[0155]s1302:根据所述图像压缩时的基础量化步长以及步长倍率计算所述dct系数的量化步长,其中,所述基础量化步长与所述图像压缩时的特征数据的dct系数以及dct系数的量化区间相关,所述步长倍率与所述图像压缩时的分块大小对应的量化表对应的步长倍率相关;[0156]例如,在求取各dct系数时,将图像压缩时该dct系数的基础量化步长乘以步长倍率,即可得到该dct系数的量化步长。[0157]s1303:根据所述量化步长对量化后的dct系数进行反量化,得所述原始dct系数;[0158]其中,原始dct系数指图像压缩时,对图像的特征数据进行dct变换得到的dct系数。[0159]s1304:对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据。[0160]本公开实施例的图像特征解压方法,在获取压缩后的图像特征数据后,先根据图像压缩时的基础量化步长以及步长倍率计算dct系数的量化步长,再根据dct系数的量化步长对量化后的dct系数进行反量化,得到原始dct系数,载对原始dct系数进行反dct变换,可得到反dct变换后的特征数据,实现了对压缩后的图像的数据进行解压,由于在对图像的特征数据进行压缩时量化损失较低,故,对压缩后的特征数据进行解压后可得到较高还原度的特征数据。[0161]图14是根据本公开一个示例性实施例示出的图像特征解压方法的流程图,如图14所示,该方法还可包括:[0162]步骤s1403:在对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据之后,获取预设移位量;[0163]步骤s1404:将反dct变换后的特征数据以预设移位量进行反归一化。[0164]其中,预设移位量可由编码端提供给解码端。[0165]在上述一个或多个实施例中,在对图像的特征数据进行dct变换之前,对特征数据进行了归一化,在特征数据解压过程中,为恢复特征数据的分布,可在对dct系数进行反dct变换之后,对反变换得到的特征数据进行反归一化处理。其中,该预设移位量与在对图像进行压缩过程中进行归一化时所使用的预设移位量一致。[0166]仍以图14所示为例,图像特征解压方法还可包括:[0167]步骤s1401:在根据所述图像压缩时的基础量化步长以及步长倍率计算所述特征数据的dct系数的量化步长之前,获取所述图像压缩时对应的dct系数的绝对值的最大值;[0168]步骤s1402:求取所述dct系数的绝对值的最大值与所述dct系数的量化区间中的数值的绝对值的最大值之间的比值,得到所述基础量化步长。[0169]其中,图像压缩时对应的dct系数的绝对值的最大值可由图像编码端提供给图像解码端,而dct系数的量化区间中的数值的绝对值可由编码端与解码端事先预定好。[0170]与上述图像特征压缩方法中相应,其中,基础量化步长的计算可包括:求取dct系数的绝对值的最大值与dct系数的量化区间中的数值的绝对值的最大值之间的比值,得到基础量化步长。沿用上述例子,dct系数的绝对值最大值abs_max=max(abs(dct_coeff)),dct系数的量化区间中的数值的绝对值的最大值为int_max,则基础量化步长为abs_max/int_max。[0171]根据本公开一个示例性实施例的图像特征解压方法,对上述实例1中对图像的特征数据进行压缩得到的压缩后的特征数据的解压方法包括如下处理:[0172]对量化数据进行反量化;[0173]cf32_2=dct_quant*q;[0174]反dct变换;[0175]fm_64=idct(cf32_2);[0176]特征fm_64reshape回原尺寸得到f32_2;[0177]f32_2=f32_2+f_offset。[0178]根据本公开一个示例性实施例的图像特征解压方法,对上述实例2中对图像的特征数据进行压缩得到的压缩后的特征数据的解压方法包括如下处理:[0179]对量化数据进行反量化;[0180]cf32_2=dct_quant*q;[0181]反dct变换:[0182]fm_16=idct(cf32_2);[0183]特征fm_16reshape回原尺寸得到f32_2。[0184]f32_2=f32_2+f_mean。[0185]图15是根据本公开一个示例性实施例示出的图像特征压缩装置的结构示意图,如图15所示,该装置1500包括:[0186]第一获取模块1501,用于获取待压缩的图像的特征数据;[0187]分块模块1502,用于对所述特征数据进行分块;[0188]变换模块1503,用于将各分块内的特征数据进行dct,得到各分块内的dct系数;[0189]第一计算模块1504,用于根据所述dct系数以及所述dct系数的量化区间计算基础量化步长;[0190]第一确定模块1505,用于根据所述基础量化步长以及所述目标量化表中的步长倍率确定各分块内各位置的dct系数的量化步长;[0191]量化模块1506,用于根据各分块内各位置的dct系数的量化步长对各分块内的dct系数进行量化。[0192]在本公开一个示例性实施例中,图像特征压缩装置还可包括:归一化模块,用于在对所述特征数据进行分块之前,将所述特征数据以预设移位量进行归一化,使得所述特征数据变换为以数值0为中间点进行分布。[0193]在本公开一个示例性实施例中,第一计算模块具体可用于:[0194]求取所述dct系数的绝对值的最大值;[0195]求取所述dct系数的绝对值的最大值与dct系数的量化区间中的数值的绝对值的最大值之间的比值,得到所述基础量化步长。[0196]在本公开一个示例性实施例中,所述归一化模块具体可用于:[0197]确定所述特征数据的最大值以及最小值;[0198]计算所述最大值以及所述最小值的均值,得到所述预设移位量;[0199]将所述特征数据的值减去所述均值,得到归一化后的特征数据。[0200]在本公开一个示例性实施例中,所述归一化模块具体可用于:[0201]确定所述特征数据的统计均值;[0202]将所述特征数据的值减去所述统计均值,得到归一化后的特征数据。[0203]在本公开一个示例性实施例中,预先设置有多个不同的dct系数量化区间,所述装置还可包括:[0204]第一选择模块,用于在根据所述dct系数以及所述dct系数的量化区间计算基础量化步长之前,根据对所述图像的压缩需求从所述多个不同的dct系数量化区间中选择所述dct系数的量化区间。[0205]在本公开一个示例性实施例中,预先设置有多个量化表,各量化表中预先配置有量化倍率的值,各量化表中所配置的量化倍率的值不同,所述装置还包括:第二选择模块,用于根据对所述图像的压缩需求从所述多个量化表中选择目标量化表。[0206]图16是根据本公开一个示例性实施例示出的一种图像特征解压装置的结构示意图,如图16所示,该装置1600包括:[0207]第二获取模块1601,用于获取压缩后的图像的特征数据,其中,所述特征数据中包括量化后的dct系数;[0208]第二计算模块1602,用于根据所述图像压缩时的基础量化步长以及步长倍率计算所述dct系数的量化步长,其中,所述基础量化步长与所述图像压缩时的特征数据的dct系数以及dct系数的量化区间相关,所述步长倍率与所述图像压缩时的分块大小对应的量化表对应的步长倍率相关;[0209]反量化模块1603,用于根据所述量化步长对量化后的dct系数进行反量化,得到原始dct系数;[0210]反变换模块1604,用于对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据。[0211]在本公开的一个示例性实施例中,所述图像特征解压装置还可包括:[0212]第三获取模块,用于在对所述原始dct系数进行反dct变换,得到反dct变换后的特征数据之后,获取预设移位量;[0213]反归一化模块,用于将反dct变换后的特征数据以预设移位量进行反归一化。[0214]在本公开的一个示例性实施例中,所述图像特征解压装置还可包括:[0215]第四获取模块,用于在根据所述图像压缩时的基础量化步长以及步长倍率计算所述特征数据的dct系数的量化步长之前,获取所述图像压缩时对应的dct系数的绝对值的最大值;[0216]第三计算模块,用于求取所述dct系数的绝对值的最大值与所述值域区间的最大值之间的比值,得到所述基础量化步长。[0217]本公开一个示例性实施例还提供了一种电子设备,包括:处理器;以及[0218]存储器,用于存储所述处理器的可执行指令;[0219]其中,所述处理器配置为经由执行所述可执行指令来执行本公开实施例中任意一种图像特征压缩方法以及本公开实施例任意一种图像特征解压方法。[0220]本公开一个示例性实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本公开实施例任意一种图像特征压缩方法以及本公开实施例任意一种图像特征解压方法。[0221]所属
技术领域
:的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。[0222]下面参照图17来描述根据本发明的这种实施方式的电子设备1700。图17显示的电子设备1700仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。[0223]如图17所示,电子设备1700以通用计算设备的形式表现。电子设备1700的组件可以包括但不限于:上述至少一个处理单元1710、上述至少一个存储单元1720、连接不同系统组件(包括存储单元1720和处理单元1710)的总线1730。[0224]其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1710执行,使得所述处理单元1710执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。[0225]存储单元1720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)17201和/或高速缓存存储单元17202,还可以进一步包括只读存储单元(rom)17203。[0226]存储单元1720还可以包括具有一组(至少一个)程序模块17205的程序/实用工具17204,这样的程序模块17205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。[0227]总线1730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。[0228]电子设备1700也可以与一个或多个外部设备1700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1700交互的设备通信,和/或与使得该电子设备1700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1700进行。并且,电子设备1700还可以通过网络适配器1760与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1760通过总线1730与电子设备1700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。[0229]通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。[0230]在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。[0231]描述了根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。[0232]所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。[0233]计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。[0234]可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。[0235]可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。[0236]应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。[0237]此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。[0238]通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。[0239]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1