图片检测方法和装置与流程

文档序号:11063953阅读:562来源:国知局
图片检测方法和装置与制造工艺

本申请涉及图像处理技术领域,尤其涉及一种图片检测方法和装置。



背景技术:

图片的纯色背景是指图片的背景颜色单一,无复杂的纹理或者颜色变化。在实际应用场景下,需要检测出图片的背景颜色,并根据背景颜色是否是纯色进行后续处理。

现有技术中缺乏有效的纯色背景图片的检测方法。



技术实现要素:

本申请旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本申请的一个目的在于提出一种图片检测方法,该方法可以有效的检测出纯色背景图片。

本申请的另一个目的在于提出一种图片检测装置。

为达到上述目的,本申请第一方面实施例提出的图片检测方法,包括:对待检测图片进行图像分割,得到多个图像子块;获取预设范围内的图像子块的颜色值,并根据颜色值进行聚类,根据聚类结果确定待检测图片的背景色;在图像分割后得到的多个图像子块中,选择颜色值与所述背景色的距离小于预设距离值的一个或多个图像子块;计算所述选择的图像子块包含的像素点总数与待检测图片包含的像素点总数的比值;根据所述比值判断待检测图片是否为纯色背景图片。

本申请第一方面实施例提出的图片检测方法,通过进行图像分割、聚类和计算比值,可以有效的检测出纯色背景图片,方便后续处理。

为达到上述目的,本申请第二方面实施例提出的图片检测装置,包括:分割模块,用于对待检测图片进行图像分割,得到多个图像子块;聚类模块,用于获取预设范围内的图像子块的颜色值,并根据颜色值进行聚类,根据聚类结果确定待检测图片的背景色;选择模块,用于在图像分割后得到的多个图像子块中,选择颜色值与所述背景色的距离小于预设距离值的一个或多个图像子块;计算模块,用于计算所述选择的图像子块包含的像素点总数与待检测图片包含的像素点总数的比值;第一判断模块,用于根据所述比值判断待 检测图片是否为纯色背景图片。

本申请第二方面实施例提出的图片检测装置,通过进行图像分割、聚类和计算比值,可以有效的检测出纯色背景图片,方便后续处理。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1是本申请一实施例提出的图片检测方法的流程示意图;

图2是本申请实施例中判断待检测图片的背景颜色是否为特定颜色的流程示意图;

图3是本申请另一实施例提出的图片检测方法的流程示意图;

图4是本申请实施例中检测出的一张背景颜色是特定颜色的图片的示意图;

图5是本申请实施例中计算纯色背景分数的流程示意图;

图6是本申请实施例中检测出的一张纯色背景图片的示意图;

图7是本申请实施例中检测出的一张非纯色背景图片的示意图;

图8是本申请另一实施例提出的图片检测装置的结构示意图;

图9是本申请另一实施例提出的图片检测装置的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的模块或具有相同或类似功能的模块。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。

图1是本申请一实施例提出的图片检测方法的流程示意图,该方法包括:

S11:对待检测图片进行图像分割,得到多个图像子块。

在图像分割之前,可以先判断待检测图片的背景颜色是否是特定颜色,在不是特定颜色时再进行图像分割。

其中,特定颜色可以预先设置。

一些实施例中,参见图2,判断待检测图片的背景颜色是否为特定颜色,可以包括:

S21:分别判断待检测图片的四条边中的每条边的颜色是否为特定颜色。

参见图3,判断每条边的颜色是否为特定颜色,可以包括:

S31:分别将待检测图片的四条边中的每条边作为当前检测的边,对应当前检测的边,扫描当前检测的边对应的N行像素点的像素值,其中,N是预设值。

例如,N为3,则分别扫描4条边中每条边的3行像素点的像素值。

S32:根据扫描得到的像素点的像素值,确定在特定颜色范围内的像素点所占的比例。

其中,可以预先设置一个阈值T,如果一个像素点的像素值与特定颜色的数值之间的差值的绝对值小于或等于T,则确定该像素点在特定颜色范围内。之后,可以计算出每个边上在特定颜色范围内的像素点的总数M1,以及,该边上扫描得到的所有像素点的总数M2,则在特定颜色范围内的像素点所占的比例是M1/M2。

S33:如果所述比例大于或等于预设比例值,则确定当前检测的边是特定颜色。

例如,预设比例值是75%,则在特定颜色范围内的像素点所占的比例大于或等于75%时,则可以确定当前检测的边是特定颜色。

S22:根据判断结果确定特定颜色的边的个数,当所述个数大于或等于预设个数值时,判断出待检测图片的背景颜色是特定颜色。

例如,预设个数值为3,则当特定颜色的边的个数为3或4时,判断出待检测图片的背景颜色是特定颜色。否则,当特定颜色的边的个数小于预设个数值时,确定待检测图片的背景颜色不是特定颜色。

例如,参见图4,是一张背景颜色是特定颜色,且特定颜色是白色的图片。

参见图3,在判断当前检测的边是否为特定颜色后,可以确定特定颜色的边的个数(S34),并根据该个数判断待检测图片的背景颜色是否是特定颜色(S35)。

以图像分割是超像素分割为例,在超像素分割时,可以采用简单线性迭代聚类(Simple linear iterative clustering,SLIC)方法进行超像素分割,或者,也可以采用SEEDS方法、Turbopixel方法等进行超像素分割。本实施例以采用SLIC方法进行超像素分割为例。

在采用SLIC方法进行超像素分割时,首先将图像数据由初始色彩空间转为CIELAB色彩空间,加上归一化后像素点位置,形成5维数据空间;选择规定栅格距离S的K个聚类中心Ck=[lk,ak,bk,xk,yk]T;计算聚类中心周围2S×2S范围内数据点到聚类中心的距离,将数据点划入最近的聚类中。

其中,l,a,b是像素点在Lab颜色空间的取值,x,y是像素点的横坐标和纵坐标。

在以上过程中,距离Ds的计算公式为:

其中,m为紧密因数。

S12:获取预设范围内的图像子块的颜色值,并根据颜色值进行聚类,根据聚类结果确定待检测图片的背景色;

其中,以图像子块是超像素分割后得到的超像素块为例,预设范围内的超像素块例如为邻近待检测图片的四边的超像素块。

超像素块的颜色值可以具体是指lab颜色平均值,lab颜色平均值的计算公式为:

聚类算法例如为kmeans聚类,kmeans聚类例如选择k=2,数据维度为3。

根据聚类结果确定待检测图片的背景色例如包括:将包含数据点数目最多的聚类中心的颜色值确定为待检测图片的背景色(LB,aB,bB)。

S13:在图像分割后得到的多个图像子块中,选择颜色值与所述背景色的距离小于预设距离值的一个或多个图像子块。

S14:计算所述选择的图像子块包含的像素点总数与待检测图片包含的像素点总数的比值。例如,参见图5,以超像素块为例,S13-S14可以具体包括:

S51:在超像素分割后得到的超像素块中获取满足预设条件的超像素块,并获取满足预设条件的超像素块包含的像素点总数,其中,预设条件是颜色值与背景色的距离小于预设距离值。

例如,满足预设条件的超像素块是指满足如下公式的超像素块:

其中θ为预设距离值,若超像素块的lab颜色平均值与待检测图片的背景色的距离小于θ,则判断出该超像素块颜色与待检测图片的背景色相同。例如,阈值θ设为100。

在获取满足预设条件的超像素块后,可以将这些超像素块包含的像素点进行相加,得到满足预设条件的超像素块包含的像素点总数pθ

S52:计算满足预设条件的超像素块包含的像素点总数与待检测图片包含的像素点总数的比值。

例如,该比值可以称为纯色背景分数,因此,待检测图片的纯色背景分数pr的计算公 式是:

pr=pθ/pall

其中,pall为待检测图片包含的像素点总数。

S15:根据所述比值判断待检测图片是否为纯色背景图片。

例如,当该比值大于预设分数值时,则确定待检测图片是纯色背景图片,否则,确定待检测图片不是纯色背景图片。

例如,预设分数值选择为0.3。

例如,参见图6,是一张纯色背景图片,参见图7,是一张非纯色背景图片。

进一步的,参见图3,还可以包括:

对背景颜色是特定颜色的图片进行过滤处理(S36),和/或,对纯色背景图片进行过滤处理(S37)。另外,当图片的背景颜色不是特定颜色,且图片不是纯色背景图片时,则可以按照正常图片处理(S38),如保存正常图片。

本实施例中,通过进行图像分割、聚类和计算比值,可以有效的检测出纯色背景图片,方便后续处理。另外,还可以检测出特定颜色的图片。

图8是本申请另一实施例提出的图片检测装置的结构示意图,该装置80包括:分割模块81、聚类模块82、选择模块83、计算模块84和第一判断模块85。

分割模块81,用于对待检测图片进行图像分割,得到多个图像子块;

一些实施例中,参见图9,该装置还可以包括:

第二判断模块86,用于判断待检测图片的背景颜色是否为特定颜色,以便在不是特定颜色时,触发分割模块对待检测图片进行图像分割。

其中,特定颜色可以预先设置。

参见图9,所述第二判断模块包括:

第一单元861,用于分别判断待检测图片的四条边中的每条边的颜色是否为特定颜色;

可选的,所述第一单元具体用于:

分别将待检测图片的四条边中的每条边作为当前检测的边,对应当前检测的边,扫描当前检测的边对应的N行像素点的像素值,其中,N是预设值;

例如,N为3,则分别扫描4条边中每条边的3行像素点的像素值。

根据扫描得到的像素点的像素值,确定在特定颜色范围内的像素点所占的比例;

其中,可以预先设置一个阈值T,如果一个像素点的像素值与特定颜色的数值之间的差值的绝对值小于或等于T,则确定该像素点在特定颜色范围内。之后,可以计算出 每个边上在特定颜色范围内的像素点的总数M1,以及,该边上扫描得到的所有像素点的总数M2,则在特定颜色范围内的像素点所占的比例是M1/M2。

如果所述比例大于或等于预设比例值,则确定当前检测的边是特定颜色。

例如,预设比例值是75%,则在特定颜色范围内的像素点所占的比例大于或等于75%时,则可以确定当前检测的边是特定颜色。

第二单元862,用于根据判断结果确定特定颜色的边的个数,当所述个数大于或等于预设个数值时,判断出待检测图片的背景颜色是特定颜色。

例如,预设个数值为3,则当特定颜色的边的个数为3或4时,判断出待检测图片的背景颜色是特定颜色。

以图像分割是超像素分割为例,在超像素分割时,可以采用简单线性迭代聚类(Simple linear iterative clustering,SLIC)方法进行超像素分割,或者,也可以采用SEEDS方法、Turbopixel方法等进行超像素分割。本实施例以采用SLIC方法进行超像素分割为例。

在采用SLIC方法进行超像素分割时,首先将图像数据由初始色彩空间转为CIELAB色彩空间,加上归一化后像素点位置,形成5维数据空间;选择规定栅格距离S的K个聚类中心Ck=[lk,ak,bk,xk,yk]T;计算聚类中心周围2S×2S范围内数据点到聚类中心的距离,将数据点划入最近的聚类中。其中,l,a,b是像素点在Lab颜色空间的取值,x,y是像素点的横坐标和纵坐标。

在以上过程中,距离Ds的计算公式为:

其中,m为紧密因数。

聚类模块82,用于获取预设范围内的图像子块的颜色值,并根据颜色值进行聚类,根据聚类结果确定待检测图片的背景色;

其中,以图像子块是超像素分割后得到的超像素块为例,预设范围内的超像素块例如为邻近待检测图片的四边的超像素块。

超像素块的颜色值可以具体是指lab颜色平均值,lab颜色平均值的计算公式为:

聚类算法例如为kmeans聚类,kmeans聚类例如选择k=2,数据维度为3。

可选的,聚类模块用于根据聚类结果确定待检测图片的背景色,包括:

将包含数据点数目最多的聚类中心的颜色值确定为待检测图片的背景色。

选择模块83,用于在图像分割后得到的多个图像子块中,选择颜色值与所述背景色的距离小于预设距离值的一个或多个图像子块;

计算模块84,用于计算所述选择的图像子块包含的像素点总数与待检测图片包含的像素点总数的比值;

例如,以超像素块为例,选择模块具体用于:

在超像素分割后得到的超像素块中获取满足预设条件的超像素块,并获取满足预设条件的超像素块包含的像素点总数,其中,预设条件是颜色值与背景色的距离小于预设距离值;

例如,满足预设条件的超像素块是指满足如下公式的超像素块:

其中θ为预设距离值,若超像素块的lab颜色平均值与待检测图片的背景色的距离小于θ,则判断出该超像素块颜色与待检测图片的背景色相同。例如,阈值θ设为100。

在获取满足预设条件的超像素块后,可以将这些超像素块包含的像素点进行相加,得到满足预设条件的超像素块包含的像素点总数pθ

相应的,计算模块具体用于:计算满足预设条件的超像素块包含的像素点总数与待检测图片包含的像素点总数的比值。

例如,该比值可以称为纯色背景分数,因此,待检测图片的纯色背景分数pr的计算公式是:

pr=pθ/pall

其中,pall为待检测图片包含的像素点总数。

第二判断模块85,用于根据所述比值判断待检测图片是否为纯色背景图片。

例如,第二判断模块具体用于:

当所述比值大于预设分数值时,确定待检测图片是纯色背景图片。

例如,当纯色背景分数大于预设分数值时,则确定待检测图片是纯色背景图片,否则,确定待检测图片不是纯色背景图片。

例如,预设分数值选择为0.3。

一些实施例中,参见图9,该装置还包括:

处理模块87,用于对背景颜色是特定颜色的图片进行过滤处理,和/或,对纯色背景图片进行过滤处理。

另外,当图片的背景颜色不是特定颜色,且图片不是纯色背景图片时,则可以按照正常图片处理,如保存正常图片。

本实施例中,通过进行图像分割、聚类和计算比值,可以有效的检测出纯色背景图片,方便后续处理。另外,还可以检测出特定颜色的图片。

需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点 包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1