一种垃圾图片识别方法和装置的制作方法

文档序号:6370371阅读:230来源:国知局
专利名称:一种垃圾图片识别方法和装置的制作方法
技术领域
本发明涉及图片处理技术领域,特别是涉及一种垃圾图片识别方法和装置。
背景技术
随着互联网技术的发展,博客、微博、贴吧、SNS(Social Network Site,社交网站)得到了快速的发展,为人们传播、交流各种信息提高了广泛的平台。互联网为信息的传播和获取带来了便利,但随之而来的是垃圾信息的泛滥。垃圾信息传播快速,且形式多样,内容多以中奖、诈骗、广告、色情信息为主,其存在严重影响了用户体验。随着服务运营商对反垃圾领域的持续投入,部分垃圾信息从传统的文本信息转换为图片信息,给服务运营商识别垃圾信息带来了一定的难度。如何快速、准确地识别出垃圾图片已经成为一个重要的技术问题。 现有技术中存在几种识别垃圾图片的方法。其中一种是通过计算待识别图片MD5(Message Digest Algorithm MD5,中文名称为消息摘要算法第五版,一种散列函数)值,将待识别图片的MD5值与相应的垃圾图片库中的MD5值进行匹配的方式来识别垃圾图片。这种方式在垃圾图片库足够大的情况下,可以快速、准确地对垃圾图片进行识别。但是这种方法对图片变动的适应性非常差,垃圾图片制造者只需要对图片做一些小的变化,获取的待识别图片MD5值就会不同,则无法对垃圾图片进行有效的识别。现有技术还存在另外一些方法,这些方法首先提取各类图片特征,例如几何矩、复数矩、颜色直方图等,然后利用获取的图片特征到已经训练完成的模型里进行分类操作来判断该图片是否为垃圾图片。这些方法的缺点是大部分计算量较大,并且识别的准确率较低。另一方面,这些方法对垃圾图片变动的适应性也普遍比较差,比如两张图片里面的垃圾信息基本保持不变,但是图片的背景颜色、图片中的文字大小等发生变化,如果一张图片已经在训练库中,另外一张图片是待识别的图片,则还是较难获取准确的识别结果,因此这些方法也不是理想的垃圾图片识别方法。

发明内容
为解决上述技术问题,本发明实施例提供了一种垃圾图片识别方法和装置,可以快速、准确、有效地识别出垃圾图片。技术方案如下—方面,本发明实施例公开了一种垃圾图片识别方法,所述方法包括获取待识别图片的图片特征;对所述图片特征进行切分,生成图片特征序列;将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合;所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征;
分别计算待识别图片与所述垃圾图片集合中的各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。优选地,在获取待识别图片的图片特征之前,所述方法还包括对待识别图片进行预处理,将所述待识别图片进行灰度化以及二值化处理,并将其转换为预设的格式。优选地,所述获取待识别图片的图片特征包括对待识别图片进行图像布局分析,获取文本元素区域轮廓;对待识别图片进行膨胀腐蚀处理,获取文本元素的连续区域;对待识别图片进行滤波处理,获取所述文本元素的连续区域中的文本形状特征;利用所述文本形状特征对待识别图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为待识别图片的图片特征。优选地,所述方法还包括获取垃圾图片库中的所有图片的图片特征,建立垃圾图片特征库。优选地,所述方法还包括为所述垃圾图片特征库建立倒排索引,所述倒排索引由哈希表组成,所述哈希表以连续两个图片特征组成的特征组合为键、以包含所述特征组合的垃圾图片的图片标识以及特征组合在图片特征序列中的出现次数两项信息的链表为值;其中,所述图片标识为垃圾图片在垃圾图片特征库的唯一标识。
优选地,所述将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存在垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合包括获取图片特征序列中任意连续两个图片特征作为当前特征组合;将所述当前特征组合与所述倒排索引中的特征组合进行查找比对;判断所述倒排索引中是否存在所述特征组合;如果不存在,进入获取待识别图片的图片特征序列中未处理的连续两个图片特征的步骤;如果存在,获取与所述特征组合对应的所有垃圾图片标识;获取待识别图片的图片特征序列中未处理的连续两个图片特征,将其作为当前特征组合,进入将所述特征组合与倒排索引中的特征组合进行比对的步骤,直到处理完待识别图片的图片特征序列中的所有特征组合;根据获取的所有垃圾图片的图片标识确定垃圾图片集合。优选地,所述将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存在垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合包括获取图片特征序列中任意连续两个图片特征作为当前特征组合,将所述当前特征组合与所述倒排索引中的特征组合进行比对,判断所述倒排索引中是否存在所述特征组合;如果存在,获取与所述特征组合对应的所有垃圾图片标识,确定垃圾图片集合,并进入计算待识别图片与所述垃圾图片集合中的各垃圾图片的相似度值的步骤;
如果不存在,获取待识别图片的图片特征序列未处理的连续两个图片特征,将其作为当前特征组合,进入将所述当前特征组合与倒排索引中的特征组合进行比对的步骤。优选地,所述方法还包括当判断所述相似度值都小于设定阈值时,获取待识别图片的图片特征序列中未处理的连续两个图片特征序列作为特征组合,进行迭代处理,直到任意一条相似度值大于设定阈值,停止迭代处理。优选地,所述待识别图片与所述垃圾图片集合中的其中一张垃圾图片的相似度值通过以下方法得到 获取待识别图片与所述垃圾图片具有的共同特征组合的个数;获取待识别图片与所述垃圾图片的特征组合总数与共同特征组合数之间的差值;将所述共同特征组合数与所述差值的比值作为待识别图片与所述垃圾图片的相似度值。另一方面,本发明实施例还公开了一种垃圾图片识别装置,所述装置包括图片特征获取单元,用于获取待识别图片的图片特征;特征序列生成单元,用于对所述图片特征进行切分,生成图片特征序列;特征比对单元,用于将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合;所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征;第一判断单元,用于分别计算待识别图片与所述垃圾图片集合中各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。优选地,所述装置还包括预处理单元,用于对待识别图片进行预处理,将所述待识别图片进行灰度化以及二值化处理,并将其转换为预设的格式。优选地,所述图片特征获取单元包括布局分析单元,用于对待识别图片进行图像布局分析,获取文本元素区域轮廓;膨胀腐蚀处理单元,用于对待识别图片进行膨胀腐蚀处理,获取文本元素的连续区域;滤波处理单元,用于对待识别图片进行滤波处理,获取所述文本元素的连续区域中的文本形状特征;识别单元,用于利用所述文本形状特征对待识别图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为待识别图片的图片特征。优选地,所述装置还包括垃圾图片特征库建立单元,用于获取垃圾图片库中的所有图片的图片特征,建立垃圾图片特征库。优选地,所述装置还包括索引建立单元,用于为所述垃圾图片特征库建立倒排索引,所述倒排索引由哈希表组成,所述哈希表以连续两个图片特征组成的特征组合为键、以包含所述特征组合的垃圾图片的图片标识以及特征组合在图片特征序列中的出现次数两项信息的链表为值;其中,所述图片标识为垃圾图片在垃圾图片特征库的唯一标识。优选地,所述特征比对单元包括第一获取单元,用于获取图片特征序列中任意连续两个图片特征作为当前特征组合;第一查找单元将所述当前特征组合与所述倒排索引中的特征组合进行查找比对;第二判断单元,用于判断所述倒排索引中是否存在所述特征组合;如果所述判断结果表明不存在所述特征组合,进入第三获取单元;如果所述判断结果表明存在所述特征组合,进入第二获取单元; 第二获取单元,用于获取与所述特征组合对应的所有垃圾图片标识,进入第三获取单元;第三获取单元,用于获取待识别图片的图片特征序列中未处理的连续两个图片特征,将其作为当前特征组合,进入第一查找单元,直到处理完待识别图片的图片特征序列中的所有特征组合;确定单元,用于根据获取的所有垃圾图片的标识确定垃圾图片集合。优选地,所述特征比对单元包括第四获取单元,用于获取图片特征序列中任意连续两个图片特征作为当前特征组合;第二查找单元,用于将所述当前特征组合与所述倒排索引中的特征组合进行查找比对;第三判断单元,用于判断所述倒排索引中是否存在所述特征组合;当所述判断结果表明存在所述特征组合,进入第五获取单元;当所述判断结果表明不存在所述特征组合,进入第六获取单元;第五获取单元,用于获取与所述特征组合对应的所有垃圾图片标识,进入第一判断单元;第六获取单元,用于当所述判断结果表明不存在所述特征组合,获取待识别图片的图片特征序列未处理的连续两个图片特征,将其作为当前特征组合,进入第二查找单元。优选地,所述装置还包括迭代处理单元,用于当第一判断单元的判断结果表明所述相似度值都小于设定阈值时,获取待识别图片的图片特征序列中未处理的连续两个图片特征序列作为特征组合,进行迭代处理,直到任意一条相似度值大于设定阈值,停止迭代处理。本发明实施例能够达到的有益效果为本发明实施例提供的方法,通过提取待识别图片的图片特征,将图片特征进行切分,生成图片特征序列,并将图片特征序列中连续两个图片特征作为特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合;然后计算待识别图片与所述垃圾图片集合中各张垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断待识别图片为垃圾图片。本发明提供的方法由于对图片特征组合创建了倒排索引及采用了基于图片特征组合的方式进行比对,可以提高垃圾图片的识别效率。另一方面,由于提取了图片的文本形状特征码作为图片特征并采用了基于特征组合的比对方式,因此对垃圾图片变化的适应性强,提高了识别的效果和准确率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 图I为本发明提供的垃圾图片识别方法第一实施例流程图;图2为本发明提供的垃圾图片识别方法第二实施例流程图;图3是对垃圾图片特征库中图片A的图片特征(“feature^feature;^feature/’)建立的第一图片特征表hashmapa的结构示意图;图4是对垃圾图片特征库中图片A的图片特征(“feature^feature;^feature/’)建立的倒排索引的结构示意图;图5是对待识别的图片B的图片特征(“feature^feature;^feature/’)建立的第二图片特征表hashmapb的结构示意图;图6是垃圾图片特征库中图片A的图片特征(“feature” feature2、feature/’)与待识别的图片B的图片特征(“feature^feature;^feature/’)包含共同图片特征组合项的第三图片特征表hashmap。的结构示意图;图7为本发明提供的垃圾图片识别方法第三实施例流程图;图8为本发明实施例提供的垃圾图片识别装置示意图。
具体实施例方式本发明实施例提供了一种垃圾图片识别方法和装置,可以快速、准确地识别出垃圾图片。为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。参见图1,为本发明提供的垃圾图片识别方法第一实施例流程图。所述方法包括SIOI,获取待识别图片的图片特征。在本发明第一具体实施例中,步骤SlOl通过以下步骤实现S101A,对待识别图片进行图像布局分析,获取文本元素区域轮廓。S101B,对待识别图片进行膨胀腐蚀处理,获取文本元素的连续区域。S101C,对待识别图片通过特定的滤波器进行滤波处理,获取所述文本元素的连续区域中的文本形状特征。
S101D,利用所述文本形状特征对待识别图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为待识别图片的图片特征。具体的,获取文本形状特征码,其中对于英文和数字,因其总体包含的字符形状个数有限,由文本字符形状转换成具体字符的开销很小,这类字符的文本形状特征码为具体的字符本身,对于中文及其它字符,特别是中文,对单个中文通过水平或者垂直方向上的形状拆分处理,分成一个或者多个小的子形状,对各个子形 状识别出相关的文本形状特征码,最终组成该中文总的文本形状特征码,因子形状识别为文本形状特征码的过程在很小的字符形状集中进行,因此对中文的文本形状特征码提取过程明显加快,且能比较准确地提取到文本字符形状特征。S102,对所述图片特征进行切分,生成图片特征序列。待识别图片可以包括多个图片特征,这多个图片特征未切分前是连在一起的,通过切分把这些连续的图片特征,切分成一个个小的图片特征,然后生成图片特征序列。S103,将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合。具体的,可以预先建立一个垃圾图片库,里面存放有所有的垃圾图片。获取垃圾图片库中的垃圾图片的图片特征,建立垃圾图片特征库和倒排索引。所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征。其中,倒排索引由哈希表组成,所述哈希表以连续两个图片特征组成的特征组合为键、以包含所述特征组合的垃圾图片的图片标识以及特征组合在图片特征序列中的出现次数两项信息的链表为值;其中,所述图片标识为垃圾图片在垃圾图片特征库的唯一标识。在这一步骤中,将待识别图片的图片特征序列中连续两个图片特征组合在一起形成特征组合,将特征组合与垃圾图片特征库中的特征组合倒排索引进行比对,当比对结果表明垃圾图片特征库中存在与所述待识别图片的特征组合相同的特征组合时,获取与所述特征组合对应的垃圾图片集合。其中,垃圾图片集合可以包含一张图片,也可以包含多张图片。S104,计算待识别图片与所述垃圾图片集合中各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。本发明第一实施例提供的方法对图片特征组合创建了倒排索引及采用了基于图片特征组合的方式进行比对,一方面可以提高垃圾图片的识别效率;另一方面,由于提取了图片的文本形状特征码作为图片特征及采用了基于特征组合的比对方式,因此对垃圾图片变化的适应性强,提高了识别的效果和准确率。参见图2,为本发明提供的垃圾图片识别方法第二实施例流程图。S201,建立垃圾图片特征库。在本发明第二实施例中,预先建立了垃圾图片特征库,所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征。首先提取垃圾图片库中的所有垃圾图片的图片特征。提取垃圾图片的图片特征的步骤与提取待识别图片的图片特征的步骤相同。下面以提取垃圾图片的文本形状特征为例进行说明。S201A,对垃圾图片进行图像布局分析,获取文本元素区域轮廓。S201B,对垃圾图片进行膨胀腐蚀处理,获取文本元素的连续区域。S201C,对垃圾图片通过特定的滤波器进行滤波处理,获取所述文本元素的连续区域中的文本形状特征。S201D,利用所述文本形状特征对垃圾图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为垃圾图片的图片特征。具体的,获取文本形状特征码,其中对于英文和数字,因其总体包含的字符形状个数有限,由文本字符形状转换成具体字符的开销很小,这类字符的文本形状特征码为具体的字符本身,对于中文及其它字符,特别是中文,对单个中文通过水平或者垂直方向上的形状拆分处理,分成一个或者多个小的子形状,对各个子形状识别出相关的文本形状特征码, 最终组成该中文总的文本形状特征码,因子形状识别为文本形状特征码的过程在很小的字符形状集中进行,因此对中文的文本形状特征码提取过程明显加快,且能比较准确地提取到文本字符形状特征。其次,将所述垃圾图片的图片特征保存在垃圾图片特征库中。为每一张垃圾图片赋予一个唯一的图片标识,用于唯一标识垃圾图片。S202,将垃圾图片的图片特征读出后,生成图片特征序列。具体的,从垃圾图片特征库中把各行图片特征读出然后放入队列中,队列中的每个元素除包含一张图片的特征外,还保存了标识图片特征唯一信息的图片特征库ID值。将队列中个各条图片特征读出,对它们进行图片特征切分,生成相应的图片特征序列。例如,垃圾图片特征库中有一条图片特征,为图片A的图片特征。其中,图片A的图片特征为“feature^ feature2、feature/’,它唯一的图片特征库ID值为I,表示图片A是垃圾图片。则经过特征切分模块分解以后得到图片A的图片特征序列为〈“feature/’,“feature/’,“feature/,>。S203,建立第一图片特征表。其中,第一图片特征表具体为垃圾图片特征表,我们将其称为hashmapa。所述第一图片特征表以垃圾图片的图片特征库ID为键,包含的特征组合项总计数为值的哈希表hashmap,标记为hashmapa。以图3所示进行说明,例如图片A对应的图片特征序列< “feature/’,“feature/’,“feature/’〉进行上述操作,图片A在垃圾图片特征库中的图片标识为I,其包含的特征组合项计数为2,故生成的hashmapa如图3所示。S204,建立倒排索引。对步骤S202生成的每个图片特征序列,创建按连续两个图片特征组合在一起的“图片特征图片特征”为键,包含该两个图片特征组合的图片特征库ID和该图片特征组合在图片特征序列中的出现次数两项信息的链表为值的倒排索引inverted index。参见图
4,为本发明实施例倒排索引示意图。仍以垃圾图片A为例,其具有“feature” feature2、feature3”图片特征,图片特征序列为〈“feature/’, “feature/’, “feature/’>。从图片特征序列中选取连续两个特征作为特征组合,例如特征组合Ufeature1 : feature/’,其对应的图片在图片特征库的ID为I,特征组合Ufeature1 feature/’在图片A中的出现次数为1,因此其在倒排索引中对应的值就为I : I ;特征组合“feature2 feature/,其对应的图片在图片特征库的ID为I,特征组合“feature2 feature/’在图片A中的出现次数为1,因此其在倒排索引中对应的值也为I : I。S205,获取待识别图片的图片特征。假设待识别的图片为图片B,按照与提取垃圾图片的图片特征相同的方法获取待识别图片的图片特征,得到特征“feature^ feature2、feature/’。S206,对所述图片特征进行切分,生成图片特征序列。生成图片特征序列〈“feature/’,“feature/’, “feature/,>。S207,获取图片特征序列中连续两个图片特征作为特征组合,创建第二图片特征表。具体的,第二图片特征表为待识别图片特征表,我们以哈希表举例进行说明。创建 按连续两个图片特征组合在一起的“图片特征图片特征”为键,以该两个图片特征组合在待识别图片的图片特征序列中出现次数为值的哈希表hashmap,标记为hashmapb。例如待识别的图片B的图片特征为“feature^ feature2、feature/’,则经过特征切分模块分解以后得到图片B的图片特征序列为〈“featUrei”,“featUre2”,“feature/’〉,那么最后建立的hashmapb如图5所不。S208,获取图片特征序列中任意连续两个图片特征作为当前特征组合。具体的,获取第二图片特征表hashmapb中任意一项的键即连续两个图片特征组合在一起的“图片特征图片特征”作为当前特征组合。S209,将所述当前特征组合与所述倒排索引中的特征组合进行查找比对。具体的,将当前特征组合到步骤S204生成的倒排索引inverted index中快速查找是否存在该特征组合。S210,判断所述倒排索引中是否存在所述特征组合;如果不存在,进入S212 ;如果存在,进入S211。S211,如果存在,获取与所述特征组合对应的所有图片标识,建立第三图片特征表。若存在,贝U从倒排索引inverted index中取出包含该图片特征组合的垃圾图片特征库ID和该图片特征组合在垃圾图片特征序列中的出现次数两项信息的链表,对链表中每一个图片特征库ID,比较该特征组合在垃圾图片中出现次数对应的计数和该特征组合在步骤S207生成的hashmapb中的值,取二者中最小值z,把特征库ID和最小值z插入到一个新的哈希表hashmap中,标记为hashmap。,若特征库ID已经在新的hashmap。中存在,则把最小值z累加到特征库ID对应的计数上。这个新的hashmap。的键为垃圾图片特征库ID,值为待检测图片的图片特征序列与垃圾图片特征库ID包含的图片特征序列中共同出现的图片特征组合项计数。S212,判断待识别图片特征序列中是否存在未处理特征组合。如果存在,进入步骤S213,如果不存在,进入S214。具体的,就是判断第二图片特征表hashmapb中是否存在未处理的项,如果存在,进入步骤S213,如果不存在,进入S214。S213,获取待识别图片的图片特征序列中未处理的连续两个图片特征,将其作为当前特征组合,进入S209 ;直到迭代处理完待识别图片的图片特征序列中的所有特征组合。具体的,就是获取第二图片特征表hashmap,中未处理的项,将未处理项的键即连续两个图片特征组合在一起的“图片特征图片特征”作为当前特征组合,进入S209 ;直到迭代处理完第二图片特征表hashmapb中的所有项。处理完第二图片特征表hashmapb,最后生成的hashmap。如图6所不。S214,根据第三图片特征表,获取待识别图片与各垃圾图片的相似度。分别获取待识别图片与垃圾图片集合中的各垃圾图片的相似度值。其中,待识别图片与所述垃圾图片集合中的其中一张垃圾图片的相似度值通过以下方法得到A,获取待识别图片与所述垃圾图片具有的共同特征组合的个数。B,获取待识别图片与所述垃圾图片的特征组合总数与共同特征组合数之间的差值。C,将所述共同特征组合数与所述差值的比值作为待识别图片与所述垃圾图片这两张图片的相似度值。下面以一个具体的实例进行说明。扫描步骤S211生成的hashmap。,计算图片之间的相似度,设两张图片 ACfeature1, . . . , feature^ . . . , featurem> 和 EKfeature1,...,feature^... , featuren>,其中Featurei为图片包含的特征项,A为垃圾图片特征库中与待检测的图片有共同特征组合项的任意一张图片,B为待检测的图片,则定义A、B之间的相似度sim(A,B)为公式(I)所示sim(A, B) = (A~B)/(A+B)(I)其中~表示集合交集,+表示集合并集,(A~B)的值也就是A和B在生成的hashmap。中共同出现的次数,也就是图片A和图片B共同具有的特征组合的数目,可以从步骤S211生成的hashmap。中取得,A+B为A包含的特征组合项的个数加上B包含的特征组合项个数总和减去A和B在生成的hashmap。中共同出现的次数,A包含的特征组合项的个数可以从步骤S203生成的hashmapa中获得、B包含的特征组合项的个数可以从步骤S207生成的hashmapb中获得。例如,对于垃圾图片特征库中图片A(ID为I)和待检测的图片B,计算它们的相似度sim(A,B),根据sim(A,B)的定义,需要计算(A~B)和A+B值,其中(A~B)即图片A、B中在hashmap。中共同出现的次数,图片A和B共同出现的特征组合项为(^feature1 : feature/’),从步骤 S211 生成的 hashmap。中可以得到(A'B)的值为 I, A+B为A包含的特征组合项的个数加上B包含的特征组合项个数总和减去A和B在步骤S211生成的hashmap。中共同出现的次数,A包含的特征组合项的个数可以从步骤S203生成的hashmapa中获得其值为2、B包含的特征组合项的个数可以从步骤S207生成的hashmapb中获得,其值为2,则A+B= (2+2) -1=3,而得到图片A和图片B的相似度sim(A, B) = (A~B) /(A+B)=1/3 οS215,当有任意一条相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。在计算完A、B之间的相似度sim(A,B)后,如果大于设定的相似度阈值,认为待检测的图片B是垃圾图片,否则迭代取得hashmap。中下一个元素,直到取完hashmap。中的所有元素。
以上面的实例进行说明,通过计算得到图片A和图片B的相似度为1/3。假设用户设定的相似度阈值为1/4,则1/4〈1/3,认为图片B与图片A相似,是垃圾图片,假设用户设定的相似度阈值为1/2,则1/2>1/3,认为图片B与图片A相似度较低,不是垃圾图片。在本发明第二实施例中,由于为垃圾图片特征库建立了倒排索引,提高了查找比对的速度,在垃圾图片特征库规模较大的情况下,也能够给保持非常快的识别速度,因此可以快速、准确地识别出垃圾图片。参见图7,为本发明提供的垃圾图片识别方法第三实施例流程图。S701,建立垃圾图片特征库。S702,将垃圾图片的图片特征读出后,生成图片特征序列。S703,建立第一图片特征表。 其中,第一图片特征表具体为垃圾图片特征表,我们将其称为hashmapa。所述第一图片特征表以垃圾图片的图片特征库ID为键,包含的特征组合项总计数为值的哈希表hashmap,标记为 hashmapa。S704,建立倒排索引。对步骤S702生成的每个图片特征序列,仓Il建按连续两个图片特征组合在一起的“图片特征图片特征”为键,包含该两个图片特征组合的图片特征库ID和该图片特征组合在图片特征序列中的出现次数两项信息的链表为值的倒排索引inverted index。S705,获取待识别图片的图片特征。S706,对所述图片特征进行切分,生成图片特征序列。S707,创建第二图片特征表。S708,获取图片特征序列中任意连续两个图片特征作为当前特征组合。S709,将所述当前特征组合与所述倒排索引中的特征组合进行查找比对。S710,判断所述倒排索引中是否存在所述特征组合;如果不存在,进入S715 ;如果存在,进入S711。S711,获取与所述特征组合对应的所有图片标识。S712,计算待识别图片与所述各图片标识对应的垃圾图片的相似度。S713,判断是否有任意一条相似度值大于设定阈值。如果是,进入S714,如果判断没有一条相似度值大于设定阈值,进入S715。S714,当判断有任意一条相似度大于设定阈值时,判断所述待识别图片属于垃圾图片。S715,获取待识别图片的图片特征序列未处理的连续两个图片特征,将其作为当前特征组合,进入S709。在本发明第三实施例中,与第二实施例不同的是,是先通过待识别图片的一组特征组合与垃圾图片特征库中的特征组合倒排索引进行比对,如果经过比对存在包含所述特征组合的垃圾图片,则通过计算待识别图片与各垃圾图片的相似度来判断待识别图片是否为垃圾图片。如果经过判断,相似度都小于设定阈值,则重新获取待识别图片未处理的一组特征组合,再到垃圾图片特征库中的特征组合倒排索引中进行查找,进行迭代处理,直到有一条相似度值大于设定阈值,停止迭代处理,则判断待识别图片属于垃圾图片。这种方法在精度要求不高的情况下,可以达到较快的识别速度,提高了处理效率。
参见图8,为本发明垃圾图片识别装置示意图。一种垃圾图片识别装置,所述装置包括图片特征获取单元801,用于获取待识别图片的图片特征。特征序列生成单元802,用于对所述图片特征进行切分,生成图片特征序列。特征比对单元803,用于将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合;所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征。第一判断单元804,用于分别计算待识别图片与所述垃圾图片集合中各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所 述待识别图片为垃圾图片。优选地,所述装置还包括预处理单元,用于对待识别图片进行预处理,将所述待识别图片进行灰度化以及二值化处理,并将其转换为预设的格式。优选地,所述图片特征获取单元包括布局分析单元,用于对待识别图片进行图像布局分析,获取文本元素区域轮廓;膨胀腐蚀处理单元,用于对待识别图片进行膨胀腐蚀处理,获取文本元素的连续区域;滤波处理单元,用于对待识别图片进行滤波处理,获取所述文本元素的连续区域中的文本形状特征;识别单元,用于利用所述文本形状特征对待识别图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为待识别图片的图片特征。优选地,所述装置还包括垃圾图片特征库建立单元,用于获取垃圾图片库中的所有图片的图片特征,建立垃圾图片特征库。优选地,所述装置还包括索引建立单元,用于为所述垃圾图片特征库建立倒排索引,所述倒排索引由哈希表组成,所述哈希表以连续两个图片特征组成的特征组合为键、以包含所述特征组合的垃圾图片的图片标识以及特征组合在图片特征序列中的出现次数两项信息的链表为值;其中,所述图片标识为垃圾图片在垃圾图片特征库的唯一标识。优选地,所述特征比对单元包括第一获取单元,用于获取图片特征序列中任意连续两个图片特征作为当前特征组合;第一查找单元将所述当前特征组合与所述倒排索引中的特征组合进行查找比对;第二判断单元,用于判断所述倒排索引中是否存在所述特征组合;如果所述判断结果表明不存在所述特征组合,进入第三获取单元;如果所述判断结果表明存在所述特征组合,进入第二获取单元;第二获取单元,用于获取与所述特征组合对应的所有垃圾图片标识,进入第三获取单元;第三获取单元,用于获取待识别图片的图片特征序列中未处理的连续两个图片特征,将其作为当前特征组合,进入第一查找单元,直到处理完待识别图片的图片特征序列中的所有特征组合。确定单元,用于根据获取的所有垃圾图片的标识确定垃圾图片集合。优选地,所述特征比对单元包括第四获取单元,用于获取图片特征序列中任意连续两个图片特征作为当前特征组合;第二查找单元,用于将所述当前特征组合与所述倒排索引中的特征组合进行查找比对;
第三判断单元,用于判断所述倒排索引中是否存在所述特征组合;当所述判断结果表明存在所述特征组合,进入第五获取单元;当所述判断结果表明不存在所述特征组合,进入第六获取单元;第五获取单元,用于获取与所述特征组合对应的所有垃圾图片标识,进入第一判断单元;第六获取单元,用于当所述判断结果表明不存在所述特征组合,获取待识别图片的图片特征序列未处理的连续两个图片特征,将其作为当前特征组合,进入第二查找单元。优选地,所述装置还包括迭代处理单元,用于当第一判断单元的判断结果表明所述相似度值都小于设定阈值时,获取待识别图片的图片特征序列中未处理的连续两个图片特征序列作为特征组合,进行迭代处理,直到任意一条相似度值大于设定阈值,停止迭代处理。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。以上所述仅是本发明的具体实施方式
,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种垃圾图片识别方法,其特征在于,所述方法包括 获取待识别图片的图片特征; 对所述图片特征进行切分,生成图片特征序列;将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合;所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征;分别计算待识别图片与所述垃圾图片集合中各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。
2.根据权利要求I所述的方法,其特征在于,在获取待识别图片的图片特征之前,所述方法还包括 对待识别图片进行预处理,将所述待识别图片进行灰度化以及二值化处理,并将其转换为预设的格式。
3.根据权利要求I所述的方法,其特征在于,所述获取待识别图片的图片特征包括 对待识别图片进行图像布局分析,获取文本元素区域轮廓; 对待识别图片进行膨胀腐蚀处理,获取文本元素的连续区域; 对待识别图片进行滤波处理,获取所述文本元素的连续区域中的文本形状特征;利用所述文本形状特征对待识别图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为待识别图片的图片特征。
4.根据权利要求I所述的方法,其特征在于,所述方法还包括 获取垃圾图片库中的所有图片的图片特征,建立垃圾图片特征库。
5.根据权利要求I所述的方法,其特征在于,所述方法还包括 为所述垃圾图片特征库建立倒排索引,所述倒排索引由哈希表组成,所述哈希表以连续两个图片特征组成的特征组合为键、以包含所述特征组合的垃圾图片的图片标识以及特征组合在图片特征序列中的出现次数两项信息的链表为值;其中,所述图片标识为垃圾图片在垃圾图片特征库的唯一标识。
6.根据权利要求I所述的方法,其特征在于,所述将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存在垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合包括 获取图片特征序列中任意连续两个图片特征作为当前特征组合; 将所述当前特征组合与所述倒排索引中的特征组合进行查找比对; 判断所述倒排索引中是否存在所述特征组合;如果不存在,进入获取待识别图片的图片特征序列中未处理的连续两个图片特征的步骤; 如果存在,获取与所述特征组合对应的所有垃圾图片标识; 获取待识别图片的图片特征序列中未处理的连续两个图片特征,将其作为当前特征组合,进入将所述特征组合与倒排索引中的特征组合进行比对的步骤,直到处理完待识别图片的图片特征序列中的所有特征组合; 根据获取的所有垃圾图片的图片标识确定垃圾图片集合。
7.根据权利要求I所述的方法,其特征在于,所述将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存在垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合包括 获取图片特征序列中任意连续两个图片特征作为当前特征组合,将所述当前特征组合与所述倒排索引中的特征组合进行比对,判断所述倒排索引中是否存在所述特征组合; 如果存在,获取与所述特征组合对应的所有垃圾图片标识,确定垃圾图片集合,并进入计算待识别图片与所述垃圾图片集合中的各垃圾图片的相似度值的步骤; 如果不存在,获取待识别图片的图片特征序列未处理的连续两个图片特征,将其作为当前特征组合,进入将所述当前特征组合与倒排索引中的特征组合进行比对的步骤。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括 当判断所述相似度值都小于设定阈值时,获取待识别图片的图片特征序列中未处理的连续两个图片特征序列作为特征组合,进行迭代处理,直到任意一条相似度值大于设定阈值,停止迭代处理。
9.根据权利要求I所述的方法,其特征在于,所述待识别图片与所述垃圾图片集合中的其中一张垃圾图片的相似度值通过以下方法得到 获取待识别图片与所述垃圾图片具有的共同特征组合的个数; 获取待识别图片与所述垃圾图片的特征组合总数与共同特征组合数之间的差值; 将所述共同特征组合数与所述差值的比值作为待识别图片与所述垃圾图片的相似度值。
10.一种垃圾图片识别装置,其特征在于,所述装置包括 图片特征获取单元,用于获取待识别图片的图片特征; 特征序列生成单元,用于对所述图片特征进行切分,生成图片特征序列; 特征比对单元,用于将所述待识别图片的图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行比对,获取包含所述图片特征组合的垃圾图片集合;所述垃圾图片特征库包含有垃圾图片库中的所有垃圾图片的图片特征; 第一判断单元,用于分别计算待识别图片与所述垃圾图片集合中各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括 预处理单元,用于对待识别图片进行预处理,将所述待识别图片进行灰度化以及二值化处理,并将其转换为预设的格式。
12.根据权利要求10所述的装置,其特征在于,所述图片特征获取单元包括 布局分析单元,用于对待识别图片进行图像布局分析,获取文本元素区域轮廓; 膨胀腐蚀处理单元,用于对待识别图片进行膨胀腐蚀处理,获取文本元素的连续区域; 滤波处理单元,用于对待识别图片进行滤波处理,获取所述文本元素的连续区域中的文本形状特征; 识别单元,用于利用所述文本形状特征对待识别图片中的文字进行识别,获取文本形状特征码,将所述文本形状特征码作为待识别图片的图片特征。
13.根据权利要求10所述的装置,其特征在于,所述装置还包括垃圾图片特征库建立单元,用于获取垃圾图片库中的所有图片的图片特征,建立垃圾图片特征库。
14.根据权利要求10所述的装置,其特征在于,所述装置还包括 索引建立单元,用于为所述垃圾图片特征库建立倒排索引,所述倒排索引由哈希表组成,所述哈希表以连续两个图片特征组成的特征组合为键、以包含所述特征组合的垃圾图片的图片标识以及特征组合在图片特征序列中的出现次数两项信息的链表为值;其中,所述图片标识为垃圾图片在垃圾图片特征库的唯一标识。
15.根据权利要求10所述的装置,其特征在于,所述特征比对单元包括第一获取单元,用于获取图片特征序列中任意连续两个图片特征作为当前特征组合;第一查找单元将所述当前特征组合与所述倒排索引中的特征组合进行查找比对;第二判断单元,用于判断所述倒排索引中是否存在所述特征组合;如果所述判断结果表明不存在所述特征组合,进入第三获取单元;如果所述判断结果表明存在所述特征组合,进入第二获取单元; 第二获取单元,用于获取与所述特征组合对应的所有垃圾图片标识,进入第三获取单元; 第三获取单元,用于获取待识别图片的图片特征序列中未处理的连续两个图片特征,将其作为当前特征组合,进入第一查找单元,直到处理完待识别图片的图片特征序列中的所有特征组合; 确定单元,用于根据获取的所有垃圾图片的标识确定垃圾图片集合。
16.根据权利要求10所述的装置,其特征在于,所述特征比对单元包括 第四获取单元,用于获取图片特征序列中任意连续两个图片特征作为当前特征组合; 第二查找单元,用于将所述当前特征组合与所述倒排索引中的特征组合进行查找比对; 第三判断单元,用于判断所述倒排索引中是否存在所述特征组合;当所述判断结果表明存在所述特征组合,进入第五获取单元;当所述判断结果表明不存在所述特征组合,进入第六获取单元; 第五获取单元,用于获取与所述特征组合对应的所有垃圾图片标识,进入第一判断单元; 第六获取单元,用于当所述判断结果表明不存在所述特征组合,获取待识别图片的图片特征序列未处理的连续两个图片特征,将其作为当前特征组合,进入第二查找单元。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括 迭代处理单元,用于当第一判断单元的判断结果表明所述相似度值都小于设定阈值时,获取待识别图片的图片特征序列中未处理的连续两个图片特征序列作为特征组合,进行迭代处理,直到任意一条相似度值大于设定阈值,停止迭代处理。
全文摘要
本发明涉及图像处理技术领域,特别是涉及一种垃圾图片识别方法和装置,所述方法包括:获取待识别图片的图片特征;对所述图片特征进行切分,生成图片特征序列;将所述图片特征序列中连续两个图片特征作为特征组合,将所述特征组合与预存的垃圾图片特征库中的特征组合倒排索引进行快速比对,获取包含所述图片特征组合的垃圾图片集合;计算待识别图片与所述垃圾图片集合中各垃圾图片的相似度值,当有任意一张垃圾图片与待识别图片的相似度值大于设定阈值时,则判断所述待识别图片为垃圾图片。本发明提供的方法一方面可以提高垃圾图片的识别效率;另一方面,对垃圾图片变化的适应性强,提高了识别效果。
文档编号G06K9/46GK102722709SQ201210169939
公开日2012年10月10日 申请日期2012年5月23日 优先权日2012年5月23日
发明者但红卫, 周森, 朱经纬, 潘照明 申请人:杭州朗和科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1