CN114079472A - 数据处理的方法和系统 - Google Patents
数据处理的方法和系统 Download PDFInfo
- Publication number
- CN114079472A CN114079472A CN202110225315.6A CN202110225315A CN114079472A CN 114079472 A CN114079472 A CN 114079472A CN 202110225315 A CN202110225315 A CN 202110225315A CN 114079472 A CN114079472 A CN 114079472A
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- adjustment
- amplitude
- decoding
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3002—Conversion to or from differential modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本说明书提供的数据处理的方法和系统,可以对初始数据进行编码频谱调节,使初始帧中选定区域的幅值平稳地降低,减少数据信息量,提高数据压缩的效率。对压缩数据进行解压时,使用与编码频谱调节相对应的参数对压缩数据进行解码频谱调节,将压缩数据与经解码频谱调节后的数据相减获取边界信息,将边界信息压缩数据叠加使得解压后的数据在选定区域的幅值恢复或增强,所述解码频谱调节可以有效避免振铃效应,使解压后的数据更清晰。所述方法和系统可以提高数据的压缩效率,提升传输效率,同时可以提升解压后的数据的清晰度。
Description
技术领域
本说明书涉及数据处理领域,尤其涉及一种数据处理的方法和系统。
背景技术
随着互联网技术的日益普遍,特别是移动终端的普及,通信网络涌现出越来越多类型的数据,随着而计算机的普及化,越来越多的数据正在占用越来越多的网络和存储资源,例如,视频数据、音频数据,等等。数据中往往包含巨大的信息量,对储存和传输的要求往往很高,因此,为了便于储存和传输,往往需要对数据进行压缩,在需要时再对压缩后的数据进行解压还原。因此,数据压缩和解压技术得到越来越多的应用。
比如,在过去的几十年中,视频和图像压缩技术得到越来越多的应用。视频中往往包含巨大的信息量。从传统的广播电影电视到现在大量的监控和互联网应用,压缩后的图像视频和图像正在占用越来越多的网络和存储资源。这使得如果将一段视频的原始数据从一个终端通过网络传输到另一个终端时会占用大量的网络资源。这就使得在有些实时视频传输的情况下难以实现画面的流畅传输。因此,视频数据传输前首先要在数据压缩设备处进行压缩处理,以便于传输。压缩后的视频在经过传输媒介传输到数据解压设备之后,数据解压设备再对所述视频进行解压,以至少部分地还原视频图像。
现有技术中主要的视频压缩标准是H.264和H.265标准。在传输前,通常依据H.264和H.265标准使用硬件编码器对视频进行整体压缩,传输后再依据H.264和H.265标准通过硬件解码器对视频进行整体解压。但是,上述对视频进行整体压缩的处理方法在计算量和解压后视频清晰度之间的平衡上表现的仍不能令人满意。这是因为,H.264和H.265标准在处理所述原始视频的时候要通过各种复杂的算法生成原始帧的预测帧,然后记录所述原始帧与所述预测帧之间的残差。所述预测帧同所述原始帧越接近,则残差越小,对一段视频编码后的数据量就越小。为了使编码更加容易,常用的方法是通过对原始帧进行滤波来减少原始帧图像中的高频信息。由傅里叶变换可知,在图片中物体的边界部分频率信息往往是比较丰富的,边界部分的高频分量通常大于其他平缓区域的高频分量。因此减少高频信息的帧图像虽然在视觉上变得模糊了(也就是图像的清晰度降低了),却可以使得预测帧和滤波后的原始帧之间的残差更小。这样对视频编码时需要的计算量和编码后的数据流都减小了很多。然而,帧预测的技术非常复杂,会占用大量的计算资源。以视频编解码系统为例,平均每提高30%~40%的编码效率,便要增加约10倍的计算量。同时,传输后的数据经解压后清晰度降低,而且往往存在振铃效应。所述振铃效应是指在图像处理中,对一幅图像进行频谱调节处理时,若选用的频谱调节函数数值上具有较快的变化(也就是存在导数变化剧烈的区域),则会使输出图像在灰度剧烈变化处产生灰度震荡,就好像钟被敲击后产生的空气震荡。振铃效应多出现在图像边界处。如果一幅输出图像有很强的振铃效应,则无法满足人们对数据的清晰度日益增长的要求。因此,如何进一步提高数据的压缩效率,同时提高数据解压后的清晰度,消除振铃效应,一直都是数据压缩和解压技术领域追求的目标。
因此,为了提升数据的传输效率以及数据解压后的清晰度,需要一种压缩效率更高同时数据解压更清晰的数据处理的方法和系统。
发明内容
本说明书提供一种压缩效率更高同时数据解压更清晰的数据处理的方法和系统。以视频数据为例,所述数据处理的方法和系统可以对初始视频数据中的初始帧进行编码频谱调节,使得所述初始帧在选定频域内的信号强度减小,使初始帧中选定区域的幅值平稳地降低,从而减少数据信息量,然后再对频谱调节后的数据进行编码(预测和求残差)得到压缩帧,提高数据压缩的效率。在进行数据解压时,所述方法和系统可以对所述压缩帧先进行解码,然后使用与编码端相对应的参数对解码后的数据进行解码频谱调节,所述解码频谱调节可以使解码后的数据中的中频和高频区域的分量被过滤,即得到比解码后的数据更模糊的数据,将解码后的数据与经解码频谱调节后被过滤掉中频和高频区域的数据相减可以获取初始帧中的边界信息,将边界信息与解码后的数据叠加便可以得到解压帧。所述编码频谱调节可以使初始帧中的数据信息量减少,在进行预测和求残差时可以提高数据压缩的效率。所述解码频谱调节与所述编码频谱调节相对应,可以使经所述编码频谱调节的压缩数据恢复至初始帧的清晰度甚至高于所述初始帧的清晰度。也就是说,在不显著增加编解码的计算量的情况下,解码端需要至少将解压数据在重要频率内的数据恢复至初始帧的清晰度,甚至可以获得超过初始帧的清晰度。因此,编码频谱调节函数与解码频谱调节函数之间存在对应的关系。为了消除振铃效应,所述编码频谱调节函数和所述解码频谱调节函数,应在时域和频域范围内平滑过渡,避免出现振铃效应。由于初始帧在重要频率区域只经过了频域上的信号衰减而不是频域上的滤除,在重要频域内的信息并没有缺失,因此可以根据所述编码频谱调节函数和所述解码频谱调节函数的关系以及各自的特征,来设计编码频谱调节函数和解码频谱调节函数,对初始帧中重要频率上的信息进行恢复。所述方法和系统可以显著提高数据的压缩效率,提升数据的传输效率,同时避免振铃效应,提高解压后数据的清晰度。
基于此,第一方面,本说明书提供一种数据处理的方法,包括:获取压缩数据,所述压缩数据包括对初始帧进行数据压缩得到的压缩帧;以及对所述压缩帧进行数据解压,得到解压帧,包括:对在解帧进行解码频谱调节,并对所述在解帧和所述在解帧经过所述解码频谱调节后的数据求差,得到边界帧,所述在解帧包括所述压缩帧和所述压缩帧在所述数据解压过程中成为所述解压帧前的任一数据状态,所述边界帧包括所述初始帧的边界信息;以及将所述边界帧和所述在解帧叠加得到所述解压帧;其中,所述编码频谱调节与所述解码频谱调节存在预先设定的关联关系。
在一些实施例中,所述数据压缩包括编码频谱调节,以便在频域内平稳地降低在压帧在中频区域的幅值,所述在压帧包括所述初始帧和所述初始帧在所述数据压缩过程中成为所述压缩帧之前的任一数据状态。
在一些实施例中,所述解码频谱调节使所述在解帧在频域内的幅值平滑地降低以过滤中频至高频区域的分量。
在一些实施例中,所述编码频谱调节包括使用编码卷积核对所述在压帧做卷积;所述解码频谱调节包括基于所述解码卷积核,使用相应的解码卷积核对所述在解帧做卷积,其中,所述解码卷积核中负系数的和的绝对值与非负系数的和的比值小于0.1。
在一些实施例中,所述对在解帧进行解码频谱调节,并对所述在解帧和所述在解帧经过所述解码频谱调节后的数据求差,得到边界帧,包括:对所述压缩帧进行解码,得到解码帧,所述在解帧包括所述解码帧;对所述解码帧进行所述解码频谱调节,得到解码频谱调节帧,所述解码频谱调节帧中过滤了所述解码帧的中频至高频区域的分量;对所述解码帧和所述解码频谱调节帧求差,获取所述边界信息;以及基于调整系数对所述边界信息进行调整,得到所述边界帧,所述调整系数为大于0的实数。
在一些实施例中,所述将所述边界帧和所述在解帧叠加得到所述解压帧,包括:将所述边界帧和所述在解帧叠加得到叠加帧;以及将所述叠加帧作为所述解压帧。
在一些实施例中,所述将所述边界帧和所述在解帧叠加得到所述解压帧,包括:将所述边界帧和所述在解帧叠加得到叠加帧;以及对所述叠加帧进行边界调整,得到所述解压帧。
在一些实施例中,所述对所述叠加帧进行边界调整,包括:基于所述叠加帧的元素值对所述叠加帧进行分区,所述叠加帧包括:凹点区域,所述凹点区域包括局部最小值对应的元素;以及凸点区域,所述凸点区域包括局部最大值对应的元素;获取所述叠加帧中所述凹点区域和所述凸点区域中每个元素对应的边界值;基于预设的边界阈值,对所述凹点区域和所述凸点区域中的边界值大于所述边界阈值的元素进行调整,得到调整值;以及基于所述调整值对所述叠加帧进行调整,得到所述解压帧。
在一些实施例中,所述编码频谱调节与所述解码频谱调节相对应,使所述解压帧在低频至中频区域的任意频率上的幅值不小于所述初始帧的85%。
在一些实施例中,所述编码频谱调节对所述在压帧在频域内的低频至中频区域的任意频率上的幅值调节增益都大于零。
在一些实施例中,所述数据解压使所述解压帧相对于所述初始帧在中频区域的幅值平稳地增加。
在一些实施例中,所述数据解压使所述解压帧相对于所述初始帧在低频区域的幅值平稳地增加,其中,所述解压帧在中频区域的幅值增加幅度大于在低频区域的幅值增加幅度。
在一些实施例中,所述数据解压使所述解压帧相对于所述初始帧在高频区域的幅值平稳地降低。
第二方面,本说明书提供一种数据处理的系统,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质包括至少一个指令集,用于数据处理;所述至少一个处理器同所述至少一个存储介质通讯连接,其中当所述系统运行时,所述至少一个处理器读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行本说明书所述的数据处理的方法。
本说明书提供的数据处理的方法和系统的其他功能将在以下说明中部分列出。根据描述,以下数字和示例介绍的内容将对那些本领域的普通技术人员显而易见。本说明书提供的数据处理的方法、系统和存储介质的创造性方面可以通过实践或使用下面详细示例中所述的方法、装置和组合得到充分解释。
附图说明
为了更清楚地说明本说明书实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本说明书的实施例提供的一种数据处理的系统示意图;
图2示出了根据本说明书的实施例提供的一种数据处理的数据压缩设备示意图;
图3A示出了根据本说明书的实施例提供的一种数据压缩和数据解压的流程图;
图3B示出了根据本说明书的实施例提供的一种数据压缩和数据解压的流程图;
图3C示出了根据本说明书的实施例提供的一种数据压缩和数据解压的流程图;
图4示出了根据本说明书的实施例提供的一种对数据进行压缩的数据处理的方法的流程图;
图5A示出了根据本说明书的实施例提供的一种编码频谱调节函数的曲线图;
图5B示出了根据本说明书的实施例提供的一种编码频谱调节函数的曲线图;
图6示出了根据本说明书的实施例提供的一种编码卷积核的参数表;
图7示出了根据本说明书的实施例提供的一种对压缩帧进行解压的数据处理的方法的流程图;
图8A示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图;
图8B示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图;
图8C示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图;
图8D示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图;
图8E示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图;
图9A示出了根据本说明书的实施例提供的一种正常模式的整体调节函数H0(f)、编码频谱调节函数H1(f)和解码频谱调节函数H2(f)的曲线图;
图9B示出了根据本说明书的实施例提供的一种增强模式的整体调节函数H0(f)、编码频谱调节函数H1(f)和解码频谱调节函数H2(f)的曲线图;
图10A示出了根据本说明书的实施例提供的一种解码卷积核的参数表;
图10B示出了根据本说明书的实施例提供的一种正常模式的编码卷积核的参数表;
图10C示出了根据本说明书的实施例提供的一种增强模式的编码卷积核的参数表;
图11示出了根据本说明书的实施例提供的一种边界调整的方法的流程图;
图12A示出了根据本说明书的实施例提供的一种未进行边界调整的示例图;以及
图12B示出了根据本说明书的实施例提供的一种进行边界调整的示例图。
具体实施方式
以下描述提供了本说明书的特定应用场景和要求,目的是使本领域技术人员能够制造和使用本说明书中的内容。对于本领域技术人员来说,对所公开的实施例的各种局部修改是显而易见的,并且在不脱离本说明书的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用。因此,本说明书不限于所示的实施例,而是与权利要求一致的最宽范围。
这里使用的术语仅用于描述特定示例实施例的目的,而不是限制性的。比如,除非上下文另有明确说明,这里所使用的,单数形式“一”,“一个”和“该”也可以包括复数形式。当在本说明书中使用时,术语“包括”、“包含”和/或“含有”意思是指所关联的整数,步骤、操作、元素和/或组件存在,但不排除一个或多个其他特征、整数、步骤、操作、元素、组件和/或组的存在或在该系统/方法中可以添加其他特征、整数、步骤、操作、元素、组件和/或组。
考虑到以下描述,本说明书的这些特征和其他特征、以及结构的相关元件的操作和功能、以及部件的组合和制造的经济性可以得到明显提高。参考附图,所有这些形成本说明书的一部分。然而,应该清楚地理解,附图仅用于说明和描述的目的,并不旨在限制本说明书的范围。还应理解,附图未按比例绘制。
本说明书中使用的流程图示出了根据本说明书中的一些实施例的系统实现的操作。应该清楚地理解,流程图的操作可以不按顺序实现。相反,操作可以以反转顺序或同时实现。此外,可以向流程图添加一个或多个其他操作。可以从流程图中移除一个或多个操作。
本说明书一方面提供了一种数据处理的系统100(以下简称系统100)。第二方面,本说明书描述了一种对数据进行压缩的数据处理的方法P200,第三方面,本说明书描述了一种对压缩帧进行解压的数据处理的方法P300。
图1示出了一种数据处理的系统100的示意图。系统100可以包括数据压缩设备200、数据解压设备300以及传输媒介120。
数据压缩设备200可以接收待压缩的初始数据,并使用本说明书提出的数据处理方法P200压缩初始数据产生压缩帧。数据压缩设备200可以存储有执行本说明书描述的数据处理的方法P200的数据或指令,并且执行所述数据和/或指令。
数据解压设备300可以接收压缩帧,并使用本说明书提出的数据处理方法P300解压压缩帧,得到解压帧。数据解压设备300可以存储有执行本说明书描述的数据处理的方法P300的数据或指令,并且执行所述数据和/或指令。
数据压缩设备200及数据解压设备300可包括广泛范围的装置。比如,数据压缩设备200及数据解压设备300可以包含台式计算机、移动计算装置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、智能电话等手持机、电视、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机,或其类似者。
如图1所示,数据压缩设备200与数据解压设备300可以通过传输媒介120连接。传输媒介120可以促进信息和/或数据的传输。传输媒介120可以是任何可以将压缩帧从数据压缩设备200传输至数据解压设备300的数据载体。例如,传输媒介120可以是储存媒介(例如,光盘)、有线或无线通信媒介。所述通信媒介可以是网络。在一些实施例中,传输媒介120可以是任何类型的有线或无线网络,也可以是其组合。比如,传输媒介120可以包括电缆网络,有线网络、光纤网络、电信通信网络、内联网、互联网、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、大都市市区网(MAN)、广域网(WAN)、公用电话交换网(PSTN)、蓝牙网络、ZigBee网络、近场通信(NFC)网络或类似网络。数据解压设备300和数据压缩设备200中的一个或多个组件可以连接到传输媒介120以传输数据和/或信息。传输媒介120可以包括路由器、交换器、基站,或促进从数据压缩设备200到数据解压设备300的通信的其它设备。在另一些实施例中,传输媒介120可以是储存媒介,例如,大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)或类似内容,或其任意组合。示例性大容量存储可能包括磁盘、光盘、固态驱动器等非暂时性存储介质(non-transitory storage medium)。可移动存储可能包括闪存驱动器、软盘、光盘、存储卡、zip磁盘、磁带等。典型的易失性读写内存可能包括随机存取存储器(RAM)。RAM可能包括动态RAM(DRAM)、双日期速率同步动态RAM(DDRSDRAM)、静态RAM(SRAM)、晶闸管RAM(T-RAM)和零电容RAM(Z-RAM)等。ROM可能包括掩码ROM(MROM)、可编程ROM(PROM)、可虚拟可编程ROM(PEROM)、电子可编程ROM(EEPROM)、光盘(CD-ROM)和数字多功能磁盘ROM等。在一些实施例中,传输媒介120可以是云平台。仅仅作为例子,所述云平台可能包括私有云、公共云、混合云、社区云、分布式云、云间云等形式,或者同上述形式类似的形式,或这上述形式的任意组合。
如图1所示,数据压缩设备200接收初始数据,并执行本说明书描述的数据处理的方法P200的指令,对初始数据进行数据压缩,产生压缩帧;所述压缩帧通过传输媒介120传输给数据解压设备300;数据解压设备300执行本说明书描述的数据处理的方法P300的指令,对压缩帧进行数据解压,得到解压帧。
图2示出了一种数据处理的数据压缩设备200的示意图。数据压缩设备200可以执行本说明书描述的数据处理的方法P200。所述数据处理的方法P200在本说明书中的其他部分介绍。比如,在图4至图6的描述中介绍了所述数据处理的方法P200。
如图2所示,数据压缩设备200包括至少一个存储介质230和至少一个压缩端处理器220。在一些实施例中,数据压缩设备200还可以包括通信端口250和内部通信总线210。同时,数据压缩设备200还可以包括I/O组件260。
内部通信总线210可以连接不同的系统组件,包括存储介质230和压缩端处理器220。
I/O组件260支持数据压缩设备200和其他组件之间的输入/输出。
存储介质230可以包括数据存储装置。所述数据存储装置可以是非暂时性存储介质,也可以是暂时性存储介质。比如,所述数据存储装置可以包括磁盘232、只读存储介质(ROM)234或随机存取存储介质(RAM)236中的一种或多种。存储介质230还包括存储在所述数据存储装置中的至少一个指令集。所述指令是计算机程序代码,所述计算机程序代码可以包括执行本说明书提供的数据处理的方法的程序、例程、对象、组件、数据结构、过程、模块等等。
通信端口250用于数据压缩设备200同外界的数据通讯。比如,数据压缩设备200可以通过通信端口250连接传输媒介120。
至少一个压缩端处理器220同至少一个存储介质230通过内部通信总线210通讯连接。至少一个压缩端处理器220用以执行上述至少一个指令集。当系统100运行时,至少一个压缩端处理器220读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行数据处理方法P200。压缩端处理器220可以执行数据处理的方法P200包含的所有步骤。压缩端处理器220可以是一个或多个处理器的形式,在一些实施例中,压缩端处理器220可以包括一个或多个硬件处理器,例如微控制器,微处理器,精简指令集计算机(RISC),专用集成电路(ASIC),特定于应用的指令集处理器(ASIP),中央处理单元(CPU),图形处理单元(GPU),物理处理单元(PPU),微控制器单元,数字信号处理器(DSP),现场可编程门阵列(FPGA),高级RISC机器(ARM),可编程逻辑器件(PLD),能够执行一个或多个功能的任何电路或处理器等,或其任何组合。仅仅为了说明问题,在本说明书中数据压缩设备200中仅描述了一个压缩端处理器220。然而,应当注意,本说明书中数据压缩设备200还可以包括多个处理器,因此,本说明书中披露的操作和/或方法步骤可以如本说明书所述的由一个处理器执行,也可以由多个处理器联合执行。例如,如果在本说明书中数据压缩设备200的压缩端处理器220执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同压缩端处理器220联合或分开执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同执行步骤A和B)。
虽然上述结构描述的是数据压缩设备200,此结构也适用于数据解压设备300。数据解压设备300可以执行本说明书描述的数据处理的方法P300。所述数据处理的方法P300在本说明书中的其他部分介绍。比如,在图7至图12的描述中介绍了所述数据处理的方法P300。
数据处理方法P200、P300和系统100可以用于数据的压缩和解压,以提高所述数据的传输效率,节约资源和空间。所述数据可以是非实时数据,也可以是实时数据。从传统的广播电影电视到现在大量的监控和互联网应用都存在各种各样的数据。例如,所述数据可以是非实时的视频数据、音频数据或者图像数据,等等。所述数据还可以是实时地图数据、实时传感器数据、实时视频监控数据、网络监测数据、气象数据、航空航天数据,等等。比如说,所述数据可以是自动驾驶汽车在行驶过程中从基站接收到的地图数据。本说明书对所述数据的具体类别不作限定。本说明书所述的数据处理的方法和系统在对不同类别的数据进行处理时所采取的方法和步骤都是一致的,为了方便展示,本说明书将以视频数据的处理为例进行描述。
数据处理方法P200、P300和系统100可以显著提高视频数据的压缩效率,提升视频的传输效率和还原率。在传统的视频压缩技术中,通常使用H.264和H.265标准对视频数据进行编码,从而达到对所述视频数据进行压缩的目的。H.264和H.265标准对视频数据进行编码主要采用的技术手段是预测编码,即对初始帧进行预测得到预测值,再将预测值与所述初始帧的初始值相减得到残差值,从而对所述视频数据进行压缩。在恢复和解压(即解码)时,用残差值和预测值相加即可恢复所述初始帧。数据处理方法P200可以采用编码频谱调节和编码相结合的方法对所述视频数据进行数据压缩,得到压缩帧,以进一步提高视频数据的压缩比,提升视频传输的效率。数据处理方法P300可以采用解码(即根据残差值和预测值恢复在压帧)和解码频谱调节相结合的方法,对所述压缩帧进行数据解压,以恢复所述压缩帧中的数据。数据处理方法P300可以通过解码频谱调节函数对压缩数据进行解码频谱调节,所述解码频谱调节可以使解码后的数据避免振铃效应;将压缩数据与解码后的数据求差,获取所述初始帧的边界信息,将所述边界信息与所述解码后的数据叠加便可以得到所述解压帧。具体地,所述解码频谱调节通过使用平滑过渡的低通滤波器使解码后的数据中的中频和高频区域的分量被过滤,因此,解码后的数据可以有效避免振铃效应,从而使解压后的数据更清晰。所述编码频谱调节是指对待处理数据的频谱图的幅值进行调节。比如,所述编码频谱调节可以对所述待处理数据在频域上进行幅值衰减,从而减小所述待处理数据中的信息量,比如衰减所述待处理数据在其频域内选定频率区域的幅值,比如中频区域的幅值,高频区域的幅值,比如低频至中频区域的幅值,又比如中频至高频区域的幅值,等等。本领域的普通技术人员可以理解的是,经过编码频谱调节的数据在选定频率区域内的频率分量变小,数据中的信息量减少了,因此,经过编码频谱调节的数据编码时的效率可以提高,提升压缩比。所述解码频谱调节可以使经过所述编码频谱调节的数据在不考虑其他计算误差的情况下完全恢复或者近似恢复至编码频谱调节前的状态,甚至超越编码频谱调节前的状态。所述解码频谱调节通过平滑过渡的解码频谱调节函数使所述解码后的数据中的中频和高频区域的分量被过滤,避免解压后的数据中出现振铃效应,使解压后的数据更清晰。因此,数据处理方法P200、P300和系统100可以显著提高视频数据的压缩效率,提升视频的传输效率、还原率以及解压视频的清晰度。关于所述编码频谱调节和所述解码频谱调节的具体过程将在后面的描述中详细介绍。系统100在对视频数据进行数据压缩时,所述编码频谱调节和所述编码的顺序是可以互换的,也可以是交叉进行的。同样,系统100在对压缩帧进行数据解压时,所述解码频谱调节和所述解码的顺序是可以互换的,也可以是交叉进行的。需要说明的是,为保证解压后的数据信息可以恢复初始数据中的信息,所述数据解压的顺序与所述数据压缩的顺序应该是相对应的,即所述数据解压可以同所述数据压缩呈对称反向操作。比如,如果所述压缩帧是先进行所述编码频谱调节再进行所述编码得到的,则所述压缩帧在数据解压时应先进行所述解码再进行所述解码频谱调节。为了方便描述我们将数据压缩处理前的所述初始帧中的数据定义为P0,将编码频谱调节所对应的编码频谱调节函数定义为H1(f),将经数据解压设备300解压得到的解压帧中的数据定义为P4,将解码频谱调节所对应的解码频谱调节函数定义为H2(f)。
图3A示出了根据本说明书的实施例提供的一种数据压缩和数据解压的流程图。如图3A所示,数据压缩设备200对初始数据进行数据压缩可以是:数据压缩设备200先对所述初始数据P0使用所述编码频谱调节函数H1(f)进行所述编码频谱调节,再进行所述编码,即对编码频谱调节后的数据进行预测和求残差,得到预测数据PI和残差数据R,将所述预测数据PI和所述残差数据R输入码流生成模块进行合成,得到所述压缩帧。为了方便展示,我们将经过所述编码频谱调节函数H1(f)进行所述编码频谱调节后得到的数据定义为P1。图3A所示的数据压缩方法可以提高编码效率,使所述压缩帧中的数据量进一步减小,提高压缩比。
数据解压设备300对所述压缩帧进行数据解压可以是:数据解压设备300对所述压缩帧先进行所述解码,即基于码流解析模块对所述压缩帧进行解析,生成所述预测数据PI和所述残差数据R;再根据所述预测数据PI进行预测得到预测帧,并和所述残差数据R叠加,得到叠加数据P2。然后对叠加数据P2使用所述解码频谱调节函数H2(f)进行所述解码频谱调节,得到数据PC。所述解码频谱调节使所述叠加数据避免出现振铃效应。具体地,所述解码频谱调节使所述叠加数据在频域内的幅值平滑地降低以过滤中频至高频区域的分量。一帧数据频谱中的中频至高频分量主要集中在这一帧数据中数据变化剧烈的区域,也就是数据的边界数据。比如,对于一帧图像来说,所述中频至高频数据主要集中在所述图像中物体的边界,也就是这一帧图像的边界数据。因此,数据PC可以理解成去除了叠加数据P2中的边界数据。接下来,对所述叠加数据P2和所述数据PC求差,得到边界帧。所述边界帧表示提取了边界数据的一帧数据。比如对于图像数据来说,所述边界帧表示提取了物体边界的图像。由于所述解码频谱调节使所述叠加数据P2中的中频至高频区域的分量被过滤,因此,所述叠加数据P2与数据PC求差得到的所述边界帧包括所述初始帧的边界信息,为了方便展示,我们将所述边界帧中的数据定义为PE;将所述边界帧PE与所述叠加数据P2叠加得到叠加帧P3;我们可以直接将所述叠加帧P3作为所述解压帧P4进行输出,也可以对所述叠加帧P3进行边界调整,将边界调整的结果作为所述解压帧P4。为了方便展示,我们将叠加帧P3与初始数据P0之间的传递函数定义为整体频谱调节函数H0(f)。图3A所示的方式可以减少所述压缩帧中的数据量,从而提高所述初始数据的压缩比和编码效率,提升所述初始数据的传输效率,同时可以避免振铃效应提升解压帧的清晰度。所述数据压缩和数据解压的具体过程将在后面的内容中具体描述。
数据压缩设备200对初始数据进行数据压缩也可以是:将所述编码频谱调节融入到所述编码过程中。所述编码频谱调节可以在所述编码过程中的任意阶段进行。相应地,所述解码频谱调节也可以在所述解码过程的对应阶段进行。
图3B示出了根据本说明书的实施例提供的一种数据压缩和数据解压的流程图。如图3B所示,数据压缩设备200对初始数据进行数据压缩可以是:数据压缩设备200对所述初始数据P0进行预测,得到预测帧和预测数据PI,再对所述预测帧和所述初始数据分别进行所述编码频谱调节后求残差,得到残差数据R,将所述预测数据PI和所述残差数据R输入码流生成模块进行合成,生成所述压缩帧。图3B所示的数据压缩的具体的操作与图3A所示的方式相同,只是操作顺序不同。
在解压阶段,数据解压设备300对所述压缩帧进行数据解压可以是:数据解压设备300基于码流解析模块对所述压缩帧进行解析,生成所述预测数据PI和所述残差数据R1;对所述残差数据R1进行所述解码频谱调节,并对所述残差数据R1和经过所述解码频谱调节的数据求差,并将所述残差数据R1与求差后的数据叠加,得到所述残差数据R;然后根据预测数据PI进行预测得到预测帧,并与所述残差数据R进行叠加得到所述叠加帧P3;我们可以直接将所述叠加帧P3作为所述解压帧P4进行输出,也可以对所述叠加帧P3进行边界调整,将边界调整的结果作为所述解压帧P4。
图3B所示的方式可以减少所述压缩帧中的数据量,从而提高所述初始数据的压缩比和编码效率,提升所述初始数据的传输效率,同时可以避免振铃效应提升解压帧的清晰度。
图3C示出了根据本说明书的实施例提供的一种数据压缩和数据解压的流程图。如图3C所示,数据压缩设备200对初始数据进行数据压缩可以是:数据压缩设备200对所述初始数据P0进行所述编码,即预测和求残差,得到预测数据PI和残差数据R,再对所述残差数据R进行所述编码频谱调节;将经过所述编码频谱调节后的残差数据R1和预测数据PI输入码流生成模块进行合成,生成所述压缩帧。图3C所示的数据压缩方式具体的操作与图3A所示的方式相同,只是操作顺序不同。
在解压阶段,数据解压设备300对所述压缩帧进行数据解压可以是:数据解压设备300基于码流解析模块对所述压缩帧进行解析,生成所述预测数据PI和所述残差数据R1;对所述残差数据R1进行所述解码频谱调节,并对所述残差数据R1和经过所述解码频谱调节的数据求差,并将所述残差数据R1与求差后的数据叠加,得到所述残差数据R;然后根据预测数据PI进行预测得到预测帧,并与所述残差数据R进行叠加得到所述叠加帧P3;我们可以直接将所述叠加帧P3作为所述解压帧P4进行输出,也可以对所述叠加帧P3进行边界调整,将边界调整的结果作为所述解压帧P4。
图3C所示的方式可以减少所述压缩帧中的数据量,从而提高所述初始数据的压缩比和编码效率,提升所述初始数据的传输效率,同时可以避免振铃效应提升解压帧的清晰度。
图4示出了一种对数据进行压缩的数据处理的方法P200的流程图。如前所述,数据压缩设备200可以执行数据处理方法P200。具体地,数据压缩设备200中存储介质可以存储至少一组指令集。所述指令集被配置为可以指示数据压缩设备200中的压缩处理器220完成数据处理方法P200。当所述数据压缩设备200运行的时候,压缩处理器220可以读取所述指令集并执行数据处理方法P200。所述方法P200可以包括:
S220:选择初始数据中的初始帧。
帧是组成数据序列的一个处理单位。在数据处理时,常常以帧为单位进行计算。所述初始数据可以包括一个或多个初始帧。所述初始帧包括预设字节数的初始数据。如前所述,在本说明书中以视频数据为例进行描述,因此,所述初始数据可以是初始视频数据,所述初始帧可以是初始视频数据中的帧图像。在步骤S220中,数据压缩设备200可以从所述初始数据中选择一部分帧图像作为所述初始帧,也可以选择所述初始数据中的全部帧图像作为所述初始帧。数据压缩设备200可以根据所述初始数据应用场景选择所述初始帧。若所述初始数据应用在对精度和压缩质量要求不高的场景可以选择部分帧图像作为所述初始帧,比如,僻静处的监控图像在多数情况下画面中没有外来物,因此所述僻静处的监控图像多数帧图像是相同的,数据压缩设备200可以从中选择部分帧图像作为所述初始帧进行压缩和传输。又比如,对于高清的电视播放视频,为了保证观影效果,数据压缩设备200可以选择全部帧图像作为所述初始帧进行压缩和传输。
S240:对所述初始帧进行数据压缩操作,得到压缩帧。
所述数据压缩操作包括将在压帧输入编码频谱调节器进行编码频谱调节,所述在压帧包括所述初始帧和所述初始帧在所述数据压缩过程中称为所述压缩帧之前的任一数据状态。比如,所述在压帧包括所述初始帧和所述初始帧在预测和求残差过程中的任一数据状态。所述编码频谱调节是指对所述在压帧的频谱图的幅值进行调节。比如,所述编码频谱调节可以由一个衰减器完成。所述衰减器可以对所述在压帧在频域上进行幅值衰减,从而降低所述在压帧中的数据信息量。
比如所述衰减器被配置为降低所述在压帧在其频域内的选定区域的幅值,比如中频区域的幅值,高频区域的幅值,又比如低频至中频区域的幅值,又比如,中频至高频区域的幅值,等等。对于不同形式的数据,接收者对于频率的敏感程度不同,因此所述数据压缩操作可以根据不同形式的数据在频域上选定不同的区域进行幅值衰减。如前所述,以视频数据为例,由于图片中物体的边缘部分中频和高频信息丰富,而中频和高频区域会携带更多的数据,因此降低中频至高频区域的幅值从视觉上会使所述在压帧的边界数据模糊化,同时也会使图像中的信息量大大减小。需要说明的是,降低低频区域的幅值,也会减小图像中的信息量。本领域的普通技术人员可以理解的是,比起没经过编码频谱调节处理的情况,经过编码频谱调节处理的中间状态帧中的低频至高频区域的频率分量减小了,数据信息量也减小了,因此经过编码频谱调节处理的中间状态帧在编码中会有更高的压缩比。不同类型的数据对于低频、中频和高频区域的定义可以不同。在一些实施例中,所述高频可以包括归一化的频域中(0.33,0.5]之间的频率。比如,所述高频可以包括所述归一化的频域中0.33、0.34、0.35、0.36、0.37、0.38、0.39、0.4、0.41、0.42、0.43、0.44、0.45、0.46、0.47、0.48、0.49、0.5中任何两个频率之间的区间,其中0.5为所述归一化的最大频率。
以视频数据压缩为例,数据处理方法P200可以采用编码频谱调节和编码相结合的方法对所述初始帧进行压缩,使中频区域的幅值平稳地降低,以减少数据信息量,进一步提高视频数据的压缩比,提升视频传输的效率。所述在压帧可以包括所述初始帧在进行所述编码频谱调节和编码的过程中的任一种数据状态,例如,初始帧、预测帧、残差帧,等等。
如前所述,所述对所述初始帧进行数据压缩时,所述编码频谱调节和所述编码的顺序是可以互换的,也可以是交叉进行的。步骤S240可以包括图3A、图3B和图3C中示出的数据压缩的方法中的至少一种。
为了方便展示,本说明书将以图3A所示方式为例对步骤S240进行详细的描述,即数据压缩设备200对所述初始帧先进行所述编码频谱调节,再对经编码频谱调节后的所述初始帧进行编码(即预测和求残差)的压缩方式。也就是说,数据压缩设备200可以先对所述初始帧进行编码频谱调节,使所述初始帧在频域内的幅值平稳地降低,从而使所述初始帧的边界信息模糊,得到编码频谱调节帧,以减少所述初始帧中的信息量,从而降低所述初始帧压缩后占用的空间资源,其中所述在压帧包括所述编码频谱调节帧;然后对所述编码频谱调节帧进行编码,即预测和求残差,对所述编码频谱调节帧进行预测得到所述编码频谱调节帧的预测帧和所述预测数据PI;再将所述编码频谱调节帧的预测帧与所述编码频谱调节帧的初始帧相减得到所述编码频谱调节帧的残差数据R,将残差数据R和所述预测数据PI输入码流生成模块进行合成,得到所述压缩帧。数据处理方法P200可以提高所述编码频谱调节帧的编码效率,使所述压缩帧中的数据量进一步减小,提高编码效率,提高压缩比。由于所述编码频谱调节的对象是所述初始帧,因此所述在压帧便是所述初始帧。以视频数据为例,在步骤S240中,所述对所述在压帧(初始帧)进行所述数据压缩,可以包括通过数据压缩设备200的至少一个压缩端处理器220执行:
S242:对所述在压帧(初始帧)进行所述编码频谱调节,得到所述编码频谱调节帧。其中,所述编码频谱调节包括使用编码卷积核对所述在压帧做卷积,以便在频域内平稳地降低所述在压帧在中频区域的幅值。在步骤S242中,所述对所述在压帧进行编码频谱调节,可以包括通过数据压缩设备200的至少一个压缩端处理器220执行:
S242-2:确定所述初始帧的帧类型。
以视频数据为例进行说明。帧是组成视频数据序列的一个常用处理单位。在视频数据处理时,常常以帧为单位进行计算。在使用H.264或H.265的标准对视频数据进行编码时,常常根据帧图像将帧压缩成不同的帧类型。因此,数据压缩设备200在对所述在压帧(初始帧)进行所述编码频谱调节前,需要先确定所述初始帧的帧类型,对于不同的帧类型选择的编码卷积核也不同。
对于视频帧序列而言,具体的帧类型可以包括帧内预测帧(Intra Picture,简称I帧),前向预测帧(Predictive Frame,简称P帧),以及双向预测帧(Bi-directionalPredictiveFrame,简称B帧)。对于只有一个帧的帧序列,通常按照帧内预测帧(I帧)来处理。I帧是一个全帧内压缩的编码帧。解码时仅用I帧的数据不需要参考其他画面就可重构完整的数据,能够作为后续的若干帧的参考帧。P帧是通过充分降低与图像序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码帧。P帧由在它前面的P帧或者I帧预测而来,它根据本帧与邻近的前一帧或几帧的不同点来压缩本帧。采取P帧和I帧联合压缩的方法可达到更高的压缩且无明显的压缩痕迹。它只参考前面靠近它的I帧或P帧。B帧根据邻近的前几帧、本帧以及后几帧的不同点来压缩本帧,也即仅记录本帧与前后帧的差值。一般地,I帧压缩效率最低,P帧较高,B帧最高。在视频数据的编码过程中,部分视频帧会被压缩成为I帧,部分会被压缩成P帧,还有部分会被压缩成B帧。
所述初始帧的帧类型包括I帧、P帧以及B帧中的至少一种或者多种。
S242-4:基于所述初始帧的帧类型,从编码卷积核组中选择一个卷积核作为所述编码卷积核,对所述在压帧做卷积,得到编码频谱调节帧。
对所述在压帧进行频谱调节可以表达为在所述在压帧在频域乘以传递函数H1(f)(即编码频谱调节函数)或者在时域做相应的卷积计算。如果所述在压帧为数字化的数据,则所述卷积运算可以是选取同所述编码频谱调节函数H1(f)相对应的编码卷积核进行卷积运算。为了方便描述,本说明书将以在时域进行卷积为例来描述所述频谱调节,但本领域技术人员应该明白通过在频域乘以编码频谱调节函数H1(f)进行频谱调节的方式也是本说明书要保护的范围。
如前所述,对所述在压帧进行所述编码频谱调节可以表现为在时域对所述在压帧进行卷积。数据压缩设备200的存储介质中可以存储有多个编码频谱调节器,即所述编码频谱调节器组。每个编码频谱调节器包括一个编码卷积核组。也就是说,数据压缩设备200的存储介质中可以包括所述编码卷积核组,所述编码卷积核组中可以包括至少一个卷积核。数据压缩设备200对所述在压帧做卷积时,可以基于所述初始帧对应的在压帧的帧类型,从所述编码卷积核组中选择一个卷积核作为所述编码卷积核,对所述在压帧做卷积。当所述初始帧对应的在压帧为I帧或P帧时,数据压缩设备200对所述I帧或P帧进行卷积包括从所述编码卷积核组中选择一个卷积核作为所述编码卷积核,对所述I帧或P帧做卷积。所述卷积核组中任意一个卷积核都可以使所述I帧或P帧在频域内的幅值降低,在中频区域的幅值平稳地降低。数据压缩设备200也可以根据对所述初始帧的编码质量要求从所述编码卷积核组中选择一个压缩效果最好的卷积核作为所述编码卷积核。当所述初始帧对应的在压帧(在本实施例中即所述初始帧)为B帧时,所述在压帧的所述编码卷积核同与所述在压帧最近的参考帧对应的编码卷积核相同,或者所述在压帧的所述编码卷积核同相邻的两个方向的最接近的参考帧中衰减程度最大的参考帧对应的编码卷积核相同,或者所述在压帧的所述编码卷积核取相邻的两个方向上的最近的参考帧对应的编码卷积核的平均值。这样可以使所述在压帧(初始帧)的幅值的降低效果更好,编码频谱调节的效果更好,使得视频数据的压缩比更高。
图5A示出了根据本说明书的实施例提供的一种编码频谱调节函数H1(f)的曲线图。如图5A所示,横轴为归一化频率f,纵轴为编码频谱调节函数H1(f)的幅值调节增益H1。图5A中的曲线1和曲线2表示不同的编码卷积核对应的不同的编码频谱调节函数H1(f)。所述横轴的归一化频率f可以分成低频区域,中低频区域,中频区域,中高频区域和高频区域。如图5A所示,横轴的归一化频率最大值为0.5。如前面所述,所述高频区域可以包括归一化的频域中(d,0.5]之间的频率。其中d为所述高频区域的频率下限。比如,d可以为所述归一化的频域中0.35、0.36、0.37、0.38、0.39、0.4、0.41、0.42、0.43、0.44、和0.45中的任意一个频率。所述中频区域可以包括(b,c]之间的频率,其中b为所述中频区域的频率下限,c为所述中频区域的频率上限。比如,所述中频区域的频率下限b可以是所述归一化的频域中的0.15、0.16、0.17、0.18、0.19、0.2、0.21、0.22、0.23、0.24、0.25、0.26、0.27和0.28之中的任意一个频率;所述中频区域的频率上限c可以是所述归一化的频域中0.35、0.34、0.33、0.32和0.31中的任意一个频率。所述低频区域可以包括归一化的频域中[0,a]之间的频率。其中a为所述低频区域的频率上限。所述低频区域的频率上限a可以是所述归一化的频域中0.01、0.02、0.03、0.04、0.05、0.06、0.07、0.08、0.09、0.10、0.12、0.13、0.14和0.15中的任意一个频率。当所述低频区域同所述中频区域不相连时,二者的之间频率区域被称为中低频区域。当所述中频区域同所述高频区域不相连时,二者之间的频率区域被称为中高频率区域。
以视频数据为例,由于人眼对于低频到中频的数据比对高频的数据更敏感,在对视频数据中的初始帧进行所述编码频谱调节时,要尽可能地保留初始帧中包含的低频到中频信息不丢失,保持中频和低频区域的幅值增益相对平稳,使低频到中频区域的信息尽可能相对稳定和完整,以便在解压时可以更好地恢复低频到中频区域的信息。因此,所述编码频谱调节所使用的编码频谱调节函数H1(f)对所述在压帧(初始帧)在频域内的低频至中频区域的任意频率f上的幅值调节增益H1都可以大于零,在经过所述编码频谱调节函数H1(f)处理后的低频至中频区域的所有频率的幅值也大于零,在低频至中频区域不会有任何频率的数据丢失。因此,在对压缩后的数据进行解压时便可以对低频至中频区域的所有频率范围内的数据进行恢复。否则,若所述编码频谱调节函数H1(f)中低频至中频区域存在零点,则零点对应的频率部分的数据可能丢失,在解压时解码端将无法恢复丢失的数据,因此无法恢复初始数据。如前所述,我们将所述初始帧的数据定义为P0,将所述初始帧经过所述编码频谱调节函数H1(f)处理后得到的数据定义为P1,因此,所述编码频谱调节帧的数据被定义为P1,P0与P1之间的关系看可以表示为公式(1):
P1=H1(f)·P0 公式(1)
由于人眼对于高频数据比较不敏感,因此,在对视频数据的初始帧进行所述编码频谱调节时,可以对高频部分的幅值进行更大程度的衰减,更大程度地降低高频区域的幅值。这样,可以减少所述初始帧中包含的数据信息,提高压缩比和编码效率。
因此所述编码频谱调节所使用的所述编码频谱调节函数H1(f)可以在频域内平稳地降低所述在压帧的幅值。在一些实施例中,所述编码频谱调节所使用的所述编码频谱调节函数H1(f)可以平稳降低所述在压帧在其频域内的高频区域的幅值。所述幅值的平稳降低可以是所述幅值以第一幅值调节增益值衰减,也可以是所述幅值在所述第一幅值调节增益值附近的一定误差范围内进行衰减。比如,所述第一幅值调节增益可以是0至1之间的任意数值。比如,所述第一幅值调节增益可以在0、0.04、0.08、0.12、0.16、0.20、0.24、0.28、0.32、0.36、0.40、0.44、0.48、0.52、0.56、0.60、0.64、0.68、0.72、0.76、0.80、0.84、0.88、0.92、0.96和1等数值中任意两个所规定的区间内。所述误差范围可以在0、±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%等数值中任意两个所规定的区间内。如图5A所示,所述编码频谱调节在高频区域(大概是0.4~0.5的区间)的第一幅值调节增益在0.2左右。
在一些实施例中,所述编码频谱调节所使用的所述编码频谱调节函数H1(f)可以在频域内平稳地降低所述在压帧的中频区域的幅值。其中,所述编码频谱调节对所述在压帧的所述中频区域的幅值调节增益为第二幅值调节增益。在一些实施例中,所述第二幅值调节增益的值可以大于所述第一幅值调节增益,如图5A所示。当所述编码频谱调节为频率衰减的时候(也就是说所述编码频谱调节器为所述频率衰减器时),第一幅值调节增益和第二幅值调节增益均小于1。也就是说,所述编码频谱调节对所述在压帧的所述中频区域的幅值降低幅度可以低于所述高频区域的幅值降低幅度。
此外,所述编码频谱调节函数H1(f)还可以在频域内平稳地降低所述在压帧的低频区域的幅值。其中,所述编码频谱调节对所述在压帧的所述低频区域的幅值调节增益为第三幅值调节增益。当所述编码频谱调节为频率衰减的时候(也就是说所述编码频谱调节器为所述频率衰减器时),第三幅值调节增益和第二幅值调节增益均小于1。所述第三幅值调节增益的值可以大于或等于所述第二幅值调节增益。也就是说,所述编码频谱调节对所述在压帧的所述低频区域的幅值降低幅度可以低于或等于所述中频区域的幅值降低幅度。
进一步地,为了避免振铃效应的出现,所述编码频谱调节函数H1(f)应使所述初始帧在频域内的幅值平滑地过渡。如前所述,当对一幅图像进行频谱调节处理时,若选用的频谱调节函数存在数值上剧烈变化的区域,则会使输出图像在灰度或者颜色剧烈变化处产生较强烈的颜色震荡,称作振铃效应。振铃效应多出现在图像边界处。通过使所述编码频谱调节函数H1(f)在频域内对所述初始帧的幅值调节增益应平滑地过渡可以避免所述幅值调节增益的急剧变化。比如,当所述高频区域同所述中频区域不相连的时候,所述编码频谱调节函数H1(f)可以在频域对所述在压帧的中高频区域的幅值做出调节,使得所述幅值调节增益在中高频区域内的变化平滑而连续。当所述中频区域同所述低频区域不相连的时候,所述编码频谱调节函数H1(f)可以在频域对所述在压帧的中低频区域的幅值做出调节,使得所述幅值调节增益在中低频区域内的变化连续。
所述编码频谱调节函数H1(f)还可以保持直流部分,即在频率为0的部分的幅值调节增益为1,以保证可以保留初始帧中的基础信息,在进行数据解压时可以得到平均值信息,以恢复原初始数据。因此,所述编码频谱调节所使用的所述编码频谱调节函数H1(f)对所述低频区域的幅值降低幅度低于所述中频区域的幅值降低幅度。但当直流部分(即频率为0的部分)的幅值增益不为1时,通过设计合适的解码频谱调节函数H2(f),也可以恢复初始数据。具体地关于H1(f)和H2(f)的具体关系将在后面的描述中详细介绍。
如图5A所示的编码频谱调节函数H1(f)的曲线图中,(0,0.1]之间的频率属于低频;(0.1,0.15]之间的频率属于中低频;(0.15,0.33]之间的频率属于中频;(0.33,0.4]之间的频率属于中高频;(0.4,0.5]之间的频率属于高频。所述低频区域的第三幅值调节增益大于所述中频区域的第二幅值调节增益;所述中频区域的第二幅值调节增益大于所述高频区域的第一幅值调节增益。同时,所述中频区域的第二幅值调节增益相对平稳,曲线1在0.5左右,曲线2在0.6左右;所述高频区域的第一幅值调节增益H1也相对平稳,曲线1略低于0.2,曲线2略高于0.2。所述编码频谱调节函数H1(f)的曲线是平滑过渡的曲线。在工程实现上,在实现幅值降低的基础上可以允许所述编码频谱调节函数H1(f)的曲线存在小范围的波动,所述波动不影响压缩的效果。对于视频数据之外其他形式的数据来说,可以根据接收者对于数据的敏感程度,设置所述编码频谱调节函数H1(f)的参数。不同形式的数据,接收者对于频率的敏感程度不同。
图5B示了根据本说明书的实施例提供的一种编码频谱调节函数H1(f)的曲线图。图5B中的曲线3和曲线4表示不同的编码卷积核对应的不同的编码频谱调节函数H1(f)。就视频数据而言,在一些特殊的应用场景中,适当的保留更多的高频分量是需要的,比如侦察场景。因此,在一些实施例中,编码频谱调节函数H1(f)曲线中可以使得第一幅值调节增益大于第二幅值调节增益(曲线3),或者等于第二幅值调节增益(曲线4)。
就视频数据而言,在一些对图像质量要求不高的应用场景中,高频分量可以完全滤除,因此,所述编码频谱调节所使用的编码频谱调节函数H1(f)对所述在压帧(初始帧)在频域内的低频至中频区域上的任意频率的幅值调节增益H1都大于零,而对高频区域的幅值调节增益H1可以等于0(图5A和图5B中未示出)。
需要说明的是,图5A和图5B所示的曲线,只是以视频数据为例进行说明,本领域的技术人员应该明白所述编码频谱调节函数H1(f)的曲线并不局限于图5A和图5B所示的形式,所有能够使所述初始帧在频域内的中频区域的幅值平稳地降低的编码频谱调节函数H1(f)以及编码频谱调节函数线性组合或者编码频谱调节函数乘积组合或者线性组合和乘积组合的组合都属于本说明书保护的范围。其中,i≥1,代表n个函数的线性组合,H1i(f)代表第i个函数,ki代表第i个函数对应的权重。j≥1, 代表n个函数的乘积组合,kj代表第j个函数对应的权重,H1j(f)可以是任意函数。
图6示出了根据本说明书的实施例提供的一种编码卷积核的参数表。图6示例性地列举出一个编码卷积核的参数,其中,图6中每一行代表一个编码卷积核。对于8比特视频图像来说,需要保证编码卷积后得到的所述编码频谱调节帧中像素点的灰度值在0~255以内,因此,在本实施例中,需要将卷积后的结果除以256。所述编码卷积核是基于所述编码频谱调节函数H1(f)通过傅里叶变换得到的。图6中只是示例性的举例说明,本领域技术人员应该知道所述编码卷积核不止局限于图6所示的参数,所有能够使所述初始帧在频域内的中频区域的幅值平稳地降低的编码卷积核都属于本说明书保护的范围。
需要说明的是,为了避免振铃效应,所述编码频谱调节函数H1(f)是平滑过渡的曲线,避免曲线中的所述幅值调节增益急剧变化。如前所述,所述振铃效应是指在图像处理中,对一幅图像进行频谱调节处理时,若选用的频谱调节函数具有较快的变化,则会使图像产生“振铃”。所谓“振铃”就是指输出图像的灰度剧烈变化处产生的震荡,就好像钟被敲击后产生的空气震荡。振铃效应多出现在图像边界处。
与所述编码频谱调节函数H1(f)对应的编码卷积核中负系数的和的绝对值与非负系数的和的比值应小于0.1。比如在一些实施例中,所述编码卷积核中的卷积核系数可以均为非负数。以视频数据为例,当所述编码卷积核中有较多负系数出现时,在图像边界处的像素值相差很大,一个大的像素值乘以一个负系数,会使得卷积的最终结果变小,反映在图像上则是像素较暗。如果卷积结果出现负数,并且负数的绝对值较大时,在使用无符号整数计算计算卷积结果时,可能造成无符号整数计算结果反转,取值为负数的无符号补码值,则会导致出卷积结果变大,反映在图像上则是像素较亮。因此,在设计所述编码卷积核时,可以使所述编码卷积核的系数可以均为非负数,或者使所述编码卷积核中的负系数的和的绝对值与非负系数的和的比值应小于0.1,即允许所述编码卷积核中出现少量绝对值较小的负系数。
数据压缩设备200在使用所述编码卷积核对所述在压帧做卷积时,可以在垂直方向、水平方向和斜向中的至少一个方向上对所述在压帧(初始帧)做卷积。
需要指出的是在进行所述在压帧做卷积时,其处理的数据处理单元可以是一帧数据,也可以是一帧数据的一部分。以视频数据为例,该单元可以是一帧或者一场图像,或者一帧/场图像的一部分,例如在视频编码中把图像进一步分割为条带(slice),片(tile),编码单元(coding unit,CU),宏块(macroblock),或者块(block)。卷积对象包括但不限于上述名词所描述的一部分图像分割单元。在不同的处理单元,可以选择相同的编码卷积核,也可以选择不同的编码卷积核。
S244:对所述编码频谱调节帧进行所述编码(预测和求残差),得到所述预测数据PI和所述残差数据R。
S246:将所述预测数据PI和所述残差数据R输入所述码流生成模块进行合成,得到所述压缩帧。
在数据压缩设备200对所述初始帧进行所述编码频谱调节后,得到所述编码频谱调节帧,所述编码频谱调节帧中的低频到高频的频率分量小于所述初始帧中的低频到高频的频率分量。因此,数据压缩设备200通过对所述在压帧(初始帧)进行所述编码频谱调节后进行编码和码流生成计算,可以提高所述编码频谱调节帧的编码效率,从而提高所述初始帧的压缩比,提升所述初始数据的传输效率。
图7示出了一种对压缩帧进行解压的数据处理的方法P300的流程图。如前所述,数据解压设备300可以执行数据处理方法P300。具体地,数据解压设备300中存储介质可以存储至少一组指令集。所述指令集被配置为可以指示数据解压设备300中的解压处理器完成数据处理方法P300。当所述数据解压设备300运行的时候,解压处理器可以读取所述指令集并执行数据处理方法P300。所述方法P300可以包括:
S320:获取压缩数据。所述压缩数据包括所述压缩帧。
所述压缩数据可以包括通过数据处理方法P200对所述初始数据中的所述初始帧进行数据压缩得到的所述压缩帧。所述压缩帧包括压缩的预测数据PI和残差数据R。如图3A、图3B和图3C所示,步骤S320可以包括:将所述压缩帧输入所述码流解析模块进行分析计算,得到所述预测数据PI和所述残差数据R。如前所述,在本申请中,帧是组成数据序列的一个常用处理单位。在数据处理时,常常以帧为单位进行计算。在数据压缩设备200对数据进行压缩的数据处理的方法P200中,可以以帧为单位对所述初始数据进行压缩。在数据解压设备300对压缩帧进行解压时也可以以帧作为单位进行数据解压。所述数据压缩包括对所述初始帧进行所述编码频谱调节。
S340:对所述压缩帧进行数据解压,得到解压帧。
所述数据解压是指对所述压缩帧进行解压计算,得到解压帧,使所述解压帧恢复或基本上恢复至所述初始数据,或者使所述解压帧比所述初始数据更清晰。以视频数据为例,当所述解压帧在低频至中频区域的任意频率上的幅值恢复至所述初始帧的阈值或者阈值以上时,人眼便很难察觉出所述解压帧与所述初始帧的区别。所述阈值可以是80%-90%之间的任意值。比如,所述阈值可以是80%、81%、82%、83%、84%、85%、86%、87%、88%、89%、90%中任意两个数值所定义的闭区间中的任意值。比如,所述数据解压应使所述解压帧在低频至中频区域的任意频率上的幅值不小于所述初始帧的85%±3%。
所述数据解压包括对在解帧进行解码频谱调节,并对经过所述解码频谱调节后的数据做进一步的数据处理,从而得到所需的解压帧。所述在解帧即正在被解压的一帧数据,包括所述压缩帧和所述压缩帧在所述解压过程中成为所述解压帧之前的任一数据状态。以视频数据为例,所述数据处理的方法P200采用编码频谱调节和编码相结合的方法对所述初始帧进行压缩,以进一步提高视频数据的压缩比,提升视频传输的效率。在视频解压技术中,数据处理方法P300可以采用解码(即根据残差数据R和预测数据PI恢复在压帧)和解码频谱调节相结合的方法对所述压缩帧进行解压,得到所需的解压帧,以恢复所述压缩帧中的数据。所述在解帧可以包括所述压缩帧和所述压缩帧在根据所述预测数据PI和残差数据R解码过程中的任一数据状态。例如,所述在解帧可以是所述压缩帧、也可以是经过解码得到的解码帧,或者经过预测得到的预测帧,等等。
在对所述压缩帧进行所述数据解压所应用的所述解码频谱调节,是指将所述在解帧输入解码频谱调节器中进行解码频谱调节。为了使经过所述解码频谱调节可以与所述编码频谱调节相对应,也就是说解码频谱调节函数H2(f)同编码频谱调节函数H1(f)应存在预先设定的关联关系。通过仔细地设定解码频谱调节函数H2(f)同编码频谱调节函数H1(f)的关联关系,所述编码频谱调节的压缩帧在经过所述解码频谱调节以及所述数据处理后,在不考虑其他计算误差的情况下完全恢复或基本恢复至编码频谱调节前的数据指标(比如图像数据的图像清晰度),甚至在一些指标上超过编码调节前的数据(比如解码后的图像的清晰度超过原始图像)。解码频谱调节函数H2(f)同编码频谱调节函数H1(f)之间具体的关联关系与对所述解码频谱调节后的数据所做的数据处理的方式有关。所述数据处理的方式不同,频谱调节函数H2(f)同编码频谱调节函数H1(f)之间的关联关系也不同。所述数据处理的具体方式以及频谱调节函数H2(f)同编码频谱调节函数H1(f)之间的关联关系,将在后面的描述中具体介绍。
同所述编码频谱调节一样,所述解码频谱调节也可以通过在时域进行卷积,从而在频域以解码频谱调节函数H2(f)(即解码传递函数)调整所述在解帧的频谱。因此所述解码频谱调节所使用的解码卷积核同所述编码频谱调节所用的编码卷积核也应存在对应的关联关系。通过选取与编码频谱调节函数H1(f)和所述编码卷积核相对应的解码频谱调节函数H2(f)和解码卷积核,两种方式可以达到相同的效果。为了方便描述,本说明书将以在时域进行卷积为例来描述所述解码频谱调节,但本领域技术人员应该明白通过在频域乘以解码频谱调节函数H2(f)进行频谱调节的方式也是本说明书要保护的范围。
如前所述,所述编码频谱调节可以使所述在压帧在其频域中的中频区域的幅值做衰减,使所述在压帧的边界数据模糊化,从而减小编码产生的数据量。所述解码频谱调节以及所述数据处理可以使经过所述编码频谱调节以及数据处理后的数据恢复甚至增强。也就是说,所述解码频谱调节以及所述数据处理可以使所述在解帧中敏感频率的幅值完全恢复或基本恢复至衰减前的状态甚至相对所述衰减前的状态有所增强。以视频数据为例,由于人眼对图像中的低频至中频信息比较敏感,因此所述解码频谱调节以及所述数据处理可以对所述视频数据中的低频至中频区域的幅值进行恢复甚至增强。因此,所述解压帧在低频至中频区域的幅值应至少恢复或基本恢复至所述初始帧在低频至中频区域的幅值。在视频数据中,由于人眼对高频的数据比较不敏感,因此所述解码频谱调节以及所述数据处理可以不对高频区域的幅值进行恢复,使所述高频区域的幅值保持衰减。
所述数据解压操作可以同所述压缩操作呈对称反向操作。如前所述,所述编码频谱调节可以在所述压缩操作的任何一个阶段进行。相应地,所述解码频谱调节也可以在所述解压操作的对应阶段进行。比如,所述数据解压操作,即步骤S340可以包括图3A、图3B和图3C中示出的数据解压的方法中的至少一种。
为了方便展示,本说明书将以数据解压设备300对所述压缩帧先进行所述解码再进行所述解码频谱调节(图3A所示的方式)为例对所述数据解压进行详细的描述。如前所述,所述数据压缩操作通过所述编码频谱调节,使所述初始帧在中频区域或中频至高频区域的幅值衰减,从而降低所述初始帧中的数据信息量。以视频数据为例,由于图像中物体的边缘部分中频和高频信息丰富,而中频和高频区域会携带更多的数据,因此降低中频至高频区域的幅值从视觉上会使所述在压帧的边界数据模糊化,同时也会使图像中的信息量大大减小。因此,所述数据解压可以从所述压缩帧中提取出边界信息,并对边界信息进行边界增强使其恢复至所述初始帧中的状态,或者使其相对于所述初始帧中的状态有所增强。
所述边界增强处理的方式有很多,传统的技术有时候直接对压缩帧使用高通滤波器或者带通滤波器进行滤波,过滤掉所述压缩帧中的低频区域的分量,提取处所述压缩帧中的中频至高频区域的分量,从而提取出边界信息。但是所述高通滤波器和带通滤波器对应的卷积核的系数中会出现较多的负系数。如前所述,当卷积核中出现较多的负系数时,通过所述卷积核进行卷积得到的图像中可能会出现很强的振铃效应。因此,为了避免振铃效应,本说明书所述的数据解压使用平滑过渡的解码频谱调节函数H2(f)对所述压缩帧进行频谱调节,过滤所述压缩帧中的中频至高频区域的分量,然后对所述压缩帧和经过所述解码频谱调节的压缩帧求差,便可以得到所述边界信息,对所述边界信息使用调整系数进行调整,使其恢复至初始状态或相对于所述初始状态有所增强。当使用上述方案获取边界信息时,可以设计出一个解码卷积核,使其所有系数都是非负数,或者负系数的和的绝对值与非负系数的和的比值小于0.1,就可以避免振铃效应的出现。
在步骤S340中,所述对所述压缩帧进行数据解压,包括数据解压设备300通过至少一个解压端处理器执行如下操作:
S342:对在解帧进行解码频谱调节,并对所述在解帧和所述在解帧经过所述解码频谱调节后的数据求差,得到边界帧。具体地,步骤S342可以包括:
S342-2:对所述压缩帧进行解码,得到解码帧。
所述压缩帧可以是数据压缩设备200对所述频谱调节帧进行编码得到的。数据解压设备300可以对所述压缩帧进行解码以得到所述解码帧。即根据所述预测数据PI进行预测得到预测帧,并和所述残差数据R叠加,得到叠加数据P2,所述叠加数据P2就是所述解码帧的数据P2。所述解码帧属于所述在解帧。编码和解码过程中可能存在一定的误差,假设编解码过程带来的偏差很小的话,所述解码帧中的数据P2与所述编码频谱调节帧中的数据P1基本一致,因此,P1与P2之间的关系看可以表示为以下公式:
P2≈P1公式(2)
S342-4:对所述解码帧进行所述解码频谱调节,得到解码频谱调节帧。
如前所述,所述解码频谱调节包括使用所述解码频谱调节函数H2(f)对所述解码帧进行所述解码频谱调节,使所述解码帧在频域内的幅值平滑地降低以过滤所述解码帧的中频至高频区域的分量,得到所述解码频谱调节帧。如前所述,所述解码频谱调节帧中的数据被定义为PC。所述解码频谱调节帧中的数据PC可以表示为以下公式:
PC=H2(f)·P2=H1(f)·H2(f)·P0 公式(3)
所述解码频谱调节包括基于所述编码卷积核,使用相应的解码卷积核对所述在解帧(解码帧)做卷积。为了避免振铃效应,所述解码卷积核中负系数的和的绝对值与非负系数的和的比值小于阈值。比如所述阈值可以是0.01、0.02、0.03、0.04、0.05、0.06、0.07、0.08、0.09、0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、1中的任意一个值或者任意两个数所定义的区间中的任意值。比如,所述解码卷积核中的卷积核系数可以均选为为非负数。所述过滤并不是完全的去除,而是通过解码频谱调节函数H2(f)使中频至高频区域的幅值平稳地降低,使其接近于0。也就是说解码频谱调节函数H2(f)中对于中频至高频区域的幅值调节增益接近0,并可以在一定误差范围内波动。所述误差范围可以在0、±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%等数值中任意两个所规定的区间内。
所述通过解码频谱调节函数H2(f)可以保持直流部分,即在频率为0的部分的幅值调节增益为1,以保证可以保留初始帧中的基础信息。因此,所述解码频谱调节所使用的所述解码频谱调节函数H2(f)对所述低频区域的幅值调节增益从频率为0的位置的幅值调节增益1平滑过渡到中频区域的幅值调节增益接近0。
在步骤S342-4中,所述对所述解码帧进行所述解码频谱调节,可以包括:
确定所述解码帧的帧类型。如前所述,数据压缩设备200在压缩初始帧的过程中,会将所述初始帧或者编码频谱调节帧编码成不同的类型。因此,数据解压设备300在对所述解码帧进行所述解码频谱调节前,需要先确定所述解码帧的帧类型,对于不同的帧类型选择的解码卷积核也不同。所述解码帧的帧类型可以包括I帧、P帧以及B帧中的至少一种。所述解码帧的帧类型可以只包括一种帧类型,也可以同时包括多种帧类型。关于确定所述解码帧的帧类型的方法已经相对成熟,不是本说明书要保护的重点,因此,在此不再赘述。
基于所述解码帧的帧类型,从解码卷积核组中选择一个卷积核作为所述解码卷积核,对所述解码帧做卷积。如前所述,对所述解码帧进行所述解码频谱调节可以表现为在时域对所述解码帧进行卷积。数据解压设备300的存储介质中可以储存有多个不同的解码卷积核,称作解码卷积核组。每个编码卷积核都在所述解码卷积核组中有至少一个解码卷积核相对应。数据解压设备300对所述解码帧做卷积时,可以基于所述解码帧的帧类型,从所述解码卷积核组中选择一个卷积核作为所述解码卷积核,对所述解码帧做卷积。所述使用解码卷积核对在解帧进行卷积的操作可以被称作解码频谱调节器。当所述解码帧为I帧或P帧时,数据解压设备300对所述I帧或P帧进行卷积包括从所述解码卷积核组中选择一个卷积核作为所述解码卷积核,对所述I帧或P帧做卷积。数据解压设备300也可以根据对所述解码帧的解码质量要求从所述解码卷积核组中选择一个解压效果最好的卷积核作为所述解码卷积核。当所述解码帧为B帧时,所述解码帧的所述解码卷积核同与所述解码帧最近的参考帧的解码卷积核相同,或者所述解码帧的所述解码卷积核同相邻的两个方向的最接近的参考帧中衰减程度最大的参考帧对应的解码卷积核相同,或者所述解码帧的所述解码卷积核取相邻的两个方向上的最近的参考帧对应的解码卷积核的平均值。
数据解压设备300在使用所述解码卷积核对所述解码帧做卷积时,可以在垂直方向、水平方向和斜向中的至少一个方向上对所述解码帧做卷积。所述解码帧的卷积方向与所述初始帧相同,所述解码帧的卷积顺序与所述初始帧相反。如果所述初始帧只经过垂直方向的卷积,则所述解码帧也只进行垂直方向的卷积。同样,如果所述初始帧只经过水平方向或斜向的卷积,则所述解码帧也只进行水平方向或斜向的卷积。如果所述初始帧经过多个方向的卷积时,则所述解码帧也进行多个方向的卷积,且所述解码帧在卷积时方向和顺序与所述初始帧在卷积时的方向和顺序相反。即所述初始帧先进行垂直方向的卷积再进行水平方向的卷积,则所述解码帧先进行水平方向的卷积再进行垂直方向的卷积。
S342-6:对所述解码帧和所述解码频谱调节帧求差,获取所述边界信息。
S342-8:基于调整系数对所述边界信息进行调整,得到所述边界帧。
如前所述,所述解码频谱调节帧中的中频至高频区域的分量被过滤,对所述解码帧和所述解码频谱调节帧求差,便可以得到所述解码帧中的中频至高频区域的分量,也就是所述边界信息。通过所述调整系数a对所述边界信息进行调整,得到所述边界帧。所述边界帧中包括所述初始帧的边界信息。如前所述,所述边界帧中的数据被定义为PE。其中,a为增强系数,表示对所述边界信息的增强程度,a越大,对所述边界信息的增强程度越强。所述调整系数a为大于0的实数。所述调整系数a可以依据经验值进行取值,也可以通过机器学习训练得到。所述边界帧中的数据PE可以表示为以下公式:
PE=a·(P2-PC)=a·H1(f)·P0·(1-H2(f)) 公式(4)
S344:将所述边界帧和所述在解帧(解码帧)叠加得到所述解压帧。
为了方便描述,我们将所述边界帧和所述在解帧(解码帧)叠加得到的数据定义为叠加帧,所述叠加帧中的数据定义为P3。所述叠加帧中的数据P3可以表示为以下公式:
P3=P2+PE=P0·H1(f)·(1+a(1-H2(f))) 公式(5)
以视频数据为例,由于人眼对于低频至中频区域的信息比较敏感,而H1(f)的设计只是对初始帧中的低频至中频区域的幅值进行了衰减,而使编码频谱调节帧中保留了初始帧中低频至中频全部频率的频率信息;所述解码帧中的数据P2与所述编码频谱调节帧中的数据P1基本一致,因此,解码帧中也保留了低频至中频区域的频率信息;而解码频谱调帧中的中频至高频区域的分量被过滤,因此保留了低频区域的频率信息;因此,通过解码帧和解码频谱调节帧的差值得到的边界帧中保留了初始帧中的中频区域的频率信息;而解码帧中保留了低频至中频区域的频率信息;因此从理论上讲在不考虑由于其他算法带来的偏差的情况下,由解码帧和边界帧叠加得到的叠加帧是可以完全恢复或基本恢复初始帧中低频至中频全部频率信息的。也就是说所述数据解压可以使经过所述数据压缩的数据在低频至中频中任意频率下得到恢复甚至增强。因此,经过数据解压后,所述叠加帧在低频至中频区域的任意频率上的幅值应约等于或者大于所述初始帧。所述约等于是指所述叠加帧的幅值等于所述初始帧的幅值,并在一定的误差范围内波动。以视频数据为例,当所述叠加帧在低频至中频区域的任意频率上的幅值恢复至所述初始帧的85%或85%以上时,人眼便很难察觉出所述叠加帧与所述初始帧的区别。因此,经过数据解压后,所述叠加帧在低频至中频区域的任意频率上的幅值应不小于所述初始帧的85%。即所述误差范围不应使所述叠加帧在低频至中频区域的任意频率上的幅值低于所述初始帧的85%。而人眼对于高频区域的信息比较不敏感,因此,所述叠加帧中对于高频区域的信息可以保留以适应高质量要求的场景,也可以衰减以抑制不必要的高频噪声。P0与P3之间的关系看可以表示为以下公式:
需要说明的是,在公式中可以允许存在一定范围的误差。例如,P3≥P0可以是P3的基本值在大于等于P0的情况下,允许P3在一定误差范围内波动。也就是说,在P3=P0时,P3在负误差的情况下可以允许P3略小于P0。这里的公式仅仅列出了P3与P0的基础关系公式,没有将误差写入公式中,本领域技术人员应当明白在误差范围内的波动使得叠加帧在低频至中频区域的幅值略小于所述初始帧的情况同样属于本说明书保护的范围。以下的公式中,同样允许存在一定范围的误差。在下文中也仅仅给出P3的幅值大于等于所述初始帧P0的基础关系的说明。对于误差范围内的波动,本领域技术人员可自行推导。
为了方便描述,我们将P0与P3之间的整体频谱调节函数定义为H0(f),则P0与P3之间的关系看可以表示为以下公式:
P3=H0(f)·P0 公式(8)
则,整体频谱调节函数H0(f)可以表示为以下公式:
其中,f0为人眼敏感频率的分界值,对于视频数据来说,f0可以是0.33,也可以是比0.33大或者小的其他数值。对于不同类型的数据,f0的值不同。
在上述公式(9)~(10)中的H0(f),当在选定的频域区间H0(f)≈1时,则可以将所述叠加帧在选定的频域区间内的数据恢复至所述初始帧;当在选定的频域区间H0(f)>1时,则可以将所述叠加帧在选定的频域区间内的数据进行增强,即所述叠加帧在选定区域的幅值高于所述初始帧。比如,如果初始帧是视频中的一帧的话,只要使得在选定的频域区间内H0(f)大于1,则可以实现清晰度增强。为了方便描述,我们将H0(f)≈1定义为正常模式,将H0(f)>1定义为增强模式。下面我们将以视频数据为例,对整体频谱调节函数H0(f)进行详细说明。
图8A示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图。图8B示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图。图8C示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图。图8D示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图。图8E示出了根据本说明书的实施例提供的一种整体调节函数H0(f)的曲线图。如图8A至8E所示,横轴为归一化频率f,纵轴为整体频谱调节函数H0(f)的幅值调节增益H0。图8A至8E中的曲线表示不同的整体频谱调节函数H0(f)。横轴的归一化频率最大值为0.5。所述横轴的归一化频率f可以分成低频区域,中低频区域,中频区域,中高频区域和高频区域。(0,a]之间的频率属于低频;(a,b]之间的频率属于中低频;(b,c]之间的频率属于中频;(c,d]之间的频率属于中高频;(d,0.5]之间的频率属于高频。其中,a,b,c,d,e的取值参考图5A所述,在此不再赘述。
由于人眼对于视频数据中的低频到中频的数据比对高频的数据更敏感,因此,在数据解压后,应尽量保持所述叠加帧相对于所述初始帧低频到中频区域的信息不丢失,也就是说,整体频谱调节函数H0(f)应使所述叠加帧在低频到中频区域的幅值不小于所述初始帧的85%,甚至可以大于所述初始帧。由于人眼对于高频区域的信息不敏感,因此,所述叠加帧在高频区域的幅值可以根据不同的应用场景选择,比如,在低清晰度要求的场景下,所述叠加帧在高频区域的幅值可以小于所述初始帧。在侦察场景下,所述叠加帧在高频区域的幅值可以约等于所述初始帧或大于所述初始帧。如图8A至8E所示,整体调节函数H0(f)在低频至中频区域(包括低频和中频区域)的任意频率f上的幅值调节增益H0大于1或约等于1,使得解压后的叠加帧的幅值不小于所述初始帧的85%,使得清晰度恢复或增强,提升视觉观察效果。所述约等于1在这里可以是在等于1的一定的误差范围内波动。所述误差范围可以在0、±1%、±2%、±3%、±4%、±5%、±6%、±7%、±8%、±9%、±10%、±11%、±12%、±13%、±14%、±15%等数值中任意两个所规定的区间内。为方便描述,我们将整体调节函数H0(f)在高频区域的幅值调节增益定义为第一幅值调节增益,在中频区域的幅值调节增益定义为第二幅值调节增益,在低频区域的幅值调节增益定义为第三幅值调节增益。所述第三幅值调节增益值、第二幅值调节增益值和第一幅值调节增益值可以在所述误差范围内波动。
如图8A所示,整体调节函数H0(f)在低频至高频区域的第三幅值调节增益值、第二幅值调节增益值和第一幅值调节增益值均约等于1,使所述叠加帧在低频至高频区域的幅值都不小于所述初始帧的85%,使所述叠加帧在低频至高频区域的数据可以平稳地恢复或基本恢复至初始帧的状态。
如图8B所示,整体调节函数H0(f)在低频至中频区域的第三幅值调节增益值和第二幅值调节增益值约等于1,使所述叠加帧在低频至中频区域的数据可以平稳地恢复或基本恢复至初始帧的状态。整体调节函数H0(f)在高频区域的第一幅值调节增益值小于1,使所述叠加帧在高频区域的幅值相对于所述初始帧平稳地降低,以抑制高频噪声。所述幅值的平稳降低可以是所述幅值以第一幅值调节增益值衰减,也可以是所述幅值在所述第一幅值调节增益值附近的一定误差范围内进行衰减。比如,所述第一幅值调节增益可以是0至1之间的任意数值。比如,所述第一幅值调节增益值可以在0、0.04、0.08、0.12、0.16、0.20、0.24、0.28、0.32、0.36、0.40、0.44、0.48、0.52、0.56、0.60、0.64、0.68、0.72、0.76、0.80、0.84、0.88、0.92、0.96和1等数值中任意两个所规定的区间内。如图8B所示,所述整体调节函数H0(f)在高频区域(大概是0.4~0.5的区间)的第一幅值调节增益在0.6左右。第二和第三幅值调节增益值都在1附近。第二和第三幅值调节增益值可以在一定的误差范围内波动,比如,第二和第三幅值调节增益值可以在0.85、0.90、0.95、1、1.05、1.10、和1.15等数值中任意两个所规定的区间内。
如图8C所示,整体调节函数H0(f)在低频区域的第三幅值调节增益值约等于1,使所述叠加帧在低频区域的数据可以平稳地恢复或基本恢复至初始帧的状态。整体调节函数H0(f)在中频区域的第二幅值调节增益值和在高频区域的第一幅值调节增益值均大于1,使所述叠加帧在中频至高频区域的幅值相对于所述初始帧平稳地增加,从而使中频至高频区域的数据清晰度增强。所述幅值的平稳增加可以是所述幅值以第二幅值调节增益值和第一幅值调节增益值增强,也可以是所述幅值在所述第二幅值调节增益值和所述第一幅值调节增益值附近的一定误差范围内进行增强。所述第二幅值调节增益值和所述第一幅值调节增益值大小可以大体一致,也可以是所述第二幅值调节增益值大于所述第一幅值调节增益值,或者所述第二幅值调节增益值小于所述第一幅值调节增益值。图8C所示的曲线中,所述第二幅值调节增益值和所述第一幅值调节增益值大小大体一致。所述第二幅值调节增益值和所述第一幅值调节增益值可以是大于1的任意数值。比如,所述第二幅值调节增益值和所述第一幅值调节增益值可以在1、1.1、1.2、1.3、1.4、1.5、1.6、1.7、1.8、1.9、2、2.1、2.2和2.4等数值中任意两个所规定的区间内。如图8C所示,所述整体调节函数H0(f)在中频至高频区域的第二幅值调节增益和第一幅值调节增益在1.2左右。
如图8D所示,整体调节函数H0(f)在低频区域的第三幅值调节增益值约等于1,使所述叠加帧在低频区域的数据可以平稳地恢复或基本恢复至初始帧的状态。整体调节函数H0(f)在中频区域的第二幅值调节增益值大于1,使所述叠加帧在中频的幅值相对于所述初始帧平稳地增加,从而使中频区域的数据清晰度增强。整体调节函数H0(f)在高频区域的第一幅值调节增益值小于1,使所述叠加帧在高频区域的幅值相对于所述初始帧平稳地降低,从而使不敏感的高频区域的数据量下降,以抑制高频噪声。图8D所示的曲线在减少数据量的同时又能增强清晰度。所述第二幅值调节增益值可以是大于1的任意数值。所述第一幅值调节增益可以是0至1之间的任意数值。如图8D所示,所述整体调节函数H0(f)在中频区域的第二幅值调节增益在1.2左右,在高频区域的第一幅值调节增益在0.6左右。
如图8E所示,整体调节函数H0(f)在低频区域的第三幅值调节增益值大于1,使所述叠加帧在低频区域的的幅值相对于所述初始帧平稳地增加。整体调节函数H0(f)在中频区域的第二幅值调节增益值大于1,使所述叠加帧在中频区域的幅值相对于所述初始帧平稳地增加,从而使低频至中频区域的数据清晰度增强。其中,所述第二幅值调节增益值可以等于所述第三幅值调节增益值,也可以大于所述第三幅值调节增益值。图8E所示的曲线中,所述第二幅值调节增益值大于所述第三幅值调节增益值,使所述叠加帧在中频区域的幅值增加的幅度大于低频区域幅值增加的幅度,从而使人眼最敏感的中频区域的清晰度增强,提升视觉观察效果。整体调节函数H0(f)在高频区域的第一幅值调节增益值小于1,使所述叠加帧在高频区域的幅值相对于所述初始帧平稳地降低,从而使不敏感的高频区域的数据量下降,以抑制高频噪声。图8E所示的曲线,在减少数据量的同时又能增强清晰度。所述第三幅值调节增益值可以是略大于1的数值。比如,第三幅值调节增益值可以在1、1.04、1.08、1.12、1.16和1.2等数值中任意两个所规定的区间内。所述第二幅值调节增益值可以是大于所述第三幅值调节增益的任意数值。比如,所述第二幅值调节增益值和所述第一幅值调节增益值可以在1、1.1、1.2、1.3、1.4、1.5、1.6、1.7、1.8、1.9、2、2.1、2.2和2.4等数值中任意两个所规定的区间内。所述第一幅值调节增益可以是0至1之间的任意数值。比如,所述第一幅值调节增益值可以在0、0.04、0.08、0.12、0.16、0.20、0.24、0.28、0.32、0.36、0.40、0.44、0.48、0.52、0.56、0.60、0.64、0.68、0.72、0.76、0.80、0.84、0.88、0.92、0.96和1等数值中任意两个所规定的区间内。如图8E所示,所述整体调节函数H0(f)在低频区域的第三幅值调节增益在1.1左右,在中频区域的第二幅值调节增益在1.2左右,在高频区域的第一幅值调节增益在0.6左右。
进一步地,当所述高频区域同所述中频区域不相连的时候,所述整体频谱调节函数H0(f)还可以在高频区域的幅值做出调节,使得所述幅值调节增益在中高频区域内的变化平滑而连续。
进一步地,当所述中频区域同所述低频区域不相连的时候,所述整体频谱调节函数H0(f)还可以在中低频区域的幅值做出调节,使得所述幅值调节增益在中低频区域内的变化连续。
所述整体调节函数H0(f)的曲线是平滑过渡的曲线。在工程实现上,在实现所述叠加帧在低频至中频区域幅值约等于或大于所述初始帧的基础上可以允许所述整体调节函数H0(f)的曲线存在小范围的波动,所述波动不影响解压的效果。对于视频数据之外其他形式的数据来说,可以根据接收者对于数据的敏感程度,设置所述整体调节函数H0(f)的参数。不同形式的数据,接收者对于频率的敏感程度不同。
为了方便描述,我们将以公式(7)所示的情况为例进行描述。结合公式(5)和公式(7),则所述叠加帧P3可以表示为以下公式:
此时,所述编码卷积核对应的编码频谱调节函数H1(f)与所述解码卷积核对应的解码频谱调节函数H2(f)之间的关系可以表示为以下公式:
因此,H1(f)与H2(f)的关系可以表示为以下公式:
其中,由于解码频谱调节函数H2(f)中,除了频率为0的部分的幅值调节增益为1之外,其他频率的幅值调节增益均小于1,因此1/(1+a(1-H2(f)))在除频率为0外的其他频率上的值均小于1,因此,公式(13)可以保证编码频谱调节函数H1(f)中频率为0的部分的幅值调节增益为1,而其他频率对应的幅值调节增益小于1。
如前所述,如果所述初始帧经过多个方向的卷积时,则所述解码帧也进行多个方向的卷积,且所述解码帧在卷积时方向和顺序与所述初始帧在卷积时的方向和顺序相反。即所述初始帧先进行垂直方向的卷积再进行水平方向的卷积,则所述解码帧先进行水平方向的卷积再进行垂直方向的卷积。需要说明的是,所述解码帧需先进行水平方向的卷积得到水平方向的补偿信息,将所述解码帧水平方向的补偿信息与所述解码帧叠加后,再进行垂直方向的卷积得到垂直方向的补偿信息,并将所述解码帧垂直方向的补偿信息与所述解码帧进行叠加。
图9A示出了根据本说明书的实施例提供的正常模式一种整体调节函数H0(f)、编码频谱调节函数H1(f)和解码频谱调节函数H2(f)的曲线图。图9B示出了根据本说明书的实施例提供的一种增强模式的整体调节函数H0(f)、编码频谱调节函数H1(f)和解码频谱调节函数H2(f)的曲线图。图9A与图9B中所使用的编码卷积核与解码卷积核相同,调整系数a不同。在图9A中以a=1.5为例进行说明。在图9B中以a=2为例进行说明。如图9A和图9B所示,横轴为归一化频率f,纵轴为幅值调节增益H。如图9A所示,在任意频率区域的整体频谱调节函数H0(f)≈1,整体频谱调节函数H0(f)对所述叠加帧进行正常模式的频谱调节,即整体频谱调节函数H0(f)中对于所有频率的信息完整保留,所述叠加帧中的数据可以基本恢复至所述初始帧中的数据。如图9B所示,在低频区域的整体频谱调节函数H0(f)≈1,在中频至高频区域的整体频谱调节函数H0(f)>1。整体频谱调节函数H0(f)对所述叠加帧的中频至高频区域进行增强模式的频谱调节,即整体频谱调节函数H0(f)中对于中频至高频区域的信息进行增强,所述叠加帧中的中频至高频区域的数据相较于所述初始帧中的中频至高频区域的数据有所增强。需要说明的是,图9A和图9B所示的曲线,只是示例性说明,本领域的技术人员应该明白H0(f)、H1(f)、H2(f)的曲线并不局限于图9A和图9B所示的形式,所有符合公式(12)的H0(f)、H1(f)、H2(f)曲线都属于本说明书保护的范围。需要指出的是,所有符合公式(12)的解码频谱调节函数线性组合或者编码频谱调节函数乘积组合或者线性组合和乘积组合的组合都属于本说明书保护的范围。其中,i≥1,代表n个函数的线性组合,H2i(f)代表第i个函数,ki代表第i个函数对应的权重。j≥1, 代表n个函数的乘积组合,kj代表第j个函数对应的权重,H2j(f)可以是任意函数。
图10A示出了根据本说明书的实施例提供的一种解码卷积核的参数表。图10A示例性地列举出一个解码卷积核的参数。所述解码卷积核的参数均为非负数,使得经过所述解码卷积核卷积的数据避免振铃效应。图10A中只是示例性的举例说明,本领域技术人员应该知道所述解码卷积核不止局限于图10A所示的参数,所有满足前述要求的解码卷积核都属于本说明书保护的范围。
图10B示出了根据本说明书的实施例提供的一种正常模式的编码卷积核的参数表。图10B示例性地列举出一个正常模式的编码卷积核的参数。所述正常模式的编码卷积核是基于所述正常模式的整体频谱调节函数H0(f),以及图10A中示出的解码卷积核的参数表对应的解码频谱调节函数H2(f),得到的编码频谱调节函数H1(f)通过傅里叶变换得到的。其中,a=1.5。即所述编码频谱调节函数H1(f)是对应于H0(f)=1得到的。数据压缩设备200和数据解压设备300使用图10B中示出的所述正常模式的编码卷积核和图10A中示出的所述解码卷积核可以使所述叠加帧的数据与所述初始帧的数据基本一致。图10B中只是示例性的举例说明,本领域技术人员应该知道所述正常模式的编码卷积核不止局限于图10B所示的参数,所有满足前述要求的编码卷积核都属于本说明书保护的范围。
图10C示出了根据本说明书的实施例提供的一种增强模式的编码卷积核的参数表。所述增强模式的编码卷积核是基于所述增强模式的整体频谱调节函数H0(f),以及图10A中示出的解码卷积核的参数表对应的解码频谱调节函数H2(f),得到的编码频谱调节函数H1(f)通过傅里叶变换得到的。其中,a=2。即所述编码频谱调节函数H1(f)是对应于H0(f)>1得到的。数据压缩设备200使用图10C中示出的所述增强模式的编码卷积核和图10A中示出的所述解码卷积核可以使所述叠加帧的数据增强。图10C中只是示例性的举例说明,本领域技术人员应该知道所述增强模式的编码卷积核不止局限于图10C所示的参数,所有满足前述要求的编码卷积核都属于本说明书保护的范围。
需要说明的是,卷积运算后,需要进行归一化处理,使卷积运算后的图像的灰度值在0~255之间。
在正常模式下,即H0(f)≈1的模式下,所述叠加帧中没有振铃效应,或者只有可以忽略的轻微振铃效应,我们可以将所述叠加帧作为所述解压帧进行输出,即正常模式下,所述解压帧的数据P4可以表示为以下公式:
P4=P3 公式(14)
在增强模式下,即H0(f)>1的模式下,过度增强可能会使所述叠加帧中出现振铃效应,影响视觉观察的效果。我们可以对所述叠加帧进行边界调整,得到所述解压帧,以有效消除振铃效应。
图11示出了根据本说明书的实施例提供的一种边界调整的方法P360流程图。如图11所示,所述边界调整的方法P110可以包括通过数据解压设备300的至少一个解压端处理器320执行:
S361:对所述叠加帧中的元素值超出预设范围的元素赋值,使其包括在所述预设范围内。
所述边界调整是指基于所述叠加帧中的元素对应的元素值进行调整,以消除振铃效应。所述帧的元素是指所述帧的最小组成单元。以视频数据为例,所述图像帧的元素可以是所述图像的像素点。所述图像帧的元素值可以是所述图像中的像素对应的灰度值,也可以是图像中的像素对应的RGB值,或者HIS值,或HSV值,等等。当所述叠加帧为音频时,所述元素可以是组成音频的最小单位,比如,一个采样频率中的音频采样点。下面,我们将以所述叠加帧为视频数据,所述元素值为图像中的像素点对应的灰度值为例进行描述。
图像像素点的灰度值一般在0~255以内。因此,在增强模式下,部分像素点的灰度值可能会在0~255之外。因此,为了方便对所述叠加帧进行边界调整使所述叠加帧的灰度值在0~255之内,需要对所述叠加帧赋值,使所述叠加帧中的元素值(即灰度值)在预设范围内。所述预设范围包括由第一临界值和第二临界值组成的范围,所述第一临界值大于所述第二临界值。所述预设范围可以是0~255,所述第一临界值为255,所述第二临界值为0。当然,所述预设范围也可以根据视频数据的应用场景进行设定。比如,在昏暗背景下,可以适当调整预设范围的最小值,使所述预设范围调整为10~255。当然所述预设范围也可以是其他范围,比如16~240、20~250、30~250、40~250等等。在对所述叠加帧进行边界调整前,通过对所述叠加帧的元素赋值,使所述叠加帧的元素值在所述预设范围内,可以使减少所述边界调整的计算量,提高工作效率。步骤S361可以包括:对所述叠加帧中元素值大于第一临界值的元素赋予所述第一临界值;以及对所述叠加帧中元素值小于第二临界值的元素赋予所述第二临界值。对所述叠加帧中元素值在所述第一临界值和所述第二临界值之间的元素则保留对应的元素值,不进行重新赋值。
S362:基于所述叠加帧的元素值对所述叠加帧进行分区。
根据所述叠加帧的元素值,可以将所述叠加帧划分为3个区域,分别是:凹点区域、凸点区域以及过渡区域。所述凹点区域包括局部最小值对应的元素;所述凸点区域包括局部最大值对应的元素;所述过渡区域包括所述凹点区域和所述凸点区域以外的区域。具体地,步骤S346-2可以对所述叠加帧中的元素逐点进行区域划分。为了方便描述,我们将当前待分区的元素对应的元素值定义为d0,将与d0相邻的元素对应的元素值定义为dk,其中,k=-n~n,n为正整数,比如n可以是1,也可以是2,也可以是3或者大于3的整数。dk与d0可以是水平方向相邻、垂直方向相邻以及斜向相邻中的至少一种。dk与d0的相邻方向与所述解码帧进行解码卷积的方向一致。
当d0<dk时,d0是局部范围内最小的元素值,则d0被划分为凹点区域。
当d0>dk时,d0是局部范围内最大的元素值,则d0被划分为凹点区域。
当d0既不属于凹点区域又不属于凸点区域时,则d0被划分为过渡区域。
由于振铃效应多发生在图像灰度值剧烈变化的区域,即图像边界区域附近,使边界区域附近的亮度较暗的元素值(凹点区域)的亮度降低,或者使边界区域附近的亮度较亮的元素值(凸点区域)的亮度增加,造成视觉上的震荡效果。因此,需要对所述叠加帧进行边界调整,使其恢复原先的灰度值,即通过边界调整使边界区域附近的亮度较暗的元素值(凹点区域)的亮度增加恢复至原先的灰度值,或者使边界区域附近的亮度较亮的元素值(凸点区域)的亮度降低,恢复至原先的灰度值。因此需对所述叠加帧的凹点区域和凸点区域进行边界检测,检测出所述叠加帧中的边界,然后对凹点区域和凸点区域的边界分别进行边界调整。
S364:获取所述叠加帧中所述凹点区域和所述凸点区域中每个元素对应的边界值。
所述边界值(HADVD,Higher absolute differential value difference)包括当前元素d0的前向差分HADVDf和后向差分HADVDb的组合。
所述前向差分HADVDf包括所述当前元素d0对前向的相邻元素做差分运算。所述后向差分包括HADVDb所述当前元素d0对向后的相邻元素做差分运算。其中,所述前向差分HADVDf和后向差分HADVDb的差分方向包括在垂直方向、水平方向和斜向中的至少一个方向做差分。所述差分方向与对所述解码帧做卷积的方向相同。所述前向差分HADVDf可以表示为以下公式:
所述后向差分包括HADVDb可以表示为以下公式:
其中,wk表示所述前向差分HADVDf和所述后向差分HADVDb的加权系数。wk可以取0~1之间的任意值。比如,n=3时,可以取wk=[1 1 1],可以计算出一个三阶前向差分值和一个三阶后向差分值。通过计算所述前向差分HADVDf和所述后向差分HADVDb可以计算出当前元素d0与相邻元素的差值,差值越大,当前元素d0越有可能靠近边界。
所述前向差分HADVDf和后向差分HADVDb的组合可以包括最大加权值HADVDmax和绝对差值HADVDabd中的一个。所述最大加权值HADVDmax为当前元素d0的前向差分HADVDf和后向差分HADVDb中的最大值的加权值,可以表示为以下公式:
HADVDmax=h·max(HADVDf,HADVDb) 公式(17)
其中,h为加权系数,h为0~1之间的任意数。h可以基于大量的图像样本数据训练得到,也可以基于经验取值。
所述绝对差值HADVDabd为当前元素d0的前向差分HADVDf和后向差分HADVDb的差值的绝对值,可以表示为以下公式:
HADVDabd=|HADVDb-HADVDf| 公式(18)
其中,所述边界值HADVD包括所述最大加权值HADVDmax和所述绝对差值HADVDabd中较大的一个。所述边界值HADVD可以表示为以下公式:
HADVD=max(HADVDmax,HADVDabd) 公式(19)
所述绝对差值HADVDabd和所述最大加权值HADVDmax相结合和准确识别出图像中的边界。边界值HADVD越大,证明当前元素d0越靠近边界。
S366:基于预设的边界阈值THD,对所述凹点区域和所述凸点区域中的边界值HADVD大于所述边界阈值THD的元素进行调整,得到调整值ΔE。
当所述边界值HADVD大于或等于所述边界阈值THD时,所述边界值HADVD对应的元素可以被定义为边界区域,需要进行边界调整。所述边界阈值THD可以是基于大量的图像样本数据训练得到的。如前所述,对于凹点区域的边界调整需要增加凹点区域的元素对应的元素值。对于凸点区域的边界调整需要降低凸点区域的元素对应的元素值。步骤S366可以包括:
对所述凹点区域中的元素对应的边界值HADVD与所述边界阈值THD的比值进行有限阶数的线性组合,得到所述凹点区域的调整值ΔEL。所述凹点区域的调整值ΔEL可以表示为以下公式:
其中,m为大于1的正整数。表示一个不大于的最小整数。gm为加权系数。q为修正参数。所述线性组合的阶数、加权系数gm以及修正参数q可以基于大量的图像样本数据训练得到。对于视频数据来说,为了保证图像的灰度值是在0~255之间整数,需要对ΔEL做取整运算。当边界值HADVD小于所述边界阈值THD时,不需要进行边界调整。
对所述凸点区域中的元素对应的边界值HADVD与所述边界阈值的比值THD进行有限阶数的线性组合,并取相反数,得到所述凸点区域的调整值ΔEH。所述凸点区域的调整值ΔEH可以表示为以下公式:
其中,m为大于1的正整数。表示一个不大于的最小整数。gm为加权系数。q为修正参数。所述线性组合的阶数、加权系数gm以及修正参数q可以基于大量的图像样本数据训练得到。对于视频数据来说,为了保证图像的灰度值是在0~255之间整数,需要对ΔEH做取整运算。当边界值HADVD小于所述边界阈值THD时,不需要进行边界调整。如前所述,对于凸点区域的边界调整需要降低凸点区域的元素对应的元素值。因此,ΔEH取负值。
S368:基于所述调整值ΔE对所述叠加帧进行调整,得到所述解压帧。
具体地,步骤S368包括将所述调整值ΔE与所述叠加帧对应的元素值叠加,得到所述解压帧。所述解压帧中的数据P4可以表示为以下公式:
P4=P3+ΔE 公式(22)
需要说明的是,当所述解码帧在多个方向进行解码卷积时,所述叠加帧需要在多个方向进行边界调整,且边界调整的顺序与所述解码帧进行解码卷积时的顺序相同。即所述解码帧先进行水平方向的解码卷积再进行垂直方向的解码卷积,所述叠加帧相应的先进行水平防线的边界调整再进行垂直方向的边界调整。
图12A示出了根据本说明书的实施例提供的一种未进行边界调整的示例图;图12B示出了根据本说明书的实施例提供的一种进行边界调整的示例图。如图12A中140所示的高亮区域为增强模式下出现的振铃效应。对比图12A和图12B发现,本说明所述的边界调整的方法可以有效消除振铃效应。
所述解压帧是由所述叠加帧经过边界调整得到的,因此所述解压帧与经所述解码频谱调节函数H2(f)和整体频谱调节函数H0(f)计算的所述叠加帧的性质大体一致。即所述解压帧同所述叠加帧一致在低频至中频区域的任意频率上的幅值约等于或者大于等于所述初始帧,从而使所述解压帧在低频至中频区域的清晰度恢复甚至增强。在一些实施例中,比如图8B、图8D和图8E所示,所述解压帧同所述叠加帧一致相对于所述初始帧在高频区域的幅值平稳地降低。在一些实施例中,比如图8C、图8D和图8E所示,所述解压帧同所述叠加帧一致相对于所述初始帧在中频区域的幅值平稳地增加。在一些实施例中,比如图8E所示,所述解压帧同所述叠加帧一致相对于所述初始帧在低频区域的幅值平稳地增加。其中,所述解压帧同所述叠加帧一致在中频区域的幅值增加幅度大于在低频区域的幅值增加幅度。
综上所述,本说明书提供的数据处理的系统100,在对所述初始数据进行压缩时,通过数据压缩设备200执行方法P200,对所述初始数据中的初始帧使用编码卷积核进行编码频谱调节,使所述初始帧在频域内的低频至高频区域的幅值平稳地降低,从而减少所述初始帧中的数据信息,提高编码效率,使得压缩后的数据容量减小,提高数据的压缩效率以及数据传输效率。本说明书提供的数据处理的系统100,在对所述压缩帧进行解压时,通过数据解压设备300执行方法P300,对所述压缩帧使用解码卷积核进行解码频谱调节,使用平滑过渡的解码频谱调节函数H2(f)对所述压缩帧进行频谱调节,过滤所述压缩帧中的中频至高频区域的分量,然后对所述压缩帧和经过所述解码频谱调节的压缩帧求差,得到所述边界信息,对所述边界信息使用调整系数进行调整,使其恢复至初始状态或相对于所述初始状态有所增强;将所述压缩帧与调整后的所述边界信息叠加,以得到所述解压帧。其中,所述解码频谱调节函数H2(f)对应的解码卷积核与编码卷积核相对应,所有系数都是非负数,或者负系数的和的绝对值与非负系数的和的比值小于0.1,从而有效避免振铃效应的出现,使所述解压帧更清晰。所述方法和系统可以提高数据的压缩效率,提升传输效率,同时可以提升解压后的数据的清晰度,有效消除振铃效应。
本说明书另外提供一种非暂时性存储介质,存储有至少一组用来进行数据处理的可执行指令,当所述可执行指令被处理器执行时,所述可执行指令指导所述处理器实施数据处理方法P200的步骤。在一些可能的实施方式中,本说明书的各个方面还可以实现为一种程序产品的形式,其包括程序代码。当所述程序产品在数据压缩设备200上运行时,所述程序代码用于使数据压缩设备200执行本说明书描述的数据处理的步骤。用于实现上述方法的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在数据压缩设备200,例如个人电脑上运行。然而,本说明书的程序产品不限于此,在本说明书中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统(例如压缩端处理器220)使用或者与其结合使用。所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本说明书操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在数据压缩设备200上执行、部分地在数据压缩设备200上执行、作为一个独立的软件包执行、部分在数据压缩设备200上部分在远程计算设备上执行、或者完全在远程计算设备上执行。在涉及远程计算设备的情形中,远程计算设备可以通过传输媒介120连接到数据压缩设备200,或者,可以连接到外部计算设备。
上述对本说明书特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者是可能有利的。
综上所述,在阅读本详细公开内容之后,本领域技术人员可以明白,前述详细公开内容可以仅以示例的方式呈现,并且可以不是限制性的。尽管这里没有明确说明,本领域技术人员可以理解本说明书需求囊括对实施例的各种合理改变,改进和修改。这些改变,改进和修改旨在由本说明书提出,并且在本说明书的示例性实施例的精神和范围内。
此外,本说明书中的某些术语已被用于描述本说明书的实施例。例如,“一个实施例”,“实施例”和/或“一些实施例”意味着结合该实施例描述的特定特征,结构或特性可以包括在本说明书的至少一个实施例中。因此,可以强调并且应当理解,在本说明书的各个部分中对“实施例”或“一个实施例”或“替代实施例”的两个或更多个引用不一定都指代相同的实施例。此外,特定特征,结构或特性可以在本说明书的一个或多个实施例中适当地组合。
应当理解,在本说明书的实施例的前述描述中,为了帮助理解一个特征,出于简化本说明书的目的,本说明书将各种特征组合在单个实施例、附图或其描述中。然而,这并不是说这些特征的组合是必须的,本领域技术人员在阅读本说明书的时候完全有可能将其中一部分特征提取出来作为单独的实施例来理解。也就是说,本说明书中的实施例也可以理解为多个次级实施例的整合。而每个次级实施例的内容在于少于单个前述公开实施例的所有特征的时候也是成立的。
本文引用的每个专利,专利申请,专利申请的出版物和其他材料,例如文章,书籍,说明书,出版物,文件,物品等,可以通过引用结合于此。用于所有目的的全部内容,除了与其相关的任何起诉文件历史,可能与本文件不一致或相冲突的任何相同的,或者任何可能对权利要求的最宽范围具有限制性影响的任何相同的起诉文件历史。现在或以后与本文件相关联。举例来说,如果在与任何所包含的材料相关联的术语的描述、定义和/或使用与本文档相关的术语、描述、定义和/或之间存在任何不一致或冲突时,使用本文件中的术语为准。
最后,应理解,本文公开的申请的实施方案是对本说明书的实施方案的原理的说明。其他修改后的实施例也在本说明书的范围内。因此,本说明书披露的实施例仅仅作为示例而非限制。本领域技术人员可以根据本说明书中的实施例采取替代配置来实现本说明书中的申请。因此,本说明书的实施例不限于申请中被精确地描述过的实施例。
Claims (14)
1.一种数据处理的方法,其特征在于,包括:
获取压缩数据,所述压缩数据包括对初始帧进行数据压缩得到的压缩帧;以及
对所述压缩帧进行数据解压,得到解压帧,包括:
对在解帧进行解码频谱调节,并对所述在解帧和所述在解帧经过所述解码频谱调节后的数据求差,得到边界帧,所述在解帧包括所述压缩帧和所述压缩帧在所述数据解压过程中成为所述解压帧前的任一数据状态,所述边界帧包括所述初始帧的边界信息;以及
将所述边界帧和所述在解帧叠加得到所述解压帧;
其中,所述编码频谱调节与所述解码频谱调节存在预先设定的关联关系。
2.如权利要求1所述的数据处理的方法,其特征在于,所述数据压缩包括编码频谱调节,以便在频域内平稳地降低在压帧在中频区域的幅值,所述在压帧包括所述初始帧和所述初始帧在所述数据压缩过程中成为所述压缩帧之前的任一数据状态。
3.如权利要求1所述的数据处理的方法,其特征在于,所述解码频谱调节使所述在解帧在频域内的幅值平滑地降低以过滤中频至高频区域的分量。
4.如权利要求3所述的数据处理的方法,其特征在于,所述编码频谱调节包括使用编码卷积核对所述在压帧做卷积;
所述解码频谱调节包括基于所述解码卷积核,使用相应的解码卷积核对所述在解帧做卷积,其中,所述解码卷积核中负系数的和的绝对值与非负系数的和的比值小于0.1。
5.如权利要求4所述的数据处理的方法,其特征在于,所述对在解帧进行解码频谱调节,并对所述在解帧和所述在解帧经过所述解码频谱调节后的数据求差,得到边界帧,包括:
对所述压缩帧进行解码,得到解码帧,所述在解帧包括所述解码帧;
对所述解码帧进行所述解码频谱调节,得到解码频谱调节帧,所述解码频谱调节帧中过滤了所述解码帧的中频至高频区域的分量;
对所述解码帧和所述解码频谱调节帧求差,获取所述边界信息;以及
基于调整系数对所述边界信息进行调整,得到所述边界帧,所述调整系数为大于0的实数。
6.如权利要求1所述的数据处理的方法,其特征在于,所述将所述边界帧和所述在解帧叠加得到所述解压帧,包括:
将所述边界帧和所述在解帧叠加得到叠加帧;以及
将所述叠加帧作为所述解压帧。
7.如权利要求1所述的数据处理的方法,其特征在于,所述将所述边界帧和所述在解帧叠加得到所述解压帧,包括:
将所述边界帧和所述在解帧叠加得到叠加帧;以及
对所述叠加帧进行边界调整,得到所述解压帧。
8.如权利要求7所述的数据处理的方法,其特征在于,所述对所述叠加帧进行边界调整,包括:
基于所述叠加帧的元素值对所述叠加帧进行分区,所述叠加帧包括:
凹点区域,所述凹点区域包括局部最小值对应的元素;以及
凸点区域,所述凸点区域包括局部最大值对应的元素;
获取所述叠加帧中所述凹点区域和所述凸点区域中每个元素对应的边界值;
基于预设的边界阈值,对所述凹点区域和所述凸点区域中的边界值大于所述边界阈值的元素进行调整,得到调整值;以及
基于所述调整值对所述叠加帧进行调整,得到所述解压帧。
9.如权利要求1所述的数据处理的方法,其特征在于,所述编码频谱调节与所述解码频谱调节相对应,使所述解压帧在低频至中频区域的任意频率上的幅值不小于所述初始帧的85%。
10.如权利要求9所述的数据处理的方法,其特征在于,所述编码频谱调节对所述在压帧在频域内的低频至中频区域的任意频率上的幅值调节增益都大于零。
11.如权利要求9所述的数据处理的方法,其特征在于,所述数据解压使所述解压帧相对于所述初始帧在中频区域的幅值平稳地增加。
12.如权利要求11所述的数据处理的方法,其特征在于,所述数据解压使所述解压帧相对于所述初始帧在低频区域的幅值平稳地增加,
其中,所述解压帧在中频区域的幅值增加幅度大于在低频区域的幅值增加幅度。
13.如权利要求9所述的数据处理的方法,其特征在于,所述数据解压使所述解压帧相对于所述初始帧在高频区域的幅值平稳地降低。
14.一种数据处理的系统,其特征在于,包括:
至少一个存储介质,包括至少一个指令集,用于数据处理;以及
至少一个处理器,同所述至少一个存储介质通讯连接,
其中当所述系统运行时,所述至少一个处理器读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行如权力要求1-13中任一项所述的数据处理的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/384,805 US11503306B2 (en) | 2020-04-09 | 2021-07-26 | Image and video data processing method and system |
PCT/CN2021/112551 WO2022037498A1 (zh) | 2020-08-20 | 2021-08-13 | 数据处理的方法和系统 |
JP2023512682A JP7465410B2 (ja) | 2020-08-20 | 2021-08-13 | データ処理の方法及びシステム |
EP21857593.4A EP4203325A1 (en) | 2020-08-20 | 2021-08-13 | Data processing method and system |
US17/525,900 US20220078417A1 (en) | 2020-04-09 | 2021-11-13 | Image and video data processing method and system |
US17/727,791 US20220272325A1 (en) | 2020-04-09 | 2022-04-24 | Image and video data processing method and system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020108412452 | 2020-08-20 | ||
CN202010841245 | 2020-08-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114079472A true CN114079472A (zh) | 2022-02-22 |
Family
ID=80282991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110225315.6A Pending CN114079472A (zh) | 2020-04-09 | 2021-03-01 | 数据处理的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114079472A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022247735A1 (zh) * | 2021-05-28 | 2022-12-01 | 于江鸿 | 数据处理的方法和系统 |
-
2021
- 2021-03-01 CN CN202110225315.6A patent/CN114079472A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022247735A1 (zh) * | 2021-05-28 | 2022-12-01 | 于江鸿 | 数据处理的方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2461977C2 (ru) | Сжатие и снятие сжатия изображения | |
EP2852152B1 (en) | Image processing method, apparatus and shooting terminal | |
US7136536B2 (en) | Adaptive filter | |
Yun et al. | Image enhancement using a fusion framework of histogram equalization and Laplacian pyramid | |
CN113518227B (zh) | 数据处理的方法和系统 | |
US20070064792A1 (en) | Content adaptive noise reduction filtering for image signals | |
EP2791897B1 (en) | Control of video processing algorithms based on measured perceptual quality characteristics | |
US10863206B2 (en) | Content-weighted deep residual learning for video in-loop filtering | |
KR101081074B1 (ko) | 데이터 값의 다운-샘플링 방법 및 디바이스와 이를 포함하는 저장 유닛, 디스플레이 유닛, 비디오 인코더, 비디오 디코더, 휴대용 장치 및 컴퓨터 판독가능 매체 | |
CN111161177B (zh) | 图像自适应降噪方法和装置 | |
CN114079472A (zh) | 数据处理的方法和系统 | |
US20070285729A1 (en) | Image processing apparatus and image processing method | |
US20120093227A1 (en) | Data compression method and data compression device | |
CN113766239B (zh) | 数据处理的方法和系统 | |
US11503306B2 (en) | Image and video data processing method and system | |
CN116847087A (zh) | 视频处理方法、装置、存储介质及电子设备 | |
US11528488B2 (en) | Image and video data processing method and system | |
US20220078417A1 (en) | Image and video data processing method and system | |
JP7465410B2 (ja) | データ処理の方法及びシステム | |
CN114727110A (zh) | 数据处理的方法和系统 | |
CN115412730A (zh) | 数据处理的方法和系统 | |
CN108632502B (zh) | 一种图像锐化的方法及装置 | |
Wada et al. | Extended joint bilateral filter for the reduction of color bleeding in compressed image and video | |
Brooks et al. | Image compression using sparse colour sampling combined with nonlinear image processing | |
US20220272325A1 (en) | Image and video data processing method and system |
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 |