模式识别方法和装置的制作方法

文档序号:6415593阅读:387来源:国知局
专利名称:模式识别方法和装置的制作方法
技术领域
本发明涉及模式识别装置和模式识别方法,特别涉及一种将不同识别模块组合在一起以改善识别精度的模式识别方法。
背景技术
当前对于涉及模式识别的信息处理的需求很大,并且正在迅速增大。模式识别用在诸如由计算机执行的图象处理、文本处理以及声音处理等应用中。因此,非常需要对模式识别技术的改进。
模式识别是这样一个过程,将一个诸如图象、手写字符或印刷字符或声音的物理现象变换成表示该现象的电信号,判定该现象属于一个类别集中多个可能类别中的一个,并产生一个指示所确定类别的代码。例如,在字符识别中,可以用一个电子扫描仪扫描一个未知印刷字符,例如字母“A”。扫描仪产生一个电子模式信号,该电子模式信号代表由代表该未知字符的几千字节的阵列组成的模式。然后分析该模式信号,以确定该未知字符属于对应于字母A-Z的类别集中的哪一个类别。然后产生一个识别这个类别的代码,作为该未知字符的类别。例如,可以产生代表字母A的ASCII码33。
模式识别处理最好应用从模式信号提取出的模式特征来进行,而不是应用原始模式信号来进行。最好处理从模式信号提取出的特征是因为处理这些特征常常可以比原始模式信号更快、更精确并且更便宜。如果处理包含非常大数量的信息的模式信号,往往提取特征,并必须处理这些特征。模式识别的一个目的是通过应用从模式信号提取出的特征表示模式来压缩信息。当然,必须以一种不会损害模式识别处理能力的方式从模式信号提取特征,以便识别出该模式。
模式p的特征f通常用特征分量x(p;m)有限数目M个的集合{x(p;m);m=1,2,3,...,M}来定义。特征f有形地并在数量上代表模式的特有性质。因此,由于特征f是由一个M维向量表示的,该M维向量的第m个分量是特征分量x(p;m),则特征f的向量表示是特征向量X(p)=(x(p;1),x(p;2),...,x(p;m))t。表示特征向量X(p)的变元p是模式p的特征向量。角标t表示向量转置。
虽然特征分量是定性的,但它们也可以被量化并使用。
如果模式p进行各种变形,则特征分量x(p;m)的值改变。因此,特征向量X(p)改变。然而,只要变形模式属于其原始类别,则模式识别处理必须将其识别为属于该类别。
将被指定为代表属于一特定类别的模式或代表该类别的特征的一特定模式称作为该类别的参考模式。所指定模式的特征向量被称作为该类别的参考向量。作为对采用一特定模式作为类别的参考模式的替换,采用通过将属于该类别的模式平均而获得的假设模式作为参考模式,并且可以采用这个假设模式的特征向量作为该类别的参考向量。
在模式识别中,接收一个未知模式p,并执行模式识别处理。该模式可以确定未知模式是否与一已知模式q类似,或者确定未知模式属于哪个类别。模式识别在识别图表、字符、符号、图象和声音中是至关重要的。关于模式识别的一般信息和模式识别的问题可以在参考文件1,Kazuo Nakada,Ed.的模式识别及其应用,Corona Co.(1978)(日本)以及参考文件2,Hidemitsu Ogawa,Ed.的模式识别中的新发展和理解-挑战-DENSHI JYOHO TSUSHIN GAKKAI(1992)(日本)中找到。
在说明书中陈述的原理可以容易地应用到模式识别的其他形式上,例如图象识别和声音识别,在理解了这一点之后,下面将说明模式识别的例子,在这些例子中,未知模式是字符模式。字符模式是代表字母、数字、日语汉字字符等的模式。此后,将代表一个字符的模式称作为字符模式。字符模式的可能的特征分量的例子包括字符的长宽比,水平线的数目,闭环数,覆盖在字符上的栅格的每个方块是黑的还是白的,在一特定方向上与一直线的交点数,以及字符模式的傅立叶变换的变换系数。
应用如上所列出的一组特征分量构造特征向量,以使得所得的特征向量可以最佳地代表字符集中的字符。选择每个特征分量的动态范围,以提高模式识别的精度,这将在后面说明。在需要时可以应用标准偏差将特征分量归一化。
模式识别为每个进行模式识别的字符模式产生一个类别名。类别代码代表字符模式的读、含义或代码。例如,字符“A”所属类别的类别名可以是“类别A”。如上所述,选择属于该类别的一特定字符模式作为该类别的参考模式。或者,可以采用通过将属于一个类别的多个字符模式平均所得到的假设模式作为参考模式。采用参考模式的特征向量作为该类别的参考向量。
模式识别的中心是识别处理器,识别处理器的目的是确定代表字符“A”的所有未知字符模式属于类别A,而不考虑字符模式是否被变形,并且还确定这种字符模式不属于除了类别A的类别。
在字符模式观察和读取之后由字符识别装置进行的处理通常被分成执行字符模式预处理、特征提取和识别的一系列过程模块。每个过程模块基本上可以应用一个计算机来实施,并由执行一特定组操作的计算机来实现。所有过程模块、包括字符模式的观察,都影响由识别模块产生的结果。
提高字符识别精度的策略是使识别率最大并将错误识别率降为零。识别率是应该属于每个类别的字符模式被正确地识别为属于这个类别的部分。错误识别率是不属于每个类别的字符模式被错误识别为属于这个类别的部分。特别地,许多应用强烈要求不能出现这种错误识别,即不属于例如类别A的字符模式一定不能被分配给类别A。
可以将每个输入模式看作为一个对应的理想模式的变形或修改。从这种修改降低了模式识别装置识别模式的能力的意义上,可以将这种修改认为是预处理的逆形式。这种负的预处理必须是在试图提高用于字符模式的模式识别装置的性能时所考虑的目标因素中的一个。
已知的提高模式识别装置的识别精度的方法增加了反馈控制功能,例如根据识别结果调整由每个过程模块执行的处理,并对于由识别模块执行的处理作出了各种改变。
上述所指的字符模式预处理包括将一个输入字符模式的尺寸、倾斜、位置和行密度(line density)归一化,以及去除诸如斑点和划痕等噪声。
上述所指的特征提取分析一个输入字符模式,以便确定代表由该字符模式所表示的字符的形状和其他特性的特征分量的值。从特征分量构造出字符模式的特征向量。特征分量的数目一般大约为几百,例如380或500,但也可以为几千。一种产生字符模式的特征向量的方式是假设用一个64×64的栅格覆盖该字符模式,然后确定栅格的每一方块是否由字符模式的一个笔划所填充。如果该方块被填充,则将值1分配给该方块。否则分配值0。可以将栅格的每个方块看作为一个特征分量,则产生一个4096维的其元素为0和1的特征向量,作为字符模式的特征向量。
在另一个例子中,字符识别中的另一个有效特征是例如笔划中的端点数(字母A中为2)、闭环数(字母A中为1)、弯点数(字母A中为1)、分支点数(字母A中为2)、交叉点数(字母A中为0)以及它们的位置的组合。然后,选定与所需识别精度一致的最小可能数目的特征分量,并构造一个具有相应维数的特征向量。虽然增大特征向量的维数会提高识别精度,但增大维数会增大所需的处理时间和存储容量。
在上述所称的识别模块中,将从每个输入字符模式提取出的特征向量与类别集中的每个类别的参考向量进行匹配,以确定输入字符模式属于哪个类别。参考向量是在字符识别处理开始之前确定的,存储在一个识别词典中。参考向量对于未知字符所属的字符集是特有的,对于执行字符识别的特定方式也是特有的。识别词典包括一组参考向量,对于类别集中的每个类别至少有一个参考向量。识别模式常常采用类似函数或距离函数作为识别函数来确定未知字符模式所属的类别。可以将字符模式与参考模式之间的距离看作为字符模式和由参考模式所代表的类别之间的距离。特别地,字符模式的特征向量与参考模式的参考向量之间的距离可以被看作是字符模式与该类别之间的距离。
当识别模块应用一个距离函数时,则限定了一种测量字符模式之间距离的方式,并测量输入字符模式与每个类别之间的距离。一般来说,距离越短,字符模式越相似。可以将其特征向量位于一特定类别的参考向量的一固定距离内的输入字符模式说成是属于该类别的。或者,可以将一个字符模式说成是属于最近的参考特征向量所属的那个类别的。
当输入字符的特征向量被定义为上述例子时,识别模块计算在元素为1和0的4096维特征向量中的汉明距离(互相不同的元素的个数)。如果一个类别的参考向量在距离所提取出的输入字符的特征向量的汉明距离为100以内,则将输入字符说成是属于该类别。
计算在从输入字符模式提取出的特征向量与类别集中的所有类别的参考向量之间的汉明距离。将汉明距离最短的类别确定为输入字符模式所属的类别。
在将输入字符模式说成是属于其参考向量距离输入字符模式的特征向量最短的类别之前,可以加上一些附加条件。这种附加条件的例子为,最短汉明距离必须小于一第一阈值,并且最短汉明距离与第二最短汉明距离之间的增量必须大于一第二阈值。
在高度精确的字符识别过程的其他例子中,识别模式可以采用确定欧几里德距离的距离函数、确定加权欧几里德距离的距离函数或者二次方程判别函数来作为其识别函数。已经知道,可以通过采用一个训练过程改进判别函数和字符识别词典来提高这种识别函数的识别精度。由发明人在“由学习距离函数进行的手写数字识别”,TRANS,IEICE,Vol.J-76-D-11,No.9,第1851-59页(参考3)中描述的通过判别分析学习(Leaning by Discriminant Analysis)(LDA)方法考虑了通过训练判别过程进行字符模式的变形。另外这个参考文件还在一些细节上描述了常规的字符识别过程,因此对这个参考文件的回顾对于更好地理解下面公开的发明提供了一个良好的基础。
通过判别分析学习采用了Fisher的线性判别分析。下面采用不同于下面要讨论的参考文件3中所用的符号表示的符号表示将说明LDA方法的一部分。在通过判别分析学习中,训练一个给出加权欧几里德距离的距离函数,并存储在识别词典中。更明确地,学习了距离函数的加权向量和常数项以及参考向量。
将已知输入字符模式p作为训练模式输入到识别装置中,并首先进行常规的预处理和特征提取,以获得特征向量X(p)=(x(p;1),x(p;2),...,x(p;m),...,x(p;m))t。
给出了类别集{K}中的每个类别K的参考向量R(K)=(r(K;1),r(K;2),...,r(K;m),...,r(K;M))t,并且计算出在输入字符模式X(p)和字符集中的每个字符的参考向量R(K)之间的加权欧几里德距离。加权欧几里德距离是用下式计算的D(p,K)=D(X(p),(K))=Σm=1Mω(K;m)(x(p;m)-r(K;m))2---(1)]]>准确地说,D(p,K)给出了距离的平方,但这里将其简称为距离。在这里,ω(K;m)是第m个加权系数,是加权向量W(K)=(ω(K;1),ω(K;2),...,ω(K;m),...,ω(K;M))t中的一个元素。字符识别词典L({K})存储了执行识别操作所需的参数。典型参数包括参考特征向量R(K)和加权向量W(K)。{K}代表整个类别集,类别K是其中的一个成员,并且输入字符属于该类别。在匹配操作期间,参考词典为类别集中的每个类别提供了一个参考向量。因此,将与类别集{K}有关的识别词典指定为L({K})。
虽然距离函数的上述格式被用于确定类别集中的所有类别的加权欧几里德距离,但距离函数中所使用的参数被设定为每个类别的特定值。在通过LDA学习之后的距离函数不同于常规的基于满足距离公式的通常定义的距离函数。基于LDA的识别函数增强了模式之间的差异。
在下面的说明中,将输入字符模式p实际所属的类别指定为K(p)。在基于LDA的模式识别操作中,学习操作是应用训练模式、即类别已知的字符模式来执行的。为类别集中的每个类别K确定在每个输入字符模式和每个类别之间的修改欧几里德距离D(p,K)。识别模块确定输入字符模式p属于所确定的修改欧几里德距离D(p,K)最小的类别K1(p)。然而,在有些情况下,所确定的类别 K1(p)不同于输入字符模式p实际所属的类别K(p)。在这种情况下,输入字符模式被错误识别。在另一些情况中,在输入字符模式一方面与类别 K1和另一方面与类别K2之间的距离D(p,K1)和D(p,K2)之间的增量很小。类别K2不同于类别K1。对于这种字符模式,不能说识别结果K(p)是精确到具有高可信度的。可以用下列方式之一来表征或者被错误地分配给一个类别、或者不能将其属于一个类别认为具有高可信度的字符模式(1)实际上属于一个不同于类别K的类别但识别模块错误地将其识别为属于类别K的字符模式将被称作为一个属于类别K的错误模式poe。
(2)实际上属于一个不同于类别K的类别但识别模块几乎错误地将其识别为属于类别K的字符模式将被称作为一个属于类别K的相近差错模式pon。
术语poe和pon是发明人参考文件3所使用的术语,指的是上述的构成类别K的竞争模式集的两种类型的竞争(rival)模式por。在LDA中,学习加权向量和常数项和参考向量,以便使所有竞争模式por被保持在至少距离类别K最近。可以对所有类别执行学习过程,或只对那些最容易出现错误识别的类别执行学习过程。
类别K的竞争模式集用Ωr(K)表示,类别K的类别内模式集用Ωo(K)表示。类别K的类别内模式集由被定义为属于类别K的训练模式组成。学习过程确定系数{a(m);m=1至M},{b(m);m=1至M}和c,以便由这些系数得出由下列等式给出的判别函数F(X(p),R(K)),当训练模式是类别内模式集Ωo(K)的一个成员时为负,当训练模式是竞争模式集ΩrR(K)的一个成员时为正。在这个处理期间,属于类别K的类别内模式集的训练模式的特征向量的平均值被用在类别K的参考向量R(K)中。判别函数计算如下F(X(p),R(K))=Σm=1Ma(m)(x(p;m)-r(K;m))2+Σm=1Mb(m)(x(p;m)-r(K;m))+c(K)]]>(2)因为对于类别内模式集Ωo(K)判别函数F(X(p),R(K))是负的,因此F(R(K),R(K))=c<0。
然后用因子Y对判别函数F(X(p),R(K))进行加权,将结果加到在上述等式(1)中定义的初始距离上。于是,距离D(X(p),R(K))变成由下式定义的新距离G(X(p),R(K))G(X(p),R(K))=G(p,K)=D(X(p),R(K))+yF(X(p),R(K))=Σm=1m(ω(K,m)+Δω(K;m)){x(p;m)-(r(K;m)+Δr(K;m))}2+d(k)]]>(3)等式(3)中的加权因子Y是一个正数,是通过实验确定的。选择加权因子的值,以使识别精度在类别集{K}中的所有类别上最大。测试采用了公众可得到的字符数据库或与编译无关的字符数据库。常常应用字符数据库中的一部分字符模式来执行学习操作,用剩下的字符模式来确认学习操作的结果。
执行学习操作的结果是,以带有增加的常数项d(K)的格式学习了加权向量、参考向量和常数项。新参考向量和加权向量分别由下式表示T(K)=(r(K;1)+Δr(K;1),...,r(K;M)+Δr(K;m))t(4)和U(K)=(ω(K;1)+Δω(K;1),...,ω(K;M)+Δω(K;M))t(5)将常数项d(K)、加权向量U(K)和参考向量T(K)存储在识别词典中。接着,应用包括常数项的G(X(p),R(K))执行判别,并将从这个判别中新产生的竞争模式加到每个类别的竞争模式集中,然后重复学习过程。
在上述例子中,因为特征向量和判别函数在类型上未从初始特征向量改变,所以学习过程的范围被限制在识别过程的一个部分。这个部分包括识别词典的内容。
已知一些模式识别方法,将多个不同的识别过程组合在一起,以提高字符识别精度。更明确地,已知应用从模式中提取出的不同特征所进行的识别过程的组合。特征在其类型以及特征中的特征分量的个数可以不同。此外,已经尝试过应用不同的判别函数的识别过程的组合。这些每一种可能的识别过程的组合在提高识别精度上都是有效的。然而,常规的应用多个识别过程的方式仅仅组合了至少两个独立开发的识别过程。没有迹象表明采取了更有效的措施,例如设计出一种能够以高精度识别未由另一个识别过程识别出的字符的识别过程。结果,限制了由对应用两个常规识别过程的组合得到的识别精度的提高。
因此需要一种模式识别装置和方法,其中,通过将两个具有所设计特性的识别过程综合在一起,使得那些不能以高可靠性被一种识别过程识别的模式可以以尽可能高的精度被另一个识别过程所识别,从而提高识别精度。
还需要一种模式识别装置和方法,其中,将两个识别过程以一种使由一个识别过程单独操作而正确地识别但由两个识别过程一起操作而错误识别的模式的百分比最小的方式综合在一起。
最后,需要一种模式识别装置和方法,其中,将两个识别过程综合在一起,能够容易地由综合识别过程实现学习。
发明概述本发明提供了一种模式识别装置,包括输入部分、特征提取模块、特征变换模块、包括识别词典的识别部分以及分类器。输入部分接收输入模式,所述输入模式包括一个属于构成一个类别集的多个类别中的一个的模式。特征提取模块将模式的特征表示为特征向量。特征变换模块应用变换向量矩阵变换特征向量的至少一部分,以产生一个对应于每个类别的至少部分变换的特征向量。识别词典存储每个类别的匹配信息和第一变换匹配信息。采用变换向量矩阵完成对第一变换匹配信息的变换。识别部分通过执行在至少从对应于每个类别的至少部分变换的特征向量导出的至少一个匹配向量这方面与匹配信息及第一变换匹配信息这方面之间的匹配操作,为每个类别产生至少一个差分值。分类器根据所述至少一个差分值识别模式所属的类别。
一个实施例还包括可靠性确定模块,特征变换模块变换所有特征向量,以产生对应于每个类别的变换特征向量,识别部分包括第一识别模块和第二识别模块。第一识别模块通过在匹配信息与从特征向量导出的第一匹配向量之间执行匹配操作,为每个类别产生一个第一差分值。第二识别模块通过在第一变换匹配信息与从对应于每个类别的第一变换特征向量导出的第二匹配向量之间执行匹配操作,为每个类别产生一个第二差分值。可靠性确定模块接收每个类别的第一差分值,并表明基于每个类别的第一差分值的模式识别何时是可靠的。对每一个类别分类器单独根据每个类别的第一差分值或者根据每个类别的第一差分值和第二差分值来识别该模式所属类别。当可靠性确定模块表明基于第一差分值的模式识别可靠时,分类器只根据第一差分值进行识别。
本发明还提供了一种识别模式的方法,在该方法中,接收输入模式并将模式特征表示为特征向量。输入模式包括一个属于构成类别集的多个类别中的一个的模式。应用变换向量矩阵变换特征向量最少的一部分,以产生一个对应于每个类别的至少部分变换的特征向量。在从对应于每个类别的至少部分变换的特征向量导出的一个匹配向量这方面与每个类别的匹配信息及变换匹配信息这方面之间执行匹配操作。匹配操作为每个类别产生至少一个差分值。变换匹配信息是已经应用变换向量矩阵进行变换了的匹配信息。最后,根据至少一个差分值识别模式所属的类别。
变换向量矩阵包括(a)属于类别集中的一个类别、或者(b)属于类别集的多个类别组成的类别子集的一个变换向量矩阵。可以通过接收其各自的类别已经定义的训练模式并将训练模式的特征表示为特征向量来产生变换向量矩阵。通过在从特征向量导出的第一匹配向量与匹配信息之间执行匹配操作,识别训练模式分别所属的类别。将识别出的训练模式所属的类别与各个定义的类别进行比较,以便为该(a)类别或(b)类别子集分别定义一个竞争模式集。从被定义为分别属于(a)类别或(b)类别子集的所有训练模式的特征向量确定出一个平均向量。应用平均向量为属于竞争模式集的每个训练向量计算出一个差分向量。计算差分向量的自相关矩阵。最后,将自相关矩阵的特征向量用作为分别构成(a)类别或(b)类别子集的变换向量矩阵的变换向量。
通过接收其各自的类别已经定义的训练模式并将训练模式的特征表示为特征向量,可以产生属于类别集的一个类别的变换识别信息。通过在从特征向量导出的第一匹配向量与匹配信息之间执行匹配操作,识别训练模式分别所属的类别。将识别出的训练模式所属的类别与各个定义的类别进行比较,以便为该类别定义一个竞争模式集。应用该(a)类别或该类别所属的(b)类别子集的变换向量矩阵,变换训练模式的特征向量,以产生各个变换特征向量。类别子集由属于类别集的多个类别组成。应用变换特征向量执行判别分析,以产生一个判别函数。应用判别函数计算在训练模式和每个类别之间的修正差分值。根据每个类别的修正差分值再次识别训练模式分别所属的类别。将根据修正差分值识别出的训练模式所属的类别与各个定义的类别再次进行比较,以确定是否将附加模式错误识别为属于该类别。当没有附加模式被错误识别时,应用判别函数产生变换识别信息。否则,将附加模式包括在该类别的竞争模式集中,重复执行判别分析、修正差分值计算,类别重新识别和重新比较操作,直到没有附加模式被错误识别。
附图简要说明

图1是依据本发明的模式识别装置第一实施例的方框图。
图2是显示由模式识别装置使用的变换向量矩阵是如何产生的流程图。
图3是显示用于在变换特征向量上执行模式识别的识别词典是如何产生的流程图。
图4是依据本发明的模式识别装置第二实施例的方框图。
图5是依据本发明的模式识别装置第三实施例的方框图。
图6是依据本发明的模式识别装置第四实施例的方框图。
图7是包含依据本发明的模式识别装置的一个实施例的模式识别设备的方框图。
发明的详细说明在下面的说明中,术语“差分值”可以被理解为包括下列参数,以及限定在两个向量之间的相同或相异点的任何其他一个参数成多个参数距离函数的距离值,相似性函数的值,二次判别函数的值,判别函数的值,其他判别函数的值,或这种函数的组合的值。LDA中的平方距离值是差分值的另一个例子。
在依据本发明的模式识别装置和方法中,两个不同的识别模块确定在表征输入字符模式的匹配向量与存储在识别词典中的类别集中的每个类别的参考向量之间的差分值。因为从输入模式中不改变地提取出特征向量不是必须的,但可以进行特征变换,另外或或者可以减少其维数,因此在本公开文本中可以将表征输入模式的向量称作为匹配向量。
依据本发明的模式识别装置的实际实施例并不用于应用训练模式来执行学习过程。相反,模拟这种实际实施例的一个模型,并应用该模式执行学习过程。在学习过程结束时,将由学习过程产生的结果传送给装置的实际实施例,用于实际的模式识别。在下面的发明说明中,除非会引起混淆,否则将模式识别装置的实际实施例与该装置的模型不加区分。
依据本发明的模式识别装置包括第一和第二识别模块,第一和第二识别模块分别带有第一和第二识别词典。模式识别装置可以执行字符识别操作或学习操作,在学习操作中,识别词典被最优化。在执行学习操作中,模式识别装置首先从属于一给定类别的训练模式中提取出一个特征向量,并通过将第一识别词典与关于该特征向量的第一匹配向量匹配而获得一个第一差分值。第二模式识别模块然后通过将第二识别词典与关于该特征向量的第二匹配向量匹配而产生一个第二差分值。第二匹配向量包括一个变换特征向量,该变换特征向量是应用变换向量矩阵变换特征向量的至少一部分而获得的。最后,从第一和第二差分值确定训练模式的类别。
模式识别装置应用上述处理来执行模式识别操作。在这里,处理的是未知输入模式,而不是训练模式。
在学习操作中,模式识别装置另外还从(1)从至少一个类别的第一差分值确定出的竞争模式以及(2)属于该类别的训练模式确定特征向量。另外,模式识别装置一直执行上述的处理,直到训练模式集中的所有训练模式的类别都已经确定,其中训练模式集由属于类别集中的所有类别的训练模式组成。接着,模式识别装置确定在训练模式集上执行的模式识别的识别精度。这是通过比较训练模式实际所属的类别与从第一和第二差分值确定的类别来确定的。最后,以一种被设计为提高识别精度的方式修改第二识别词典,并重新确定训练模式集中的所有训练模式的类别,重新确定识别精度。
在本发明的一个实施例中,第一匹配向量包括从每个训练模式提取出的特征向量的所有特征分量,第二匹配向量包括通过变换一个包括从训练模式提取出的特征向量的所有特征分量的向量而获得的变换特征向量。
在本发明的另一个实施例中,第一匹配向量由从训练模式提取出的特征向量的第一组特征分量组成。第二匹配向量可以包括通过变换一个由从训练模式提取出的特征向量的不同于第一组的第二组特征分量组成的向量而获得的变换特征向量。
在需要保存所需的计算资源以便提供模式识别装置时,第一匹配向量的维数可以减少,可以由从训练模式提取出的特征向量的第一组特征分量组成。
因为依据本发明的模式识别装置和方法通常是在计算机或数字信号处理器中实现的,因此本发明还可以在存储设备、例如磁盘或闪速存储器中实现,在该存储设备中存储的是一个被设计为命令计算机执行上述处理的程序。
实现依据本发明的模式识别装置并且能够执行依据本发明的模式识别方法的模式识别系统的一个例子由一个与终端通信的学习中心组成。该终端存储识别词典和变换向量矩阵,并执行确定输入字符模式的类别的功能。该终端在识别词典和变换向量矩阵上进行该确定。响应于在终端产生的竞争模式的通知,模式识别装置被设计为使得学习中心更新识别词典,使得终端更新变换向量矩阵。
识别系统可以在带有能够根据训练模式中的改变以及错误识别率的提高容易地重新学习、并且根据识别精度的变化自动学习等功能的计算机或数字信号处理器中实现。
依据本发明的模式识别装置的一个变形可以具有多个串行排列的识别单元。每个识别单元由一个识别词典和一个识别模块组成。至少一个识别单元接受输入模式。至少一个识别单元接收另一个识别单元的输出,并产生一个转发到另一个识别单元的输出。至少一个识别单元接收关于输入模式的特征向量的匹配向量,并应用变换向量矩阵变换由特征向量表示的特征。至少一个识别单元将其输出传送到识别模块。识别模块确定每个输入模式的类别。根据由与输入端相连的识别单元确定的竞争模式为变换向量矩阵确定每个变换向量矩阵。在这个结构中,每个识别单元可靠地识别出在该识别单元之前的识别单元无法识别的模式。以这种方式,多个识别单元模式识别装置的识别精度能够进一步提高。
图1是依据本发明的模式识别装置的第一实施例100的方框图。模式识别装置包括模式输入部分102,模式输入部分102由模式输入模块104和预处理模块106组成;特征提取模块108;第一识别模块110;可靠性确定模块112;特征变换模块114;第二识别模块116以及分类器118。下面将详细说明由这些模块中的每一个执行的处理。
每个输入模式p由形成模式输入部分102的一部分的模式输入模块104接收。模式输入模块将模式传送到预处理模块106,预处理模块106将模式的尺寸、位置、旋转等归一化。预处理模块将归一化模式传送到特征提取模块108,特征提取模块108从模式提取出特征,用于识别该模式。特征提取模块将从模式p提取出的特征表示为特征向量X(p)。
第一识别模块110采用特征向量X(p)作为模式p的匹配向量。第一识别模块在模式p的匹配向量与构成类别集{K}的每个类别K的参考向量R(K)和加权向量W(K)之间进行第一匹配操作。参考向量和加权向量存储在第一识别词典120中。由第一识别模块执行的匹配操作在输入模式的匹配向量与每个类别的参考向量之间产生第一差分值。每个第一差分值用数量表示输入模式和相应的类别之间的差值。
第一识别模块110将类别集{K}中的每个类别的第一差分值传送到可靠性确定模块112和分类器118。根据类别集中的类别的第一差分值,可靠性确定模块产生一个输出信号,其状态表明基于第一差分值的模式识别是否可靠。可靠性确定模块可以确定例如在第一差分值的最小值与第一差分值的次小值之间的增量。可靠性确定模块然后可以将可靠性值与一预定阈值进行比较,以确定其输出信号的状态。
如果可靠性值大于或不小于预定阈值,则可靠性确定模块112确定基于由第一识别模块110产生的第一差分值的模式识别是可靠的。在这种情况下,可靠性确定模块产生其处于高可靠性(HIGH)状态的输出信号。可靠性确定模块将输出信号传送给分类器118、特征变换模块103和第二识别模块116。响应于处于HIGH状态的可靠性模块输出信号,分类器识别出在类别集{K}中的第一差分值最小的类别,并输出一个将该类别指示为输入模式的类别的代码。此外,输出信号的HIGH状态禁止特征变换模块103和第二识别模块116的操作。
如果可靠性结果小于预定阈值,则可靠性确定模块112确定基于由第一识别模块110产生的第一差分值的模式识别是不可靠的。在这种情况下,可靠性确定模块产生其处于低可靠性(LOW)状态的输出信号。响应于处于LOW状态的可靠性模块输出信号,特征变换模块114和第二识别模块116执行另外的处理,以产生第二差分值,分类器根据第一和第二差分值确定输入模式的类别。这提高了由分类器产生的识别结果的可靠性。
特征变换模块114接收来自特征提取模块108的输入模式的特征向量,并进行临时存储。当可靠性确定模块112产生其处于LOW状态的输出信号时,特征变换模块对输入模式p的特征向量X(p)进行变换。变换是应用类别集{K}中的每个类别K的变换向量矩阵φ(K)执行的。下面将参考图2说明变换向量矩阵φ(K)的产生。应用类别集中的每个类别K的变换向量矩阵φ(K)变换的特征向量X(p)产生了类别集中的每个类别的变换特征向量Y(p;K)。
变换特征向量Y(p;K)的第m个特征分量y(p;K;m)由下式给出y(p;K;m)=X(p)φ(K;m) (6)其中,φ(K;m)是类别K的变换向量矩阵φ(K)的第m个变换向量。变换模块将每个类别的变换特征向量Y(p;K)传送给第二识别模块116。
第二识别模块116采用从变换模块114接收的输入模式p和类别K的变换特征向量Y(p;K)作为类别K的模式p的匹配向量。第二识别模块在该识别过程中是匹配向量每个变换特征向量与对应于变换向量矩阵φ(K)的变换识别词典L({K})122的页L({K};φ(K))之间执行第二匹配操作。应用例如LDA产生变换识别词典。页L({K};φ(K))存储变换参考向量R(φ(K))、变换加权向量T(φ(K)),并且,如果需要,还存储类别集{K}中的每个类别K的对应于该类别的变换向量矩阵φ(K)进行的变换的常数项d(φ(K))。对于输入模式p,在类别K的模式p的变换特征向量Y(p;K)和存储在参考词典的页L({K};φ(K))中的变换参考向量R(φ(K))、变换加权向量T(φ(K))、以及在需要时存储的类别K的常数项d(φ(K))之间执行类别K的匹配。
应用存储在变换识别词典L({K})122的页L({K};φ(K))中的对应于每个类别K的变换向量矩阵φ(K)的每一类别的变换参考向量和变换加权向量,第二识别模块116产生在作为匹配向量的类别K的输入模式p的变换特征向量Y(p;K)与类别集{K}中的每个类别的变换参考向量R(φ(K))之间的第二差分值。第二识别模块将类别集中的每个类别的第二差分值传送到分类器118。下面将说明变换识别词典L({K};φ(K))页的结构。
当可靠性确定模块112的输出信号处于其LOW状态、表明仅仅基于由第一识别模块110产生的第一差分值的模式识别是不可靠的时,分类器118在确定输入模式的类别之前修改每个类别的第一差分值。对于每个类别,分类器将由第二识别模块116为每个类别确定的第二差分值乘以一个恒定乘数,并将结果加到从第一识别模块接收的该类别的第一差分值上,以产生一个修正的差分值。分类器然后识别出在类别{K}中的修正差分值最小的类别,并提供一个将该类别指示为输入模式的类别的代码。
在分类器118中使用的乘以第二差分值的乘数是在实验中选定的,以提高所有类别的识别精度。应用一个公众可得到的模式数据库、例如字符模式数据库来训练和测试依据本发明的模式识别装置。数据库中的一些字符模式被用作为训练模式,剩下的用作为测试模式。例如,数据库中五分之四的字符模式可以被用作为训练模式,剩下的可以被用作为测试模式。选择使整个识别精度最大的乘数。此外,在需要高于平均的识别精度的情况下,除了公众可得到的字符数据库之外,还可以使用与编译无关的字符数据库,以提高字符集的一特定区域的字符识别的精度。此外,所记录的字符模式的全集可以被用作为训练模式。然而,如果所记录的字符模式的一部分被用作为训练模式而剩下的用作为测试模式,则模式识别装置的识别性能的稳定性和牢固性可以被更可靠地估计。交换用作为训练模式的记录字符模式和用作为测试模式的记录字符模式也是很有效的。
虽然显示的特征变换模块114和第二识别模块116是根据可靠性确定模块112的输出信号操作的,但这并不是决定性的。特征变换模块和第二识别模块可以为每个输入模式产生第二差分值。在这种情况下,可靠性确定模块的HIGH状态输出信号使得分类器118忽略第二差分值,而只根据第一差分值确定输入模式的类别。
图2是显示产生类别集{K}中的每个类别K的变换向量矩阵φ(K)所执行的处理的流程图。这个处理可以在上述的模式识别装置的实施例中执行,也可以独立地执行。在后一种情况下,将处理结果装载进该模式识别装置。首先,在步骤10,输入一组训练模式。每个训练模式所属的类别是已经定义好的。在步骤12,在训练模式上执行初步的模式识别操作。这个操作可以用图1所示的模式识别装置的实施例的输入模块102、特征提取模块108、第一识别模块110、可靠性确定模块112和分类器118执行。对于每个训练模式q,初步模式识别操作为类别集{K}中的每个类别K产生在训练模式与参考特征向量之间的产生一个差分值,并进行训练模式类别的确定和类别确定的可靠性的确定。
在步骤14,对由在步骤12执行的初步模式识别操作产生的识别结果进行估计,以便为每个类别产生一个竞争模式集。两种类型的模式都被分配给每个类别的竞争模式集。下面将说明对关于类别K的识别结果的估计。
分配给类别K的竞争模式集的第一种类型的模式是其定义类别不是类别K、但在步骤12执行的初步模式识别操作将其错误识别为属于类别K的模式。这种类型的竞争模式被称为类别K的竞争模式集中的错误模式pe(K)。
分配给类别K的竞争模式集的第二种类型的模式是其定义类别不是类别K、但在步骤12执行的初步模式识别操作几乎将其错误识别为属于类别K的模式。如果类别K是具有第二最小差分值的类别、并且在最小差分值和次最小差分值之间的增量较小,则模式几乎被错误识别为属于类别K。这种类型的竞争模式被称为类别K的竞争模式集中的相近差错模式pn(K)。相近差错模式由可靠性确定模块112来识别。
错误模式pe(K)是通过将被初步模式识别操作分配给类别K的每个训练模式与该训练模式的定义类别进行比较来识别的。被分配给类别K并且其定义类别不是类别K的训练模式被识别为错误模式。
相近差错模式pn(K)是以下列方式识别的。对于其定义类别不是类别K的训练模式,确定在训练模式与类别K间的差分值和训练模式与初步模式识别操作将训练模式所分配到的类别之间的差分值之间的增量。接着,从增量小于一阈值的训练模式中选择固定数目的训练模式。在执行这个选择的过程中,从最小的开始,以其增量为顺序选择训练模式。
最好是错误模式和相近差错模式一起构成了类别K的竞争模式集Λ(K)。或者,可以省去相近差错模式,以使得竞争模式集仅仅包括错误模式。然而,测试已经表明,在竞争模式集中包括相近差错模式会产生更好的结果。特别地,当只有少数错误模式时,包括相近差错模式的效果会产生显著的提高。
在步骤16,对被定义为属于类别K的所有训练模式的特征向量进行平均,以产生类别K的平均向量Rm(K)。
在步骤18,从类别K的平均向量Rm(K)减去竞争模式集中的每个竞争模式的特征向量,以产生竞争模式的差分向量。
在步骤20,确定在步骤18产生的差分向量的自相关矩阵。这是由如下完成的类别K的竞争模式集中的第n个竞争模式pr,n的特征向量是X(K;r;n)。在步骤18确定的该竞争模式的差分向量是Ξ(K;r;n),其中Ξ(K;r;n)=X(K;r;n)-Rm(K)差分向量Ξ(K;r;n)的自相关矩阵Q(K;r)为Q(K,r)=Σn=1NΞ(K;r;n)Ξ(K;r;n)tN(K;r)---(7)]]>其中,N(K;r)是竞争模式集中的竞争模式的总数,从1到N的求和是在竞争模式集上的求和,t代表差分向量的转置。
在步骤22,确定自相关矩阵Q(K;r)的特征向量φ(K;m),并用于形成类别K的变换向量矩阵φ(K)。构成类别K的变换向量矩阵的变换向量的最大个数等于特征向量的维数M。变换向量矩阵的第m个变换向量是自相关矩阵的具有第m个最大特征值的特征向量。
在步骤18计算出的差分向量代表在竞争模式集中的每个竞争模式与类别K的平均向量之间的差。自相关矩阵Q(K;r)的特征向量被认为是在类别K与竞争模式之间的差的正交函数展开。因此,自相关矩阵Q(K;r)的特征向量准确地反映了在类别K与竞争模式之间的差的主分量。已经发现,输入特征向量在自相关矩阵Q(K;r)的特征向量上的投影在将类别K的类别内模式集从0竞争模式集分离中是非常有效的。
在步骤24,执行一个测试,以确定是否已经为类别集{K}中的每个类别K产生了一个变换向量矩阵。如果结果为是,则执行结束。如果结果为否,则执行返回到步骤14,以便可以为类别集中的另一个类别产生变换向量矩阵。
在确定类别K的变换向量矩阵的另一种方式中,除了类别K的平均向量,还确定类别K的类别内模式集的协方差矩阵S(K)。类别内模式集由所定义类别为类别K的训练模式组成。然后,在已经在步骤20计算出类别K的竞争模式集的自相关矩阵Q(K;r)之后,将其乘以类别内模式集的协方差矩阵的逆矩阵,以产生矩阵S(K)-1Q(K;r)。最后,在步骤22,确定矩阵S(K)-1Q(K;r)的特征向量,并用于形成类别K的变换向量矩阵φ(K)。
自相关矩阵Q(K;r)的特征向量定义了一个轴,沿轴每个竞争模式的差分向量在这个轴上的投影对于所有竞争模式的平方平均为最大。相反,矩阵S(K)-1Q(K;r)的特征向量定义了一个轴,沿轴每个竞争模式的差分向量在这个轴上的投影对于所有竞争模式的平方平均增大,并且当该类别的类别内模式集被投影时沿这个轴的散射相对较小。这也被认为在将类别K的类别内模式集从竞争模式集分离中是非常有效的。
在步骤22执行的采用过程中,将具有最大特征值的特征向量采用为变换向量矩阵的一个变换向量。另外,还选择特征值逐渐变小的数个特征向量。所选择的特征向量的个数确定了变换向量矩阵的复杂性以及应用变换向量矩阵执行的处理的复杂性。于是,希望只选择那些特征值有效的特征向量。所选择的特征值的个数是在具有最大特征值的特征向量和所需特征值的特征向量之间的特征向量的个数,其中,从最大特征值到所需特征值的特征值的总和大于所有特征值总和的一预定分数,例如0.9。或者,所选择的特征向量的个数可以由实验确定。
在上述说明中,采用为每个类别确定的特征向量作为构成用于变换输入模式的特征向量的相应变换向量矩阵的变换向量。或者,特征向量变换可以使用从构成类别子集{K}’的所需类别个数的竞争模式集的超集产生的变换向量矩阵。实现这种变换向量矩阵的变换考虑多个类别。
类别子集{K}’由所需类别数目组成。按照错误模式的个数和竞争模式集的大小的顺序排列类别集{K}中的所有类别,其中错误模式的个数具优先权,从而选择包含在类别子集{K}’中的类别。然后从排列的大数目错误模式/大竞争模式集一端取出所需数目的类别,构成类别子集{K}’。可选地,可以使类别子集{K}’与类别集{K}共同扩张。
然后,在一个与步骤20类似的步骤中,应用等式(8)计算类别子集{K}’的差分向量的自相关矩阵Q({K}’;r),其中等式(8)是基于给出了类别K在类别子集{K}’的差分向量Ξ(K;r;n)的自相关矩阵Q(K;r)的等式(7)的Q({K}′,r)=Σk=1{K}Σn=1NΞ(K;r;n)Ξ(K;r;n)tΣk=1{K}N(K;r)]]>=Σk=1{K}N(K;r)Q(K;r)Σk=1{K}N(K;r)]]>(8)在这里,从1到{K}的求和代表要增加到类别集{K}中构成类别子集{K}’的那些类别上的项。
在一个与步骤22类似的步骤中,确定类别子集{K}’的差分向量的自相关矩阵Q({K}’;r)的第m个特征向量φ({K}’;m),并将其用作为类别子集{K}’的变换向量矩阵φ({K}’)的第m个变换向量。
在与上述类似的另一个选择中,找到属于类别子集{K}’的训练模式的平均协方差矩阵S({K}),并用S({K})-1Q({K}’;r)的特征向量代替变换向量φ({K}’;m)。这提供了与如上所述的用S(K)-1Q(K;r)的特征向量代替特征向量φ(K;m)相同的效果。
图3显示了产生变换识别词典L({K};φ(K))的过程的流程图。可以使用与用φ({K}’)代替φ(K)相同的处理来产生变换识别词典L({K};φ({K}’))。这个处理可以在本公开文本中描述的模式识别装置的实施例中执行,或可以单独地执行。在后一种情况下,采用合适的存储器或传输介质将处理产生的结果装载进模式识别装置。
在图3所示的变换识别词典产生处理中,步骤10-14与上面结合图2说明的变换向量矩阵产生过程中的步骤10-14相同,这里不再详细说明。在步骤14,将在初步模式识别步骤12中被错误识别或几乎错误识别为属于每个类别的训练模式识别为该类别的竞争模式集Λ(K)。
在步骤30,应用该类别的变换向量矩阵φ(K)变换被定义为属于每个类别的所有训练模式的特征向量。
在步骤32,在每个类别的类别内模式集和竞争模式集之间执行判别分析。在判别分析中使用的变量是应用类别的变换向量矩阵φ(K)变换的特征向量。判别分析导出一个判别函数,该判别函数最优地将该类别的竞争模式集与类别内模式集分开。可以应用发明人在参考文件3中所陈述的过程来执行判别分析。
在步骤34,将在步骤32为每个类别确定的判别函数的值乘以一常数,并将结果加到在步骤12为每个训练模式确定的每个类别的差分值上,以产生一个修正距离值。
在步骤36,然后应用在步骤34产生的修正距离值确定每个训练模式的类别。
在步骤38,为每个训练模式估计在步骤36产生的模式识别结果,并执行一个测试,以确定在步骤32、34和36执行的处理是否产生了新的错误识别模式。新的错误识别模式为不是该类别的竞争模式集中的已有成员的错误模式。如果测试结果为否,执行进行到步骤40。如果测试结果为是,则已经产生了新的错误识别模式,执行进行到步骤42,将每个类别的新的错误识别模式加到该类别的竞争模式集中。然后执行返回到步骤32,重复包括步骤32、34、36、38和42的循环,直到步骤38中的测试结果为否。
在步骤40,应用在步骤32的最后一次循环中产生的判别函数产生变换识别词典。
当类别K的变换特征向量Y(K;p)的平均向量Rm(φ(K))的第m个分量用rm(φ(K);m)表示时,类别K的判别函数F(Y(K;p),Rm(φ(K)))由下式给出F(Y(K;p),Rm(Φ(K)))=Σm=1Ma(m)(y(p;m)-rm(Φ(K);m))2+Σm=1Mb(m)(y(p;m)-rm(Φ(K);m))+c(Φ(K))]]>=Σm=1Ma(m)(y(p;m)-rm(Φ(K);m)-b(m)2a(m))2+Σm=1Mb(m)24a(m)+c(Φ(K))]]>其a(m)加权向量是第m个分量,其参考向量rm(φ(K);m)-b(m)/(2a(m))是第m个分量,值为
的常数项作为类别K识别词典存储在变换的识别词典中。根据该过程,当与步骤12中所用的判别函数合并时,可以确定一个使识别精度最大的判别函数。
发明人已经发现,在学习过程的重复操作中,识别精度最初是提高的,但学习效果逐步降低,识别精度实际上也降低。这个事实可用于当下述条件之一出现时自动停止学习过程(1)识别精度达到一特定值;或者(2)学习过程的另一次重复没有提高识别精度。
当采用第二种标准时,将学习过程重复操作开始之前的识别词典的内容和每个类别的变换向量矩阵存储在存储器中以备使用。依据本发明的模式识别装置可以包括一个显示器,通知用户学习重复操作已经停止,并显示所达到的识别率和执行的学习过程的重复次数。
在上述处理中,可以自动编译竞争模式。类别和字符模式作为训练模式和测试模式被获得。错误模式和相近差错模式被提取出。此时,如上所述自动确定错误模式。如果指定了相近差错模式的最大个数,则相近差错模式被自动确定。或者,只在错误模式的个数小于预定数时才选择预定数目的相近差错模式。
将训练模式、需要时包括测试模式给到如上所述在计算机上实施的依据本发明的识别系统上,并自动学习。因此,依据本发明的识别系统具有一种简单的实施方式,可以通过向其提供对应于应用的训练模式使其容易地适用于一给定应用。
图4是依据本发明的模式识别装置的第二实施例130的方框图。在这里,对应于上面参考图1说明的第一实施例的元件的元件由相同标号表示,不再详细说明。在这个实施例中,输入部分102将预处理过的输入模式输入给作为第一特征提取模块的特征提取模块108和第二特征提取模块132。第一特征提取模块从每个输入模式提取出第一特征向量。由第一识别模块110和可靠性确定模块112对第一特征向量执行操作。第二特征提取模块与第一特征提取模块类似,但从每个预处理输入模式提取出不同的特征分量,以产生第二特征向量。
特征变换模块134的操作与上述的特征变换模块114类似,应用类别集{K}中的每个类别的变换向量矩阵φ(K)变换由第二特征提取模块132产生的每个第二特征向量。第二识别模块136的操作与第二识别模块116类似,应用变换识别词典138在变换的第二特征向量上执行识别过程。对于每个输入模式,第二识别模块产生在输入模式和类别集{K}中的每个类别之间的差分值。
当可靠性确定模块输出信号处于其HIGH状态时,分类器118只应用由第一识别模块110产生的第一差分值确定每个输入模式的类别,而当可靠性确定模块输出信号处于其LOW状态时,分类器118同时应用由第一识别模块110产生的第一差分值和由第二识别模块116产生的第二差分值来确定每个输入模式的类别。
所示的第二特征提取模块132、特征变换模块134和第二识别模块136根据可靠性确定模块112的输出信号而操作,从而它们只对于由可靠性确定模块确定出基于由第一识别模块110产生的第一差分值的模式识别是不可靠的那些输入模式共同产生第二差分值。或者,这些模块可以为每个输入模式产生第二差分值。在这种情况下,当可靠性确定模块的输出信号的状态处于其HIGH状态时,分类器忽略由第二识别模块产生的第二差分值,只根据由第一识别模块产生的第一差分值确定输入模式的类别。
第二个实施例与第一个实施例的不同之处在于特征变换模块134是在由第二特征提取模块132产生的第二特征向量上操作,而不是在由特征提取模块108产生的特征向量上操作,并且第一和第二特征提取模块从预处理输入模式提取出不同的特征集。通过使第二识别模块136在更小的特征集上操作,可以将其简化。如上所述,根据应用类别已知的测试模式确定识别精度的测试,可以选择第二个实施例或第一个实施例,这取决于哪一个给出更好的识别精度。
通常,第一特征向量和第二特征向量没有共同的特征分量。然而,当这会明显地提高识别精度时,它们可以具有相同的特征分量。在上述的第一和第二实施例中,第一识别模块110被描述为应用一个基于根据判别分析学习的识别函数来操作。然而,这不是决定性的,也可以替代地使用其他识别函数。
在上述参考图1说明的模式识别装置的实施例中,在特征变换模块114中变换特征向量的变换向量矩阵φ(K)可以由上述参考图2说明的变换向量矩阵φ({K}’)来代替。如果进行了替代,则在第二识别模块116中所用的变换识别词典L({K};φ(K))也由变换识别词典L({K};φ({K}’))代替。对于图4所示的第二实施例的特征变换模块134和第二识别模块136中所用的变换识别词典138也可以作出相应的改变。在这两种情况下,如上所述,应用类别子集{K}’的竞争模式集来确定变换向量矩阵φ({K}’)。类别子集{K}’的竞争模式集由构成类别子集{K}’的所有类别的竞争模式集组成。在变换识别词典L({K};φ({K}’))中,类别集{K}中的每个类别K的参考向量应用变换向量矩阵φ({K}’)来变换,以产生该类别的变换参考向量。当类别子集{K}’只由一个类别组成时,{K}’变成K。
当类别集{K}或类别子集{K}’中只有一个类别时,在上述解释中可以将{K}和{K}’设置为K。类别子集{K}’能够包括多至类别集{K}中的所有类别。
可以将特征变换模块114、134操作为使其通过应用变换向量矩阵φ({K}’)变换输入模式的特征向量而为属于类别子集{K}’的每个类别产生一个变换特征向量。在这种情况下,特征变换模块还通过应用每个剩余类别的变换向量矩阵φ(K)变换输入模式的特征向量而为属于类别集{K}的剩余类别产生变换特征向量。或者,可以将变换模块114、134操作为使其通过应用变换向量矩阵φ({K}’)变换输入模式的特征向量而为属于类别集{K}的每个类别产生一个变换特征向量。前一种操作模式很容易地提高了识别精度,但对于操作速度和存储器容量比后者往往具有更大的需求。
在依据本发明的模式识别装置的第一个实施例的变形中,省去了第一识别模块110和可靠性确定模块112。将从特征提取模块108提取出的每个提取特征向量X(p)不改变地输入到特征变换模块114,分类器只在由第二识别模块116产生的差分值的基础上确定输入模式的类别。
在上面参考图4说明的依据本发明的模式识别装置的第二个实施例的变形中,省去了可靠性确定模块112,第二特征提取模块132、特征变换模块134和第二识别模块136在每个输入模式上操作,分类器118同时应用由第一识别模块110产生的第一差分值和由第二识别模块136产生的第二差分值来确定每个输入模式的类别。
图5显示了依据本发明的模式识别装置的第三个实施例。这个实施例的对应于上述参考图1的第一实施例的元件用相同的标号标示,这里不再详细说明。在这个实施例中,特征提取模块142从每个预处理输入模式提取第一特征向量和第二特征向量。两个特征向量在由特征向量合并模块146合并之前是单独处理的。识别模块148将合并的特征向量用作为其用识别词典执行匹配操作时的匹配向量。
特征提取模块142从每个预处理输入模式提取出两个特征集,并将每个特征集表示为一个特征向量。特征提取模块将第一特征向量X1(p)发送给减维模块144,将第二特征向量X2(p)发送给特征变换模块114。
减维模块144应用例如已知的卡鲁年-洛耶夫(Karhunen-Loeve)展开式减少第一特征向量X1(p)的维数,并将维数减少的特征向量Z1(p)传送给特征向量合并模块148。减维模块可以被省略,在这种情况下,Z1(p)=X1(p)。
当第一特征向量X1(p)的维数被减少时,所得到的维数减少的特征向量Z1(p)的第m个分量z1(p;m)由下式给出z1(p;m)=X1(p)φ(s;m) (8)其中,φ(s;m)是第m级维数减少的向量其可以应用在由该实施例执行的学习处理中使用的所有训练模式的方差矩阵的特征向量。其他已知的减维技术也可以使用。在向量φ(s;m)中的s符号表示使用的所有训练模式。
特征变换模块114应用变换向量矩阵φ(Z1;{K}’)变换第二特征向量X2(p)的特征。变换向量矩阵φ(Z1;{K}’)表示通过应用从训练模式提取出的维数减少的特征向量Z1(p)执行模式识别而产生的、基于类别子集{K}’的竞争模式集的变换向量矩阵。
应用变换向量矩阵φ(Z1;{K}’)变换第二特征向量X2(p)的结果是变换特征向量Y1(p;Z1;{K}’)。
变换特征向量Y1(p;Z1;{K}’)的第m个特征分量y1(p;Z1;{K}’;m)为y1(p;Z1;{K}’;m)=X2(p)φ(Z1;{K}’;m)其中,φ(Z1;{K}’;m)是变换向量矩阵φ(Z1;{K}’)的第m个变换向量。
特征向量合并模块146提取出维数减少的特征向量Z1(p)和变换特征向量Y1(p;Z1;{K}’)的所有分量,以产生合并特征向量C(Z1;Y1)。或者,这个模块可以通过只从从减维模块144和特征变换模块114接收的向量提取出特定分量来产生合并特征向量。特征向量合并模块将合并的特征向量C(Z1;Y1)输送给识别模块148。
识别模块148采用合并特征向量C(Z1;Y1)作为其匹配向量,并在匹配向量和合并识别词典150之间执行一个匹配操作。由识别模块148执行的处理与上面参考图1说明的第一识别模块110执行的处理类似并为每个类别产生一个差分值。识别模块148将差分值传送给分类器152。分类器然后通过识别对应于从识别模块接收到的差分值的最小值的类别而确定出输入模式的类别。
在这个实施例中使用的合并识别词典150可以通过运用应用从每个训练模式导出的合并特征向量C(Z1;Y1)的LDA来生成。此外,虽然运用减维来减少第一特征向量的维数,但通过应用为维数减少的特征向量Z1(p)最优化的识别词典首先执行识别过程来确定变换向量矩阵φ(Z1;{K}’)。根据应用这个词典的识别结果,编译竞争模式集,并以与上述变换向量矩阵φ({K}’)相同的方式找到变换向量矩阵φ(Z1;{K}’)。
这个实施例具有提高的识别精度和迅速的识别处理时间,但不需要合并识别词典很大。
在这个实施例中,第一特征向量可以与第二特征向量相同。
图6显示了依据本发明的模式识别装置的第四个实施例160。这个实施例的对应于前面参考图1和4说明的第一和第二实施例的元件用相同的标号标示,这里不再进行描述。
在图6所示的模式识别装置中,将图1所示的模式识别装置100是通过增加了第二可靠性确定模块160;以及图4所示的第二个实施例的特征提取模块132、特征变换模块134和识别模块138而改进的。在第四个实施例中,这些元件被称为第二特征提取模块132、第二特征变换模块134和第三识别模块136。第三识别模块包括第二变换识别词典138。
第二可靠性确定模块162响应于第一可靠性确定模块112的输出信号的LOW状态,与第一特征变换模块114和第二识别模块116一起操作。这个输出信号的LOW状态表明基于由第一识别模块110产生的第一差分值的模式识别不可靠。
第二可靠性确定模块162接收由第一识别模块110和第二识别模块116产生的差分值。第二可靠性确定模块的操作与第一可靠性确定模块112类似,以确定基于由第一和第二识别模块产生的差分值的模式识别的可靠性,并产生一个输出信号,该输出信号的状态表明这种模式识别操作的可靠性。将第二可靠性确定模块的输出信号作为控制信号馈送给第二特征提取模块132、第二特征变换模块134、第三识别模块136和分类器164。
第二特征提取模块132从模式输入部分102接收预处理过的模式,从输入模式提取出一组特征,并将提取出的特征表示为第二特征向量。从第二特征提取模块提取出的特征不同于由第一特征提取模块108从输入模式提取出的特征。第二特征提取模块将每个第二特征向量传送给第二特征变换模块,第二特征变换模块变换第二特征向量,并将所得的变换第二特征向量传送给第三识别模块136。
第三识别模块136采用变换的第二特征向量作为匹配向量,并在匹配向量和第二变换识别词典138之间执行匹配操作。匹配操作为每个类别产生第三差分值。第三识别模块将第三差分值送给分类器164。
分类器164分别根据第一可靠性确定模块112和第二可靠性确定模块162的第一和第二输出信号进行操作,以便应用从第一识别模块110、第二识别模块116和第三识别模块136接收的差分值确定输入模式的类别。当第一可靠性确定模块输出信号处于其HIGH状态时,分类器只从由第一识别模块产生的第一差分值确定输入模式的类别。当第一可靠性确定模块输出信号处于其LOW状态并且第二可靠性确定模块输出信号处于其HIGH状态时,分类器从由第一识别模块产生的第一差分值和由第二识别模块产生的第二差分值确定输入模式的类别。当第一和第二可靠性确定模块输出信号都处于其LOW状态时,分类器从由第一识别模块产生的第一差分值、由第二识别模块产生的第二差分值和由第三识别模块产生的第三差分值确定输入模式的类别。
在上述的特征向量变换中采用的变换向量矩阵和识别词典可以应用上述生成这种变换向量矩阵和识别词典的方法来生成。例如,在特征变换模块114和134使用的变换向量矩阵可以从通过应用第一识别模块110在训练模式上执行模式识别而产生的竞争模式集来确定。可以将识别词典120、122和138确定为使得识别率最好对于所有训练模式直至分别放置这些识别词典的第一识别模块110、第二识别模块116和第三识别模块136的输出为最大。确定变换向量矩阵比确定识别词典要经过更多的变量。例如,在特征变换模块114和134中使用的变换向量矩阵可以从通过应用第一识别模块110在训练模式上执行模式识别操作而产生的竞争模式集来确定。或者,在第二特征变换模块134中使用的变换向量矩阵可以从通过应用第一识别模块110和第二识别模块116在训练模式上执行模式识别操作而产生的竞争模式集来确定。
在刚刚描述的实施例的第一个变形中,省去了第二特征提取模块132,将第一特征提取模块108产生的特征向量输入到第二特征变换模块134。在第二个变形中,省去了第二特征提取模块和第二特征变换模块,将第一特征变换模块114产生的变换特征向量直接输入给第三识别模块136。
在特征提取模块、特征变换模块之前的识别模块的串行安排或者特征提取模块和特征变换模块可以被看作为一个识别单元。在图6所示的实施例中,级联了三个识别单元,其中一个识别单元包括第三识别模块136。在这个实施例上的变形在位于接近模式输入部分102的上游并且另外或者在接近分类器的下游可以有另外的识别单元。可以将从输入模式导出的预处理模式输入给多个识别单元,这取决于一个或多个识别单元的识别结果。
在刚刚描述的变形中,将输入模式和通过线性变换表示每个输入模式的特征向量而导出的向量输入到识别单元,识别单元产生一个识别结果,该识别结果可以是输入模式的类别或输入模式的一组差分值的指示,分类器最后从识别单元的输出确定输入模式的类别。因此,根据从一个上游识别单元获得的竞争模式集确定由识别单元使用的变换向量矩阵。将每个识别单元的识别词典设置为使由直至包括识别单元的模式识别装置的部分在训练模式上执行的模式识别的识别精度最大或至少使其显著提高。
图7是典型的模式识别系统200的方框图。该系统由学习中心202和一个或多个终端组成,一个典型终端如204所示,由通信链路或可传输存储介质206链接。
学习中心202使用内装或外连的资源运行控制/训练软件210,控制/训练软件210处理训练模式集212,以生成变换向量矩阵集214和识别词典216。在变换向量矩阵和识别词典已经由学习中心202生成之后,应用合适的存储介质将它们存储下来,然后可以发送给终端204。该终端可以是光学字符识别(OCR)设备,该设备实际上在临时存储在存储介质中的未知模式上执行模式识别。或者,可以采用通信链路206将变换向量矩阵和识别词典发送给终端204。如果所用的通信链路是双向的,则学习中心可以接收由终端提供的错误模式,可以使用错误模式更新变换向量矩阵和识别词典。学习中心202可以包括能够显示诸如识别精度等信息的显示器(未显示)。系统可以包括一个输入设备(未显示),通过该输入设备可以输入命令和数据。
终端204应用内装或外连资源运行控制/识别软件220。使用模式输入模块222的每个模式输入由变换向量矩阵224进行变换,并匹配到识别词典226,以确定该模式的类别。
因为可能需要充分的计算机资源来生成变换向量矩阵214和识别词典216,因此在选择在计算机的性能和成本与变换向量矩阵和识别词典之间的最佳平衡上有相当大的余地。任一种装置都可以执行训练和识别。
依据上面说明的本发明,当第一识别模块和第二识别模块被有效地组合时,可以在第一识别模块中找到将每个类别的类别内模式集与该类别的竞争模式集有效地分开的第一向量。第二识别模块建立一个识别词典,该识别词典使得尽可能多的被第一识别模块错误识别的模式被正确地识别。第二识别模块应用在第一向量上投射出的特征向量的值作为特征向量。通过有效地合并两个识别模块,本发明显著地提高了识别精度。
此外,依据本发明的模式识别装置和方法可以容易地用于仅仅通过应用适当类型的训练模式执行学习过程来在不同类型的模式上执行模式识别。
这里公开的模式识别装置的实施例可以用专用硬件、例如加法器和乘法器来构造。在一个最佳实施例中,模式识别装置在由微处理器(未显示)或数字信号处理器执行的计算机程序中实施。还应该指出的是,在基于计算机和基于DSP的实施例中,模式识别装置的各种模块可以是临时性的,可以随着执行各种模式识别和学习操作而存在或消失。不是所有的模块需要在计算机或DSP中同时存在的。
在最佳实施例中,包括一个模式识别程序的计算机实现上述的所有过程。这个公开为本领域普通技术人员提供了足够的信息来应用高级(例如,C或C++)或低级程序设计语言编写合适的模式识别程序。因此,省略了程序清单本身。模式识别程序可以通过将该程序实现在一个合适的有形介质、例如一组软盘、CD-ROM、DVD-ROM上而传送到要运行的计算机上,或者可以由合适的数据链路发送到这种计算机上。
虽然这个公开文本详细描述了本发明的例示性实施例,应该理解,本发明并不限于所述的精确实施例,各种修改在由附带的权利要求限定的本发明的范围内都可以实现。
权利要求
1.一种模式识别装置,包括输入部分(102),接收输入模式,所述输入模式包括一个属于构成一个类别集的多个类别中的一个的模式;第一特征提取模块(108),将模式的特征表示为第一特征向量;第一特征变换模块(114),应用变换向量矩阵变换第一特征向量的至少一部分,以产生一个对应于每个类别的至少部分变换的第一特征向量;包括识别词典的识别部分(120,122),存储每个类别的匹配信息和第一变换匹配信息,其中第一变换匹配信息已经应用变换向量矩阵进行了变换,所述识别部分还通过执行在匹配信息及第一变换匹配信息,和至少从对应于每个类别的至少部分变换的第一特征向量导出的至少一个匹配向量之间的匹配操作,为每个类别产生至少一个差分值;以及分类器(118),根据所述至少一个差分值识别模式所属的类别。
2.如权利要求1所述的模式识别装置,其中第一特征变换模块变换所有第一特征向量,以产生对应于每个类别的第一变换特征向量;识别部分包括第一识别模块(110),通过在匹配信息与从第一特征向量导出的第一匹配向量之间执行匹配操作,为每个类别产生一个第一差分值,以及第二识别模块(116),通过在第一变换匹配信息与从对应于每个类别的第一变换特征向量导出的第二匹配向量之间执行匹配操作,为每个类别产生一个第二差分值;所述装置还包括可靠性确定模块(112),可靠性确定模块接收每个类别的第一差分值,并表明基于每个类别的第一差分值的模式识别何时是可靠的;以及分类器当可靠性确定模块表明基于每个类别的第一差分值的模式识别可靠时,只根据每个类别的第一差分值识别模式所属类别,以及否则,根据每个类别的第一差分值和第二差分值识别模式所属类别。
3.如权利要求2所述的模式识别装置,其中模式识别装置还包括将模式的特征表示为第二特征向量的第二特征提取模块(132),所述第二特征提取模块被置于输入部分(102)和第一特征变换模块(134)之间;以及第一特征变换模块变换第二特征向量,以产生变换特征向量。
4.如权利要求2所述的模式识别装置,其中所述装置还包括第二可靠性确定模块(162),接收每个类别的第一和第二差分值,并表明基于每个类别的第一和第二差分值的模式识别何时是可靠的,第二特征提取模块(132),将模式的特征表示为第二特征向量,以及第二特征变换模块(134),应用第二变换向量矩阵变换第二特征向量,以产生对应于每个类别的第二变换特征向量;识别词典(120,122,138)另外还为每个类别存储第二变换匹配信息,第二变换匹配信息已经应用第二变换向量矩阵进行了变换;识别部分包括第三识别模块(136),第三识别模块(136)通过在第二变换匹配信息与从对应于每个类别的第二变换特征向量导出的第三匹配向量之间执行匹配操作,为每个类别产生第三差分值;以及分类器(164)当第一可靠性确定模块(112)表明基于每个类别的第一差分值的模式识别可靠时,只根据每个类别的第一差分值识别模式所属的类别,当第二可靠性确定模块(162)表明基于每个类别的第一和第二差分值的模式识别可靠时,只根据每个类别的第一和第二差分值识别模式所属的类别,以及否则,根据每个类别的第一、第二和第三差分值识别模式所属的类别。
5.如权利要求2所述的模式识别装置,其中第一特征提取模块(108)和第一识别模块(110)的串行排列构成了第一识别单元;第一特征变换模块(114)和第二识别模块(116)的串行排列共同构成了第二识别单元;以及所述模式识别装置还包括附加识别单元(132,134,136),所述附加识别单元包括下列的串行排列特征提取模块(132)和特征变换模块(134)中的至少一个,以及包括变换识别词典(138)的识别模块(136),其中所述变换识别词典被优化为识别由第一和第二识别单元不可靠地识别的模式。
6.如权利要求3、4或5所述的模式识别装置,其中由第一特征提取模块产生的第一特征向量表示模式的第一个特征集;以及由第二特征提取模块产生的第二特征向量表示模式的第二个特征集。
7.如权利要求6所述的模式识别装置,其中,第一个特征集和第二个特征集部分重叠。
8.如权利要求1所述的模式识别装置,其中,第一特征提取模块(142)将模式的第一个特征集表示为第一特征向量,另外将模式的第二个特征集表示为第二特征向量;第一特征变换模块(114)变换所有的第一特征向量,以产生对应于每个类别的第一变换特征向量;以及所述装置还包括特征向量合并模块(146),所述特征向量合并模块合并第二特征向量和对应于每个类别的第一变换特征向量,以产生对应于每个类别的至少部分变换的第一特征向量,所述特征向量合并模块被置于第一特征提取模块和识别部分(148)之间。
9.如权利要求8所述的模式识别装置,其中第二特征向量具有多维;所述装置还包括减维模块(144),所述减维模块减少第二特征向量的维数,以产生一个维数减少的第二特征向量,所述减维模块被置于第一特征提取模块和特征向量合并模块之间;以及特征向量合并模块(146)合并维数减少的第二特征向量和对应于每个类别的第一变换特征向量,以产生对应于每个类别的至少部分变换的特征向量。
10.如权利要求9所述的模式识别装置,其中,特征向量合并模块通过提取出维数减少的第二特征向量,和对应于每个类别的第一变换特征向量中的至少一个的子集而产生合并特征向量。
11.如权利要求1-10中的任何一个所述的模式识别装置,其中变换向量矩阵包括一个根据一个竞争模式集产生的变换向量矩阵,其中所述竞争模式集由被错误识别为属于构成一个类别子集的多个类别的竞争模式组成的;以及所述根据变换向量矩阵产生的至少部分变换的第一特征向量对于构成所述类别子集的多个类别是共同的。
12.一种识别模式的方法,所述方法包括接收(102)包括一个属于构成类别集的多个类别中的一个的模式的输入模式;将模式特征表示(108)为一个特征向量;应用变换向量矩阵变换(114)特征向量的至少一部分,以产生一个对应于每个类别的至少部分变换的特征向量;在每个类别的匹配信息及变换匹配信息,其中变换匹配信息是已经应用变换向量矩阵进行变换了的匹配信息,和从对应于每个类别的至少部分变换的特征向量导出的一个匹配向量之间执行(116)匹配操作,以便为每个类别产生至少一个差分值;以及根据至少一个差分值识别(118)模式所属的类别之一。
13.如权利要求12所述的方法,其中,变换向量矩阵包括(a)属于类别集的一个类别、或者(b)属于类别集的由多个类别组成的一个类别子集两者之一的一个变换向量矩阵,变换向量矩阵由下列步骤产生接收(10)其各自的类别已经定义的训练模式并将训练模式的特征表示为第一特征向量;通过在从第一特征向量导出的第一匹配向量与匹配信息之间执行匹配操作,识别(12)训练模式分别所属的类别;将识别出的训练模式所属的类别与各个定义的类别进行比较(14),以便为(a)类别或(b)类别子集中的其中一个分别定义一个竞争模式集;从被定义为属于分别(a)类别或(b)类别子集中的其中一个的所有训练模式的特征向量确定(16)出一个平均向量;应用平均向量为属于竞争模式集的每个训练模式计算(18)出一个差分向量;计算(20)差分向量的自相关矩阵;以及采用(22)自相关矩阵的特征向量作为分别构成(a)类别或(b)类别子集的其中一个的变换向量矩阵的变换向量。
14.如权利要求13所述的方法,其中自相关矩阵的特征向量具有各自的特征值;以及采用特征向量包括对自相关矩阵的所有特征向量的特征值求和,以产生第一总和值,以及按照所采用的特征向量的特征值的降序采用特征向量,并对所采用的特征向量的特征值求和,以产生第二总和值,直到第二总和值超过第一总和值的一预定分数.
15.如权利要求13所述的方法,其中,所述方法还包括从被定义为属于所述类别的所有训练模式的特征向量计算出一个协方差矩阵,以及将协方差矩阵乘以自相关矩阵,以产生一个乘积矩阵;以及在采用特征向量中,采用乘积矩阵的特征向量代替自相关矩阵的特征向量来作为变换向量矩阵的变换向量。
16.如权利要求12-15中的任何一个所述的方法,其中,属于类别集的一个类别的变换识别信息由下列步骤产生接收(10)其各自的类别已经定义的训练模式并将训练模式的特征表示为特征向量;通过在从第一特征向量导出的第一匹配向量与匹配信息之间执行匹配操作,识别(12)训练模式分别所属的类别;将识别出的训练模式所属的类别与各个定义的类别进行比较(14),以便为所述类别定义一个竞争模式集;应用所述(a)类别和所述类别所属的(b)类别子集中的一个的变换向量矩阵,变换(30)训练模式的特征向量,以产生各个变换特征向量,所述类别子集由属于所述类别集的多个类别组成;应用变换特征向量执行(32)判别分析,以产生一个判别函数;应用判别函数计算(34)每个类别的修正差分值;根据每个类别的修正差分值再次识别(36)训练模式分别所属的类别;将根据新差分值识别出的训练模式所属的类别与各个定义的类别再次比较(38),以确定是否将附加模式错误识别为属于所述类别;以及当没有附加模式被错误识别时,应用判别函数产生(40)变换识别信息,否则,将附加模式包括(42)在所述类别的竞争模式集中,重复执行判别分析、修正差分值计算,类别重新识别和重新比较操作,直到没有附加模式被错误识别。
17.如权利要求12-16中的任何一个所述的方法,其中,所述方法还包括在每个类别的匹配信息(120)与从特征向量导出的第一匹配向量之间执行匹配操作(110),以产生每个类别的第一差分值;根据第一差分值,产生一个表明基于第一差分值的模式识别何时为可靠的可靠性指示(112);当可靠性指示表明基于第一差分值的模式识别不可靠时,根据每个类别的第一差分值和每个类别的第二差分值的倍数的总和,识别(118)所述模式所属的类别;以及所述倍数是由下列步骤确定的将乘数设置为初始值,接收其各自的类别已经被定义了的训练模式,在训练模式上执行表示,第一匹配操作执行,可靠性指示产生操作,以便识别为已识别的训练模式,对该训练模式可靠性指示表明基于第一差分值的模式识别是不可靠的训练模式作为已识别的训练模式,在已识别的训练模式的特征向量上执行变换操作,以及在已识别的训练模式上执行下列步骤,直到所述乘数具有一个对应于最大识别精度的值执行第二匹配和识别操作;将识别出的所识别的训练模式所属的类别与各个定义的类别进行比较,以确定识别精度;以及改变乘数。
全文摘要
这里提供了一种模式识别装置,包括输入部分(102)、特征提取模块(108)、特征变换模块(114)、包括识别词典的识别部分(120,122)以及分类器(118)。输入部分接收输入模式,所述输入模式包括一个属于构成一个类别集的多个类别中的一个的模式。特征提取模块将模式的特征表示为特征向量。特征变换模块应用变换向量矩阵变换特征向量的至少一部分,以产生一个对应于每个类别的至少部分变换的特征向量。识别词典存储每个类别的匹配信息(120)和变换匹配信息(122)。第一变换匹配信息已经应用变换向量矩阵进行了变换。识别部分通过执行在匹配信息及第一变换匹配信息这方面与至少从对应于每个类别的至少部分变换的特征向量导出的至少一个匹配向量这方面之间的匹配操作,为每个类别产生至少一个差分值。分类器根据所述至少一个差分值识别模式所属的类别。
文档编号G06K9/62GK1247615SQ98802531
公开日2000年3月15日 申请日期1998年2月13日 优先权日1997年2月14日
发明者川谷隆彦, 清水裕之 申请人:惠普公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1