专利名称:利用图片文字与局部不变特征检测图像垃圾邮件的方法
技术领域:
本发明是一种结合垃圾图片的局部不变特征与嵌入图片中的文字,使用不同的分 类方法,综合两个结果,对图像型垃圾邮件检测的实现方案,主要解决了当今的技术对图片 型垃圾邮件的检测效率和召回率低等问题,属于数据挖掘和机器学习领域。
背景技术:
电子邮件已成为人们进行网络交流沟通的重要途径,但是由于巨大的商业、经济 及政治利益,导致垃圾邮件数量急剧膨胀。起初盛行的图像型垃圾邮件是将广告等垃圾信 息以文字形式嵌入图像中,Hrishikesh等人在利用挖掘出来的文本以及颜色特征来对邮件 进行分类。Fumera等在2006年提出了一种OCR(光学字符识别)技术检测图像型垃圾邮件 的文本信息,相对其他过滤系统来说,具有较好的检测效果。同时垃圾邮件制造者们也在不 断地增强垃圾邮件逃避检测系统的能力,他们对嵌有广告等垃圾信息的图像进行了模糊处 理,这使得当时的OCR技术无法挖掘出嵌入这种图片中的文字。Dredze et al.提出了利用 图片的高级特征来对图片进行分类,高级特征指的是文件格式,大小,颜色分布等。这种方 法的优点是检测速度很快,并且具有较好的扩展性,能够与对低级特征的图片过滤器进行 有效的结合。Fumera在2007年提出了一种通过计算图像周长复杂度的方法来判别一张图片是 否经过了模糊技术的处理[1]。一张图片的模糊的程度可以由周长复杂度来衡量的,计算方 法为文字区域周长的平方和文字区域面积的比值。通过文字周长复杂度可以标识断字符或 者是噪音对象的出现。由于不能证实经过模糊处理的图像就是携带垃圾信息的图像,这种 处理技术只能作为垃圾邮件过滤系统中预处理某个模块。Zhe Wang等人提出的图像型垃圾 邮件过滤方法是通过比较图像之间的相似性方法[2]分别使用结合三类图像型垃圾邮件 过滤方法(颜色直方图过滤方法、哈尔小波过滤以及方向直方图特征),实验的结果表明 每个过滤系统单独执行时,通过比较发现小波过滤获取了最好的检测率并且其误检率(将 正常图片标识为垃圾图片)低于0. 0009%,三类过滤器结合起来的精确率达到96%,该方 法是通过结合已有的过滤系统来实现的,可以说它是对一个阶段的垃圾邮件过滤技术的一 个总结,使用该方法提高了图像型垃圾邮件过滤系统的性能。Mehta等在2008年针对使用模板而大量生成的垃圾邮件进行检测,利用重复相似 性质,使用支持向量机分类器的精确度达到了 98%,同时提出了利用高斯混合模型来对图 片进行聚类的算法将每幅图片缩小到100X 100像素点,提取每个像素的纹理形状和颜色 特征,对每幅图片训练其高斯混合模型,并计算高斯混合模型之间的相近距离来聚类。通过 计算阀值来分辨垃圾图片,虽然该方法采用统计学知识计算比较精确但是计算量太大,算 法的时间复杂度较高,不利于在实际的应用中。随后由Zuo等提出了使用核函数为PMK的 一类支持向量机分类器对电子邮件中图像的局部不变特征进行归类。该方法主要是针对那 些为了逃避基于图像模板相似性的过滤器,而改变图像的总体布局,保留图片中的某些局 部不变特征的垃圾邮件。所以这种方法在一定程度上弥补了相似性检测的漏洞。
[l]Giorgio Fumera,Ignazio Pillai,Fabio Roli, and Battista Biggio. Image spamfiltering using textual and visual information, MIT Spam Conference2007, Cambridge, USA, March 2007[2]Mehta, B. , Nangia, S. , Gupta, Μ. , and Nejdl, W. Detecting image spam usingvisual features and near duplicate detection. In Proceeding of the 17th internationalConference on World Wide Web(Beijing, China, April 21-25,2008). WWW' 08. ACM, New York, NY,497-506.
发明内容
技术问题本发明的目的是提供一种利用图片的局部不变特征以及嵌入图片中的 文字来检测图像型垃圾邮件的方法。对数据集中所有图片使用一个综合分类器,以综合支 持向量机分类器和贝叶斯分类器,分别针对两种不同性质的特征进行分类。利用在垃圾图 片训练集中存在着的局部不变特征,来训练支持向量机分类器;挖掘嵌入垃圾图片训练集 中文字信息,对文字字符串进行分词,用来训练贝叶斯分类器。使用综合分类器对待检测的 图片进行分类以达到检测图像型垃圾邮件的目的。技术方案本发明提出的利用图片的局部不变特征检测图像型垃圾邮件的方法, 是一种基于尺度空间的不变量技术的特征检测方法,对图像平移、旋转、缩放、甚至仿射变 换保持不变性的图像局部特征。用这种方法来提取图片中的不变区域特征,从而生成图片 的特征向量,使用支持向量机分类器来训练与测试。本发明提出的利用嵌入图片中的文本 信息,使用图形文字识别技术挖掘出图片中的文本字符串,将字符串作为图片的特征,使用 贝叶斯分类器来训练与测试。每张图片的特征向量是由图片的局部不变特征与文本字符串 构成的,使用堆栈方法综合两种分类器进行分类,来检测图像型垃圾邮件的实现方法。整个 方法包括图片特征的提取,图片中文本字符串的挖掘,合并图片特征向量,图像型邮件的检 测及结果评估四大模块,系统的模块组成如图1所示。该方法主要分为以下步骤一、根据样本集进行训练步骤1)对待训练的图片数据集进行标签,分为垃圾图片和正常图片;步骤2)采用“尺度不变特征转换算法”分别提取每个垃圾图片和正常图片的局部 不变特征描述符。尺度不变特征转换算法是David G. Lowe在2004年总结了现有的基于不变量技术 的特征检测方法基础上提出的一种基于尺度空间的、对图像缩放、旋转甚至仿射变换保持 不变性的图像局部特征描述算子。该算法首先在尺度空间进行特征检测,并确定关键点的 位置和关键点所处的尺度,然后使用关键点邻域梯度的主方向作为该点的方向特征,以实 现算子对尺度和方向的无关性。由该算法提取出的特征是图像的局部特征,其对旋转、尺度 缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性。步骤3)利用“均值聚类算法”对训练集中每个垃圾图片和正常图片的局部不变特 征描述符进行聚类,最终得到若干个聚类中心;以此聚类中心为参照点,将每个图片的局部 不变特征描述符投影到这些参考点上,这样将每个图片标准化为若干维的向量。均值聚类算法是Mac Queen提出的一种非监督实时聚类算法,在最小化误差函数的基础上将数据划分为预定的类数K。该算法在运行前必须先指定聚类数目K和迭代次数 或收敛条件,并指定K个初始聚类中心。在我们对图片的局部特征聚类中,利用欧氏距离将 每一张图片的每一个局部特征向量分配到最近的聚类中心,形成类。然后以每一类的平均 向量作为这一类的聚类中心,重新分配,反复迭代直到类收敛或达到最大的迭代次数。步骤4)对图形中文字的识别,对微软公司提供的光学字符识别模块进行改进,以 实现数据集进行批量处理,通过去除里面的特殊符号来提高文本分类的准确率;此外,还对 能够提取文字与不能提取文字的图片进行分类,归入到不同文件夹中,并选择文字提取成 功的图片进行后续处理;步骤5)使用维卡数据挖掘工具将得到的垃圾邮件与正常邮件文件夹中的所有文 本文件进行格式转换,转换结果是将所有文本中的内容及标签都写入一个文件中;步骤6)使用维卡数据挖掘工具中的合并实例类,将步骤3)与步骤5)中得到的实 例进行合并;步骤7)使用堆栈方法对步骤6)中的实例合并结果进行分层处理对图片的sift 特征向量采用支持向量机分类器进行分类,对文本字符串则采用分词后使用多项贝叶斯分 类器的分类方法;然后在此基础上,选择决策树分类方法对得到的两个结果进行分类,从而 完成堆栈模型的训练过程;二、使用训练好的堆栈模型对待检测图片进行测试阶段步骤8)使用训练阶段中改进好的光学字符识别模块提取待测图片的文本字符 串,得出包含文字字符串的文本文件;步骤9)使用维卡数据挖掘工具中的文本文件格式转换方法,将文本文件转换为 维卡支持的数据格式;步骤10)使用尺度不变特征转换算法提取图片的局部不变特征描述符;步骤11)采用步骤3)中的均值聚类算法得出的聚类中心作为参照点,将图片的局 部不变特征描述符投射到这些点上,完成归一化;步骤12)采用weka数据挖掘工具中的合并实例类归并步骤9)与步骤11)中的结 果,使得图片的特征向量就变成由局部不变特征与字符串特征,以及邮件标签构成;步骤13)将步骤12)得到的结果使用训练阶段形成的堆栈模型分类器进行垃圾图 片与正常图片的归类。有益效果本发明方法综合了图片的两类特征,利用尺度不变特征转换算法来提 取图片中垃圾信息的局部不变特征,以及提取嵌入图片中文字来对图片进行分类。通过使 用本发明的方法,能够提高垃圾邮件检测的精度和召回率,节省程序运算时间和空间。
图1利用图片局部不变特征与文本特征进行垃圾邮件检测的流程图,图2使用的堆栈结合方法的原理图。
具体实施例方式基于图片的局部不变特征检测图像型垃圾邮件,采用VC++6.0为开发工具,其中 对图像特征的处理利用opencvl. 0开源库,对图片中文字的提取使用了 MFC类库。其中详细的步骤如下一、训练阶段获取垃圾图片与正常图片,构成训练集,训练形成一个堆栈分类器。a)文本特征提取阶段步骤1)对图形中文字的识别,使用微软公司提供的光学字符识别技术模块。我们 运用该模块的接口作了很多改进,以用于我们的发明中对其进行改进以能够进行数据集 的批量处理,去除了提取出的文本中一些无法识别的特殊符号;步骤2)改进该光学字符识别模块,将能够准确提取与不能提取出文字的图片分 别存放到两个文件夹中,成功提取出文字的文件夹里存放的是每张图片的文本字符串;步骤3)使用改进后的光学字符识别模块,对垃圾图片与正常图片数据集分别进 行处理;步骤4)从上一步骤中分别对不同图片数据集得出了两个文件夹文字提取成功 与文字提取失败。整理文字提取成功的文件夹,使其包含垃圾图片与正常图片两个文件夹, 其中存放的分别是每张标签图片的字符串文本;步骤5)对原数据集进行整理,抽取文字提取成功的图片数据集作为以下各个步 骤中的操作对象;步骤6)使用weka数据挖掘工具来将步骤4)中得出的垃圾邮件与正常邮件文件 夹中的所有文本文件进行格式转换,转换结果是将所有文本中的内容都写入一个.arff格 式中,每一行表示的是一个文本文件中的内容,也就是提取出的文字字符串,以及按照该文 本文件所在的文件夹名得到的一个标签。两者之间用逗号隔开;到此,完成了图片数据集的 文本字符串的提取。b)局部不变特征提取阶段步骤7)对提取文本字符串成功的图片数据集也就是步骤5)得出的数据集进行标 志,令垃圾图片为IiE常图片Ij,其中i= {1,2,...,^}, J= {1,2,..., NJ ;步骤8)采用尺度不变特征转换算法提取Ii* L中每张图片的视觉特征也就是局 部不变特征描述符,每张图片中的描述符数量不等。步骤9)利用“均值聚类算法”抽取训练集中多个垃圾图片和正常图片的局部不变 特征描述符进行均值聚类,最终得到500个聚类中心。以此500个聚类中心为参照点,将每 个图片的局部不变特征描述符投影到这些参考点上,这样将每个图片标准化为500维的向 量;步骤10)通过步骤9)得到了垃圾图片特征向量库F—=丨Fspamm,’ ...,
Fspamw }和正常图片的特征向量库⑴,F-⑶,…,Fhom{Ni) } ’其中每个F值都
是由500维的数字特征与1维的图片原始标签构成的特征向量,这一步骤得出的结果是每 行表示一张图片的特征向量的文本文件,行数就是数据集中图片的数量。c)合并实例阶段步骤11)以weka数据挖掘工具中的合并实例类作为基础,编写程序将步骤(6)与 步骤(10)中的实例合并起来。这样,每副图片的特征向量就变成由局部不变特征与字符串 特征,以及邮件标签构成。d)利用提取的特征集合训练堆栈模型分类器使用数据集的特征向量训练堆栈模型,该模型由两层构成。对每一层都要作具体处理。步骤12)第0层对实例中表示不同类型的维数分别选择不同的分类器进行处理。 先将数据集分成两部分,第一部分是剔除表示文本字符串的维数,也就是只剩下表示局部 不变特征的维数以及标签维;步骤13)使用支持向量机对上步中得出的数据集进行分类,记录每张图片的分类 结果垃圾图片,正常图片;步骤14)第二部分是仅选择表示文本字符串的维以及标签维;步骤15)先对字符串数据集进行分词。使用的分词方法是weka中的字符串转换 工具,对文本字符串进行分词处理,处理后每一列表示某个单词在每张图片内嵌文本字符 串中的出现的次数。这样,在这一部分里每张图片是由一系列的等长的数字与一个标签构 成了,也完成了归一化;步骤16)分词处理之后,使用贝叶斯分类器的多项贝叶斯分类器对分词结果进行 分类,记录每张图片的分类结果垃圾图片,合法图片;步骤17)由步骤(12)到步骤(16),我们完成了堆栈的第0层处理。第1层的处理 就是以第0层的两部分得出的结果作为分类属性值,我们使用决策树分类器,对这两个属 性进行分类评估,这样我们就完成了一个堆栈模型分类器的训练。二、测试阶段对待检测的图片,使用训练好的堆栈模型分类器进行检测。a)文本特征提取阶段步骤1)使用训练阶段中改进好的光学字符识别模块提取待测图片的文本字符 串,得出包含文字字符串的文本文件;步骤2)使用weka数据挖掘工具中的文本文件格式转换方法,将文本文件转换 为.arff格式;步骤3)使用尺度不变特征转换算法提取图片的局部不变特征描述符;步骤4)采用训练过程中均值聚类算法得出的500个聚类中心作为参照点,将图片 的局部不变特征描述符投射到这500个点上,完成归一化;步骤5)采用weka数据挖掘工具中的合并实例类归并步骤1)与步骤4)中的结果, 使得图片的特征向量就变成由局部不变特征与字符串特征,以及邮件标签构成;步骤6)将步骤5)得到的结果使用训练阶段形成的堆栈模型分类器进行垃圾图片 与正常图片的归类。步骤7)重复步骤1)到步骤6),把待检测集合中的每一个图片进行检测。
权利要求
一种利用图片文字与局部不变特征检测图像垃圾邮件的方法,其特征在于该方法主要分为以下步骤一、根据样本集进行训练步骤1)对待训练的图片数据集进行标签,分为垃圾图片和正常图片;步骤2)采用“尺度不变特征转换算法”分别提取每个垃圾图片和正常图片的局部不变特征描述符;步骤3)利用“均值聚类算法”对训练集中每个垃圾图片和正常图片的局部不变特征描述符进行聚类,最终得到若干个聚类中心;以此聚类中心为参照点,将每个图片的局部不变特征描述符投影到这些参考点上,这样将每个图片标准化为若干维的向量;步骤4)对图形中文字的识别,对微软公司提供的光学字符识别模块进行改进,以实现数据集进行批量处理,通过去除里面的特殊符号来提高文本分类的准确率;此外,还对能够提取文字与不能提取文字的图片进行分类,归入到不同文件夹中,并选择文字提取成功的图片进行后续处理;步骤5)使用维卡数据挖掘工具将得到的垃圾邮件与正常邮件文件夹中的所有文本文件进行格式转换,转换结果是将所有文本中的内容及标签都写入一个文件中;步骤6)使用维卡数据挖掘工具中的合并实例类,将步骤3)与步骤5)中得到的实例进行合并;步骤7)使用堆栈方法对步骤6)中的实例合并结果进行分层处理对图片的sift特征向量采用支持向量机分类器进行分类,对文本字符串则采用分词后使用多项贝叶斯分类器的分类方法;然后在此基础上,选择决策树分类方法对得到的两个结果进行分类,从而完成堆栈模型的训练过程;二、使用训练好的堆栈模型对待检测图片进行测试阶段步骤8)使用训练阶段中改进好的光学字符识别模块提取待测图片的文本字符串,得出包含文字字符串的文本文件;步骤9)使用维卡数据挖掘工具中的文本文件格式转换方法,将文本文件转换为维卡支持的数据格式;步骤10)使用尺度不变特征转换算法提取图片的局部不变特征描述符;步骤11)采用步骤3)中的均值聚类算法得出的聚类中心作为参照点,将图片的局部不变特征描述符投射到这些点上,完成归一化;步骤12)采用weka数据挖掘工具中的合并实例类归并步骤9)与步骤11)中的结果,使得图片的特征向量就变成由局部不变特征与字符串特征,以及邮件标签构成;步骤13)将步骤12)得到的结果使用训练阶段形成的堆栈模型分类器进行垃圾图片与正常图片的归类。
全文摘要
利用图片的局部不变特征检测图像型垃圾邮件的方法,利用了尺度不变特征转换算法来提取图片中垃圾信息的不变区域特征,提取嵌入图片中文字来对图片进行分类,从而形成图片的两种特征结合的特征向量库。经过实验能够提高垃圾邮件的召回率,节省程序运算时间和空间。用这种方法来提取图片中的不变区域特征,从而生成图片的特征向量,使用支持向量机分类器来训练与测试。本发明提出的利用嵌入图片中的文本信息,使用图形文字识别技术挖掘出图片中的文本字符串,将字符串作为图片的特征,使用贝叶斯分类器来训练与测试。每张图片的特征向量是由图片的局部不变特征与文本字符串构成的,使用堆栈方法综合两种分类器进行分类,来检测图像型垃圾邮件的实现方法。
文档编号G06K9/62GK101887523SQ20101020472
公开日2010年11月17日 申请日期2010年6月21日 优先权日2010年6月21日
发明者周国强, 张卫丰, 张迎周, 杨波, 王宗辉, 王慕妮, 许碧欢, 陆柳敏, 韩蕊 申请人:南京邮电大学