一种基于扫描线的音符识别方法

文档序号:8445859阅读:230来源:国知局
一种基于扫描线的音符识别方法
【技术领域】
[0001]本发明涉及手写识别技术,特别涉及手写音符识别技术。
【背景技术】
[0002]现有技术下,手写识别系统大都基于特征抽取的模版匹配算法。特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。几何形状特征主要有两种表示方法,一类是轮廓特征,一类是区域特征。图像的轮廓主要针对物体的外边界,而图像的区域则关系到整个形状区域。轮廓特征抽取主要检测图像边缘,这类算法的要求是,尽可能多地标识出图像中的实际边缘,标识出的图像边缘要与实际图像中的边缘尽可能接近,图像中的边缘标识且只标识一次,可能存在的噪点不应标识为边缘。流行的基于边缘的特征提取算法有Canny算子、Sobel算子、方向链码、傅里叶算子及小波描述方法。基于区域的形状特征有几何不变距、广义傅里叶描述子、Zemike距等,这些方案通过区域平移旋转的不变性进行匹配,降低信息冗余、提高抗噪性,一个典型的显著区域算法可参考FT算法(frequency-tunedsalient reg1n detect1n)。特征抽取中的距离度量往往基于点-点之间的编辑距离,利用边缘或区域点的位置和梯度方向作为匹配信息,与根据图像学习训练提取的模版进行相似度计算,实现图像识别。
[0003]特征提取过程中采用二值的判别标准,即对于一个给定的样本,它要么属于一个类,要么不属于一个类。但识别对象的数据采集经常受多种客观条件的影响,边缘抖动、复杂噪点、光影造成的边界模糊等会严重影响识别的准确度。尤其在手写音符识别中,书写随意性更大,其形状特征也不同于传统几何图形的认知方式。因此,现有技术下的这类特征提取的方法在手写音符识别中适应效果不佳。

【发明内容】

[0004]本发明所要解决的问题是现有技术下对手写音符识别效果不佳为解决上述问题,本发明采用的方案如下:
一种基于扫描线的音符识别方法,包括如下步骤:
S1:获取用户输入的音符草图;
52:对音符草图的左右两边轮廓用轮廓分析器扫描分析轮廓的形状,将轮廓的形状用轮廓状态简化表示成轮廓状态序列;所述轮廓状态分为“上跳”、“下跳”、“高平”和“低平”;
53:将轮廓状态序列与预先构建的音符模型轮廓匹配得到对应的音符。
[0005]进一步,根据本发明的基于扫描线的音符识别方法,所述步骤S2中所述“轮廓分析器扫描分析轮廓的形状”包括以下步骤:
521:根据音符草图的大小设定抖动阈值和步进距离;
522:初始化轮廓状态序列,并将中间状态S初始化为“未知”; 523:根据步进距离对音符草图轮廓进行步进扫描,根据抖动阈值判断步进范围内轮廓走向为“上行”、“水平”还是“下行”;假如步进范围内轮廓走向向上超过抖动阈值,则标记中间状态S为“上行”;假如步进范围内轮廓走向向下超过抖动阈值,则标记中间状态S为“下行”;假如步进范围内轮廓走向向上和向下均不超过抖动阈值,则标记中间状态S为“水平”;
524:根据当前轮廓状态序列和初始点坐标以及中间状态的轮廓关联分析,将中间状态S转换成轮廓状态合并至轮廓状态序列;
525:重复步骤S23至S24直到分析完成。
[0006]进一步,根据本发明的基于扫描线的音符识别方法,该方法还包括对音符草图的上下两边轮廓用轮廓分析器扫描分析轮廓的形状的步骤。
[0007]本发明的技术效果如下:本发明采用基于特征抽取的扫描线算法,在原有的理论基础上创新地结合碰撞扫描与贯穿扫描,计算编辑距离,采用阈值判断,跳出原有的特征抽取可能存在的几何形状类似,拐点重复等现状,提高识别效率。
【附图说明】
[0008]图1是本发明的基于扫描线的音符识别方法的整体流程图。
[0009]图2是本发明的音符模型轮廓抽象示例图。
[0010]图3是对手写音符扫描分析的示例图。
[0011]图4是图3中圆A内一次步进的放大图。
[0012]图5是图3中圆B内一次步进的放大图。
[0013]图6是手写音符异常断点的示例图。
【具体实施方式】
[0014]下面结合说明书附图对本发明做进一步详细说明。
[0015]一、音符模型轮廓
本发明通过音符模型轮廓与分析得到手写音符轮廓进行匹配得到最终的结果,因此首先需要构建音符模型轮廓数据。每个音符对应一个模型轮廓。最终得到的音符模型轮廓数据可以以静态数据存于程序指令中,也可以以文件或数据库的方式保存。每个音符的模型轮廓用轮廓状态序列表示。轮廓状态有四种,分别为“上跳”、“下跳”、“高平”和“低平”,分别用字母表示为“U”、“D”、“H”和“L”。对于简单的音符,其模型轮廓用左右两边的轮廓状态序列表示;对于复杂的音符,其模型轮廓用上下左右四边的轮廓状态序列表示。构建音符模型轮廓时,首先对标准音符进行抽象得到抽象图,然后提取抽象图相应的轮廓状态序列。图2是构建音符模型轮廓的示例。如图2所示,a是标准音符的形状,6是抽象后的音符形状,c是将6顺时针旋转90度后左边轮廓的形状,ο是将6逆时针旋转90度后右边轮廓的形状,由此可以得到该音符的左右两边的轮廓状态序列均为:“UHDL”。上述“提取抽象图相应的轮廓状态序列”的过程与上述步骤S2中相同。因此实际操作中,可以借助步骤S2实现自动化构建音符模型轮廓数据,也即向步骤S2输入标准的音符图案得到相应的轮廓状态序列。
[0016]二、音符草图音符草图通过用户笔迹采样,经预处理后获得。采样用户笔迹得到的可以是向量数据,也可以是位图。假如得到的是向量数据最终同样可以转换成位图。得到的位图为一级采样图。由于用户笔迹采样得到的一级采样图中可能包含多个音符,因此,本实施例中对一级采样图进行预处理,在预处理中,将包含有多个音符的一级采样图进行切割拆分得到多个音符草图。由此可以确保每个音符草图只包含一个音符。
[0017]上述过程也即前述步骤SI所完成的功能。事实上,本领域技术人员理解,步骤SI中的“获取用户输入的音符草图”可以表示音符草图为本发明的输入,至于如何获取音符草图的过程并非本发明所讨论的范畴,因此不再赘述。为了简单起见,本实施例中,输入的音符草图以带有宽和高的点阵位图的形式表示,当然本领域技术人员可以理解,也可以采用其他的方式表示。
[0018]三、轮廓分析器
如图1所示,本发明的过程在步骤Si获得音符草图后,首先分析左右两边的轮廓形状,匹配左右两边的轮廓状态序列;再分析上下两边的轮廓形状,匹配上下左右四边的轮廓状态序列。这与前述的“对于简单的音符,其模型轮廓用左右两边的轮廓状态序列表示;对于复杂的音符,其模型轮廓用上下左右四边的轮廓状态序列表示”相对应。无论“分析左右两边的轮廓形状”还是“分析上下四边的轮廓形状”均由轮廓分析器实现。轮廓分析器分析音符草图的轮廓只能分析一边。轮廓分析器的输入是音符草图。轮廓分析器分析所输入的音符草图时总是从左到右,自上而下地扫描。因此,轮廓分析器分析的是所输入音符草图上边轮廓形状,输出为所输入音符草图上边的轮廓状态序列。也因此,当轮廓分析器分析音符草图的左边时,首先需要对音符草图顺时针旋转90度后输入轮廓分析器;当轮廓分析器分析音符草图的右边时,首先需要对音符草图逆时针旋转90度后输入轮廓分析器;当轮廓分析器分析音符草图的下边时,首先需要对音符草图进行上下翻转后输入轮廓分析器;当轮廓分析器分析音符草图的上边时,音符草图保持不变地输入轮廓分析器。也因此“分析左右两边的轮廓形状”的过程和“分析上下两边的轮廓形状”的过程实质相同,均为轮廓分析器的分析过程,也即可以归为步骤S2。相应地,“匹配左右两边的轮廓状态序列”的过程和“匹配上下左右四边的轮廓状态序列”的过程也实质相同,均可归为匹配器匹配的过程,也即可以归为步骤S3。轮廓分析器扫描分析轮廓的形状的过程如下:
首先,根据音符草图的大小设定抖动阈值、高低阈值和步进距离,即前述步骤S21。轮廓分析器所分析处理的音符草图是经过转置的,分析过程总是从左到右,自上而下地扫描所输入音符草图上边轮廓形状。抖动阈值用于判断轮廓上行还是下行的门限值。中上阈值和中下阈值用于当中间状态为“水平”时属于“高水平”还是“低水平”。步进距离用于自左向右扫描时,每一次步进的距离。因此,抖动阈值、高低阈值总是与所输入音符草图的高度相关,而步进距离则与所输入音符草图的宽度相关。本实施例中,抖动阈值、高低阈值和步进距离采用如下公式进行计算:
抖动阈值 ^Threshold H Draft/丄6,
高低阈值 HLsplit= 2XHDMft/3;
步进距离Dstep= W滅/48,
上述公式中,Hlteaft为音符草图的高度,Wllraft为音符草图的宽度。
[0019]然后,对两个状态数据进行初始化并初始化初始点和终止点,也即前述步骤S22。两个状态数据为初始化轮廓状态序列和中间状态S。如前所述,本实施例中,轮廓状态用字母表示为“U”、“D”、“H”和“L”。轮廓状态序列实际上是一个只能包含有字母“U”、“D”、“H”和“L”的字符串。该用以表示轮廓状态序列的字符串简称为轮廓字符串。初始化轮廓状态序列,也即将轮廓字符串设为空。中间状态S用于表示当前步进距离的区间内的轮廓走向,分“上行”、“水平”和“下行”,初始为“未知”。初始点初始化为Ptl= (O,HDraft/2)=(O,120),终止点初始化为 P1= (ff Draft,HDraft/2) = (480,120)。
[0020]步骤S21和S22实际上均为初始化的步骤,接下来就是步骤S23的扫描和步骤24的合并的步骤。步骤S23的扫描和步骤24的合并是一个循环过程。步骤S23的每一次扫描和步骤24的每一次合并处理的是一次步进。直到整个音符草图步进完成。
[0021]以图3、4、5为例。图3是一个顺时针转置90度后的用于分析左边轮廓的音符草图,转置后的音符草图的高度Hllraft= 240,宽度Wllraft= 480?相应地,抖动阈值S Threshold =15,高低阈值H
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1