本发明涉及视频图像处理技术领域,尤其涉及一种色斑去除方法、装置及显示装置。
背景技术:
液晶电视的分辨率普遍较高,而广播系统提供的片源往往分辨率较低。在对低分辨率图像执行超分辨率解析时,可能出现部分像素点的显示颜色与实际颜色不符。当若干相邻像素点均错误地显示为同一颜色时,便会形成人眼可察觉到的色斑。比如,黑色衣服上出现绿色斑点,影响整体显示效果。
目前的色斑去除方法主要基于场景执行色斑去除。对部分典型应用场景具有较好的去除效果,但不可能适用于所有场景。导致部分场景色斑去除不彻底,或出现新的色斑,去除效果不佳。
技术实现要素:
本发明为了解决现有色斑去除效果不佳的问题,提出一种色斑去除方法、装置及显示装置,用以提升色斑去除效果。
为实现上述发明目的,本发明提供了如下技术方案:
第一方面,本发明提供一种色斑去除方法,所述方法包括:
确定图像中色斑所在区域;
从所述色斑所在区域中,识别各色斑像素点;
利用与所述各色斑像素点相邻的各非色斑像素点的像素值,更新所述各色斑像素点的像素值。
可选的,所述确定图像中色斑所在区域,包括:
若所述图像的平均亮度小于预设的第一亮度阈值,将所述图像划分成若干区域;
若当前区域的平均亮度小于所述第一亮度阈值,统计所述当前区域中亮度小于预设的第二亮度阈值的像素点的数量;
若所述数量占所述当前区域中像素点的总数量的比例大于预设的比例阈值,确定所述当前区域为色斑所在区域。
可选的,所述从所述色斑所在区域中,识别各色斑像素点,包括:
获取所述色斑所在区域中当前像素点的r值、b值、g值中的最大值和最小值;
若所述最大值小于预设的第一像素阈值,且g值小于预设的第二像素阈值,且所述最大值和所述最小值的第一差值大于预设的第一差值阈值,确定所述当前像素点为色斑像素点。
可选的,所述利用与所述各色斑像素点相邻的各非色斑像素点的像素值,更新所述各色斑像素点的像素值,包括:
从所述各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点;
获取所述各色斑像素点中的各非边缘色斑像素点的像素值的第一像素平均值,以及与所述各边缘色斑像素点相邻的各非色斑像素点的像素值的第二像素平均值;
若所述第一像素平均值与所述第二像素平均值的第二差值小于预设的第二差值阈值,利用所述第二像素平均值更新所述各色斑像素点的像素值;
若所述第二差值不小于所述第二差值阈值,利用所述第一像素平均值和所述第二像素平均值的平均值,更新所述各非边缘色斑像素点的像素值;并通过对所述各边缘色斑像素点执行边缘滤波,更新所述各边缘色斑像素点的像素值。
可选的,所述从所述各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点,包括:
获取当前色斑像素点的r值、b值、g值中的最大值对应的第一颜色;
分别获取与所述当前色斑像素点相邻的各像素点的r值、b值、g值中的最大值对应的第二颜色;
若获取的第二颜色中存在与所述第一颜色不同的第三颜色,分别获取各第三颜色所在像素点与所述当前色斑像素点的r值的差值、b值的差值、g值的差值中的最大差值;
若获取的最大差值中存在大于预设的第三差值阈值的差值,确定所述当前色斑像素点为边缘色斑像素点。
第二方面,本发明提供一种色斑去除装置,所述装置包括:
确定单元,用于确定图像中色斑所在区域;
识别单元,用于从所述色斑所在区域中,识别各色斑像素点;
更新单元,用于利用与所述各色斑像素点相邻的各非色斑像素点的像素值,更新所述各色斑像素点的像素值。
可选的,所述确定单元,具体用于若所述图像的平均亮度小于预设的第一亮度阈值,将所述图像划分成若干区域;若当前区域的平均亮度小于所述第一亮度阈值,统计所述当前区域中亮度小于预设的第二亮度阈值的像素点的数量;若所述数量占所述当前区域中像素点的总数量的比例大于预设的比例阈值,确定所述当前区域为色斑所在区域。
可选的,所述识别单元,具体用于获取所述色斑所在区域中当前像素点的r值、b值、g值中的最大值和最小值;若所述最大值小于预设的第一像素阈值,且g值小于预设的第二像素阈值,且所述最大值和所述最小值的第一差值大于预设的第一差值阈值,确定所述当前像素点为色斑像素点。
可选的,所述更新单元,具体用于从所述各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点;
获取所述各色斑像素点中的各非边缘色斑像素点的像素值的第一像素平均值,以及与所述各边缘色斑像素点相邻的各非色斑像素点的像素值的第二像素平均值;
若所述第一像素平均值与所述第二像素平均值的第二差值小于预设的第二差值阈值,利用所述第二像素平均值更新所述各色斑像素点的像素值;
若所述第二差值不小于所述第二差值阈值,利用所述第一像素平均值和所述第二像素平均值的平均值,更新所述各非边缘色斑像素点的像素值;并通过对所述各边缘色斑像素点执行边缘滤波,更新所述各边缘色斑像素点的像素值。
可选的,所述更新单元从所述各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点,包括:
获取当前色斑像素点的r值、b值、g值中的最大值对应的第一颜色;
分别获取与所述当前色斑像素点相邻的各像素点的r值、b值、g值中的最大值对应的第二颜色;
若获取的第二颜色中存在与所述第一颜色不同的第三颜色,分别获取各第三颜色所在像素点与所述当前色斑像素点的r值的差值、b值的差值、g值的差值中的最大差值;
若获取的最大差值中存在大于预设的第三差值阈值的差值,确定所述当前色斑像素点为边缘色斑像素点。
第三方面,本发明提供一种机器可读存储介质,所述机器可读存储介质内存储有机器可执行指令,所述机器可执行指令被处理器执行时实现上述色斑去除方法。
第四方面,本发明提供一种显示装置,所述装置包括处理器和上述机器可读存储介质,或上述色斑去除装置。
由以上描述可以看出,本发明实施例首先确定图像中色斑所在区域,再从色斑所在区域中识别色斑像素点,利用与色斑像素点相邻的非色斑像素点的像素值更新色斑像素点的像素值。以实现自动检测色斑,并实时修复。可有效去除色斑,提升画质效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例示出的一种色斑去除方法流程图;
图2是本发明实施例示出的步骤101的实现流程;
图3是本发明实施例示出的步骤102的实现流程;
图4是本发明实施例示出的步骤103的实现流程;
图5是本发明实施例示出的步骤401的实现流程;
图6a是本发明实施例示出的区域划分示意图;
图6b是本发明实施例示出的区域606中各像素点的示意图;
图6c是本发明实施例示出的p2与相邻像素点的示意图;
图6d是本发明实施例示出的色斑像素点与相邻非色斑像素点的示意图;
图7是本发明实施例示出的一种色斑去除装置的结构示意图;
图8是本发明实施例示出的一种显示装置的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,协商信息也可以被称为第二信息,类似地,第二信息也可以被称为协商信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本发明实施例提供一种色斑去除方法,该方法首先确定图像中色斑所在区域,再从色斑所在区域中识别色斑像素点,利用与色斑像素点相邻的非色斑像素点的像素值更新色斑像素点的像素值。以实现自动检测色斑,并实时修复。可有效去除色斑,提升画质效果。
为了使本发明实施例的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明实施例执行详细描述:
参见图1,为本发明实施例提供的色斑去除方法流程图。
如图1所示,该流程可包括以下步骤:
步骤101,确定图像中色斑所在区域。
本步骤可缩小色斑识别范围。
确定色斑所在区域的过程在下文中描述,这里暂不赘述。
步骤102,从色斑所在区域中,识别各色斑像素点。
识别色斑像素点的过程在下文中描述,这里暂不赘述。
步骤103,利用与各色斑像素点相邻的各非色斑像素点的像素值,更新各色斑像素点的像素值。
更新各色斑像素点的像素值的过程在下文中描述,这里暂不赘述。
至此,完成图1所示流程。
通过图1所示流程可以看出,本发明实施例可自动识别图像中的色斑,并利用色斑周围像素点(非色斑像素点)的像素值修复色斑像素点的像素值。从而有效去除图像中的色斑,提升画质效果。
下面对步骤101中确定图像中色斑所在区域的过程进行描述。参见图2,为本发明实施例示出的步骤101的实现流程。
如图2所示,该流程可包括以下步骤:
步骤201,若图像的平均亮度小于预设的第一亮度阈值,将图像划分成若干区域。
需要说明的是,色斑通常出现在亮度较暗的图像中。
若当前图像整体亮度较高(图像的平均亮度不小于第一亮度阈值),则认为当前图像中不存在色斑,不执行后续的色斑处理。
若图像的平均亮度小于第一亮度阈值,则认为当前图像中可能存在色斑,需要进一步确定色斑在图像中的位置。为此,本发明实施例将图像划分成若干区域,基于区域继续检测。
这里,第一亮度阈值只是为便于描述而进行的命名,并非用于限定。
步骤202,若当前区域的平均亮度小于第一亮度阈值,统计当前区域中亮度小于预设的第二亮度阈值的像素点的数量。
若当前区域的整体亮度较高(平均亮度不小于第一亮度阈值),则认为当前区域中不存在色斑,不执行后续的色斑处理。
若当前区域的平均亮度小于第一亮度阈值,则初步认为当前区域中存在色斑。本发明实施例进一步统计当前区域中亮度小于第二亮度阈值的像素点的数量。这里,第二亮度阈值只是为便于描述而进行的命名,并非用于限定。
步骤203,若亮度小于第二亮度阈值的像素点的数量占当前区域中像素点的总数量的比例大于预设的比例阈值,确定当前区域为色斑所在区域。
即当前区域中亮度较暗的像素点较多时,认为当前区域为色斑所在区域。
至此,完成图2所示流程。
通过图2所示流程可以看出,本发明实施例基于亮度确定色斑所在区域,不断缩小色斑搜索范围。
下面对步骤102中识别各色斑像素点的过程进行描述。参见图3,为本发明实施例示出的步骤102的实现流程。
如图3所示,该流程可包括以下步骤:
步骤301,获取色斑所在区域中当前像素点的r(红色)值、b(蓝色)值、g(绿色)值中的最大值和最小值。
比如,当前像素点的r值为125,b值为80,g值为15,则最大值max(r,b,g)为125,最小值min(r,b,g)为15。
步骤302,若最大值小于预设的第一像素阈值,且g值小于预设的第二像素阈值,且最大值和最小值的第一差值大于预设的第一差值阈值,确定当前像素点为色斑像素点。
这里,第一像素阈值、第二像素阈值、第一差值、第一差值阈值只是为便于描述而进行的命名,并非用于限定。
其中,最大值小于第一像素阈值,且g值小于第二像素阈值,说明当前像素点的亮度较暗;最大值和最小值的第一差值大于第一差值阈值,说明当前像素点的饱和度较高。即亮度较暗且饱和度较高的像素点为色斑像素点。
至此,完成图3所示流程。
通过图3所示流程可以看出,本发明实施例利用色斑所具有的亮度暗且饱和度高的特点,从色斑所在区域中,识别形成色斑的各像素点(即色斑像素点)。
下面对步骤103中更新各色斑像素点的像素值的过程进行描述。参见图4,为本发明实施例示出的步骤103的实现流程。
如图4所示,该流程可包括以下步骤:
步骤401,从各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点。
识别边缘色斑像素点的过程在下文中描述,这里暂不赘述。
步骤402,获取各色斑像素点中的各非边缘色斑像素点的像素值的第一像素平均值,以及与各边缘色斑像素点相邻的各非色斑像素点的像素值的第二像素平均值。
这里,非边缘色斑像素点是指色斑像素点中除边缘色斑像素点以外的像素点,即位于色斑内部而非边缘的像素点。
其中,第一像素平均值是各非边缘色斑像素点的像素值的平均值;第二像素平均值是与各边缘色斑像素点相邻的各非色斑像素点的像素值的平均值。这里,第一像素平均值、第二像素平均值只是为便于描述而进行的命名,并非用于限定。
步骤403,判断第一像素平均值与第二像素平均值的第二差值是否小于预设的第二差值阈值。若是,转步骤404;若否,转步骤405。
这里,第二差值、第二差值阈值只是为便于描述而进行的命名,并非用于限定。
需要说明的是,若第二差值小于第二差值阈值,说明色斑内像素点的像素值与色斑周围像素点的像素值差距不大;反之,说明色斑内像素点的像素值与色斑周围像素点的像素值差距较大。
步骤404,利用第二像素平均值更新各色斑像素点的像素值。
即利用色斑周围像素点的像素值的平均值(第二像素平均值),更新所有色斑像素点的像素值。
步骤405,利用第一像素平均值和第二像素平均值的平均值,更新各非边缘色斑像素点的像素值;并对各边缘色斑像素点的像素值执行边缘滤波。
即利用色斑内像素点的像素值与色斑周围像素点的像素值的平均值,更新所有非边缘色斑像素点的像素值。对边缘色斑像素点则执行滤波(比如,高斯滤波)处理,以达到平滑过渡的效果。
需要补充说明的是,本发明实施例对色斑像素点的r值、b值、g值分别执行上述步骤402~步骤405。即本发明实施例中的像素值包括r值、b值、g值。
至此,完成图4所示流程。
通过图4所示流程可实现对色斑的修复。
下面对步骤401中识别边缘色斑像素点的过程进行描述。参见图5,为本发明实施例示出的步骤401的实现流程。
如图5所示,该流程可包括以下步骤:
步骤501,获取当前色斑像素点的r值、b值、g值中的最大值对应的第一颜色。
这里,第一颜色只是为便于描述而进行的命名,并非用于限定。
比如,当前色斑像素点的r值为125,b值为80,g值为15,则最大值max(r,b,g)为125,则当前色斑像素点的最大值对应的颜色为红色。即确定当前色斑像素点的主基色。
步骤502,分别获取与当前色斑像素点相邻的各像素点的r值、b值、g值中的最大值对应的第二颜色。
这里,第二颜色只是为便于描述而进行的命名,并非用于限定。
比如,与当前色斑像素点相邻的像素点有8个,则分别计算8个像素点各自的最大值对应的颜色。即确定与当前色斑像素点相邻的像素点的主基色。
步骤503,若获取的第二颜色中存在与第一颜色不同的第三颜色,分别确定各第三颜色所在像素点与当前色斑像素点的r值的差值、b值的差值、g值的差值中的最大差值。
这里,第三颜色只是为便于描述而进行的命名,并非用于限定。
比如,当前色斑像素点对应的第一颜色为红色;与当前色斑像素点相邻的8个像素点中,有5个像素点对应的第二颜色为红色,有3个像素点对应的第二颜色为绿色;则8个第二颜色中,与第一颜色不同的第三颜色为绿色。
以其中一个第三颜色为绿色的像素点为例。比如,该第三颜色为绿色的像素点的r值为65、b值为80、g值为200;当前色斑像素点的r值为125、b值为80、g值为15;则这两个像素点的r值的差值△r为60、b值的差值△b为0、g值的差值△g为185,最大差值max(△r,△b,△g)为185。
步骤504,若获取的最大差值中存在大于预设的第三差值阈值的差值,确定当前色斑像素点为边缘色斑像素点。
这里,第三差值阈值只是为便于描述而进行的命名,并非用于限定。
即当前色斑像素点周围存在主基色不同且像素值差距较大的像素点,因此,确定当前色斑像素点为边缘色斑像素点。
至此,完成图5所示流程。
通过图5所示流程可确定色斑像素点中的边缘色斑像素点。
下面通过具体实施例对本发明实施例提供的方法进行描述:
当前输入图像,记为图像600。若图像600的平均亮度小于第一亮度阈值tl1,则将图像600划分成若干区域。参见图6a,为本发明实施例示出的区域划分示意图。
分别获取每一个区域(区域601~区域608)的平均亮度。以区域606为例,若该区域的平均亮度小于第一亮度阈值tl1,则统计该区域中亮度小于第二亮度阈值tl2的像素点的数量,记为n1。若n1占区域606中像素点总数量n2的比例大于比例阈值tb,则确定区域606为色斑所在区域。
对区域606中的每一个像素点执行如下操作:以其中的一个像素点p1(图6a中未示出)为例。p1的r值为125、b值为80、g值为15,则最大值max(r,b,g)为125,最小值min(r,b,g)为15。若预设第一像素阈值为135,第二像素阈值为20,第一差值阈值为100,则可知p1的max(r,b,g)小于第一像素阈值(135),且g值小于第二像素阈值(20),且max(r,b,g)-min(r,b,g)=110大于第一差值阈值(100),则确定p1为色斑像素点。参见图6b,为区域606中各像素点的示意图。其中,黑色像素点表示检测出的色斑像素点。
对图6b中每一个色斑像素点执行如下操作:以像素点p2为例。若p2的r值为125,b值为80,g值为15,则最大值max(r,b,g)为125,即确定p2的主基色为红色。同理,可确定与p2相邻的像素点(p21~p28)的主基色。参见图6c,为p2与相邻像素点的示意图。若像素点p24~p28的主基色与p2相同,像素点p21~p23的主基色与p2不同,则对p21~p23分别执行一下操作:
以像素点p21为例。若p21的r值为65、b值为80、g值为200,则计算p21与p2之间的△r为60、△b为0、△g为185,max(△r,△b,△g)为185。同理,可分别得到p22与p2之间的max(△r,△b,△g),以及p23与p2之间的max(△r,△b,△g)。
若预设的最大差值阈值为120,则由于p21~p23中存在与p2之间的max(△r,△b,△g)大于最大差值阈值的像素点(比如,p21),因此,可确定p2为位于色斑边缘的像素点(即边缘色斑像素点)。同理,可确定其它边缘色斑像素点。
参见图6d,为色斑像素点与相邻非色斑像素点的示意图。其中,黑色像素点为色斑像素点,白色像素点为与色斑像素点相邻的非色斑像素点(比如,p3),与白色像素点相邻的黑色像素点为边缘色斑像素点(比如,p4),除边缘色斑像素点以外的色斑像素点为非边缘色斑像素点(比如,p5)。
获取图6d中所有非边缘色斑像素点的像素值的平均值v1,以及图6d中所有非色斑像素点的像素值的平均值v2。若v1与v2的差值小于预设的差值阈值tv,则直接将图6d中所有色斑像素点的像素值更新为v2;若v1与v2的差值不小于tv,则将图6d中所有非边缘色斑像素点的像素值更新为(v1+v2)/2,并对图6d中所有边缘色斑像素点执行边缘滤波,以更新边缘色斑像素点的像素值。
至此,完成对本具体实施例的描述。
以上对本发明实施例提供的方法进行了描述,下面对本发明实施例提供的装置进行描述:
参见图7,为本发明实施例提供的装置的结构示意图。该路由报文转发装置包括:确定单元701、识别单元702以及更新单元703,其中:
确定单元701,用于确定图像中色斑所在区域;
识别单元702,用于从所述色斑所在区域中,识别各色斑像素点;
更新单元703,用于利用与所述各色斑像素点相邻的各非色斑像素点的像素值,更新所述各色斑像素点的像素值。
作为一个实施例,所述确定单元701,具体用于若所述图像的平均亮度小于预设的第一亮度阈值,将所述图像划分成若干区域;若当前区域的平均亮度小于所述第一亮度阈值,统计所述当前区域中亮度小于预设的第二亮度阈值的像素点的数量;若所述数量占所述当前区域中像素点的总数量的比例大于预设的比例阈值,确定所述当前区域为色斑所在区域。
作为一个实施例,所述识别单元702,具体用于获取所述色斑所在区域中当前像素点的r值、b值、g值中的最大值和最小值;若所述最大值小于预设的第一像素阈值,且g值小于预设的第二像素阈值,且所述最大值和所述最小值的第一差值大于预设的第一差值阈值,确定所述当前像素点为色斑像素点。
作为一个实施例,所述更新单元703,具体用于从所述各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点;
获取所述各色斑像素点中的各非边缘色斑像素点的像素值的第一像素平均值,以及与所述各边缘色斑像素点相邻的各非色斑像素点的像素值的第二像素平均值;
若所述第一像素平均值与所述第二像素平均值的第二差值小于预设的第二差值阈值,利用所述第二像素平均值更新所述各色斑像素点的像素值;
若所述第二差值不小于所述第二差值阈值,利用所述第一像素平均值和所述第二像素平均值的平均值,更新所述各非边缘色斑像素点的像素值;并通过对所述各边缘色斑像素点执行边缘滤波,更新所述各边缘色斑像素点的像素值。
作为一个实施例,所述更新单元703从所述各色斑像素点中,识别位于色斑边缘的各边缘色斑像素点,包括:
获取当前色斑像素点的r值、b值、g值中的最大值对应的第一颜色;
分别获取与所述当前色斑像素点相邻的各像素点的r值、b值、g值中的最大值对应的第二颜色;
若获取的第二颜色中存在与所述第一颜色不同的第三颜色,分别获取各第三颜色所在像素点与所述当前色斑像素点的r值的差值、b值的差值、g值的差值中的最大差值;
若获取的最大差值中存在大于预设的第三差值阈值的差值,确定所述当前色斑像素点为边缘色斑像素点。
至此,完成图7所示装置的描述。本发明实施例可自动识别图像中的色斑,并利用色斑周围像素点(非色斑像素点)的像素值修复色斑像素点的像素值。从而有效去除图像中的色斑,提升画质效果。
下面对本发明实施例提供的终端进行描述:
参见图8,为本发明实施例提供的一种显示装置的硬件结构示意图。该装置可包括处理器801、存储有机器可执行指令的机器可读存储介质802。处理器801与机器可读存储介质802可经由系统总线803通信。并且,通过读取并执行机器可读存储介质802中与色斑去除逻辑对应的机器可执行指令,处理器801可执行上文描述的色斑去除方法。
本文提到的机器可读存储介质802可以是任何电子、磁性、光学或其他物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,所述机器可读存储介质802可以包括如下至少一个种存储介质:易失存储器、非易失性存储器、其它类型存储介质。其中,易失性存储器可为ram(randomaccessmemory,随机存取存储器),非易失性存储器可为闪存、存储驱动器(如硬盘驱动器)、固态硬盘、存储盘(如光盘、dvd等)。
本发明实施例还提供一种包括机器可执行指令的机器可读存储介质,例如图8中的机器可读存储介质802,所述机器可执行指令可由显示装置中的处理器801执行,以实现以上描述的色斑去除方法。
至此,完成图8所示显示装置的描述。
以上所述仅为本发明实施例的较佳实施例而已,并不用以限制本发明,凡在本发明实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。