一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自适应量化和死区调制的制作方法

2022-06-01 18:57:05 来源:中国专利 TAG:

自适应量化和死区调制


背景技术:

1.可以压缩数字图像以便提供诸如降低数字图像的存储和/或传输的成本的优点。存在用于图像压缩的多种有损和无损方法。有损图像压缩方法导致不能用于精确地重新生成输入图像的压缩版本。然而,这样的有损压缩方法允许生成对人类感知而言看起来与输入图像足够相似的输出图像,以便在至少一些上下文中是可接受的。一些有损图像压缩技术可以允许以这种相似度来换取增加的压缩比,从而允许更小的压缩图像文件大小作为对输出的压缩图像的图像质量的降低的回报。


技术实现要素:

2.存在用于压缩图像的各种方法。这些方法允许减小图像的尺寸同时在压缩(或编码)过程之后保持图像的主观外观。“有损”压缩方法导致不能用于完美地重构源图像的编码图像。然而,这样的有损方法可以用于生成编码图像表示,该编码图像表示可以用于从源图像重构大多数观看者不能立即区分的源图像的版本,或者在至少一些上下文中,根据至少某些准则以其他方式可接受的源图像的版本。与无损压缩方法相比,这种有损方法可以提供显著的压缩比。
3.许多类型的有损压缩方法通过对像素本身或对从其确定的系数(例如,对应于像素的不同空间频率分量的系数)执行一个或多个量化步骤来实现这些压缩比。这样的量化步骤允许图像信息的编码版本(例如,像素,或从其确定的系数)的位深度被减小,从而减小图像的编码版本的大小。另外,图像信息可以在量化之前被缩放,使得许多缩放的图像系数在量化之后变为“0”。如果这种“0”的比例足够高,则通过使用行程编码或其它方法来在源图像的经缩放和量化的版本中利用这种“0”的高比例,可以进一步减小图像的编码版本的大小。
4.可以选择用于缩放源图像的空间频率系数的缩放因子,以便改善使用该缩放因子编码的图像的质量和/或压缩比。还可以调整用于量化由该缩放因子集合缩放的系数的阈值,以便改善压缩比和/或改善编码图像的质量。例如,调整用于确定特定系数是否被量化为“0”值的量化阈值可以允许直接调整“0”的数目,以及因此图像的可压缩性。可以(例如,关于编码图像质量,关于一个或多个空间频带中的剩余图像能量)评估各种不同的量化级别,并且满足图像质量阈值的最低量化级别可以用于编码图像,或者编码图像的系数子集。以这种方式选择量化级别可以有利地在量化之后产生最多的“0”值(以便最小化编码图像大小),同时仍然满足图像质量准则。以这种方式在编码期间自适应地设置量化级别还可以有利地避免涉及用于对编码图像进行解码的解码器的自适应的计算步骤。
5.可以应用附加的或可替代的方法来改善图像的压缩比,同时还保留或改善编码图像质量。这些方法可以在上述自适应量化方法失败时(例如,当没有评估的量化级别导致满足图像质量准则时)被执行,或者它们可以在其他上下文中被执行。例如,可以仅使用单个量化级别来对源图像进行编码,但是该单个量化级别未能满足图像质量准则可能导致应用一个或多个补充方法。第一补充方法包括:对于特定空间频带内的图像系数子集,确定系数
中的哪些是最大系数,以及设置局部量化级别,使得最大系数被量化为非零值。第二补充方法包括在量化之前选择不同缩放因子集合来缩放图像内容。第三补充方法包括利用表示1/2,1/4或一些其他子单位值的值的符号来表示一个或多个系数。第四补充方法包括在量化之前将噪声(例如,蓝噪声)添加到图像系数,或者在量化之前调整添加到图像系数的噪声量。
6.本公开的方面涉及一种用于编码图像的方法,该方法包括:(i)基于所述图像的像素块生成指示在多个空间频率处的像素块的图像内容的系数集合,其中所述系数集合中的每个系数用于所述多个空间频率中的相应空间频率;(ii)根据第一缩放因子集合来缩放所述系数集合以生成第一缩放系数集合;(iii)执行多个量化级别的评估;(iv)基于所述多个量化级别的评估来生成所述系数集合的经缩放和量化的版本;以及(v)基于所述系数集合的经缩放和量化的版本来生成所述图像的编码版本。执行所述评估包括:对于所述多个量化级别中的每个相应量化级别:(a)根据所述相应量化级别来量化所述第一缩放系数集合的子集以生成所述第一缩放系数集合的量化子集,其中所述第一缩放系数集合的子集用于第一空间频带内的空间频率;以及(b)确定所述第一缩放系数集合的量化子集的量化后能量。评估还可以包括(c)将所述量化后能量与阈值能量准则进行比较。
7.可以从最大量化级别向最小量化级别迭代地执行所述多个量化级别的评估。所述最大量化级别可以大于0.675。所述最大量化级别可以大于0.575。所述最小量化级别可以小于0.325。针对特定量化级别将所述量化后能量与所述阈值能量准则进行比较可以包括确定所述量化后能量满足所述阈值能量准则。基于所述多个量化级别的评估来生成所述系数集合的经缩放和量化的版本可以包括使用所述特定量化级别来量化用于所述第一空间频带内的空间频率的第一缩放系数集合的子集。执行所述多个量化级别的评估可以包括确定所述多个量化级别中没有一个满足所述阈值能量准则。基于所述多个量化级别的评估来生成所述系数集合的经缩放和量化的版本可以包括响应于确定多个量化级别中没有一个满足所述阈值能量准则:识别用于所述第一空间频带内的空间频率的第一缩放系数集合的子集内的最大缩放系数;确定小于所识别的最大缩放系数的值的量化级别;以及使用所确定的量化级别来量化用于所述第一空间频带内的空间频率的第一缩放系数集合的子集。该方法还可以包括:基于所述图像的像素块来确定所述第一缩放因子集合。执行所述多个量化级别的评估可以包括确定所述多个量化级别中没有一个满足所述阈值能量准则。基于所述多个量化级别的评估来生成所述系数集合的经缩放和量化的版本可以包括响应于确定所述多个量化级别中没有一个满足所述阈值能量准则:确定第二缩放因子集合,其中所述第二缩放因子集合中的至少一个缩放因子在量值上低于所述第一缩放因子集合中的对应缩放因子;使用所述第二缩放因子集合来执行所述多个量化级别的评估;以及基于使用所述第二缩放因子集合对所述多个量化级别的评估,生成所述系数集合的经缩放和量化的版本。执行所述多个量化级别的评估可以包括确定所述多个量化级别中没有一个满足所述阈值能量准则。基于所述系数集合的经缩放和量化的版本来生成所述图像的编码版本可以包括响应于确定所述多个量化级别中没有一个满足所述阈值能量准则,利用表示子单位值的符号表示用于所述第一空间频带内的空间频率的第一缩放系数集合的子集内的系数中的至少一个。表示子单位值的符号可以表示二分之一值、四分之一值或八分之一值中的一个。确定所述多个量化级别中没有一个满足所述阈值能量准则可以包括确定所述多个量化级
别中的每个量化级别导致为零的量化后能量。该方法还可以包括:确定指示图像内容的系数集合的第一子集的能量,其中指示图像内容的系数集合的第一子集指示所述第一空间频带内的相应空间频率。将所述量化后能量与阈值能量准则进行比较可以包括将所述量化后能量与所述系数集合的第一子集的能量之间的比率与阈值能量进行比较。所述第一空间频带可以包括水平方向上的低空间频率和垂直方向上的低空间频率。所述第一空间频带可以包括水平方向上的低空间频率和垂直方向上的高空间频率。所述第一空间频带可以包括水平方向上的高空间频率和垂直方向上的低空间频率。所述第一空间频带可以包括水平方向上的高空间频率和垂直方向上的高空间频率。指示图像内容的系数集合可以是离散余弦变换系数或一些其他变换(例如,过完整变换)的系数。
8.本公开的另一个方面涉及一种用于对图像进行编码的方法,该方法包括:(i)基于所述图像的像素块来生成指示多个空间频率处的经变换的像素块的图像内容的系数集合,其中所述系数集合中的每个系数用于所述多个空间频率中的相应空间频率;(ii)根据第一缩放因子集合来缩放所述系数集合的子集以生成第一缩放系数子集,其中所述系数集合的子集用于第一空间频带内的相应空间频率;(iii)量化所述第一缩放系数子集以生成第一经缩放的量化系数集合;(iv)确定所述第一经缩放的量化系数子集的量化后能量;(v)确定所述量化后能量不满足阈值能量准则;以及(vi)响应于确定所述量化后能量不满足所述阈值能量准则,应用来自过程集合的至少一个过程以生成所述图像的编码版本。所述过程集合包括:第一过程,该第一过程包括:(a)识别所述第一缩放系数子集内的最大缩放系数;(b)确定小于所识别的最大缩放系数的值的量化级别;(c)使用所确定的量化级别来量化所述第一缩放系数子集。所述过程集合包括第二过程,该第二过程包括:(a)确定第二缩放因子集合,其中所述第二缩放因子集合中的至少一个缩放因子在量值上低于所述第一缩放因子集合中的对应缩放因子;(b)根据所述第二缩放因子集合来缩放所述系数集合的子集以生成第二缩放系数子集,其中所述系数集合的子集指示所述第一空间频带内的相应空间频率;以及(c)量化所述第二缩放系数子集以生成第二经缩放的量化系数集合。该过程集合包括第三过程,该第三过程包括在所述图像的编码版本中利用表示子单位值的符号来表示指示所述第一空间频带内的相应空间频率的系数集合的子集中的至少一个。该过程集合包括第四过程,该第四过程包括在量化所述第一缩放系数子集之前将蓝噪声添加到所述第一缩放系数子集。该过程集合包括第五过程,该第五过程包括在量化所述第一缩放系数子集之前调整添加到所述第一缩放系数子集的蓝噪声的量。
9.表示子单位值的符号可以表示二分之一值、四分之一值或八分之一值中的一个。确定所述量化后能量不满足阈值能量准则可以包括确定所述量化后能量为零。所述第一空间频带可以包括水平方向上的低空间频率和垂直方向上的低空间频率。所述第一空间频带可以包括水平方向上的低空间频率和垂直方向上的高空间频率。所述第一空间频带可以包括水平方向上的高空间频率和垂直方向上的低空间频率。所述第一空间频带可以包括水平方向上的高空间频率和垂直方向上的高空间频率。指示图像内容的系数集合可以是离散余弦变换系数或指示一些其他变换(例如,过完整变换)的系数。添加到所述第一缩放系数子集的蓝噪声可以包括限于所述第一空间频带内的空间频率的频带受限蓝噪声。
10.将明白,在第一方面的上下文中描述的特征可以在第二方面的上下文中实现。通过适当地参照附图阅读以下详细描述,这些以及其它方面、优点和替代方案对于本领域普
通技术人员将变得显而易见。此外,应当理解,在本发明内容部分和本文档中的其他地方提供的描述旨在通过示例而非限制来说明所要求保护的主题。
附图说明
11.图1a图示了示例图像。
12.图1b图示了图1a的图像的一部分的示例基于频率的分解。
13.图1c图示了示例量化表。
14.图1d图示了图1b的在缩放和量化之后的基于频率的分解。
15.图2图示了示例量化级别和示例缩放系数值。
16.图3a图示了在缩放和量化之后的图像的一部分的示例基于频率的分解。
17.图3b图示了在缩放和量化之后的图像的一部分的示例基于频率的分解。
18.图3c图示了在缩放和量化之后的图像的一部分的示例基于频率的分解。
19.图4是示出示例系统的一些组件的简化框图。
20.图5是根据示例实施例的方法的流程图。
21.图6是根据示例实施例的方法的流程图。
具体实施方式
22.本文描述了方法和系统的示例。应当理解,词语“示例性”、“示例”和“说明性”在本文中用于表示“用作示例、实例或说明”。在此描述为“示例性”、“示例”或“说明性”的任何实施例或特征不必被解释为比其它实施例或特征更优选或有利。此外,本文所述的示例性实施例不旨在是限制性的。将容易理解,所公开的系统和方法的某些方面可以以各种各样的不同配置来布置和组合。
23.应当理解,以下实施例和本文所述的其它实施例是出于说明性目的而提供的,并且不旨在是限制性的。
24.示例图像编码和压缩
25.在各种应用中,对图像或其它信息进行编码以使得图像或其它信息的大小可以减小能够为有益的。作为这种编码的结果,可以使用较少的存储空间和/或带宽来存储、传送、复制、或以其他方式操纵或使用图像或其他信息。编码(或压缩)可以是无损的或有损的。无损压缩以允许信息稍后被准确地恢复到其压缩前状态的方式减小信息的大小。有损压缩则不这样。相反,有损压缩可以允许在可能的压缩程度与图像或其他信息可以稍后从图像或其他信息的压缩版本中恢复的“质量”之间的折衷。
26.这种折衷可以基于压缩信息的预期使用来实现。例如,当压缩图像时,压缩方法可以考虑人类视觉的特性(例如,眼睛相对于色度对亮度的增加的灵敏度),使得压缩过程可以以人眼较不易观察的方式丢弃或扭曲来自图像的信息。例如,编码方法可以通过对色度信息进行下采样、通过减小相对于亮度信息存储色度信息的位深度和/或通过使用不同的较低质量量化表或其它参数来相对于亮度信息编码色度信息而考虑到人眼相对于色度对亮度的增加的敏感性。在另一示例中,图像的较高空间频率内容在编码期间可以被量化、舍入或以其他方式降级到比较低空间频率内容更大的程度。因此,可以减小压缩图像的尺寸,同时保持表观图像质量的总体水平。
27.图像的编码可以通过首先将图像变换为不同的颜色表示来部分地实现。例如,具有红绿蓝(rgb)表示的图像可以被转换成亮度-色度(yuv)表示。可替换地或附加地,编码可以涉及在应用图像数据从图像的二维像素空间到空间频率空间或一些其他空间的任何变换之前,对源图像进行下采样(例如,对图像的色度通道进行下采样)、应用线性或非线性滤波器、对图像的像素值进行量化/舍入、或者“在图像空间中”对图像执行一些其他操作。然后,可以将该预处理的图像数据转换到另一域,例如,可以发生进一步压缩的空间频域。
28.可以选择这样的可替代空间,使得可替代空间中的图像的表示是“稀疏的”。即,可替代空间中的表示可以包括相对于(例如)图像中的总能量包含图像的“大部分”(例如,其具有大体上非零值)的代表系数的小子集,而代表系数的更多剩余子集具有处于零或接近零的值并且因此表示源图像的图像内容的小部分。因此,可以丢弃剩余子集,从而减小编码图像的总大小,同时保持源图像的大部分可感知内容和/或能量。这样的过程可以包括量化或以其他方式舍入(例如,向下舍入)系数,例如,在缩放过程之后以强调被发现对于人类视觉感知更“重要”的那些系数(例如,较低空间频率)。这样的可替代空间可以包括空间频率空间(例如,由图像空间数据的离散余弦变换系数表示)、基于内核的空间或一些其他变换空间。图像可以在可替换空间中以过完整的方式表示(例如,具有比严格地信息化地表示图像所需的更多系数)。
29.图1a图示了可以被编码的示例图像100或这样的图像的特定颜色通道(例如,亮度通道、色度通道)。图像100由多个像素(其样本由图1a中的小正方形图示)组成。为了(例如,根据jpeg、jpeg xl或某种其它图像压缩格式)编码(例如,压缩)图像100,可以将不重叠的像素集合(例如,图1a中所示的示例集合115)(例如,使用离散余弦变换)单独地变换为变换域中的相应系数集合。对受限图像子集而不是对整个图像执行这种变换(例如,从整个图像一次生成离散余弦变换系数),可以提供关于存储器使用、编码器的可推广性(例如,跨不同大小的图像)、编码器的优化、或关于与图像的编码有关的一些其他考虑的益处。如图所示,非重叠集合是八乘八像素图块,但是也可以使用其它形状和大小的非重叠集合。
30.图像100的所图示的像素集合115可以被变换为表示在相应空间频率下的像素集合115的内容的系数集合。例如,系数可以是在水平和垂直空间频率的范围上确定的离散余弦变换系数。图1b中图示示例系数120的集合。每个系数表示在垂直和水平方向上在相应空间频率处的像素集合115的内容。例如,左上系数(
“‑
415.38”)表示该像素集合115的dc内容。在另一示例中,顶行中从右边数第四个系数(“56.12”)表示像素集合115的内容,该内容水平地在中间空间频率处变化时不垂直地变化(即,相对于垂直方向是dc)。
31.因此,可以基于各个系数120是否用于指定空间频带内的空间频率来定义系数120的子集。例如,系数120的第一子集125a是用于第一空间频带内的空间频率,该第一空间频带包括水平方向上的低空间频率(例如,系数120中表示的水平空间频率范围的下半部)和垂直方向上的低空间频率(例如,系数120中表示的垂直空间频率范围的下半部)。在另一示例中,系数120的第二子集125b是用于第二空间频带内的空间频率,该第二空间频带包括水平方向上的高空间频率(例如,系数120中表示的水平空间频率范围的上半部)和垂直方向上的低空间频率。在又一示例中,系数120的第三子集125c是用于在第三空间频带内的空间频率,该第三空间频带包括在垂直方向上的高空间频率(例如,系数120中所表示的垂直空间频率范围的上半部)和在水平方向上的低空间频率。在另一示例中,系数120的第四子集
125d是用于第四空间频带内的空间频率,该第四空间频带包括水平方向上的高空间频率和垂直方向上的高空间频率。
32.为了压缩这些系数,可以对系数进行舍入(例如,下舍入)。这可以允许用于存储系数的值的位深度减小。另外,可以省略被下舍入为零的系数,以免被明确地存储在所得到的编码图像中(例如,通过采用行程编码)。为了增加压缩级别,在对缩放的系数进行下舍入(或“量化”)之前,可以应用缩放因子集合来缩放系数120。因此,缩放因子指示待应用于系数120中的一个或多个的缩放程度。单个缩放因子可以应用于所有系数。或者,可以将来自量化表的缩放因子个别地应用于相应系数。可以基于关于人类主观视觉感知的信息来指定这种量化表中的因子,以通过向这些系数应用较小幅度的缩放因子来强调被发现对于人类视觉感知更“重要”的那些系数(例如,较低空间频率)(从而通过根据更精细分级的尺度量化系数来保留存在于系数中的更多信息)。相反地,可以通过将较大幅度的缩放因子应用于这样的系数来去强调“较不重要”系数(因此通过根据更粗略的尺度量化系数和/或通过增加通过舍入为零而完全被省略的系数的可能性来保留存在于系数中的较少信息)。
33.可以应用单个缩放因子集合(例如,单个量化表)来缩放图像100的每个块(例如,115)的系数。或者,可以确定相应组的缩放因子并且将其用于单独缩放图像100的每个块。这可以包括为每个块从若干可能的预定缩放因子集合中选择一个缩放因子集合。在另一示例中,可以为每个块确定块级别个性化缩放因子,并且将该块级别个性化缩放因子用于在应用公共缩放因子集合之前对该块的系数进行预缩放,和/或用于在使用公共缩放因子集合对该块的系数进行缩放之前对该公共缩放因子集合进行缩放。当对图像100进行编码时,指示针对每个块确定的缩放因子的信息可以被包括在编码图像中以便于编码图像的解码。这可以包括指示块级别个性化缩放因子的值(例如,在从0到255的范围内),提供从若干不同的预定缩放因子集合中选择的一个缩放因子集合的索引或其它识别编号的指示,或者指示足以确定将用于对编码图像的每个块进行解码的该缩放因子集合的一些其它信息。
34.可以基于像素块和/或从其确定的系数块的能量、熵或其他确定的属性来确定缩放因子(例如,所选择的预定缩放因子集合的识别,或块级别个性化缩放因子)。附加地或替换地,可以基于关于作为整体的图像100和/或图像100内的特定块的位置的信息来确定缩放因子。例如,可以基于图像100中的块与边缘、面或一些其他感兴趣特征的接近度来确定针对图像的块的缩放因子。
35.图1c示出包括将用于缩放系数120的缩放因子的示例量化表130。这样的量化表可以由用于生成编码图像的软件(例如在相机上运行的软件、作为图像处理套件的一部分的软件)预先指定和/或在每块基础上确定(例如从多个可能的量化表中选择量化表130,以确定块级别个性化缩放因子以对默认量化表进行预缩放以便生成量化表130)。特定编码图像可以包括这种量化表和/或表示其的信息(例如,块级别个性化缩放因子、针对图像的每个块单独选择的量化表的id值)的复制,以便对编码图像进行解码。解码器然后可以将编码图像中的图像内容系数与量化表130的对应元素相乘,以便“向上放大”量化系数,使得它们可以(例如,经由离散余弦变换)被变换成解码图像的像素值(例如,亮度值、色度值)。
36.图1d示出根据量化表130(即,根据量化表130内的相应缩放因子)已经缩放了相应程度并且然后量化(向下舍入)的量化系数140的集合。在该示例中,系数140中的大多数具有零值。结果,可以使用行程编码来有效地存储系数140的集合。然后,行程编码系数在被包
含在最终编码图像内之前可以(例如,使用无损霍夫曼编码)进一步被压缩。已缩放、量化的系数140已经使用标准量化阈值集合得以量化,例如,其中-0.5与0.5之间的缩放值被量化为“0”,-1.5与-0.5之间的缩放值被量化为
“‑
1”,0.5与1.5之间的缩放值被量化为“1”等。然而,可以跨图像的所有块应用不同的量化阈值或者针对每个块单独地确定不同的量化阈值。例如,“死区”的宽度和位置(即,将被量化为“0”的值的范围的宽度和位置)可以被自适应地选择以改善图像100的编码版本的压缩比(例如,通过加宽“死区”以导致更多的系数140为“0”)和/或改善图像100的编码版本的质量(例如,通过缩窄“死区”以导致更少的系数140为“0”)。
37.基于剩余带内能量的自适应量化
38.在图1d中所图示的示例中,默认量化阈值0.5用于从量化表130和系数120产生经缩放的量化系数140。因此,在按量化表130的相应缩放因子缩放之后具有介于-0.5与0.5之间的值的系数120中的任一个在经缩放的量化系数140中由值0表示。当表示经缩放的量化系数140时(例如,通过使用行程编码),经缩放的量化系数140中的此类零值的普遍存在允许非常高的压缩比。
39.零的数量(以及所得到的编码图像的压缩比)可以通过将用于确定这种零值的量化级别设置为高于0.5的级别来进一步增加。这可以基于整个图像来完成,或者自适应地跨图像内的块、频带和/或其他划分来完成。例如,可以在每块或每块每频带的基础上自适应地确定量化级别,以便增加压缩比,其中它将对所得到的编码图像质量具有最小影响(例如,其中所得到的编码图像能量差小于减小的阈值级别)。相反,对于图像质量的改进足以证明压缩比的相应降低的那些图像部分(例如块、块内的频带),可以降低量化级别。使用自适应量化级别的这种图像编码方法还具有能够使用现有的下游解码软件(例如,不更新解码软件)来解码根据该方法编码的图像的益处。
40.这种自适应量化编码方法可以包括:对于要编码的图像的每个部分,评估多个量化级别,然后使用所评估的量化级别之一(例如,满足图像质量准则的最低评估的量化级别)来量化图像的该部分。然后,使用这样量化的部分来生成输入图像的编码版本。该部分可以是图像的整个块,使得针对每个块重复过程。在另一示例中,该部分可以是与图像的每个块内的相应不同频带相对应的系数的子集。例如,可以针对块115的系数120的子集125a、125b、125c、125d中的每一个子集确定相应的量化级别。在这样的子块级别上执行自适应量化可以提供允许使用较低量化值来量化通常表示较少图像能量的频带(例如,像215d的高频带)的益处。这允许通过使用用于量化对应于这些频带的系数的较低量化级别来将附加非零元素“分配”给那些频带,其中这种分配的效果更可能对总体编码图像质量具有较大正面影响。
41.图2图示了可以由这种自适应量化方法评估的多个量化级别220。可以评估多个量化级别220中的每个量化级别,以确定当用于量化缩放的图像系数集合时,它是否满足图像质量准则。图2图示了在多个量化级别220之上的示例缩放图像系数210的值。
42.可以从最大量化级别(例如,如图2中所描绘的0.7级别)到最小量化级别(例如,如图2中所描绘的0.3级别)迭代地评估多个量化级别220。然后,可以选择满足图像质量准则的最低值,并且将其用于量化要在生成输入图像的编码版本中使用的缩放系数210。从最大值到最小值迭代地评估量化值还可以使得能够高效地使用计算时间/努力。例如,可以在未
能满足图像质量准则的第一量化值处停止评估,并且然后可以使用满足图像质量准则的先前的更高的量化值来生成编码图像。
43.在示例中,可以以这种方式迭代地评估量化级别220,直到量化级别l1不满足图像质量准则。可以使用先前的量化级别,导致仅缩放系数210中的一个(最右边的系数)在图像的编码版本中由非零值表示。这表示与使用默认量化级别0.5相比的压缩比的潜在增加,其将导致缩放系数210中的三个在图像的编码版本中由非零值表示。
44.在另一个示例中,可以以这种方式迭代地评估量化级别220,直到级别l2未能满足图像质量准则为止。可以使用先前的量化级别,从而导致四个缩放系数210(四个最右边的系数)在图像的编码版本中由非零值表示。这表示与使用默认量化级别0.5相比的压缩比的潜在降低,这将导致缩放系数210中的三个在图像的编码版本中由非零值表示。然而,这也可以表示编码图像质量的提高,因为默认量化级别0.5将导致相对于图像质量准则失败的量化。因此,本文描述的自适应量化方法可以导致非零元素被“分配”,其中它们可以具有最大益处,从而改善编码图像的质量和/或增加编码图像的压缩比。
45.如图2所示,量化级别220跨越从0.3到0.7的范围。这些边界可以在至少一些上下文中提供关于压缩比和图像质量的益处。然而,跨越其它范围的量化级别集合可以提供益处。例如,最大量化级别可以是大于0.675或大于0.575的值。在一些示例中,最小量化级别可以为小于0.325的值。另外,图2中所示的量化级别的间隔和位置旨在作为可以根据本文所述的方法评估的量化级别值的非限制性示例。可以使用这样的多个量化值的替代数目、间距、范围或其他属性。各个量化值可以在值范围上均匀地或非均匀地间隔开。
46.相对于图像质量准则评估特定量化值可以包括各种过程。在一些示例中,评估特定量化值可以包括使用特定量化值来量化缩放系数的子集(例如,来自特定图像块的用于特定空间频带内的空间频率的缩放系数的子集)。然后可以相对于图像质量准则来评估量化值。该评估可以包括(例如,通过对量化值求平方和求和)确定量化值的量化后能量。然后,可以将所确定的量化后能量与阈值能量准则进行比较。此阈值能量准则可以为相对的,例如相对于量化之前的缩放系数中的能量。例如,可将量化后能量与量化之前的缩放系数的能量之间的比率以及所确定的比率与阈值进行比较。这样的阈值能量准则可以是绝对的,例如,未能满足阈值能量准则可以包括具有为零的量化后能量。
47.在一些示例中,多个量化级别中没有一个可以满足图像质量准则。在这样的示例中,默认量化级别(例如,0.5的级别、评估的最小量化级别、或一些其他默认级别)可以用于量化输入图像的相关缩放系数。附加地或可替代地,可以应用下文描述的图像质量改进方法中的一个或多个。
48.基于剩余带内能量的补充自适应编码
49.如上所述,可以采用各种方法来按块和/或按频带自适应地设置用于对源图像进行编码的量化级别。这些方法可以允许减小的编码图像尺寸和/或改善的编码图像质量。附加地或可替换地,可以使用其他方法来以块选择性和/或频带选择性的方式改进编码图像质量,使得编码图像大小的相应增加被减小。当上述迭代评估方法失败时,例如当确定了评估的量化级别中没有一个满足阈值能量准则或一些其它图像质量准则时,可以应用这些补充方法中的一个或多个。或者,这些补充方法中的一个或多个可以被应用于一些其它上下文中。例如,可以应用默认量化级别(例如,0.5的量化级别),并且如果该默认级别未能满足
阈值能量准则或其他图像质量准则,则可以应用这些附加方法中的一个或多个。
50.第一补充方法包含将量化级别设置为足够低的值,使得该值在被应用时导致缩放系数中的至少一个被量化为非零(例如,单位)值。这可以通过识别系数子集(例如,其用于指定空间频带内的空间频率)内的最大系数、将量化级别设置为小于所识别的缩放系数的值(例如,设置为所识别的缩放系数的值的指定分数、设置为小于所识别的缩放系数的值的指定量)来实现。然后,可以应用所设置的量化级别来量化缩放系数。或者,该方法可以通过识别系数子集内的最大系数并且然后将所识别的缩放系数的量化值设置为1来实现。这种方法具有确保特定块和/或频带中的至少一个系数由非零值表示并且因此对应频带中的能量大于0的益处。
51.图3a图示已经根据量化表130缩放了相应程度并且然后被量化的量化系数310a的集合。用于第四频带125d内的空间系数的量化系数310a的子集已经根据第一补充方法被量化。因此,该量化系数310a的集合包含对应于最高值的缩放系数(即,从底部起四行的最右侧列中的系数)的“1”值的系数。
52.第二补充方法包括在量化之前修改或改变用于缩放图像系数的缩放因子集合。如上所述,一些图像编码方法可以包括在应用缩放系数集合以编码图像的一部分之前确定缩放系数集合。这可以包括从多个可能的集合中选择缩放系数集合(例如,从可能的量化表集合中选择量化表),确定在应用缩放系数集合之前缩放图像系数或者在应用该缩放系数集合之前缩放图像系数的预缩放因子,或者执行一些其它过程以在逐块和/或逐频带的基础上确定缩放系数集合。确定缩放因子集合可以基于像素块和/或从其确定的系数块的能量、熵或其他确定的属性。附加地或可替代地,可以基于关于作为整体的源图像和/或图像内的特定块的位置的信息来确定缩放因子。例如,可以基于图像的块与边缘、面或一些其他感兴趣特征的接近度来确定针对图像的块的缩放因子,使得在编码图像中以更高保真度表示图像内的感兴趣区域和/或特征。
53.响应于确定当使用第一缩放因子集合来缩放和量化源图像的块或其它部分时图像缩放和/或量化的另一方法未能满足图像质量准则,第二补充方法确定第二不同的缩放因子集合,并且使用那些缩放因子来缩放和量化源图像的块或其它部分。第二缩放因子集合与第一缩放因子集合的不同之处在于第二缩放因子集合中的至少一个缩放因子在幅度上低于第一缩放因子集合中的相应缩放因子。因此,当与使用第一缩放因子集合相比时,利用第二缩放因子集合缩放图像系数集合应允许在经缩放的量化系数的输出集合中表示来自系数集合的尽可能多或更多能量。这种方法可以迭代地应用。例如,如果使用第二缩放因子集合生成的经缩放的量化系数也未能满足图像质量准则,则可以确定并且应用第三缩放因子集合。
54.图3b图示已经根据第二缩放因子集合缩放了相应程度并且然后被量化的量化系数310b的集合。量化表130中的第二缩放因子集合与第一缩放因子集合的不同之处在于,第二缩放因子集合中的至少一个缩放因子在量值上低于第一缩放因子集合中的对应缩放因子。因此,该量化系数310b的集合表示比使用第一缩放因子集合130所生成的该量化系数140的集合更多的能量和/或图像内容。特别地,对于第四空间频带125d中的空间频率存在至少一个非零系数。
55.第三补充方法包括利用表示子单位(例如,分数)值的符号表示图像的编码版本中
的缩放系数中的至少一个。这可以通过向缩放系数应用与一个或多个子单位符号相对应的一个或多个附加量化级别来实现。用于表示这些缩放系数的一个或多个符号可以表示1/2,1/4,1/8,或一些其它子单位值的值。这样的符号可以在编码图像中通过固定位宽数的保留值(例如,8位数的值0-254可以表示具有从0到254的值的经缩放和量化的系数,而值255可以表示1/2的值)、转义字符和/或相关联的信息位、或通过一些其它指示来表示。这种方法具有确保特定块和/或频带中的至少一个系数由非零值表示并且因此对应频带中的能量大于0的益处。
56.图3c图示已经根据量化表130缩放了相应程度并且然后被量化的量化系数310c的集合。用于第四频带125d内的空间系数的量化系数310c的子集已经根据第三附加方法来量化。因此,该量化系数310c的集合包含对应于最高值缩放系数(即,从底部起四行的最右侧列中的系数)并且将在编码图像中由表示1/2值的符号表示的“1/2”值的系数。
57.第四补充方法包括在量化之前将蓝噪声(或其它随机或伪随机噪声)添加到图像系数,或调整在量化之前默认添加到图像系数的蓝噪声的幅度。这可以通过增加在量化之前被应用于图像的抖动的量或幅度从而增加图像内的特定空间频带中的能量的量来完成。例如,将在不添加和/或调整特定空间频带中的添加的蓝噪声的量的情况下在缩放和量化之后在特定空间频带中不具有能量的图像可以替代地由在图像编码之后的特定空间频带中的一些非零能量来表示。在一些示例中,添加的蓝噪声(或其他各种噪声)可以被频带限制到不满足能量准则的特定空间频带。
58.示例系统
59.本文描述的计算功能(例如,用于将图像的像素变换成图像的频率内容、用于缩放和量化这样的频率内容、用于评估和/或选择针对图像块的量化因子、或者用于执行其它图像编码功能)可以由一个或多个计算系统执行。这样的计算系统可以被集成到计算设备中或采取计算设备的形式,计算设备诸如移动电话、平板计算机、膝上型计算机、服务器、家庭自动化元件、独立视频捕获和处理设备、云计算网络和/或可编程逻辑控制器。出于示例的目的,图4是示出示例计算设备400的一些组件的简化框图。
60.作为示例而非限制,计算设备400可以是蜂窝移动电话(例如,智能电话)、摄像机、计算机(诸如台式计算机、笔记本计算机、平板计算机或手持式计算机)、个人数字助理(pda)、可穿戴计算设备、服务器、云计算系统(例如,联网的多个服务器或其他计算单元)、或一些其他类型的设备或设备的组合。应当理解,计算设备400可以表示物理设备、应用在其上以软件操作的特定物理硬件平台、或被配置成执行映射、训练和/或音频处理功能的硬件和软件的其他组合。
61.如图4所示,计算设备400可以包括通信接口402、用户接口404、处理器406和数据存储408,所有这些都可以通过系统总线、网络或其它连接机制410通信地链接在一起。
62.通信接口402可以用于允许计算设备400使用电、磁、电磁、光或其他信号的模拟或数字调制来与其他设备、接入网络和/或传输网络通信。因此,通信接口402可以促进电路交换和/或分组交换通信,例如普通老式电话服务(pots)通信和/或因特网协议(ip)或其他分组化通信。例如,通信接口402可以包括被布置用于与无线电接入网络或接入点进行无线通信的芯片集和天线。此外,通信接口402可以采取有线接口的形式或包括有线接口,诸如以太网、通用串行总线(usb)或高清多媒体接口(hdmi)端口。通信接口402还可以采取无线接
口的形式或包括无线接口,诸如wifi、全球定位系统(gps)或广域无线接口(例如,wimax或3gpp长期演进(lte))。然而,可以在通信接口402上使用其他形式的物理层接口和其他类型的标准或专有通信协议。此外,通信接口402可以包括多个物理通信接口(例如,wifi接口、接口和广域无线接口)。
63.在一些实施例中,通信接口402可以用于允许计算设备400与其他设备、远程服务器、接入网络和/或传输网络通信。例如,通信接口402可以用于从请求者设备(例如,蜂窝电话、台式或膝上型计算机)接收对图像(例如,网站上的图像、存储在用户的在线图像托管/存储账户中的图像、用作缩略图以指示与请求者设备所请求的其他内容相关的视频的内容的图像)的请求,以传送已经根据本文描述的方法编码的编码图像的指示或一些其他信息。例如,计算设备400可以是服务器、云计算系统或被配置成执行本文描述的方法的其他系统,并且远程系统可以是蜂窝电话、数码相机或被配置成请求信息(例如,可以具有嵌入其中的缩略图或其他图像的网页)并且从计算设备400接收可以如本文描述的那样被修改的一个或多个编码图像(例如,以改进图像的质量、增加图像的压缩比和/或减小图像的编码大小)或从计算设备400接收一些其他信息的其他设备。
64.用户接口404可以用于允许计算设备400与用户交互,例如从用户接收输入和/或向用户提供输出。因此,用户接口404可以包括输入组件,诸如小键盘、键盘、触敏面板或存在敏感的面板、计算机鼠标、跟踪球、操纵杆、麦克风等。用户接口404还可以包括一个或多个输出组件,例如可以与存在敏感的面板组合的显示屏。显示屏可以基于crt、lcd和/或led技术,或者现在已知或以后开发的其它技术。用户接口404还可以被配置为经由扬声器、扬声器插孔、音频输出端口、音频输出设备、耳机和/或其他类似设备生成可听输出。
65.在一些实施例中,用户接口404可以包括用于向用户呈现视频或其他图像的显示器。附加地,用户接口404可以包括促进计算设备400的配置和操作的一个或多个按钮、开关、旋钮和/或拨盘。这些按钮、开关、旋钮和/或拨盘中的一些或全部可以被实现为触摸敏感的面板或存在敏感的面板上的功能。
66.处理器406可以包括一个或多个通用处理器(例如,微处理器)和/或一个或多个专用处理器(例如,数字信号处理器(dsp)、图形处理单元(gpu)、浮点单元(fpu)、网络处理器或专用集成电路(asic))。在一些实例中,除其它应用或功能之外,专用处理器可能能够进行图像处理和神经网络计算。数据存储408可以包括一个或多个易失性和/或非易失性存储组件,例如磁、光、闪存或有机存储,并且可以整体或部分地与处理器406集成。数据存储408可以包括可移动和/或不可移动组件。
67.处理器406可以能够执行存储在数据存储408中的程序指令418(例如,编译的或未编译的程序逻辑和/或机器代码),以执行本文所述的各种功能。因此,数据存储408可以包括非暂时性计算机可读介质,其上存储有程序指令,所述程序指令在由计算设备400执行时使计算设备400执行本说明书和/或附图中公开的任何方法、过程或功能。
68.作为示例,程序指令418可以包括安装在计算设备400上的操作系统422(例如,操作系统内核、设备驱动器和/或其他模块)和一个或多个应用程序420(例如,用于执行本文描述的任何方法的图像编码或其他图像处理程序)。
69.在一些示例中,根据应用,本文描述的方法的部分可以由不同的设备执行。例如,系统的不同设备可以具有用于设备之间的通信的不同量的计算资源(例如,存储器、处理器
周期)和不同信息带宽。可以根据这些考虑来分配本文所述方法的不同部分。
70.示例方法
71.图5是用于编码图像的方法500的流程图。方法500包括基于图像的像素块来生成指示多个空间频率处的像素块的图像内容的系数集合,其中系数集合中的每个系数用于多个空间频率中的相应空间频率(510)。方法500附加地包括根据第一缩放因子集合来缩放系数集合以生成第一缩放系数集合(520)。
72.方法500还包括执行多个量化级别的评估(530)。执行所述评估包括对于多个量化级别中的每个相应量化级别:根据相应量化级别来量化第一缩放系数集合的子集以生成第一缩放系数集合的量化子集,其中第一缩放系数集合的子集用于第一空间频带内的空间频率(532);确定第一缩放系数集合的量化子集的量化后能量(534);以及将量化后能量与阈值能量准则进行比较(536)。
73.方法500附加地包括基于多个量化级别的评估来生成系数集合的经缩放和量化的版本(540)。方法500还包括基于系数集合的经缩放和量化的版本来生成图像的编码版本(550)。
74.图6是方法600的流程图。该方法包括基于图像的像素块来生成指示多个空间频率处的经变换的像素块的图像内容的系数集合,其中系数集合中的每个系数用于多个空间频率中的相应空间频率(610)。方法600附加地包括根据第一缩放因子集合来缩放系数集合的子集以生成第一缩放系数子集,其中系数集合的子集用于第一空间频带内的相应空间频率(620)。
75.方法600还包括量化第一缩放系数子集以生成第一经缩放的量化系数集合(630);确定第一经缩放的量化系数子集的量化后能量(640);确定量化后能量不满足阈值能量准则(650);以及响应于确定量化后能量不满足所述阈值能量准则,应用来自过程集合的至少一个过程以生成图像的编码版本(660)。
76.该过程集合包括第一过程,其包括:(a)识别第一缩放系数子集内的最大缩放系数;(b)确定小于所识别的最大缩放系数的值的量化级别;以及(c)使用所确定的量化级别来量化第一缩放系数子集。该过程集合包括第二过程,该第二过程包括:(a)确定第二缩放因子集合,其中,第二缩放因子集合中的至少一个缩放因子在量值上低于第一缩放因子集合中的对应缩放因子;(b)根据第二缩放因子集合缩放系数集合的子集以生成第二缩放系数子集,其中,系数集合的子集指示第一空间频带内的相应空间频率;以及(c)量化第二缩放系数子集以生成第二经缩放的量化系数集合。该过程集合包括第三过程,该第三过程包括在图像的编码版本中利用表示子单位值的符号表示指示第一空间频带内的相应空间频率的系数集合的子集中的至少一个。
77.方法500、600中的任一个或两者可以包括附加元素或特征。
78.结论
79.以上详细描述参考附图描述了所公开的系统、设备和方法的各种特征和功能。在附图中,除非上下文另外指示,否则类似符号通常标识类似组件。在详细描述、附图和权利要求中描述的说明性实施例不是要限制。在不脱离本文所呈现的主题的范围的情况下,可以利用其它实施例,并且可以进行其它改变。将容易理解的是,如本文中一般性描述的以及在附图中示出的本公开的方面可以以各种各样的不同配置来布置、替换、组合、分离和设
计,所有这些都在本文中明确地设想。
80.关于附图中的任何或所有消息流程图、场景和流程图,并且如本文所讨论的,根据示例实施例,每个步骤、块和/或通信可以表示信息的处理和/或信息的传输。可替代实施例包括在这些示例实施例的范围内。在这些可替代实施例中,例如,被描述为步骤、块、传输、通信、请求、响应和/或消息的功能可以不按所示或所讨论的顺序执行,包括基本上同时或以相反的顺序执行,这取决于所涉及的功能。此外,更多或更少的步骤、块和/或功能可以与本文讨论的消息流程图、场景和流程图中的任何一个一起使用,并且这些消息流程图、场景和流程图可以部分或全部地彼此组合。
81.表示信息处理的步骤或块可以对应于可以被配置为执行这里描述的方法或技术的特定逻辑功能的电路。可替代地或附加地,表示信息处理的步骤或块可以对应于模块、片段或程序代码的一部分(包括相关数据)。程序代码可以包括由处理器可执行的一个或多个指令,用于实现方法或技术中的特定逻辑功能或动作。程序代码和/或相关数据可以存储在任何类型的计算机可读介质上,诸如存储设备,包括磁盘驱动器、硬盘驱动器或其他存储介质。
82.计算机可读介质还可以包括非暂时性计算机可读介质,诸如存储数据达短时间段的计算机可读介质,如寄存器存储器、处理器高速缓存、和/或随机存取存储器(ram)。计算机可读介质还可以包括将程序代码和/或数据存储较长时间段的非暂时性计算机可读介质,诸如次级或永久性长期存储,例如只读存储器(rom)、光盘或磁盘和/或光盘只读存储器(cd-rom)。计算机可读介质还可以是任何其它易失性或非易失性存储系统。计算机可读介质可以被认为是例如计算机可读存储介质或有形存储设备。
83.此外,表示一个或多个信息传输的步骤或框可以对应于相同物理设备中的软件和/或硬件模块之间的信息传输。然而,其他信息传输可以在不同物理设备中的软件模块和/或硬件模块之间。
84.虽然本文已经公开了各种方面和实施例,但是其它方面和实施例对于本领域技术人员将是显而易见的。本文公开的各个方面和实施例是为了说明的目的,而不是要限制,真正的范围由所附权利要求书指示。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献