CN114494026A - 用于消除图像中的伪轮廓的方法、装置以及存储介质 - Google Patents

用于消除图像中的伪轮廓的方法、装置以及存储介质 Download PDF

Info

Publication number
CN114494026A
CN114494026A CN202011146132.7A CN202011146132A CN114494026A CN 114494026 A CN114494026 A CN 114494026A CN 202011146132 A CN202011146132 A CN 202011146132A CN 114494026 A CN114494026 A CN 114494026A
Authority
CN
China
Prior art keywords
pixel
target
stripe
pixels
difference
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
Application number
CN202011146132.7A
Other languages
English (en)
Inventor
刘成强
邱志敏
黄有源
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Montage LZ Technologies Chengdu Co Ltd
Original Assignee
Montage LZ Technologies Chengdu Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Montage LZ Technologies Chengdu Co Ltd filed Critical Montage LZ Technologies Chengdu Co Ltd
Priority to CN202011146132.7A priority Critical patent/CN114494026A/zh
Priority to US17/506,693 priority patent/US20220130018A1/en
Publication of CN114494026A publication Critical patent/CN114494026A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20192Edge enhancement; Edge preservation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本申请公开了一种用于消除图像中的伪轮廓的方法、装置和非暂态计算机存储介质。该方法包括:A)接收目标图像,所述目标图像包括行列排布的二维像素阵列;B)按照所述目标图像的行方向和列方向中的一个目标方向对所述目标图像中的一个目标排列进行伪轮廓检测;C)响应于在所述目标排列上的两个相邻的第一条带和第二条带之间检测到伪轮廓,至少基于所述第一条带的第一条带宽度预测所述第二条带的第二条带宽度;以及D)对所述第二条带内的至少一部分像素进行像素插值处理以消除所述伪轮廓。

Description

用于消除图像中的伪轮廓的方法、装置以及存储介质
技术领域
本申请涉及图像处理技术领域,更具体地,涉及一种用于消除图像中的伪轮廓的方法、装置以及存储介质。
背景技术
在视频图像处理过程中,由于图像压缩和量化误差等原因,会在图像原本比较平坦的区域产生一些类似于图像边缘的伪轮廓,而两个伪轮廓之间则会形成类似于条带的图像区域。与真实的图像边缘相比,伪轮廓通常差异较小并且经常出现在图像的平坦区域,而人眼往往对于这种平坦区域中出现的伪轮廓比较敏感,从而导致视频图像的主观感知质量下降。另外,在图像增强处理时,这些伪轮廓也容易被相应增强造成图像客观质量下降。
因此,有必要提供一种方法能够消除图像中的伪轮廓。
发明内容
本申请的一个目的在于提供一种图像处理方法,能够识别并消除图像中的伪轮廓。
在本申请的一个方面,提供了一种用于消除图像中的伪轮廓的方法,所述方法包括:A)接收目标图像,所述目标图像包括行列排布的二维像素阵列;B)按照所述目标图像的行方向和列方向中的一个目标方向对所述目标图像中的一个目标排列进行伪轮廓检测;C)响应于在所述目标排列上的两个相邻的第一条带和第二条带之间检测到伪轮廓,至少基于所述第一条带的第一条带宽度预测所述第二条带的第二条带宽度;以及D)对所述第二条带内的至少一部分像素进行像素插值处理以消除所述伪轮廓。
在一些实施例中,所述步骤B包括:确定所述目标排列上的一个目标像素;用伪轮廓检测窗口对所述目标排列进行加窗处理,以获取与所述目标像素相邻的一组相邻像素;确定第一差异参数,所述第一差异参数指示与所述目标像素相关的个体像素差异的程度;确定第二差异参数,所述第二差异参数指示该组相邻像素内部的或其与前一个伪轮廓处的像素相邻的一组相邻像素之间的整体差异的程度;以及至少根据所述第一差异参数与所述第二差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处。
在一些实施例中,确定第一差异参数包括:比较与所述目标像素相邻的两个相邻像素之间的差异;或者比较所述目标像素与所述目标排列上所述目标像素的后一个相邻像素之间的差异;
在一些实施例中,确定第二差异参数包括:比较该组相邻像素中所述目标像素之前的所有相邻像素与所述目标像素之后的所有相邻像素之间的差异。
在一些实施例中,确定第二差异参数包括:比较该组相邻像素中所有像素的累加值与前一个伪轮廓处的像素相邻的一组相邻像素中所有像素的累加值之间的差异。
在一些实施例中,至少根据所述第一差异参数与第二差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处包括:在所述第一差异参数属于第一预定差异范围、且所述第二差异参数属于第二预定差异范围时,确定所述目标像素处于所述目标排列的伪轮廓处。
在一些实施例中,所述伪轮廓检测窗口是以所述目标像素为中心的宽度不小于5个像素的窗口。
在一些实施例中,所述步骤B还包括:确定第三差异参数,所述第三差异参数指示该组相邻像素的最大像素差异;以及根据所述第一差异参数、所述第二差异参数和所述第三差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处。
在一些实施例中,根据所述第一差异参数、所述第二差异参数和所述第三差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处包括:在所述第一差异参数属于第一预定差异范围、所述第二差异参数属于第二预定差异范围、且所述第三差异参数不超过预定差异阈值时,确定所述目标像素处于所述目标排列的伪轮廓处。
在一些实施例中,所述预定差异阈值是与所述目标像素有关的自适应阈值。
在一些实施例中,所述步骤C包括:将所述第一条带的第一条带宽度作为所述第二条带的第二条带宽度的预测值。
在一些实施例中,所述步骤C包括:比较所述第一条带宽度与参考条带宽度;以及在所述第一条带宽度大于所述参考条带宽度时,以所述第一条带宽度作为所述第二条带宽度的预测值;以及在所述第一条带宽度不大于所述参考条带宽度时,以所述第一条带宽度与所述参考条带宽度的平均值作为所述第二条带宽度的预测值。
在一些实施例中,所述参考条带宽度是所述第一条带宽度的预测值。
在一些实施例中,其特征在于,所述步骤B包括:用伪轮廓检测窗口对所述目标排列进行加窗处理,以获取与所述目标像素相邻的一组相邻像素;以及确定第二差异参数,所述第二差异参数指示该组相邻像素内部的整体差异的程度;所述步骤C还包括:基于所述第二差异参数对所述第二条带宽度的预测值进行限幅。
在一些实施例中,所述步骤C还包括:使用行方向和列方向中的非目标方向上与所述目标排列相邻的两个排列上对应于所述第一条带的两个条带的条带宽度来修正所述第二条带宽度的预测值。
在一些实施例中,所述第一条带起始于一个伪轮廓或一个图像边缘。
在一些实施例中,所述插值处理包括插值平滑滤波处理。
在一些实施例中,所述第二条带内的至少一部分像素起始于所述目标像素但不超过所述第二条带长度的预测值的3/4范围。
在一些实施例中,在所述步骤D之后,所述方法还包括:对进行像素插值的像素进行增幅校正处理,以使得每个插值的像素与所述目标排列上该插值的像素之前的一个像素之间的差异不超过预定增幅阈值。
在一些实施例中,所述预定增幅阈值是自适应阈值。
在一些实施例中,在所述增幅校正处理的步骤中,对于位于图像的平坦区域和非平坦区域中的像素应用不同的预定增幅阈值。
在本申请的其他方面,还提供了一种图像处理装置以及非暂态计算机存储介质。
可以看出,当利用本申请的方法处理图像时,其能够对图像中的伪轮廓进行检测并统计相关信息,以及利用已经计算得到的伪轮廓处的前一个条带的宽度,预测下一个相邻条带的宽度。这样,可以利用这些统计信息通过插值平滑滤波等方法来进行消除原始图像中的伪轮廓,在达到相同图像效果的情况下减少了运行内存,节约了图像处理的硬件开销。
以上为本申请的概述,可能有简化、概括和省略细节的情况,因此本领域的技术人员应该认识到,该部分仅是示例说明性的,而不旨在以任何方式限定本申请范围。本概述部分既非旨在确定所要求保护主题的关键特征或必要特征,也非旨在用作为确定所要求保护主题的范围的辅助手段。
附图说明
通过下面说明书和所附的权利要求书并与附图结合,将会更加充分地清楚理解本申请内容的上述和其他特征。可以理解,这些附图仅描绘了本申请内容的若干实施方式,因此不应认为是对本申请内容范围的限定。通过采用附图,本申请内容将会得到更加明确和详细地说明。
图1示出了根据本申请一个实施例的用于消除图像中的伪轮廓的方法;
图2示出了可以由图1所示的方法处理的一个示例性图像,该图像包括行列排布的二维像素阵列;
图3示出了在目标排列上进行像素插值处理的示意图。
具体实施方式
在下面的详细描述中,参考了构成其一部分的附图。在附图中,类似的符号通常表示类似的组成部分,除非上下文另有说明。详细描述、附图和权利要求书中描述的说明性实施方式并非旨在限定。在不偏离本申请的主题的精神或范围的情况下,可以采用其他实施方式,并且可以做出其他变化。可以理解,可以对本申请中一般性描述的、在附图中图解说明的本申请内容的各个方面进行多种不同构成的配置、替换、组合,设计,而所有这些都明确地构成本申请内容的一部分。
图1示出了根据本申请一个实施例的用于消除图像中的伪轮廓的方法。在一些实施例中,该方法可以被用于处理静态图像或者动态图像(例如视频图像),以用于消除这些图像中的伪轮廓。
图2示出了可以由图1所示的方法处理的一个示例性图像,该图像包括行列排布的二维像素阵列。对于图2所示的图像,在沿其行方向的一行像素中,或者在沿其列方向的一列像素中,可能存在两个相邻像素其像素值具有视觉上可感知的差异,但是该差异通常比真实的图像边缘处两个相邻像素的像素值差异要小。因此,可以对该图像逐行地进行伪轮廓检测,或者也可以逐列地进行伪轮廓检测,并且在发现伪轮廓后进行相应地处理。作为示例,对于图2所示的图像,对该图像逐列地进行伪轮廓检测,例如目标排列即是当前被检测的一列像素。可以理解,图像的分辨率决定了每一行像素或每一列像素的数量,例如分辨率为1920*1080的图像,其每一行像素的数量为1920个,而其每一列像素的数量为1080个。需要说明的是,在本文中,被处理的目标图像可以符合各种图像格式,例如YUV或RGB格式。对于符合YUV格式的图像,像素值可以是其Y通道、U通道或V通道中任意一个通道的数值。在一些实施例中,可以仅对图像的一个通道,例如Y通道,进行伪轮廓检测和消除的处理;在另一些实施例中,也可以对图像的多个通道或所有通道分别进行伪轮廓检测和消除的处理。对于符合RGB格式的图像,像素值可以是R通道、G通道或B通道中的一个或多个通道的数值。
接下来,结合图1和图2,对本申请实施例的用于消除图像中的伪轮廓的方法进行具体说明。
首先,在步骤102,接收目标图像,该目标图像包括按行列排布的二维像素阵列。该目标图像例如是图2所示的图像。
接着,在步骤104,按照目标图像的行方向和列方向中的一个目标方向对目标图像中的一个目标排列上进行伪轮廓检测。例如,可以按照列方向(目标方向)逐列地检测每一列像素上的伪轮廓,正如图2所示。在本申请中,伪轮廓可位于具有视觉上可感知的差异的两个相邻的条带之间,并且该差异小于图像边缘的明显差异。在每个条带内部,其整体或至少每两个相邻像素之间大体具有相同或相近的像素值。
由于伪轮廓通常是图像的局部特性,因此对于当前处理的目标排列,在检测伪轮廓时,并非需要一次性获取该目标排列中所有像素的信息,而是仅需要获取其中的一部分与某一像素相邻的多个像素的信息来进行判断即可。因此,对于例如图2所示的目标排列,可以沿列方向逐个像素地检测每一个像素是否处于伪轮廓处。在一个实施例中,可以选择目标排列上的一个目标像素,例如图2中的目标像素a3;然后,可以用伪轮廓检测窗口对目标排列进行加窗处理,以获取与目标像素相邻且包括目标像素的一组相邻像素(在本申请中,与目标像素相邻的一组相邻像素均包括目标像素本身),例如图2中的一组相邻像素a0至a6;之后,可以基于该组相邻像素的信息来检测该目标像素是否处于其所在的目标排列的伪轮廓处。可以理解,在检测完目标像素a3之后,可以将其后的下一像素a4作为目标像素,并且选择与其相邻的多个像素进行类似地处理。可以理解,伪轮廓检测窗口限定了目标像素对应的相邻像素的数量和位置。在图2中,伪轮廓检测窗口是以目标像素a3为中心的长度为7(个像素)的窗口。在另一些实施例中,伪轮廓检测窗口可以是以目标像素为中心且长度至少为5(例如5、6、7、8、9、10、11或更多个像素)的窗口。在其他的实施例中,伪轮廓检测窗口也可以不以目标像素为中心,例如在一个替代的实施例中,伪轮廓检测窗口也可以获取图2中与目标像素a3相邻的一组像素a0至a7,来进行伪轮廓检测。本领域技术人员可以根据实际应用的需要增加或调整伪轮廓检测窗口的大小和范围。
在一些实施例中,可以基于伪轮廓检测窗口获取的一组相邻像素来确定一个或多个差异参数,其中这些差异参数可以指示与目标像素相关和/或该组相邻像素内的像素差异。基于这些差异参数,可以进一步地确定目标像素是否处于目标排列的伪轮廓处。
在一个实施例中,所确定的一个或多个差异参数可以包括第一差异参数,其用于指示与目标像素相关的个体像素差异的程度。参考图2,仍以目标像素a3为例,该第一差异参数可以是目标像素a3与其同一排列中后一个像素a4之间的差值(在本申请中,除非特别说明,差值均指绝对值),或者也可以是目标像素a3的后一个像素a4与目标像素a3的前一个像素a2之间的差值。如果目标像素处于伪轮廓处,第一差异参数应当属于一预定差异范围内,为便于说明可以表示为第一预定差异范围。具体地,第一预定差异范围应当具有一差异下限阈值和一差异上限阈值;其中,差异下限阈值不能太大,典型值例如为1(假设像素值被表示为0~255的8位深度值),否则难以检测到真正的伪轮廓;但是差异上限阈值也不能太大,典型值例如为6(同样假设像素值被表示为0~255的8位深度值),因为如果差异上限阈值太大则可能将图像边缘误检测为伪轮廓。通常而言,如果相邻像素的像素值之间的差值超过8,则可以认为其是处于真实的图像边缘。在实际应用中,第一预定差异范围的实际范围可以随第一差异参数的计算方法的不同而略有差异。另外需要说明的是,在下文中,像素值均以8位深度值为例进行说明,但是本领域技术人员可以理解其他位(例如10位)深度值可以具有对应的像素值和阈值。例如,对于8位深度值的像素值,其第一预定差异范围的差异上限阈值为6;而对于10位深度值的像素值,其第一预定差异范围的差异上限阈值可以约为24,也即6*4,其中乘以4倍是因为像素的深度值增加了2位,其他参数的计算以此类推。
可以理解,由于第一差异参数的计算仅与目标像素和其相邻的一个或两个像素有关,因此第一差异参数并不反映该组相邻像素的整体差异信息。相应地,在一些实施例中,所确定的差异参数还可以包括第二差异参数,其用于指示该组相邻像素内部的整体差异的程度。在一些实施例中,第二差异参数可以通过比较该组相邻像素中目标像素之前的所有相邻像素与目标像素之后的所有相邻像素之间的差异来确定。例如,第二差异参数可以被计算为伪轮廓检测窗口的上/前半部像素的累加值(例如,图2中的像素a0+a1+a2)与下/后半部像素(例如,图2中的像素a4+a5+a6)的累加值之间的差值;或者,第二差异参数也可以被计算为伪轮廓检测窗口中上/前半部像素的平均值与下/后半部像素的平均值之间的差值。当目标像素处于伪轮廓处时,第二差异参数通常也应当属于一个预定差异范围内,例如具有一差异下限阈值和一差异上限阈值的第二预定差异范围。在一些实施例中,第二差异参数可以被计算为伪轮廓检测窗口的上/前半部像素的累加值,则第二预定差异范围的下限阈值可以取值为4,而第二预定差异范围的上限阈值可以取值为24(例如,上限阈值和下限阈值均对应于图2中的上半部三个像素a0+a1+a2的累加值与下半部三个像素a4+a5+a6的累加值的差值)。可以理解,第二预定差异范围的上/下限阈值的具体取值可能因第二差异参数的计算方法的不同而具有差异。
替代地,第二差异参数也可指示目标像素对应的一组相邻像素与前一个伪轮廓处的像素相邻的一组相邻像素之间的整体差异的程度。例如,第二差异参数可以被计算为根据当前正在被检测的目标像素相关的一组相邻像素的像素累加值与前一个伪轮廓处的像素相邻的一组相邻像素(基于同样大小的伪轮廓检测窗口获取)的像素累加值之间的差值。如果该第二差异参数超过预定下限阈值,则说明目标像素处于伪轮廓处,因此第二差异参数类似地对应于两个相邻条带的像素值之间的整体差异;同样地,该第二差异参数应当小于预定上限阈值,因为如果第二差异参数过大则会将真实的图像边缘误识别为伪轮廓。
在一些实施例中,可以基于所确定的第一差异参数和第二差异参数确定目标像素是否处于目标排列的伪轮廓处。具体地,如果第一差异参数属于第一预定范围,并且第二差异参数属于第二预定范围,则确定目标像素处于目标排列的伪轮廓处;否则,则确定目标像素不处于伪轮廓处。
在一些实施例中,还可以计算与目标像素相关的其他差异参数,并且基于第一差异参数、第二差异参数以及其他差异参数确定目标像素是否处于伪轮廓处。例如,可以确定第三差异参数,其可以指示目标像素对应的该组相邻像素的最大像素差异,也即该组相邻像素中像素最大值与最小值的差值。通常而言,最大像素差异不能过大,其例如应不超过一预定阈值,该预定阈值例如取值为2至20。在一些优选的实施例中,最大像素差异对应的预定阈值可以是随目标像素的像素值变化的自适应阈值。可以理解,目标像素的像素值越大(越亮),那么该预定阈值可以越大。
仍参考图1,在步骤104,如果针对当前处理的目标像素的相关计算结果指示该目标像素未处于伪轮廓处,则可以后移至相邻的后一个像素,重复像素是否处于伪轮廓处的检测操作。但是,如果检测到当前像素处于伪轮廓处,那么就需要从目标图像中消除该伪轮廓,也即调整伪轮廓处的像素相邻的目标像素以及其相邻的一个或多个像素的像素值,以使得目标像素相邻区域的像素值过渡更为自然,降低或避免伪轮廓带来的视觉不适感。
接下来,在步骤106,响应于在目标排列上的两个相邻的第一条带和第二条带之间检测到伪轮廓,至少基于伪轮廓前的第一条带的第一条带宽度预测第二条带的第二条带宽度。
正如前述,当前检测确定的伪轮廓位于目标排列上两个相邻的第一条带与第二条带之间。因此,第一条带的宽度可以比较当前像素的位置(当前的伪轮廓)与前一个伪轮廓的位置计算得到。换言之,第一条带可以起始于前一个伪轮廓而终止于当前的伪轮廓。一般来说,对于同一幅图像中相邻的两个条带,其宽度通常相差不大,因此可以基于两个相邻条带中已知的前一条带(第一条带)的宽度来预测未知的后一条带(第二条带)的宽度。其中,所谓未知条带是指仅能够确定该未知条带的起始位置(即当前的伪轮廓的位置),而不能或尚未确定该未知条带的终止位置(即下一伪轮廓的位置)。
在一些实施例中,可以将第一条带的第一条带宽度作为第二条带的第二条带宽度的预测值。由于图像噪声等原因,伪轮廓的检测可能存在不准确的情况,特别是可能将相对较为靠近前一伪轮廓的像素检测识别成了伪轮廓,从而错误地缩短了第一条带的宽度。为了避免图像噪声干扰或其他干扰引起的错误,在一些优选的实施例中,可以通过下述方法预测第二条带的第二条带宽度:首先,可以比较第一条带宽度与参考条带宽度;以及在第一条带宽度大于参考条带宽度时,以第一条带宽度作为第二条带宽度的预测值,而在第一条带宽度不大于参考条带宽度时,以第一条带宽度与参考条带宽度的平均值作为第二条带宽度的预测值。其中,参考条带宽度可以是第一条带宽度的预测值,该预测值是对当前检测到的伪轮廓的前一个伪轮廓进行检测和识别时所确定的,并且可以被保存以用于后继处理。可以理解,第一条带的预测涉及第一条带之前的一个条带,并且第一条带宽度的预测值也是根据该之前的一个条带的实际宽度预测得到的,而同一排列中相邻的两个或更多个条带的宽度变化可能不大,因此综合考虑第一条带宽度的预测值与实际值来预测第二条带宽度可以减少噪声干扰对后继条带宽度预测的干扰和影响。
在一些实施例中,在预测第二条带的宽度时,还可以对预测的宽度值进行限幅。换言之,预测的第二条带宽度不应该过大。之所以对预测的宽度值进行限幅,一方面是为了在实际处理的过程中可以用较少的硬件存储资源来存储信息,另一方面也是为了在后续去除伪轮廓的插值处理时(见下文)能够使得插值计算结果更符合图像的实际变化,这是因为插值计算是对第二条带范围内的至少部分像素进行插值计算的。在一个例子中,可以基于指示一组相邻像素内部的整体差异程度的第二差异参数来对第二条带宽度的预测值进行限幅。例如,第二条带宽度预测值的上限阈值可以是第二差异参数的3至6倍(正如前述,假设像素值是8位深度值,并且不考虑这两个参数的单位)。
可以理解,在一些情况下,目标像素被检测发现处于图像边缘,例如第一差异参数或第二差异参数或第三差异参数中的任意一个超过其对应的上限阈值。这时,目标像素之前的相邻区域不能够被看做是条带,因而可以将用于预测第二条带宽度的信息进行复位。这可以避免将错误的信息保存用于之后的伪轮廓消除计算。可以理解,当复位后重新进行计算,特别是确定第一条带的宽度时,该第一条带可以起始于图像边缘而终止于当前的伪轮廓。
在一些情况下,除了利用目标排列上的第一条带的宽度来预测第二条带的宽度之外,还可以利用原始图像中与第一条带相邻或其他与第一条带位置相近的条带来预测或修正第二条带的宽度。这些位置相邻的条带可以位于沿非目标方向上(在图2所示的示例中,非目标方向是行方向)与目标排列相邻的两个排列。例如,在图2所示的示例中,像素u0至u6所在的列以及像素d0至d6所在的列是与目标排列相邻的两个排列。可以理解,取决于像素u0至u6所在的列、以及像素d0至d6所在的列的实际像素值,其两列上对应于第一条带的条带的起始和/或终止位置可能并非对准于第一条带的起始和/或终止位置,并且可以具有不同于第一条带宽度的宽度。例如,像素u0至u6所在的列上对应于第一条带的条带可能终止于u2(即,u2被识别为伪轮廓),第一条带中的目标像素a3可被识别为伪轮廓,则u2是像素u0至u6所在列中最接近目标像素a3的被识别为伪轮廓的像素;像素d0至d6所在的列上对应于第一条带的条带可能终止于d0,其同样是位于目标像素a3上方的最接近目标像素a3的一个像素。
在一个示例中,综合考虑相邻排列上相邻条带的宽度,第二条带宽度的预测值band2_width可以通过下述等式(1)来修正:
band2_width=(band_width_u+2*band1_width+band_width_d)/4 (1)
其中,band1_width表示第一条带的实际宽度,band_width_u表示像素u0至u6所在的列上对应于第一条带的条带的实际宽度,而band_width_d表示像素d0至d6所在的列上对应于第一条带的实际宽度。可以理解,虽然这三个条带处于不同的列上,但是由于它们在行方向上相邻,因此其通常具有相同或相似的图像特性,因此可以基于相邻的非目标排列上的条带宽度来修正当前处理的目标排列上的条带宽度的预测值。可以理解,在一些其他的实施例中,也可以基于更多个相邻的非目标排列上的条带宽度来修正目标排列上当前处理的条带宽度预测值。
回到图1,接着,在步骤108,可以对第二条带内的至少一部分像素进行像素插值处理以消除伪轮廓。可以理解,在此所述的第二条带是预测的第二条带的范围。
图3示出了在目标排列上进行像素插值处理的示意图。如图3所示,基于伪轮廓检测窗口获取的像素的信息,确定目标像素处于伪轮廓1处。相应地,对起始于伪轮廓1且具有预测的第二条带宽度的第二条带进行像素插值处理,该第二条带被预测终止于预测的伪轮廓2。
在一些实施例中,可以对第二条带中的所有像素进行像素插值处理;而在另一些实施例中,也可以仅对第二条带中的一部分像素进行像素插值处理。在图3所示的示例中,可以对起始于目标像素(伪轮廓1处)但不超过第二条带长度的预测值的3/4(75%)范围内的像素进行插值处理。可以理解,在一些其他的示例中,也可以对第二条带长度的预测值的其他数量比例的像素进行像素插值处理,例如60%、70%、80%、85%、90%、95%或更高。该像素插值处理可以使得第一条带内***值像素的像素值从第一条带的像素值逐渐变化到等于或接近第二条带的像素值。其中,由于第二条带大体具有相同或相似的像素值,因此该第二条带的像素值可以由位于伪轮廓处(也即第一条带与第二条带之间的)的目标像素的像素值表示。
在一些实施例中,可以通过插值平滑滤波处理来实现像素插值处理。优选地,可以采用线性插值平滑滤波算法来实现像素插值处理。具体地,结合参考图2和图3,仅以对第二条带长度的预测值的3/4(75%)范围内的像素进行插值处理为例,与目标像素间距为d的***值像素的像素值P可以由下述等式(2)表示:
P=band1_avg*(3/4*band2_width-d)+sum*d)/(3/4*band2_width*win_width)等式(2)
其中,band1_avg表示第一条带中像素的像素平均值,在一些实施例中,其可以用像素a0的像素值表示(参考图2,假设目标像素a3处于伪轮廓1处);band2_width是第二条带宽度的预测值,sum是当前插值处理窗口中像素的像素平均值,在一些实施例中,band1_avg可以用像素a6的像素值表示(参考图2,假设目标像素a3处于伪轮廓1处);d表示当前像素距离伪轮廓1的距离;win_width表示当前像素所在的窗口(当前插值处理窗口)的宽度,其例如为7。可以看出,在优选的实施例中,可以用多个像素的平均值来参与插值处理,这可以使得过渡更为平滑。
需要说明的是,等式(2)所示的插值处理方法仅仅是示例性地,在一些其他的实施例中,也可以通过其他插值算法来计算预测的第二条带范围的一部分或全部像素的像素值。
可以理解,基于图1所示的方法,图像中的伪轮廓可以被识别并被通过插值处理而消除。在处理过程中,该方法除了识别伪轮廓之外,还可以检测确定图像中的其他非伪轮廓区域,例如图像边缘区域。对于这些非伪轮廓区域中的像素,如果其处于图像边缘处,则可以直接输出该像素的原始像素值,而无需对其进行插值或调整。在一些处理过程中,当两个伪轮廓距离较小时,也即其所限定的条带宽度较小时,可以不采用插值平滑滤波处理,而是采用其他替代的插值处理算法,例如平均值滤波处理,来消除伪轮廓。
在一些实施例中,通过本发明上述实施例处理后得到的图像的一个像素的像素值可能相比于相同排列上与其相邻的前一个像素的像素值具有较大的变化,该变化可以称为增幅。在一些实施例中,可以对处理后的图像进行增幅校正,以避免处理后的图像中出现一些不期望的过大的像素值变化。具体地,可以在图1所示的步骤108之后增加增幅校正的步骤,在该步骤中,当某个像素与相邻像素之间的像素值变化超过一预设的或者自适应的增幅阈值时,可以对该像素的像素值进行增幅校正处理。
可以理解,对于图像中的不同区域,实际应用的增幅校正算法可能存在差别。如果当前像素处于需要进行伪轮廓消除的平坦区域,那么在对其进行增幅限制处理时可以应用相对较小的增幅阈值(delta_th1),此时如果当前像素的像素值(基于插值算法得到)与其同一排列(同一行或同一列)上前一个像素的像素值(经去除伪轮廓处理之后的像素值)之间的差异大于增幅阈值delta_th1,则可以对该当前像素进行增幅校正,如果未超过增幅阈值delta_th1,则可以不进行增幅校正而使用插值得到的像素值。在一些实施例中,增幅阈值delta_th1可以是一个自适应的阈值,其取值范围例如为1至4。
另一方面,对于处于图像实际边缘区域的像素,其相比于同一行或同一列上的前一个像素的增幅可能实际就比较大,因此对其增幅限制处理时,可以应用较大的增幅阈值(delta_th2)。此时如果当前像素的像素值(基于插值算法得到)与其同一排列(同一行或同一列)上前一个像素的像素值(经去除伪轮廓处理之后的像素值)之间的差异大于增幅阈值delta_th2,则可以对该当前像素进行增幅校正;而如果未超过增幅阈值delta_th2,则可以不进行增幅校正而使用插值得到的像素值。在一些实施例中,边缘区域所适用的增幅阈值delta_th2可以大于平坦区域所适用的增幅阈值delta_th1,其取值范围例如为1至6。
在实际应用中,边缘区域通常包括存在显著差异的不同像素,这些不同像素经插值处理后的像素值之间差异有可能确实就比较大,因此并非边缘区域处的所有像素均需要按照上述判断方法进行增幅校正,或者至少不能够仅仅凭借增幅阈值delta_th2来判断是否需要进行增幅校正,而是要考虑处理前不同像素之间的像素值差异。相应地,在一些优选的实施例中,如果在原始图像中当前像素与其前一个和后一个像素的差异均小于一参考阈值delta_th(这说明当前像素与相邻像素之间的像素值本身不存在明显差异),但是当经插值计算后的当前像素的像素值与其前一个像素的差异大于增幅阈值(delta_th2)时,这说明插值处理可能不恰当地增加了当前像素与其前一个像素的像素值差异,因此这时需要对当前像素的像素值进行校正。参考阈值delta_th可以等于或大于增幅阈值delta_th2,这两个阈值均为自定义阈值,其取值范围例如为2至6。
类似地,对于处于非边缘处的平坦区域之外的一部分像素,也即如果在处理该当前像素时图像还没有检测到伪轮廓,或者同一排列中当前像素之前的像素被检测为处于图像边缘,再或者对于当前像素(也即检测到了当前像素处于伪轮廓处)计算得到的条带宽度相对较小,那么此时如果进一步判断当前像素的像素值与其前一个像素经校正后的实际像素值的差值大于增幅阈值delta_th1,则需要对该当前像素的像素值进行增幅校正。在一些实施例中,增幅阈值delta_th1也可以是一个自适应的阈值,其取值范围例如为1至4。
在一些实施例中,对平坦区域中像素值的校正可以应用下述等式(3)至(6)计算:
delta_value1=(data_out_tmp-prev_output)/6 (3)
delta_value=delta_value1+prev_delta (4)
data_out=INT(prev_output+delta_value) (5)
prev_delta=FRA(prev_output+delta_value) (6)
其中,data_out_tmp表示插值计算得到的当前像素的像素值;prev_output表示当前像素的前一个像素的像素值;prev_delta表示前一个像素的校正后增幅的小数部分,delta_value表示当前像素的校正后的增幅,而data_out表示当前像素的校正后的像素值,INT表示取整,FRA表示取小数部分,data_out为一整数值。在当前像素不满足增幅校正条件时,delta_value和prev_delta都取值为0。
在一些实施例中,对于非平坦区域中像素值的校正,可以应用等式(7)以及(4)至(6)计算。
delta_value1=(data_out_tmp-prev_output)/4 (7)
等式(3)与等式(7)类似,区别仅在于delta_value1的计算方式略有区别。这是因为平坦区域中像素值变化相对较小,因此将该值取值较小,可以使得输出更为平滑。
可以看出,通过增幅校正,可以有效地调整相邻像素之间的插值计算的像素值的差异,从而使得处理后的图像过渡自然。
在一些实施例中,本申请还提供了一些计算机程序产品,其包括非暂态计算机可读存储介质。该非暂态计算机可读存储介质包括计算机可执行的代码,用于执行图1所示的方法实施例中的步骤。在一些实施例中,计算机程序产品可以被存储在硬件装置中,例如图像处理装置中。
可以看出,当利用本申请的方法处理图像时,其能够对图像中的伪轮廓进行检测并统计相关信息,以及利用已经计算得到的伪轮廓处的前一个条带的宽度,预测下一个相邻条带的宽度。这样,可以利用这些统计信息通过插值平滑滤波等方法来进行消除原始图像中的伪轮廓,在达到相同图像效果的情况下减少了运行内存,节约了图像处理的硬件开销。
本发明的实施例可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
应当注意,尽管在上文详细描述中提及了用于消除图像中的伪轮廓的方法和装置的若干步骤、子步骤或模块、子模块,但是这种划分仅仅是示例性的而非强制性的。实际上,根据本申请的实施例,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
本技术领域的一般技术人员可以通过研究说明书、公开的内容及附图和所附的权利要求书,理解和实施对披露的实施方式的其他改变。在权利要求中,措词“包括”不排除其他的元素和步骤,并且措辞“一”、“一个”不排除复数。在本申请的实际应用中,一个零件可能执行权利要求中所引用的多个技术特征的功能。权利要求中的任何附图标记不应理解为对范围的限制。

Claims (23)

1.一种用于消除图像中的伪轮廓的方法,其特征在于,所述方法包括:
A)接收目标图像,所述目标图像包括行列排布的二维像素阵列;
B)按照所述目标图像的行方向和列方向中的一个目标方向对所述目标图像中的一个目标排列进行伪轮廓检测;
C)响应于在所述目标排列上的两个相邻的第一条带和第二条带之间检测到伪轮廓,至少基于所述第一条带的第一条带宽度预测所述第二条带的第二条带宽度;以及
D)对所述第二条带内的至少一部分像素进行像素插值处理以消除所述伪轮廓。
2.根据权利要求1所述的方法,其特征在于,所述步骤B包括:
确定所述目标排列上的一个目标像素;
用伪轮廓检测窗口对所述目标排列进行加窗处理,以获取与所述目标像素相邻的一组相邻像素;
确定第一差异参数,所述第一差异参数指示与所述目标像素相关的个体像素差异的程度;
确定第二差异参数,所述第二差异参数指示该组相邻像素内部的或其与前一个伪轮廓处的像素相邻的一组相邻像素之间的整体差异的程度;以及
至少根据所述第一差异参数与所述第二差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处。
3.根据权利要求2所述的方法,其特征在于,确定第一差异参数包括:
比较与所述目标像素相邻的两个相邻像素之间的差异;或者
比较所述目标像素与所述目标排列上所述目标像素的后一个相邻像素之间的差异。
4.根据权利要求2所述的方法,其特征在于,确定第二差异参数包括:
比较该组相邻像素中所述目标像素之前的所有相邻像素与所述目标像素之后的所有相邻像素之间的差异。
5.根据权利要求2所述的方法,其特征在于,确定第二差异参数包括:
比较该组相邻像素中所有像素的累加值与前一个伪轮廓处的像素相邻的一组相邻像素中所有像素的累加值之间的差异。
6.根据权利要求2所述的方法,其特征在于,至少根据所述第一差异参数与第二差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处包括:
在所述第一差异参数属于第一预定差异范围、且所述第二差异参数属于第二预定差异范围时,确定所述目标像素处于所述目标排列的伪轮廓处。
7.根据权利要求2所述的方法,其特征在于,所述伪轮廓检测窗口是以所述目标像素为中心的宽度不小于5个像素的窗口。
8.根据权利要求2所述的方法,其特征在于,所述步骤B还包括:
确定第三差异参数,所述第三差异参数指示该组相邻像素的最大像素差异;以及
根据所述第一差异参数、所述第二差异参数和所述第三差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处。
9.根据权利要求8所述的方法,其特征在于,根据所述第一差异参数、所述第二差异参数和所述第三差异参数确定所述目标像素是否处于所述目标排列的伪轮廓处包括:
在所述第一差异参数属于第一预定差异范围、所述第二差异参数属于第二预定差异范围、且所述第三差异参数不超过预定差异阈值时,确定所述目标像素处于所述目标排列的伪轮廓处。
10.根据权利要求9所述的方法,其特征在于,所述预定差异阈值是与所述目标像素有关的自适应阈值。
11.根据权利要求1所述的方法,其特征在于,所述步骤C包括:
将所述第一条带的第一条带宽度作为所述第二条带的第二条带宽度的预测值。
12.根据权利要求1所述的方法,其特征在于,所述步骤C包括:
比较所述第一条带宽度与参考条带宽度;以及
在所述第一条带宽度大于所述参考条带宽度时,以所述第一条带宽度作为所述第二条带宽度的预测值;以及在所述第一条带宽度不大于所述参考条带宽度时,以所述第一条带宽度与所述参考条带宽度的平均值作为所述第二条带宽度的预测值。
13.根据权利要求12所述的方法,其特征在于,所述参考条带宽度是所述第一条带宽度的预测值。
14.根据权利要求11或12所述的方法,其特征在于,
所述步骤B包括:
用伪轮廓检测窗口对所述目标排列进行加窗处理,以获取与所述目标像素相邻的一组相邻像素;以及
确定第二差异参数,所述第二差异参数指示该组相邻像素内部的整体差异的程度;
所述步骤C还包括:
基于所述第二差异参数对所述第二条带宽度的预测值进行限幅。
15.根据权利要求11或12所述的方法,其特征在于,所述步骤C还包括:
使用行方向和列方向中的非目标方向上与所述目标排列相邻的两个排列上对应于所述第一条带的两个条带的条带宽度来修正所述第二条带宽度的预测值。
16.根据权利要求1所述的方法,其特征在于,所述第一条带起始于一个伪轮廓或一个图像边缘。
17.根据权利要求1所述的方法,其特征在于,所述插值处理包括插值平滑滤波处理。
18.根据权利要求17所述的方法,其特征在于,所述第二条带内的至少一部分像素起始于所述目标像素但不超过所述第二条带长度的预测值的3/4范围。
19.根据权利要求1所述的方法,其特征在于,在所述步骤D之后,所述方法还包括:
对进行像素插值的像素进行增幅校正处理,以使得每个插值的像素与所述目标排列上该插值的像素之前的一个像素之间的差异不超过预定增幅阈值。
20.根据权利要求19所述的方法,其特征在于,所述预定增幅阈值是自适应阈值。
21.根据权利要求19所述的方法,其特征在于,在所述增幅校正处理的步骤中,对于位于图像的平坦区域和非平坦区域中的像素应用不同的预定增幅阈值。
22.一种非暂态计算机存储介质,其上存储有一个或多个可执行指令,所述一个或多个可执行指令被处理器执行后执行用于消除图像中的伪轮廓的方法,其特征在于,所述方法包括:
A)接收目标图像,所述目标图像包括行列排布的二维像素阵列;
B)按照所述目标图像的行方向和列方向中的一个目标方向对所述目标图像中的一个目标排列进行伪轮廓检测;
C)响应于在所述目标排列上的两个相邻的第一条带和第二条带之间检测到伪轮廓,至少基于所述第一条带的第一条带宽度预测所述第二条带的第二条带宽度;以及
D)对所述第二条带内的至少一部分像素进行像素插值处理以消除所述伪轮廓。
23.一种用于消除图像中的伪轮廓的装置,其特征在于,所述装置包括非暂态计算机存储介质,其上存储有一个或多个可执行指令,所述一个或多个可执行指令被处理器执行后执行下述步骤:
A)接收目标图像,所述目标图像包括行列排布的二维像素阵列;
B)按照所述目标图像的行方向和列方向中的一个目标方向对所述目标图像中的一个目标排列进行伪轮廓检测;
C)响应于在所述目标排列上的两个相邻的第一条带和第二条带之间检测到伪轮廓,至少基于所述第一条带的第一条带宽度预测所述第二条带的第二条带宽度;以及
D)对所述第二条带内的至少一部分像素进行像素插值处理以消除所述伪轮廓。
CN202011146132.7A 2020-10-23 2020-10-23 用于消除图像中的伪轮廓的方法、装置以及存储介质 Pending CN114494026A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011146132.7A CN114494026A (zh) 2020-10-23 2020-10-23 用于消除图像中的伪轮廓的方法、装置以及存储介质
US17/506,693 US20220130018A1 (en) 2020-10-23 2021-10-21 Method, device, and storage medium for removing false contours in an image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011146132.7A CN114494026A (zh) 2020-10-23 2020-10-23 用于消除图像中的伪轮廓的方法、装置以及存储介质

Publications (1)

Publication Number Publication Date
CN114494026A true CN114494026A (zh) 2022-05-13

Family

ID=81257371

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011146132.7A Pending CN114494026A (zh) 2020-10-23 2020-10-23 用于消除图像中的伪轮廓的方法、装置以及存储介质

Country Status (2)

Country Link
US (1) US20220130018A1 (zh)
CN (1) CN114494026A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117197518A (zh) * 2023-03-20 2023-12-08 广东技术师范大学 一种茶叶的病害程度识别方法和装置
CN117291807B (zh) * 2023-11-23 2024-03-15 广东匠芯创科技有限公司 图像去马赛克方法及其装置、电子设备、存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2675758C (en) * 2007-01-19 2015-05-19 Thomson Licensing Reducing contours in digital images
WO2009004863A1 (ja) * 2007-07-04 2009-01-08 Nec Corporation 画像処理装置、表示装置及び画像処理方法並びにそのプログラム

Also Published As

Publication number Publication date
US20220130018A1 (en) 2022-04-28

Similar Documents

Publication Publication Date Title
US9721330B2 (en) Temporal noise reduction method for noisy image and related apparatus
US10893283B2 (en) Real-time adaptive video denoiser with moving object detection
US11570398B2 (en) Image component detection
US7136538B2 (en) Noise reducing apparatus and noise reducing method
CN114494026A (zh) 用于消除图像中的伪轮廓的方法、装置以及存储介质
EP3018906B1 (en) Systems and methods for rectifying image artifacts
US7783124B2 (en) Method for reducing image noise
KR20170087278A (ko) 비디오 압축 영상을 위한 거짓 등고선 검출과 제거 방법 및 장치
US9569825B2 (en) Image processing device, monitoring camera, and image processing method
US20150117793A1 (en) Recursive de-banding filter for digital images
US8538193B2 (en) Methods and systems for image enhancement and estimation of compression noise
EP2641390B1 (en) Component filtering for low-light noise reduction
US10922792B2 (en) Image adjustment method and associated image processing circuit
US20090316049A1 (en) Image processing apparatus, image processing method and program
CN111583132A (zh) 一种去除遥感影像异常条带式噪声的方法、装置、设备及介质
US9818178B1 (en) Method and system for detection of ghosting artifact in a video
US9530191B2 (en) Methods and systems for detection and estimation of mosquito noise
JP6198114B2 (ja) 画像処理プログラム、画像処理方法及び画像処理装置
JP5247591B2 (ja) 画像処理装置及びその制御方法
CN113516608A (zh) 轮胎的缺陷检测方法和检测装置、轮胎检测设备
JP2007336075A (ja) ブロック歪み低減装置
CN110751603A (zh) 一种图像对比度的增强方法、***及终端设备
JP2002208006A (ja) 画像ノイズ減少方法
US8811766B2 (en) Perceptual block masking estimation system
US8351729B2 (en) Apparatus, method, and program for image correction

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