手绘图形的识别方法、装置、电子设备和可读存储介质与流程

未命名 10-19 阅读:117 评论:0


1.本技术属于图形识别领域,尤其涉及一种手绘图形的识别方法、装置、电子设备和可读存储介质。


背景技术:

2.由于触摸屏的广泛应用,使手绘软件、白板软件等在线绘图工具得到越来越广泛的使用。
3.在一些场景中,例如教学场景、开会场景,利用在线绘图工具绘制二次曲线都颇为常见。但是在绘制二次曲线过程中可能会出现手抖现象,导致手绘图形出现波动或锯齿状的噪点。常规的在线绘图工具在出现这种情况时会对手绘图形是否是二次曲线进行识别,以及对手绘图形进行矫正,以便后续利用矫正后的手绘图形进行教学或者开会等。
4.但是,常规的在线绘图工具不能够准确识别手绘图形是否为二次曲线。


技术实现要素:

5.本技术实施例提供一种手绘图形的识别方法、装置、电子设备和可读存储介质,能够提高识别手绘图形的准确率。
6.第一方面,提供了一种手绘图形的识别方法,该方法包括:获取手绘图形的第一坐标集;根据第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率;根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形是否为二次曲线。
7.本技术实施例,可以根据手绘图形的第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率,第一坐标集的坐标位于二次曲线上的概率可以反映手绘图形与二次曲线的重合度,是二次曲线的相关特征,根据第一坐标集的坐标位于二次曲线上的概率确定手绘图形是否为二次曲线,可以提高识别手绘图形的准确率。
8.第二方面,提供了一种手绘图形的识别装置,识别装置包括处理单元,处理单元用于:获取手绘图形的第一坐标集;根据第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率;根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形是否为二次曲线。
9.第三方面,提供了一种电子设备,包括:一个或多个处理器;一个或多个存储器;所述一个或多个存储器存储有一个或者多个计算机程序,所述一个或者多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行如第一方面任一项所述的方法。
10.第四方面,提供了一种计算机可读存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第一方面中任一项所述的方法。
11.第五方面,提供了一种芯片,所述芯片包括:存储器:用于存储指令;处理器,用于从所述存储器中调用并运行所述指令,使得安装有所述芯片的电子设备执行如第一方面中任一项所述的方法。
附图说明
12.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
13.图1是本技术实施例提供的一种手绘图形的识别方法的示意性流程图。
14.图2是本技术实施例提供的一种得到手绘图形的第一坐标集的坐标位于二次曲线上的概率的示意性流程图。
15.图3是本技术实施例提供的一种得到多组第一候选采样点的示意性流程图。
16.图4是本技术实施例提供的一种得到多组第二候选采样点的示意性流程图。
17.图5是本技术实施例提供的一种电容感应点的示例图。
18.图6是本技术实施例提供的一种得到多组目标采样点的示意性流程图。
19.图7是本技术实施例提供的一种确定一组目标采样点的示意性流程图。
20.图8是本技术实施例提供的一种确定手绘图形是否为二次曲线的示意性流程图。
21.图9是本技术实施例提供的分类模型的训练方法300的示意性流程图。
22.图10是本技术实施例提供的手绘图形的识别装置400的示例性框图。
23.图11是本技术实施例提供的电子设备500的示意性结构图。
具体实施方式
24.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述,在其它情况中,各个实施例中的具体技术细节可以互相参考,在一个实施例中没有描述的具体系统可参考其它实施例。
25.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
26.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
27.在本技术说明书中描述的参考“本技术实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在另一些实施例中”、“本技术一实施例”、“本技术其他实施例”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
28.另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第一类”、“第二类”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
29.本技术实施例提供的方法可以应用于手机、平板电脑、笔记本电脑、上网本、书写
屏、电子白板等具有触摸功能的电子设备上,本技术实施例对电子设备的具体类型不作任何限制。
30.以下内容介绍了本技术的发明构思。
31.常规的在线绘图工具不能够准确识别手绘图形是否为二次曲线,具体原因在于,常规的在线绘图工具在基于手绘图形的位置提取手绘图形的特征以对手绘图形是否是二次曲线进行识别时,可能由于提取的特征本身并不是二次曲线的相关特征导致最终的识别结果不准确。
32.为了解决上述缺陷,本技术的发明构思为:
33.本技术实施例基于手绘图形的位置提取手绘图形的特征是第一坐标集的坐标位于二次曲线上的概率,该特征可以反映手绘图形与二次曲线的重合度,是二次曲线的相关特征,利用该特征对手绘图形进行识别,可以提高识别手绘图形的准确率。
34.下面结合附图介绍本技术实施例的内部实现过程。
35.请参考图1,图1是本技术一实施例提供的一种手绘图形的识别方法200的示意性流程图,该方法200可由电子设备执行,也可由电子设备中的处理器或芯片执行,本技术实施例不做任何限定。为了便于描述,以电子设备为例对方法200做详细说明。
36.s21、获取手绘图形的第一坐标集。
37.应理解,手绘图形是指用户绘制的能够在电子设备上显示的图形。示例性的,手绘图形可以是用户在电子设备的一些应用软件(例如白板软件、绘图软件等)中绘制的图形,也可以是用户在电子设备的外设设备(例如数位板)中进行绘制,并在电子设备上显示的图形。
38.本技术实施例中,第一坐标集可以指示手绘图形在电子设备的显示屏中的位置。
39.本技术实施例中,电子设备在对手绘图形是否是二次曲线进行识别时,可以直接获取到手绘图形的第一坐标集,也可以从存储器中获取到手绘图形的第一坐标集,本技术实施例对电子设备获取第一坐标集的方式不作限定。
40.s22、根据第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率。
41.应理解,二次曲线又称圆锥曲线,是指到平面内一定点的距离r与到定直线的距离d之比是常数e=r/d的点的轨迹。其中当e》1时为双曲线,当e=1时为抛物线,当0《e《1时为椭圆。二次曲线包括椭圆(圆为椭圆的特例)、抛物线、双曲线等,本技术实施例对二次曲线的类型不作限定。
42.应理解,第一坐标集的坐标位于二次曲线上的概率是指二次曲线的一个属性或者特征,具体的,第一坐标集的坐标位于二次曲线上的概率可以用0至1之间的数值进行表示,例如,0.6,表示第一坐标集的坐标位于二次曲线上的概率为0.6。该特征的数值越大,证明手绘图形与二次曲线的重合度越高,该特征的数值越小,证明手绘图形与二次曲线的重合度越低。
43.还可以理解,由于二次曲线内接六边形(包括退化的六边形)其三对边的交点共线,换句话说,如果六个点组成的六边形,其三对边的交点共线,那么,这六个点是位于二次曲线上的点,所以根据第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率的实现过程可以为:
44.示例性的,电子设备可以通过判断第一坐标集中任意六个点组成的六边形的三对
边的交点共线,进而得出第一坐标集中位于二次曲线上的点的个数,通过计算第一坐标集中位于二次曲线上的点的个数与第一坐标集中坐标的总个数,得到第一坐标集的坐标位于二次曲线上的概率。
45.当然,本技术实施例还可以通过其他实现方式判断第一坐标集中位于二次曲线上的点的个数,以得到第一坐标集的坐标位于二次曲线上的概率,本技术实施例对此不作限定,例如:电子设备可以通过第一坐标集中的点拟合二次曲线,得到二次曲线的方程式,然后将第一坐标集的每个坐标代入该方程式,判断是否满足该方程式,若满足,则判断出该坐标位于二次曲线上,若不满足,则判断出该坐标未位于二次曲线上,以此得到第一坐标集中位于二次曲线上的点的个数,通过计算第一坐标集中位于二次曲线上的点的个数与第一坐标集中坐标的总个数,得到第一坐标集的坐标位于二次曲线上的概率。
46.s23、电子设备根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形是否为二次曲线。
47.本技术实施例,电子设备根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形是否为二次曲线的实现过程可以为:
48.电子设备可以将第一坐标集的坐标位于二次曲线上的概率输入分类模型,根据分类模型的输出结果确定手绘图形是否为二次曲线。分类模型可以包括逻辑回归模型、朴素贝叶斯模型、决策树模型、支持向量机模型、随机森林模型、梯度提升树模型等,本技术实施例对分类模型的类型不作限定。
49.电子设备根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形是否为二次曲线的实现过程还可以为:
50.电子设备确定第一坐标集的坐标位于二次曲线上的概率是否大于预设阈值,若确定大于预设阈值,则确定手绘图形是二次曲线,若确定小于或等于预设阈值,则确定手绘图形不是二次曲线。例如:预设阈值为0.8,若确定大于0.8,则确定手绘图形是二次曲线,若确定小于或等于0.8,则确定手绘图形不是二次曲线。
51.本技术实施例,可以根据手绘图形的第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率,第一坐标集的坐标位于二次曲线上的概率可以反映手绘图形与二次曲线的重合度,是二次曲线的相关特征,根据第一坐标集的坐标位于二次曲线上的概率确定手绘图形是否为二次曲线,可以提高识别手绘图形的准确率。
52.图2是本技术实施例提供的一种得到手绘图形的第一坐标集的坐标位于二次曲线上的概率的示意性流程图。
53.s221、对第一坐标集进行采样处理,得到多组第一候选采样点。
54.应理解,对第一坐标集采样处理可以是对第一坐标集进行1次或多次采样处理。
55.在第一坐标集中的数据量较多时,直接利用第一坐标集计算第一坐标集的坐标位于二次曲线上的概率可能会增加电子设备的计算量,因而,可以对第一坐标集进行1次采样处理,减少计算第一坐标集的坐标位于二次曲线上的概率时所需要的数据量,同时为了避免一次采样处理导致最终计算的第一坐标集的坐标位于二次曲线上的概率不准确,可以对第一坐标集进行多次采样处理(多次可以理解为大于1次),以提高最终计算的第一坐标集的坐标位于二次曲线上的概率的准确率。本技术实施例对采样处理的方式不作限定,例如,采样处理可以为均匀采样。
56.示例性的,第一坐标集中包括100个电容感应点的坐标,如果直接用这100个电容感应点的坐标计算第一坐标集的坐标位于二次曲线上的概率,可能会增加电子设备的计算量,为了减少电子设备的计算量以及提高最终计算的第一坐标集的坐标位于二次曲线上的概率的准确率,对第一坐标集进行两次采样处理,第一次采样处理得到10组采样点,第二次采样处理得到15组采样点,每组第一候选采样点包括6个采样点。本技术实施例将采样处理得到的10组采样点、15组采样点等称为多组第一候选采样点。
57.s222、对多组第一候选采样点进行筛选处理,得到多组第二候选采样点,每组第二候选采样点可以形成多组对边,多组对边为多组非平行对边。
58.应理解,每组第一候选采样点可以包括至少六个采样点,本技术实施例对每组第一候选采样点中采样点的数量不作限定。本技术实施例以每组第一候选采样点可以包括六个采样点进行示例说明。
59.每组第二候选采样点可以形成多组对边,多组对边为多组非平行对边可以理解为:例如,若每组第二候选采样点包括六个采样点,那么这六个采样点可以构成六条边,这六条边可以形成三组对边,第二候选采样点的这三组对边为三组非平行对边。
60.在一些实施例中,在s221得到多组第一候选采样点之后,可以通过判断每组第一候选采样点包括的六个采样点组成的六边形,其三对边的交点是否共线,确定每组第一候选采样点的六个采样点是否位于二次曲线上,以确定第一坐标集的坐标位于二次曲线上的概率。示例性的,在s221第一次采样处理得到10组第一候选采样点之后,如果判断出有6组第一候选采样点包括的六个采样点组成的六边形,其三对边的交点共线,那么确定的第一坐标集的坐标位于二次曲线上的概率为0.6。
61.可以筛选掉基于六个采样点得到的三组对边的任一组对边平行的第一候选采样点,由于已经在多组第一候选采样点中筛选掉基于六个采样点得到的三组对边的任一组对边平行的第一候选采样点,因而,剩余的第一候选采样点中基于六个采样点得到的三组对边的任一组对边均不平行,该剩余的第一候选采样点的六个采样点的三组对边能够形成交点,利用该剩余的第一候选采样点判断每组第一候选采样点中的六个采样点其三对边的交点是否共线,可以在减少电子设备的计算量的同时,提高确定第一坐标集的坐标位于二次曲线上的概率的准确率。本技术实施例中,将剩余的第一候选采样点称为基于每组第二候选采样点得到的多组对边为非平行对边的多组第二候选采样点。
62.s223、对多组第二候选采样点进行筛选处理,得到多组目标采样点,多组目标采样点为位于二次曲线上的点。
63.应理解,对多组第二候选采样点进行筛选处理,是为了筛选出基于六个采样点得到的三对边的交点共线的第二候选采样点,本技术实施例中将多组第二候选采样点中基于六个采样点得到的三对边的交点共线的第二候选采样点称为多组目标采样点。
64.本技术实施例对确定基于六个采样点得到的三对边的交点是否共线的方式不作限定。
65.s224、根据多组第二候选采样点和多组目标采样点,确定第一坐标集的坐标位于二次曲线上的概率。
66.本技术实施例,在采样处理的次数为1次时,确定第一坐标集的坐标位于二次曲线的概率包括:
67.将多组目标采样点与多组第二候选采样点的比值确定为第一坐标集的坐标位于二次曲线的概率。
68.在一些实施例中,在采样处理的次数为多次时,确定第一坐标集的坐标位于二次曲线的概率包括:
69.确定多组目标采样点与多组第二候选采样点的比值;将多组目标采样点与多组第二候选采样点的比值与采样处理的次数i的比值确定为第一坐标集的坐标位于二次曲线上的概率。
70.示例性的,可以基于以下公式,确定第一坐标集的坐标位于二次曲线上的概率:
[0071][0072]
其中,p代表多组目标采样点与多组第二候选采样点的比值与采样处理的次数i的比值,分别代表多组目标采样点与多组第二候选采样点的比值,x1、x2、

xi分别代表i次采样处理中每次处理的多组目标采样点的数量,y1、y2、

yi代表i次采样处理中每次处理的多组第二候选采样点的数量,i代表采样处理的次数,i为大于或者等于1的整数。
[0073]
本技术实施例,在第一坐标集中的数据量较多时,直接利用第一坐标集计算第一坐标集的坐标位于二次曲线上的概率可能会增加电子设备的计算量,因而,可以对第一坐标集进行采样处理,减少计算第一坐标集的坐标位于二次曲线上的概率时所需要的数据量。
[0074]
并且,本技术实施例可以对多组第一候选采样点进行筛选处理,得到多组第二候选采样点,多组第二候选采样点的每组第二候选采样点得到的多组对边为非平行对边,可以提高确定多个目标采样点的准确率,以提高确定第一坐标集的坐标位于二次曲线上的概率的准确率。
[0075]
而且,本技术实施例可以根据多组第二候选采样点和多组目标采样点,可以准确的确定的第一坐标集的坐标位于二次曲线上的概率。
[0076]
本技术实施例还可以根据多组第二候选采样点、多组目标采样点和采样处理的次数i,确定第一坐标集的坐标位于二次曲线上的概率,相对于仅基于多组第二候选采样点和多组目标采样点确定的第一坐标集的坐标位于二次曲线上的概率的更准确。
[0077]
在一些实施例中,s222中对多组第一候选采样点进行筛选处理,得到基于每组第二候选采样点得到的多组对边为非平行对边的多组第二候选采样点,包括:
[0078]
对多组第一候选采样点进行筛选处理,得到多组第二候选采样点,多组第二候选采样点的每组第二候选采样点的多组对边为非平行对边,以及多组第二候选采样点的每组第二候选采样点的相邻采样点在第一坐标集中间隔j个坐标。
[0079]
应理解,假设多组第一候选采样点中有某些组第一候选采样点的六个采样点的相邻坐标的数值相近,那么,数值相近的两个采样点的连线容易产生偏差,从而使最终计算的第一坐标集的坐标位于二次曲线上的概率不准确。
[0080]
为了提高最终计算的第一坐标集的坐标位于二次曲线上的概率的准确率,可以筛
选掉六个采样点中相邻采样点在第一坐标集中间隔j个坐标的第一候选采样点,这样,剩余的第一候选采样点的六个采样点中相邻采样点在第一坐标集中是不相邻或数值不相近的,可以在减少电子设备的计算量的同时,保证电子设备能够准确的识别六个采样点,以提高计算第一坐标集的坐标位于二次曲线上的概率的准确率。
[0081]
应理解,j为0时,筛选掉六个采样点中相邻采样点在第一坐标集中间隔j个坐标的第一候选采样点即为筛选掉六个采样点中相邻采样点在第一坐标集中也是相邻的第一候选采样点。
[0082]
j大于0时,筛选掉六个采样点中相邻采样点在第一坐标集中间隔j个坐标的第一候选采样点即为筛选掉六个采样点中相邻采样点在第一坐标集中不相邻但是数值相近的第一候选采样点。
[0083]
本技术实施例,将多组第一候选采样点筛选掉基于六个采样点得到的三组对边的任一组对边平行的第一候选采样点,以及筛选掉六个采样点中相邻采样点在第一坐标集中是间隔j个坐标的第一候选采样点,剩余的第一候选采样点,称为多组第二候选采样点。
[0084]
图3是本技术实施例提供的一种得到多组第一候选采样点的示意性流程图。
[0085]
s2211、对第一坐标集进行预处理操作,得到第二坐标集,预处理操作包括去重操作。
[0086]
应理解,对第一坐标集进行预处理操作主要是删除第一坐标集中的无关数据、重复数据、平滑噪声数据、异常值等,本技术实施例对预处理操作不作限定。
[0087]
s2212、对第二坐标集进行采样处理,得到多组第一候选采样点。
[0088]
应理解,对第二坐标集进行采样处理可以为对第二坐标集进行1次采样处理,也可以为对第二坐标集进行多次采样处理。
[0089]
其中,每次采样处理的过程为:
[0090]
在第二坐标集中随机抽取六个采样点作为一组第一候选采样点,以得到多组第一候选采样点。
[0091]
可以理解,随机抽取的方式可以包括简单随机抽样法、分层随机抽样法、分群随机抽样法等,本技术实施例对随机抽取的方式不做限定。
[0092]
本技术实施例,可以对第一坐标集进行预处理操作,得到第二坐标集,可以删除第一坐标集中冗余数据,减少电子设备的计算量,并且,可以对已进行过预处理操作的第二坐标集采样处理,减少计算第一坐标集的坐标位于二次曲线上的概率时所需要的数据量的同时,提高最终计算的第一坐标集的坐标位于二次曲线上的概率的准确率。
[0093]
图4是本技术实施例提供的一种得到多组第二候选采样点的示意性流程图。
[0094]
s2221、获取第一坐标集的索引集合,并对索引集合进行采样处理,得到多组第一候选采样点。
[0095]
应理解,每组第一候选采样点可以包括至少六个采样点对应的索引,本技术实施例对每组第一候选采样点中采样点的数量以及采样点对应的索引数量不作限定。本技术实施例以每组第一候选采样点可以包括六个采样点对应的索引进行示例说明。还应理解,对索引集合进行采样处理可以是对索引集合和进行1次采样处理,也可以是对索引集合进行多次采样处理。
[0096]
当用户在触摸屏中绘制手绘图形时,可能会产生大量的坐标数据,为了对这大量
的坐标数据进行更好的处理,可以预先为坐标系中的每个坐标增加一个索引,即可得到坐标与索引的映射关系,获取第一坐标集时,仅需要获取第一坐标集的索引集合,对第一坐标集的索引集合进行处理,相对于直接对第一坐标集的坐标数据进行处理,可以提升电子设备处理速度。
[0097]
可以理解,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。通俗的讲,索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。
[0098]
示例性的,可以依据以下方式为坐标系中的每个坐标增加一个索引,得到坐标与索引的映射关系:
[0099]
当坐标系中的横坐标等于纵坐标时,索引为0。
[0100]
当横坐标大于纵坐标时,索引可以依据以下公式进行计算:
[0101]
索引=4k2+1+(2k+x+y)。
[0102]
当横坐标小于或者等于纵坐标时,索引可以依据以下公式进行计算:
[0103]
索引=4k2+1-(2k+x+y)。
[0104]
其中,k=max(|x|,|y|),x代表横坐标,y代表纵坐标。
[0105]
例如,坐标与索引的映射关系可以参考图5,图5示出了一种电容感应点的示例图。在该示例中,电容式触摸屏一般有4列4行个电容触摸传感器。这4
×
4个相互交错的电容触摸传感器组成了4
×
4个电容感应点,坐标系原点为第一行第一列的电容感应点,坐标系x轴的正方向为第一列电容感应点指向第四列电容感应点的方向,坐标系y轴的正方向为第一行电容感应点指向第四行电容感应点的方向。
[0106]
其中,映射关系可以参考表1:
[0107]
坐标索引(0,0)0(1,0)8(2,0)23(3,0)46(0,1)2(1,1)1(2,1)24(3,1)47(0,2)11(1,2)10(2,2)9(3,2)48(0,3)28(1,3)27(2,3)26(3,3)25
[0108]
表1
[0109]
示例性的,第一坐标集的索引集合可以为{0,2,11,28,27,26,25,48,47,46,23,8},对索引集合进行采样处理(例如2次),一次采样处理得到多组第一候选采样点(例如第一次采样处理得到10组第一候选采样点,第二次采样处理得到15组第一候选采样点),每组第一候选采样点包括六个采样点对应的索引,例如:一组第一候选采样点对应的索引可以为(0,11,27,25,47,23),另一组第一候选采样点对应的索引可以为(0,2,27,25,47,23)。
[0110]
s2222、在多组第一候选采样点中删除基于每组第一候选采样点的六个采样点对应的索引得到的三组对边的任一组对边平行的第一候选采样点,得到多组第二候选采样点。
[0111]
可以理解,也可以在多组第一候选采样点中删除基于每组第一候选采样点的六个采样点对应的索引得到的三组对边的任一组对边平行的第一候选采样点。
[0112]
示例性的,假设多组第一候选采样点中,一组候选采样点的索引为(0,11,27,25,47,23),那么,可以基于第一个索引0与第二个索引11得到边1的方程式,例如:基于第一个索引0、第二个索引11以及坐标与索引的映射关系,可以得到第一个索引对应的坐标和第二个索引对应的坐标,基于第一个索引对应的坐标和第二个索引对应的坐标可以计算边1的方程式。基于以上方法,可以基于第二个索引11和第三个索引27得到边2的方程式、基于第三个索引27和第四个索引25得到边3的方程式,基于第四个索引25和第五个索引47得到边4的方程式,基于第五个索引47和第六个索引23得到边5的方程式,基于第六个索引23和第一个索引0得到边6的方程式。
[0113]
将边1和边4作为一组对边,将边2和边5作为一组对边,将边3和边6作为一组对边。分别判断这3组对边是否平行,若判断出至少有一组对边平行,那么则在多组第一候选采样点中,删除索引为(0,11,27,25,47,23)的第一候选采样点。
[0114]
本技术实施例对判断3组对边是否平行的方式不作限定,例如:可以根据边的方程式计算出边1的斜率,根据边4的方程式计算出边4的斜率,若判断出边1的斜率等于边4的斜率,那么,边1和边4平行,否则,边1和边4不平行。
[0115]
本技术实施例,由于在多组第一候选采样点中删除基于每组第一候选采样点的六个采样点对应的索引得到的三组对边的任一组对边平行的第一候选采样点,得到多组第二候选采样点,所以,可以精准识别多组第二候选采样点中的每个采样点,最终提升了确定的第一坐标集的坐标位于二次曲线上的概率的准确率。
[0116]
在一些实施例中,s2222中在多组第一候选采样点中删除基于每组第一候选采样点的六个采样点对应的索引得到的三组对边的任一组对边平行的第一候选采样点,得到多组第二候选采样点还包括:
[0117]
在多组第一候选采样点中删除每组第一候选采样点的六个采样点对应的索引中相邻的索引在索引集合中是间隔j个索引的第一候选采样点,以及删除基于每组第一候选采样点的六个采样点对应的索引得到的三组对边的任一组对边平行的第一候选采样点,得到多组第二候选采样点。
[0118]
应理解,在多组第一候选采样点中删除每组第一候选采样点的六个采样点对应的索引中相邻的索引在索引集合中是间隔j个索引的第一候选采样点,j为大于或等于0的整数。
[0119]
示例性的,当j等于0时,假设第一坐标集的索引集合可以为{0,2,11,28,27,26,25,48,47,46,23,8},如果多组第一候选采样点中的一组候选采样点的索引为(0,2,27,25,47,23),由于该组候选采样点的相邻的索引(0,2)在第一坐标集的索引集合中也是相邻的(在索引集合中是间隔0个索引),因而,需要在多组第一候选采样点中删除该组候选采样点。
[0120]
又一示例中,当j大于0时,例如j等于1,假设第一坐标集的索引集合可以为{7,8,9,28,27,26,25,48,47,46,23,8},如果多组第一候选采样点中的一组候选采样点的索引为(7,9,27,25,47,23),由于该组候选采样点的相邻的索引(7,9)在第一坐标集的索引集合中是相近的(在索引集合中是间隔1个索引),因而,需要在多组第一候选采样点中删除该组候选采样点。
[0121]
图6是本技术实施例提供的一种得到多组目标采样点的示意性流程图。
[0122]
s2231、基于多组第二候选采样点中每组第二候选采样点的六个采样点,确定三组对边。
[0123]
应理解,确定三组对边的方法已在其他实施例中陈述,此处不再赘述。
[0124]
s2232、基于三组对边,确定三组对边对应的三个交点。
[0125]
实现中,确定三组对边的方式可以为:
[0126]
首先,基于多组第二候选采样点中每组第二候选采样点的六个采样点,确定第一条边、第二条边、第三条边、第四条边、第五条边和第六条边,第一条边是基于第一采样点和第二采样点得到的,第二条边是基于第二采样点和第三采样点得到的,第三条边是基于第三采样点和第四采样点得到的,第四条边是基于第四采样点和第五采样点得到的,第五条边是基于第五采样点和第六采样点得到的,第六条边是基于第六采样点和第一采样点得到的。
[0127]
应理解,六个采样点可以包括第一采样点、第二采样点、第三采样点、第四采样点、第五采样点和第六采样点,这六个采样点是在多组第二候选采样点中每组第二候选采样点内按照采样顺序排列的六个采样点。示例性的,假设一组第二候选采样点的为((0,1),(11,13),(27、31),(38,41),(47,52),(60,61)),那么,(0,1)就是采样该组第二候选采样点时第一个采样的点,称为第一采样点,(11,13)就是采样该组第二候选采样点时第二个采样的点,称为第二采样点,以此类推,得到这六个采样点。
[0128]
在得到六个采样点以及六个采样点的排列顺序之后,可以通过以下实现方式确定第一条边、第二条边、第三条边、第四条边、第五条边和第六条边:
[0129]
基于第一采样点的第二采样点得到第一条边。例如:基于第一采样点的坐标(0,1)和第二采样点的坐标(11,13),计算直线方程式1,该直线方程式1能够表征第一条边。
[0130]
基于第二采样点和第三采样点得到第二条边。例如:基于第二采样点的坐标(11,13)和第三采样点的坐标(27、31),计算直线方程式2,该直线方程式2能够表征第二条边。
[0131]
基于第三采样和第四采样点得到第三条边。例如:基于第三采样点的坐标(27、31)和第四采样点的坐标(38,41),计算直线方程式3,该直线方程式3能够表征第三条边。
[0132]
基于第四采样点和第五采样点得到第四条边,例如:基于第四采样点的坐标(38,41)和第五采样点的坐标(47,52),计算直线方程式4,该直线方程式4能够表征第四条边。
[0133]
基于第五采样点和第六采样点得到第五条边,例如:基于第五采样点的坐标(47,
52)和第六采样点的坐标(60,61),计算直线方程式5,该直线方程式5能够表征第五条边。
[0134]
基于第六采样点和第一采样点得到第六条边,例如:基于第六采样点的坐标(60,61)和第一采样点的坐标(0,1),计算直线方程式6,该直线方程式6能够表征第六条边。
[0135]
其次,确定三组对边的第一组对边、第二组对边和第三组对边,第一组对边是基于第一条边和第四条边得到的,第二组对边是基于第二条边和第五条边得到的,第六组对边是基于第三条边和第六条边得到的。
[0136]
应理解,可以通过以下方式确定三组对边:
[0137]
将直线方程式1(第一条边)和直线方程式4(第四条边)作为第一组对边;将直线方程式2(第一条边)和直线方程式5(第五条边)作为第二组对边;将直线方程式3(第三条边)和直线方程式6(第六条边)作为第三组对边。
[0138]
s2233、若三个交点共线,则确定六个采样点为多组目标采样点中的一组目标采样点,以确定多组目标采样点。
[0139]
本技术实施例对判断三个交点是否共线的方式不作限定,例如,可以基于三个交点中的两个交点确定一条直线,判断另一个交点是否在这条直线上,若另一个交点在这条直线上,则确定三个交点共线,若另一个交点不在这条直线上,则确定这三个交点不共线。
[0140]
又例如:可以计算这三个交点中两两交点的距离,得到三个距离,若三个距离中两个较小距离之和与最大距离的比值为1,则确定三个交点共线,若三个距离中两个较小距离之和与最大距离的比值不为1,则确定三个交点不共线。
[0141]
确定出三个交点共线之后,将三个交点共线对应的六个采样点确定为一组目标采样点,依次方法,可以确定出多组目标采样点。
[0142]
应理解,由于二次曲线的内接六边形其三对边的交点共线,所以通过三个交点共线确定出的目标采样点是位于二次曲线上的点,通常,确定采样点是否位于二次曲线上需要知道采样点的坐标以及二次曲线的方程式,将采样点的坐标代入方程式,判断是否满足方程式,这种确定方式需要明确知道一个曲线是二次曲线,并且可以计算出该二次曲线的方程式,但是,本技术实施例是基于手绘图形的坐标去识别手绘图形是否为二次曲线,不能获知手绘图形是否是二次曲线,也就无法获知二次曲线精准的方程式,因此,通常判定采样点是否位于二次曲线上的方法无法在本技术实施例中适用。
[0143]
本技术实施例,可以通过三个交点是否共线确定目标采样点,相对于通常判定采样点是否位于二次曲线上的方法,可以在未知手绘图形是否为二次曲线的情况下,准确的确定出多组目标采样点。
[0144]
在一些实施例中,用户绘制的手绘图形中的一些坐标虽然未在二次曲线上,但是这些坐标相对于二次曲线的误差较小,也会将相对于二次曲线的误差较小的坐标判定为位于二次曲线上的坐标,这样处理的好处在于,可以增加目标采样点的数量,以更好的识别手绘图形是否为二次曲线。
[0145]
图7是本技术实施例提供的一种确定一组目标采样点的示意性流程图。
[0146]
s22331、基于第一交点的坐标、第二交点的坐标和第三交点的坐标,确定第一交点与第二交点的距离、第二交点与第三交点的距离和第一交点和第三交点的距离并进行排序处理,得到第一距离、第二距离和第三距离,第一距离小于第二距离,第二距离小于第三距离。
[0147]
应理解,在s2231中确定出三组对边之后,可以得到三组对边的方程式,基于每组对边的方程式,可以确定三组对边对应的第一交点、第二交点和第三交点。示例性的,联立直线方程式1(第一条边)和直线方程式4(第四条边)并求解,得到第一交点,联立直线方程式2(第一条边)和直线方程式5(第五条边)并求解,得到第二交点,联立直线方程式3(第三条边)和直线方程式6(第六条边)并求解,得到第三交点。
[0148]
本技术实施例中,在确定出第一交点的坐标d1、第二交点的坐标d2和第三交点的坐标d3之后,将d1、d2和d3按照数值从小到大排序,将数值最小的距离称为第一距离,将数值最大的距离称为第三距离,将中间数值的距离称为第二距离。示例性的,若d1<d2<d3,那么,将d1称为第一距离、d2称为第二距离、d3称为第三距离。
[0149]
s22332、若第一距离和第二距离之和与第三距离的比值小于第一阈值,则确定六个采样点为多组目标采样点中的一组目标采样点。
[0150]
应理解,用户绘制的手绘图形中一组目标采样点中的六个坐标均在二次曲线上时,基于该六个坐标得到的第一距离、第二距离和第三距离满足以下条件:第一距离和第二距离之和与第三距离的比值等于1。
[0151]
本技术实施例中,在一组目标采样点中的六个坐标相对于二次曲线的误差较小时,基于该六个坐标得到的第一距离、第二距离和第三距离满足以下条件:第一距离和第二距离之和与第三距离的比值小于第一阈值。其中,第一阈值可以是整数1附近的数字,例如1+0.5,1+0.6等,本技术实施例对此不作限定。该第一阈值可以是预先基于测试数据获得的数值。
[0152]
本技术实施例,分别在多组第二候选采样点中确定出第一距离、第二距离和第三距离之后,若有一组或者几组第二候选采样点的第一距离、第二距离和第三距离满足第一距离和第二距离之和与第三距离的比值小于第一阈值,则将该一组或者几组第二候选采样点确定为目标采样点。
[0153]
本技术实施例,由于确定六个采样点为多组目标采样点中的一组目标采样点是基于第一距离和第二距离之和与第三距离的比值小于第一阈值进行判断的,而不是基于第一距离和第二距离之和与第三距离的比值等于1进行判断,可以将多组第二候选采样点中相对于二次曲线的误差较小的第二候选采样点确定为目标采样点,增加了目标采样点的数量,以更好的识别手绘图形是否为二次曲线。
[0154]
图8是本技术实施例提供的一种确定手绘图形是否为二次曲线的示意性流程图。
[0155]
s231、根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形属于二次曲线的概率。
[0156]
本技术实施例中,可以将第一坐标集的坐标位于二次曲线上的概率作为一个特征输入分类模型中进行处理,分类模型输出一个概率,该概率是指手绘图形属于二次曲线的概率。示例性的,分类模型可以为二分类模型,例如支持向量机。
[0157]
s232、在手绘图形属于二次曲线的概率大于第二阈值的情况下,确定手绘图形为二次曲线。
[0158]
应理解,第二阈值是预先设定的数值,预先设定的第二阈值越大,识别出的手绘图形与二次曲线的误差越小,预先设定的第二阈值越小,识别出的手绘图形与二次曲线的误差越大。
[0159]
示例性的,预先设定的第二阈值为0.8,那么在手绘图形属于二次曲线的概率大于0.8(比如0.9)的情况下,确定手绘图形为二次曲线,预先设定的第二阈值为0.7,那么在手绘图形属于二次曲线的概率大于0.7(比如0.8)的情况下,确定手绘图形为二次曲线,手绘图形属于二次曲线的概率为0.9的手绘图形与二次曲线的误差小于手绘图形属于二次曲线的概率为0.8的手绘图形与二次曲线的误差。
[0160]
s233、在手绘图形属于二次曲线的概率小于或等于第二阈值的情况下,确定手绘图形不是二次曲线。
[0161]
示例性的,预先设定的第二阈值为0.8,那么在手绘图形属于二次曲线的概率小于或等于0.8的情况下,确定手绘图形不是二次曲线。
[0162]
本技术实施例,根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形属于二次曲线的概率,在手绘图形属于二次曲线的概率大于第二阈值的情况下,确定手绘图形为二次曲线,在手绘图形属于二次曲线的概率小于或等于第二阈值的情况下,确定手绘图形不是二次曲线,可以准确的确定手绘图形是否为二次曲线。
[0163]
图9是本技术实施例提供的分类模型的训练方法300的示意性流程图。该方法300可由电子设备或服务器执行,也可由电子设备或服务器中的处理器执行,也可以由电子设备或服务器中的芯片执行,本技术实施例不做任何限定。为了便于描述,以电子设备为例对方法300做详细说明。
[0164]
s31、选取训练数据,训练数据包括第一类训练数据和第二类训练数据,第一类训练数据包括基于手绘图形是二次曲线的坐标集得到的坐标位于二次曲线上的概率和对基于手绘图形是二次曲线的坐标集得到的坐标位于二次曲线上的概率进行标注的第一标签,第二类训练数据包括基于手绘图形是非二次曲线的坐标集得到的坐标位于二次曲线上的概率和基于手绘图形是非二次曲线的坐标集得到的坐标位于二次曲线上的概率进行标注的第二标签。
[0165]
应理解,在进行分类模型的训练之前,需要选取训练数据,其中,第一类训练数据的坐标位于二次曲线上的概率是对手绘图形是二次曲线的手绘图形的坐标集处理得到的特征,第二类训练数据中的坐标位于二次曲线上的概率是对手绘图形是非二次曲线的手绘图形的坐标集处理得到的特征。
[0166]
本技术实施例可以利用常用的标注工具(例如labelimg、nlp标注工具brat)对第一类训练数据和第二类训练数据进行标注。示例性的,第一标签可以为“1”,第二标签可以为
“‑
1”。
[0167]
s32、基于训练数据对分类模型进行训练,直至分类模型收敛。
[0168]
本技术实施例的分类模型可以包括逻辑回归模型、朴素贝叶斯模型、决策树模型、支持向量机模型、随机森林模型、梯度提升树模型等,本技术实施例对分类模型的类型不作限定。
[0169]
应理解,在对分类模型进行训练时,首先,将第一类训练数据和第二类训练数据分别输入至初始的分类模型中,得到初始的分类模型的训练分析结果。
[0170]
由于初始时分类模型尚未训练完成,因此,此时输出的训练分析结果与标准分析结果之间会存在一定的偏差、误差。可以理解,标注分析结果可以是第一标签、第二标签。
[0171]
其次,根据训练分析结果和标准分析结果计算本轮训练的全局误差。
[0172]
应理解,在得到各训练分析结果之后,可以根据各训练分析结果与对应的标准分析结果计算本轮训练的全局误差,并判断该全局误差是否满足预设条件,例如判断该全局误差是否小于5%。在此,预设条件可以在训练分类模型时确定,例如,可以设定预设条件为全局误差小于特定阈值,该特定阈值可以是一个百分比数值,其中,该特定阈值越小,则最后训练完成得到的分类模型越稳定,识别结果的精确度也将越高。
[0173]
本技术实施例中,全局误差是指损失函数,损失函数可以包括均方差损失、平均绝对误差损失、交叉熵损失函数等,本技术实施例对损失函数的类型不作限定。
[0174]
然后,若全局误差不满足预设条件,则调整分类模型的模型参数,并将模型参数调整后的分类模型确定为初始的分类模型。
[0175]
应理解,当本轮训练的全局误差不满足预设条件时,例如,当本轮训练的全局误差为10%时,则可以调整分类模型的模型参数,并将模型参数调整后的分类模型确定为初始的分类模型,然后重新以训练数据进行训练,以反复调整分类模型的模型参数,使得后续根据训练分析结果与对应的标准分析结果计算得到的全局误差最小化,直到最终的全局误差满足预设条件。
[0176]
最后,若全局误差满足预设条件,则确定分类模型已收敛。
[0177]
应理解,当本轮训练的全局误差满足预设条件时,例如,当本轮训练的全局误差小于5%时,则可以确定分类模型已收敛。
[0178]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0179]
图10是本技术实施例提供的手绘图形的识别装置400的示例性框图。该手绘图形的识别装置400包括处理单元41,处理单元41用于执行以下操作:
[0180]
获取手绘图形的第一坐标集;
[0181]
根据第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率;
[0182]
根据第一坐标集的坐标位于二次曲线上的概率,确定手绘图形是否为二次曲线。
[0183]
应理解,处理单元41可用于执行方法200中电子设备执行的各个步骤,具体描述可参见上文的相关描述,不再赘述。
[0184]
此外,处理单元41还可用于执行方法300中电子设备执行的各个步骤,具体描述可参见上文的相关描述,不再赘述。
[0185]
应理解,这里的电子设备400以功能单元的形式体现。这里的术语“单元”可以指应用特有集成电路(application specific integrated circuit,asic)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。
[0186]
图11是本技术实施例提供的电子设备500的示意性结构图。电子设备500用于执行上述方法实施例中对应的各个步骤和/或流程。
[0187]
电子设备500包括处理器501和存储器502。其中,处理器501和存储器502通过内部连接通路互相通信,处理器501可以实现手绘图形的识别装置400中各种可能的实现方式中处理单元41的功能。存储器502用于存储指令,处理器501用于执行存储器502存储的指令,或者说,处理器501可以调用这些存储指令实现手绘识别装置400中处理单元41的功能。
[0188]
可选地,该存储器502可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。该处理器501可以用于执行存储器中存储的指令,并且当该处理器501执行存储器中存储的指令时,该处理器501用于执行上述与电子设备对应的方法实施例的各个步骤和/或流程。
[0189]
处理器501用于执行以下步骤:
[0190]
获取手绘图形的第一坐标集;
[0191]
对第一坐标集进行拟合处理,得到第一方程式,第一方程式用于表征拟合的二次曲线;
[0192]
基于第一坐标集和第一方程式,得到手绘图形与二次曲线的相似度;
[0193]
根据手绘图形与二次曲线的相似度,确定手绘图形是否为二次曲线。
[0194]
应理解,各个器件执行上述各个方法中相应步骤的具体过程在上述方法实施例中已经详细说明,为了简洁,此处不再赘述。
[0195]
此外,处理器501还可用于执行方法200中电子设备执行的各个步骤,具体描述可参见上文的相关描述,不再赘述。
[0196]
此外,处理器501还可用于执行方法300中电子设备执行的各个步骤,具体描述可参见上文的相关描述,不再赘述。
[0197]
应理解,在本技术实施例中,上述装置的处理器可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0198]
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器执行存储器中的指令,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0199]
本技术实施例提供一种计算机程序产品,当所述计算机程序产品在电子设备运行时,使得电子设备执行上述实施例中的技术方案。其实现原理和技术效果与上述方法相关实施例类似,此处不再赘述。
[0200]
本技术实施例提供一种可读存储介质,所述可读存储介质包含计算机指令,当所述指令在电子设备运行时,使得所述电子设备执行上述实施例的技术方案。其实现原理和技术效果类似,此处不再赘述。
[0201]
本技术实施例提供一种芯片,所述芯片包括:存储器:用于存储指令;处理器,用于从所述存储器中调用并运行所述指令,使得安装有所述芯片的电子设备执行上述实施例中的技术方案。其实现原理和技术效果类似,此处不再赘述。
[0202]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序
产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,dvd))、或者半导体介质(例如,固态硬盘(solid state disk,ssd))等。
[0203]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0204]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
[0205]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0206]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0207]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0208]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0209]
本技术中各个实施例之间相同或相似的部分可以互相参考。在本技术中各个实施例、以及各实施例中的各个实施方式/实施方法/实现方法中,如果没有特殊说明以及逻辑
冲突,不同的实施例之间、以及各实施例中的各个实施方式/实施方法/实现方法之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例、以及各实施例中的各个实施方式/实施方法/实现方法中的技术特征根据其内在的逻辑关系可以组合形成新的实施例、实施方式、实施方法、或实现方法。以上所述的本技术实施方式并不构成对本技术保护范围的限定。
[0210]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准总之,以上所述仅为本技术技术方案的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。

技术特征:
1.一种手绘图形的识别方法,其特征在于,包括:获取手绘图形的第一坐标集;根据所述第一坐标集,得到所述第一坐标集的坐标位于二次曲线上的概率;根据所述第一坐标集的坐标位于二次曲线上的概率,确定所述手绘图形是否为所述二次曲线。2.根据权利要求1所述的方法,其特征在于,所述根据所述第一坐标集,得到所述第一坐标集的坐标位于二次曲线上的概率,包括:对所述第一坐标集进行采样处理,得到多组第一候选采样点;对所述多组第一候选采样点进行筛选处理,得到多组第二候选采样点,每组第二候选采样点可以形成多组对边,所述多组对边为多组非平行对边;对所述多组第二候选采样点进行筛选处理,得到多组目标采样点,所述多组目标采样点为位于所述二次曲线上的点;根据所述多组第二候选采样点和所述多组目标采样点,得到所述第一坐标集的坐标位于所述二次曲线上的概率。3.根据权利要求2所述的方法,其特征在于,所述每组第二候选采样点包括六个采样点,所述对所述多组第二候选采样点进行筛选处理,得到多组目标采样点,包括:基于所述多组第二候选采样点中每组第二候选采样点的所述六个采样点,确定三组对边;基于所述三组对边,确定所述三组对边对应的三个交点;若所述三个交点共线,则确定所述六个采样点为所述多组目标采样点中的一组目标采样点,以确定所述多组目标采样点。4.根据权利要求3所述的方法,其特征在于,所述基于所述多组第二候选采样点中每组第二候选采样点的所述六个采样点,确定三组对边,包括:基于所述多组第二候选采样点中每组第二候选采样点的所述六个采样点,确定第一条边、第二条边、第三条边、第四条边、第五条边和第六条边,所述第一条边是基于第一采样点和第二采样点得到的,所述第二条边是基于所述第二采样点和第三采样点得到的,所述第三条边是基于所述第三采样点和第四采样点得到的,所述第四条边是基于所述第四采样点和第五采样点得到的,所述第五条边是基于所述第五采样点和第六采样点得到的,所述第六条边是基于所述第六采样点和所述第一采样点得到的;确定所述三组对边的第一组对边、第二组对边和第三组对边,所述第一组对边是基于所述第一条边和所述第四条边得到的,所述第二组对边是基于所述第二条边和所述第五条边得到的,所述第六组对边是基于所述第三条边和所述第六条边得到的;其中,所述第一采样点、所述第二采样点、所述第三采样点、所述第四采样点、所述第五采样点和所述第六采样点是在所述多组第二候选采样点中每组第二候选采样点内按照采样顺序排列的所述六个采样点。5.根据权利要求3所述的方法,其特征在于,所述三个交点包括第一交点、第二交点和第三交点,所述若所述三个交点共线,则确定所述六个采样点为所述多组目标采样点中的一组目标采样点,包括:基于所述第一交点的坐标、所述第二交点的坐标和所述第三交点的坐标,确定所述第
一交点与所述第二交点的距离、所述第二交点与所述第三交点的距离和所述第一交点和所述第三交点的距离并进行排序处理,得到第一距离、第二距离和第三距离,所述第一距离小于所述第二距离,所述第二距离小于所述第三距离;若所述第一距离和所述第二距离之和与所述第三距离的比值小于第一阈值,则确定所述六个采样点为所述多组目标采样点中的一组目标采样点。6.根据权利要求2所述的方法,其特征在于,所述对所述第一坐标集进行采样处理,得到多组第一候选采样点,包括:对所述第一坐标集进行预处理操作,得到第二坐标集,所述预处理操作包括去重操作;对所述第二坐标集进行采样处理,得到所述多组第一候选采样点。7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据所述第一坐标集的坐标位于二次曲线上的概率,确定所述手绘图形是否为所述二次曲线,包括:根据所述第一坐标集的坐标位于二次曲线上的概率,确定所述手绘图形属于所述二次曲线的概率;在所述手绘图形属于所述二次曲线的概率大于第二阈值的情况下,确定所述手绘图形为所述二次曲线;在所述手绘图形属于所述二次曲线的概率小于或等于所述第二阈值的情况下,确定所述手绘图形不是所述二次曲线。8.一种手绘图形的识别装置,其特征在于,所述识别装置包括处理单元,所述处理单元用于:获取手绘图形的第一坐标集;根据所述第一坐标集,得到所述第一坐标集的坐标位于二次曲线上的概率;根据所述第一坐标集的坐标位于二次曲线上的概率,确定所述手绘图形是否为所述二次曲线。9.一种电子设备,其特征在于,包括:一个或多个处理器;一个或多个存储器;所述一个或多个存储器存储有一个或者多个计算机程序,所述一个或者多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1至7中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1至8中任一项所述的方法。

技术总结
本申请属于计算机图形领域,尤其涉及一种手绘图形的识别方法、装置、电子设备和可读存储介质。该方法可以根据手绘图形的第一坐标集,得到第一坐标集的坐标位于二次曲线上的概率,根据手绘图形的坐标位于二次曲线上的概率这个特征对手绘图形进行识别,该特征可以反映手绘图形与二次曲线的重合度,是二次曲线的相关特征,利用该特征对手绘图形进行识别,可以提高识别手绘图形的准确率。提高识别手绘图形的准确率。提高识别手绘图形的准确率。


技术研发人员:吴泰鸿 朱理森 黄靖超 汪帅
受保护的技术使用者:深圳市鸿合创新信息技术有限责任公司
技术研发日:2023.06.15
技术公布日:2023/10/15
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐