一种基于Krawtchouk矩和KNN-SMO分类器的密级标识识别方法
技术领域
本发明属于电子取证领域,具体涉及一种基于Krawtchouk矩和KNN-SMO分类器的密级标志识别方法。
背景技术
在电子取证中,在完成对涉密文件的检索后,需要对涉密文件的密级标识进行进一步的识别,将检查的结果以记录的形成日志,作为取证的证据。
现有的识别方法,常见的方法有模板匹配法(AravindaCV,PrakashHN.TemplatematchingmethodforKannadaHandwrittenrecognitionbasedoncorrelationanalysis[C]//ContemporaryComputingandInformatics(IC3I),2014InternationalConferenceon.IEEE,2014:857-861.)
、字符特征统计法(DasS,jyotiChoudhuryS,DasAK,etal.SelectionofGraph-BasedFeaturesforCharacterRecognitionUsingSimilarityBasedFeatureDependencyandRoughSetTheory[M]//RecentAdvancesinInformationTechnology.SpringerIndia,2014:57-64.)
和神经网络法(杨天长.基于神经网络的文字识别技术研究及应用[D].北方工业大学,2013.)等。模版匹配法基本思想是将待识别图像与模板图像进行直接或间接(对待识别图像进行一定的处理)相关运算得到相关值,根据相关值的大小去判定是否为模板字符。该方法相对简单,对于背景单一或者无污染的图片识别准确率较高,但随着背景图像的噪声增加,识别效果会急剧下降。基于字符特征的方法就是通过统计字符的特征,如轮廓特征、笔画特征、骨架特征和复杂指数特征等等,然后根据这些特征的相似度进行判别。该方法对于较为复杂的文字以及污染较轻的图片有较好的识别效果,但是对于污染较重的图片识别效果较差。神经网络法是通过利用神经网络对大量文字图像样本进行训练,通过神经网络不断的学习和收缩达到识别的目的。但是由于神经网络的结构设计严重依赖先验知识和经验,无法准确控制其是否收敛以及收敛速度。
上述方法一旦密级标识遭受常见攻击如几何攻击(旋转、缩放和平移等)、滤波攻击(均值滤波、高斯滤波等)、直方图均衡化攻击等利用上述方法无法准确的识别出密级标识。因此研究针对常见攻击具有稳定性的识别方法具有重要的意义。
发明内容
发明目的:电子取证中,在完成对涉密文件的检索后,需要对涉密文件的密级标识进行进一步的识别,将检查的结果以记录的形成日志,作为取证的证据。针对通常文字识别算法对遭受攻击后的密级标识无法进行有效的识别,提出了基于Krawtchouk矩和KNN-SMO分类器的密级标识识别方法,利用低阶Krawtchouk矩能够对图像的特征进行很好地刻画,且量在常见的攻击下具有很好的稳定性,并且运用KNN-SMO组合分类器使得分类器既具有KNN快速分类的能力也拥有SMO在克服小样本问题上的优势,从而提高了密级标识识别精度与速度。
本方法中涉及的主要技术有:
[1]Krawtchouk矩:离散Krawtchouk多项式,定义如式(a)-(b)所示,
Kn(x;p,N-1)=2F1(-n,-x;-N;1/p)(a)
给出了大小为M×N灰度图像f(x,y)的m+n阶Krawtchouk矩Qmn的定义,如式(c)所示:
在式(a)-(b)中,2F1(a,b;c;z)为超几何函数,p是一个常数,且满足p∈(0,1),(a)h为Pochhammer算子,其值为a(a-1)(a-2)…(a-h+1),(b)h和(c)h同理可得。式中为加权归一化的Krawtchouk正交多项式,其定义如式(d)所示:
式中,ω(x;p,N)和ρ(n;x,N)的定义分别如式(e)-(f)所示:
[2]KNN分类算法:该算法的基本原理是如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。基本描述如下:
对一个C类别问题,每类有Ni个样本,i=1,2,…,C,则第i类ωi判别函数为公式(g)-(h)所示:
其中计算样本的距离可以使用样本距离有欧氏距离、曼哈顿距离以及范数等。
[3]SMO算法:SMO算法并成为最快的二次规划优化算法,其基本思想如下:
对于输入数据集T={(x1,y1),...,(xl,yl)}∈(Rn×y)l,xi∈Rn,yi∈Y={1,-1},i=1,...,l,实现公式(i)-(j)的化目标
其中0≤αi≤C,i=1,...,l。
技术方案
1、一种基于Krawtchouk矩和KNN-SMO分类器的密级标志识别方法,包括以下步骤:
(1)对密级标识图像按照式(a)进行灰度化,以减少不必要的干扰和降低处理的复杂度。设图像灰度f(x,y)∈[c1,c2],若令集合则可以通过判断像素值是否在集合C中进行分类:
通过选定适当的a,b值就可以对图像的灰度化分割,实现图像的增强,达到拉伸图像的效果增加图像对比度;
(2)对灰度化后的图像进行去噪,采取3*3或者5*5的均值滤波法进行去噪,去除干扰信息的影响;
(3)将灰度化后的图像进行反相操作,使字符区域呈现为白色,背景区域呈现为黑色,使得文字轮廓与背景色对比更加强烈,有利于观察文字特征。然后利用全局阈值法对反相后的按照式(b)进行二值化:
(4)对二值化后的图像采用Hough变换方法进行倾斜校正,其基本思想是通过把直线从图像的空间转换到参数的空间,求得参数空间的局部极大值获得图像文字的倾斜角;
(5)利用垂直投影法进行文字行切分以及基于回溯的最大宽度法进行单个字符的切分,最终得到包含每一个字符的文字序列;
(6)对每个字符进行细化,提取文字的骨架,使各个笔划均由宽度为1个像素的形式表示;
(7)对图像进行大小归一化和位置归一化,得到大小为N×N的图像,并使得待识别内容位于图像中心;
(8)计算图像的Krawcthouk矩分别选取两个1阶Krawcthouk矩、两个2阶Krawcthouk矩和四个3阶Krawcthouk矩构造图像的特征向量V=(KMI0,1,KMI1,0,KMI0,2,KMI2,0,KMI0,3,KMI3,0,KMI1,2,KMI2,1)作为密级图像的特征;
(9)构造KNN-SMO分类器,方案如下:首先利用KNN算法对训练集进行修剪,根据每个样本与其最近邻的K的样本的类别的异同决定其取舍,然后利用SMO算法进行训练;
(10)将数据集分为训练集和测试集,利用构造的KNN-SMO分类器对密级标识图像进行识别,获取密级标识信息。
有益效果
提供一种具有抗攻击性的涉密文件密级标识识别算法,为提升电子取证的技术水平与能力服务。
本发明与其他方案相比,克服了通常文字识别算法对遭受攻击后的密级标识无法进行有效的识别缺点,并且具有以下优点:
[1]利用低阶Krawtchouk矩能够对图像的内容特征进行很好地刻画,且量在常见的攻击下Krawtchouk矩具有很好的稳定性,有利于对密级标识的识别。
[2]利用KNN-SMO组合分类器使得分类器既具有KNN快速分类的能力也拥有SMO在克服小样本问题上的优势,从而提高了密级标识识别精度与速度。
附图说明
图1为算法流程图。
具体实施方式
以下结合附图具体说明本发明方案:
[1]对密级标志进行不同的攻击(包括彷射变换、JPEG压缩、亮度降低、模糊处理、中值滤波、均值滤波、对比度增强等)获取实验数据。
[2]将实验数据分为训练样本和测试样本两部分,两者互不包含。
[3]预处理训练样本,包括图像灰度化、图像反相和二值化、图像去噪、倾斜校正、行字切分、细化以及归一化等步骤。
[4]计算预处理后训练样本的低阶Krawtchouk矩作为训练特征。
[5]构造KNN-SMO分类器,首先利用利用KNN算法对训练集进行修剪,根据每个样本与其最近邻的K的样本的类别的异同决定其取舍,利用SMO算法进行训练获取训练模型。
[6]对测试样本进行图像预处理,包括图像灰度化、图像反相和二值化、图像去噪、倾斜校正、行字切分、细化以及归一化等步骤。
[7]计算预处理后的测试样本的低阶Krawtchouk矩作为特征向量。
[8]利用[7]中获得的训练模型对测试样本的特征向量进行识别,获得最终识别结果。
本发明是通过以下方案实现的:
[1]一种基于Krawtchouk矩和KNN-SMO分类器的密级标志识别方法,该方法具体内容如下所述:
[2]对密级标识图像按照式(a)进行灰度化,以减少不必要的干扰和降低处理的复杂度。设图像灰度f(x,y)∈[c1,c2],若令集合则可以通过判断像素值是否在集合C中进行分类:
通过选定适当的a,b值就可以对图像的灰度化分割,实现图像的增强,达到拉伸图像的效果增加图像对比度。
[3]对灰度化后的图像进行去噪,采取3*3或者5*5的均值滤波法进行去噪,去除干扰信息的影响。
[4]将灰度化后的图像进行反相操作,使字符区域呈现为白色,背景区域呈现为黑色,使得文字轮廓与背景色对比更加强烈,有利于观察文字特征。然后利用全局阈值法对反相后的按照式(b)进行二值化:
[5]对二值化后的图像采用Hough变换方法进行倾斜校正,其基本思想是通过把直线从图像的空间转换到参数的空间,求得参数空间的局部极大值获得图像文字的倾斜角。
[6]利用垂直投影法进行文字行切分以及基于回溯的最大宽度法进行单个字符的切分,最终得到包含每一个字符的文字序列。
[7]对每个字符进行细化,提取文字的骨架,使各个笔划均由宽度为1个像素的形式表示。
[8]对图像进行大小归一化和位置归一化,得到大小为N×N的图像,并使得待识别内容位于图像中心。
[9]计算图像的Krawcthouk矩分别选取两个1阶Krawcthouk矩、两个2阶Krawcthouk矩和四个3阶Krawcthouk矩构造图像的特征向量V=(KMI0,1,KMI1,0,KMI0,2,KMI2,0,KMI0,3,KMI3,0,KMI1,2,KMI2,1)作为密级图像的特征。
[10]构造KNN-SMO分类器,方案如下:首先利用利用KNN算法对训练集进行修剪,根据每个样本与其最近邻的K的样本的类别的异同决定其取舍,利用SMO算法进行训练。
[11]将数据集分为训练集合测试集,利用构造的KNN-SMO分类器对密级标识图像进行识别,获取密级标识信息。
本发明具有以下优点:
[1]利用低阶Krawtchouk矩能够对图像的内容特征进行很好地刻画,且量在常见的攻击下Krawtchouk矩具有很好的稳定性,有利于对密级标识的识别。
[2]利用KNN-SMO组合分类器使得分类器既具有KNN快速分类的能力也拥有SMO在克服小样本问题上的优势,从而提高了密级标识识别精度与速度。