一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

单笔划识别方法、手写音符的单笔划识别方法及系统与流程

2022-06-30 00:09:11 来源:中国专利 TAG:


1.本发明涉及手写识别技术领域,具体地说是单笔划识别方法、手写音符的单笔划识别方法及系统。


背景技术:

2.人机交互(human-computer interaction,简写hci):是连接计算机系统与用户的桥梁,在它们之间进行信息的传递、交换,并通过一定的方式来完成任务,实现人与计算机之间的信息交换过程。传统的人机交互带给用户的是一个硬性的,没有“柔度”的交互方式,用户需要根据已经建立好的执行顺序和执行方式进行操作。由于交互系统比较死板,无法对用户的意图进行提取,从而造成用户不能自由地与计算机进行“平滑”的信息交流;计算机也不能及时地对用户的信息进行处理与反馈。新一代的以用户为中心的人机交互方式逐渐对其进行了解决,可以对用户的交互意图进行一定的了解和提取,即使在交互系统不能非常清楚的理解用户意图的情况下,它也不只是简单地返回给用户“这是违法操作”的提示,而比较人性化、智能化的反馈给用户一个有意义的信息。
3.但是,在手写识别领域中,国内外对于手写音符的识别比较少,再加上音乐中的音符形式多样、种类繁多和不同的人手写形式的不同,使手写音符的识别和编辑成为一个难点。
4.如何高效准确的实现手写音符的识别,是需要解决的技术问题。


技术实现要素:

5.本发明的技术任务是针对以上不足,提供单笔划识别方法、手写音符的单笔划识别方法及系统,来解决如何高效准确的实现手写音符的识别的技术问题。
6.第一方面,本发明的单笔划识别方法,基于几何特征和八方向链码对手音符的单笔划进行识别,所述方法包括如下步骤:
7.基于笔画的点序列数量对笔划进行分类,如果点序列数量小于给定的阈值,判定笔画的笔划为点,否则,基于几何特征直线率进行笔划分类;
8.如果笔划的直线率大于给定阈值,判定笔画的笔划为线性笔划,否则判定为非线性笔划;
9.对于线性笔划,基于几何特征cosfirstlast、sinfirstlast和sloperate对线性笔划进行分类,所述几何特征cosfirstlast表示笔划始点和末点之间角度的余弦,几何特征sinfirstlast表示笔划始点和末点之间角度的正弦,几何特征sloperate表示笔划的斜率;
10.对于非线性笔划,基于几何特征直线率进行分类,如果笔划的直线率小于预定的阈值,判定笔画的笔划为封闭型笔划,否则,判定为非封闭型笔划;
11.对于封闭型笔划,基于几何特征strokelengthbboxsize进行分类,所述几何特征strokelengthbboxsize表示笔划的累积弦长与笔划外包围盒x方向角度值的比值;
12.对于非封闭型笔划,基于八方向链码进行分类。
13.作为优选,对于线性笔划,基于几何特征cosfirstlast、sinfirstlast和sloperate对线性笔划进行分类,对应有四个子类型,分别为横向笔划、纵向笔划、左斜笔划和右斜笔划。
14.作为优选,所述封闭型笔划包括高音谱号和实心音符符头。
15.作为优选,对于非封闭型笔划,基于八方向链码进行分类,包括如下步骤:
16.对于每个笔划,配置对应的链码标准模板;
17.对于输入的笔划,通过最小编辑距离方法计算目标链码与每个链码标准模板的距离值,并选取最小距离值对应的链码标准模板为匹配模板,所述匹配模板对应的类型的为当前笔划的类型。
18.第二方面,本发明的手写音符的单笔划识别方法,包括如下步骤:
19.基于手势音符和手写音符构建手写音符笔画集,所述手写音符笔画集中的笔画为几何形状;
20.收集基于所述手写音符笔画集书写的手写音符,并对收集的手写音符进行数据归一化处理和特征提取,并从提取的几何特征中选取预定数量的几何特征,并为每个选取的几何特征设定阈值,所述选取的几何特征至少包括直线率distancetolength、cosfirstlast、sinfirstlast、sloperate和strokelengthbboxsize;
21.通过如第一方面任一项所述的单笔划识别方法,对手写音符进行笔划分类。
22.作为优选,对收集的手写音符进行数据归一化处理和特征提取,得到多个几何特征,所述多个几何特征由曲率、密度、尺寸和方向四类组成,基于所述多个几何特征组成特征数据库集;
23.基于数据值区别度,从所述特征数据库集中选取数据值区别度最大的八个几何特征,并对每个选取的几何特征设定阈值;
24.所述八个几何特征为:
25.cosfirstlast,为笔划的始点和末点之间角度的余弦;
26.distancefirstlast,为笔划的始点和末点之间的距离;
27.sinfirstlast,为笔划的始点和末点之间角度的正弦;
28.strokelengthbboxsize,为笔划的累积余弦长于笔划外包围盒x方向角度值的比值;
29.strokelength,为笔划的累积余弦长;
30.distancetolength,为笔划的直线率,表示笔划始点和末点之间的距离与笔划的累积弦长的比值;
31.sloperate,为笔划的斜率;
32.boxangle,为笔划外包围盒x方向的角度值。
33.第三方面,本发明的手写音符的单笔划识别系统,包括:
34.笔画集创建模块,所述笔画集创建模块用于基于手势音符和手写音符构建手写音符笔画集,所述手写音符笔画集中的笔画为几何形状;
35.几何特征提取模块,所述几何特征提取模块用于收集基于所述手写音符笔画集书写的手写音符,并对收集的手写音符进行数据归一化处理和特征提取,并从提取的几何特征中选取预定数量的几何特征,并为每个选取的几何特征设定阈值,所述选取的几何特征
至少包括直线率distancetolength、cosfirstlast、sinfirstlast、sloperate和strokelengthbboxsize;
36.单笔划识别模块,所述单笔划识别模块用于通过第一方面任一项所述的单笔划识别方法,对手写音符进行笔划分类。
37.作为优选,所述几何特征提取模块用于对收集的手写音符进行数据归一化处理和特征提取,得到多个几何特征,所述多个几何特征由曲率、密度、尺寸和方向四类组成,基于所述多个几何特征组成特征数据库集;
38.所述几何特征提取模块用于基于数据值区别度,从所述特征数据库集中选取数据值区别度最大的八个几何特征,并对每个选取的几何特征设定阈值;
39.所述八个几何特征为:
40.cosfirstlast,为笔划的始点和末点之间角度的余弦;
41.distancefirstlast,为笔划的始点和末点之间的距离;
42.sinfirstlast,为笔划的始点和末点之间角度的正弦;
43.strokelengthbboxsize,为笔划的累积余弦长于笔划外包围盒x方向角度值的比值;
44.strokelength,为笔划的累积余弦长;
45.distancetolength,为笔划的直线率,表示笔划始点和末点之间的距离与笔划的累积弦长的比值;
46.sloperate,为笔划的斜率;
47.boxangle,为笔划外包围盒x方向的角度值。
48.作为优选,对于线性笔划,所述笔划识别模块用于基于几何特征cosfirstlast、sinfirstlast和sloperate对线性笔划进行分类,对应有四个子类型,分别为横向笔划、纵向笔划、左斜笔划和右斜笔划;
49.所述封闭型笔划包括高音谱号和实心音符符头。
50.作为优选,对于非封闭型笔划,所述笔划识别模块用于基于八方向链码进行分类,包括如下步骤:
51.对于每个笔划,配置对应的链码标准模板;
52.对于输入的笔划,通过最小编辑距离方法计算目标链码与每个链码标准模板的距离值,并选取最小距离值对应的链码标准模板为匹配模板,所述匹配模板对应的类型的为当前笔划的类型。
53.本发明的单笔划识别方法、手写音符的单笔划识别方法及系统具有以下优点:
54.1、基于笔划的几何特征和八方向链码,可高效准确的对手写音符单笔划进行识别,并可为后期音符笔划组合为音符进行识别打下了良好的基础;
55.2、在对手写音符进行单笔划识别时,基于手势音符和手写音符构建手写音符笔画集,使得设计的手写音符符合人们的认知习惯,减少了记忆环节。
附图说明
56.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些
实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
57.下面结合附图对本发明进一步说明。
58.图1为实施例1单笔划识别方法的流程框图;
59.图2为实施例1单笔划识别方法中八方向链码的结构示意图;
60.图3为实施例1实施例1单笔划识别方法中全休支符笔划及八方向链码表示示意图;
61.图4为实施例1实施例1单笔划识别方法中涉及的笔划集分类;
62.图5为实施例2手写音符的单笔划识别方法的流程框图。
具体实施方式
63.下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
64.本发明实施例提供单笔划识别方法、手写音符的单笔划识别方法及系统,用于解决如何高效准确的实现手写音符的识别的技术问题。
65.实施例1:
66.本发明单笔划识别方法,基于几何特征和八方向链码对手音符的单笔划进行识别,该方法包括如下步骤:
67.s100、基于笔画的点序列数量对笔划进行分类,如果点序列数量小于给定的阈值,判定笔画的笔划为点,否则,基于几何特征直线率进行笔划分类;
68.s200、如果笔划的直线率大于给定阈值,判定笔画的笔划为线性笔划,否则判定为非线性笔划;
69.s300、对于线性笔划,基于几何特征cosfirstlast、sinfirstlast和sloperate对线性笔划进行分类,几何特征cosfirstlast表示笔划始点和末点之间角度的余弦,几何特征sinfirstlast表示笔划始点和末点之间角度的正弦,几何特征sloperate表示笔划的斜率;
70.s400、对于非线性笔划,基于几何特征直线率进行分类,如果笔划的直线率小于预定的阈值,判定笔画的笔划为封闭型笔划,否则,判定为非封闭型笔划;
71.s500、对于封闭型笔划,基于几何特征strokelengthbboxsize进行分类,所述几何特征strokelengthbboxsize表示笔划的累积弦长与笔划外包围盒x方向角度值的比值;
72.s600、对于非封闭型笔划,基于八方向链码进行分类。
73.本实施例中,将几何特征和八方向链码相结合,对手写音符的单笔划进行分类识别,其中涉及的几何特征至少需要有直线率distancetolength、cosfirstlast、sinfirstlast、sloperate和strokelengthbboxsize。
74.本实施例中共选取了八个几何特征,分别为:
75.cosfirstlast,为笔划的始点和末点之间角度的余弦;
76.distancefirstlast,为笔划的始点和末点之间的距离;
77.sinfirstlast,为笔划的始点和末点之间角度的正弦;
78.strokelengthbboxsize,为笔划的累积余弦长于笔划外包围盒x方向角度值的比值;
79.strokelength,为笔划的累积余弦长;
80.distancetolength,为笔划的直线率,表示笔划始点和末点之间的距离与笔划的累积弦长的比值;
81.sloperate,为笔划的斜率;
82.boxangle,为笔划外包围盒x方向的角度值。
83.步骤s100中,首先需要对当前笔画所采集到的点序列数量进行判断,如果点数少于一定值,那么判断所画的笔划为点,即为音符中的附点。
84.步骤s200基于几何特征—直线率完成了直线型笔划与非直线型笔划(包括封闭型和非封闭型)的快速粗分类。
85.步骤s200中计算笔划的直线率distancetolength,如果大于给定的阈值,则判定为线性笔划;否则,判定为非线性笔划。
86.其中,笔划始点和末点的距离计算公式为:
[0087][0088]
笔划采样点累积弦长计算公式为:
[0089][0090]
直线率计算公式为:
[0091][0092]
步骤s300对线性笔划进行细分类,在该步骤中基于几何特征cosfirstlast、sinfirstlast和sloperate对几个线性笔划进行细分类,涉及的类型包括横向笔划、纵向笔划、左斜向笔划、右斜向笔划四种。
[0093]
步骤s400对非线性笔划进行细分类,此处的非线性笔划理解为折线段或二次曲线,本实施例中将其分为封闭型和非封闭型笔划。通过计算直线率distancetolength的值进行两种笔划类型的区分,如果小于给定的阈值,则为封闭型,否则,为非封闭型。
[0094]
步骤s500对封闭性笔划进行细分类,封闭型包括高音谱号和实心音符符头用几何特征strokelengthbboxsize进行区分。
[0095]
步骤s600对非封闭性笔划进行细分类,本实施例利用八方向链码进行分类八方向链码来记录其方向特征以达到识别分类的效果,如图2和图3所示。每个笔划的链码标准模板已经准备好,每输入一个新笔划的链码将与已准备好的所有模板进行匹配。由于,使用的是动态规划算法进行链码字符串相似度的衡量—最小编辑距离算法,因此输入笔划的链码长度不一定要与模板链码完全一致。
[0096]
通过计算得到当前笔划与每个模板的距离值,再从这些值里面找出最小值,与最小值对应的模板类型即为当前笔划的类型。
[0097]
将本算法与常用于单笔划的识别算法—rubine算法的识别效果进行对比,进而体现本文中识别算法的可用性。每一类笔划的识别结果和总识别结果如表1所示。
[0098]
表1、识别结果
[0099][0100]
根据以上数据结果的显示,可以看出本文中的算法得到了比较满意的识别效果,识别效果比专门用于单笔划识别的rubine算法效果提高了1.98个百分点。特别是对于不容易进行识别的实心符头来说,识别率从rubine算法中的94.88%提高到99.20%,有了明显的改善;再者,从识别数据中我们可以看出本文中的识别算法对于点、直线、斜线等呈线性的笔划识别效果几乎都达到了100%的识别率,这说明几何特征的选取和阈值的设置比较合理及本方案对音符识别具有可行性。
[0101]
实施例2:
[0102]
本发明手写音符的单笔划识别方法,包括如下步骤:
[0103]
s100、基于手势音符和手写音符构建手写音符笔画集,手写音符笔画集中的笔画为几何形状;
[0104]
s200、收集基于所述手写音符笔画集书写的手写音符,并对收集的手写音符进行数据归一化处理和特征提取,并从提取的几何特征中选取预定数量的几何特征,并为每个选取的几何特征设定阈值,所述选取的几何特征至少包括直线率distancetolength、cosfirstlast、sinfirstlast、sloperate和strokelengthbboxsize;
[0105]
s300、通过实施例1公开的单笔划识别方法,对手写音符进行笔划分类。
[0106]
步骤s200中,对收集的手写音符进行数据归一化处理和特征提取,得到多个几何
特征,多个几何特征由曲率、密度、尺寸和方向四类组成,基于所述多个几何特征组成特征数据库集;基于数据值区别度,从特征数据库集中选取数据值区别度最大的八个几何特征,并对每个选取的几何特征设定阈值。
[0107]
本实施例步骤s100首先通过对专业音乐者手写习惯的调查进行手写音符的设计,综合分析研究决定将简单手势音符和常规手写音符两种手写形式的优点相融合,并依据以下的原则进行手写音符的设计:
[0108]
(1)以用户为中心,设计的音符要避免用户对其大量的记忆,减轻用户的认知负担;
[0109]
(2)覆盖广泛的使用人群,尽量满足大多数用户的手写习惯;
[0110]
(3)设计的音符手写起来要简单方便,并且计算量少、容易被识别。
[0111]
根据以上原则,收集整理了音符中常用的20个笔划,这些笔划主要由点、线、圆、圆弧、三点折线五种基元组成。它们都是基本的几何形状,容易被分类,并且可以依据使用情景的不同,代表不同的意义和不同程度的变化,例如直线作为符干时较短,作为连线符时会变长。
[0112]
实施例s200依据音符的单笔划设计,对测试样本进行手写数据的收集,并对收集的数据进行归一化预处理和特征选择。我们选取了49个几何特征,主要由曲率、密度、尺寸、方向四类组成,并将收集来的手写音符笔迹进行特征的提取,得到特征数据库集,经过对这些数据的分析找到8个数据值区别度大的特征,并且对其设定了合适的阈值。
[0113]
本实施例中八个几何特征为:
[0114]
cosfirstlast,为笔划的始点和末点之间角度的余弦;
[0115]
distancefirstlast,为笔划的始点和末点之间的距离;
[0116]
sinfirstlast,为笔划的始点和末点之间角度的正弦;
[0117]
strokelengthbboxsize,为笔划的累积余弦长于笔划外包围盒x方向角度值的比值;
[0118]
strokelength,为笔划的累积余弦长;
[0119]
distancetolength,为笔划的直线率,表示笔划始点和末点之间的距离与笔划的累积弦长的比值;
[0120]
sloperate,为笔划的斜率;
[0121]
boxangle,为笔划外包围盒x方向的角度值。
[0122]
对于模式识别算法来说,最为核心的是特征匹配环节。特征匹配阶段也就是解决分类器的设计问题,即将输入模式与模板库中的模式进行一一匹配计算,选出最为相近的候选模式。特征匹配算法是识别系统整体性能的关键所在,会对最终的识别结果产生直接的影响,本实施例步骤s300通过实施例1公开的方法,将几何特征与八方向链码相结合、对手写音符进行单笔划识别。
[0123]
实施例3:
[0124]
本发明手写音符的单笔划识别系统,包括笔画集创建模块、几何特征提取模块、以及单笔划识别模块,笔画集创建模块用于基于手势音符和手写音符构建手写音符笔画集,所述手写音符笔画集中的笔画为几何形状;几何特征提取模块用于收集基于所述手写音符笔画集书写的手写音符,并对收集的手写音符进行数据归一化处理和特征提取,并从提取
的几何特征中选取预定数量的几何特征,并为每个选取的几何特征设定阈值,选取的几何特征至少包括直线率distancetolength、cosfirstlast、sinfirstlast、sloperate和strokelengthbboxsize;单笔划识别模块用于通过权利要求1-4任一项所述的单笔划识别方法,对手写音符进行笔划分类。
[0125]
本实施例中几何特征提取模块用于对收集的手写音符进行数据归一化处理和特征提取,得到多个几何特征,多个几何特征由曲率、密度、尺寸和方向四类组成,基于所述多个几何特征组成特征数据库集。几何特征提取模块用于基于数据值区别度,从所述特征数据库集中选取数据值区别度最大的八个几何特征,并对每个选取的几何特征设定阈值。
[0126]
本实施例提取的八个几何特征为:
[0127]
cosfirstlast,为笔划的始点和末点之间角度的余弦;
[0128]
distancefirstlast,为笔划的始点和末点之间的距离;
[0129]
sinfirstlast,为笔划的始点和末点之间角度的正弦;
[0130]
strokelengthbboxsize,为笔划的累积余弦长于笔划外包围盒x方向角度值的比值;
[0131]
strokelength,为笔划的累积余弦长;
[0132]
distancetolength,为笔划的直线率,表示笔划始点和末点之间的距离与笔划的累积弦长的比值;
[0133]
sloperate,为笔划的斜率;
[0134]
boxangle,为笔划外包围盒x方向的角度值。
[0135]
笔划识别模块用于基于几何特征cosfirstlast、sinfirstlast和sloperate对线性笔划进行分类,对应有四个子类型,分别为横向笔划、纵向笔划、左斜笔划和右斜笔划。
[0136]
封闭型笔划包括高音谱号和实心音符符头。
[0137]
对于非封闭型笔划,笔划识别模块用于基于八方向链码进行分类,包括如下步骤:对于每个笔划,配置对应的链码标准模板;对于输入的笔划,通过最小编辑距离方法计算目标链码与每个链码标准模板的距离值,并选取最小距离值对应的链码标准模板为匹配模板,所述匹配模板对应的类型的为当前笔划的类型。
[0138]
本实施例的系统可执行实施例2公开的方法。
[0139]
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献