【技术实现步骤摘要】
基于手绘轨迹的形状识别及矫正方法、设备及存储介质
[0001]本专利技术涉及图形识别
,尤其涉及一种基于手绘轨迹的形状识别及矫正方法、设备及存储介质。
技术介绍
[0002]目前,许多绘图工具直接采用规则图元输入,例如Microsoft Office,Visio以及大部分CAD系统,在绘图时要求用户从大量的菜单和按钮中选择预定义的标准图形这样的方式也存在以下方面的缺点:
[0003]1)输入不方便。用户发现绘制自己需要的图形时,往往要多次点击鼠标进行选择,特别当有许多预定义的图形或对象时,用户很难记住到哪儿选择自己需要的图形。例如微软的中有个预定义组合图形供用户选择,复杂的界面让用户感到难以适从。
[0004]2)输入不自然。有些应用例如方案设计,需要用户随时随地地快速记录其设计思路,而不是拘泥于某一细节,这与传统的以最终设计为目标的应用是截然不同的。在这些系统中,选择预定义标准对象的过程往往会打断用户的思路,从而阻碍用户平滑、流畅地体现其设计思想。
[0005]3)不适合小屏幕掌上设备。对于等仅有笔输入界面的小屏幕掌上设备来说,这种输入方式很不实际。因为大量的菜单和按钮会使得原本拥挤的屏幕更加紧张,从而挤压用户的使用区域。
[0006]随着硬件设备的不断更新,如手写板的出现,基于的交互式手绘草图设计正逐渐成为设计师进行手绘草图设计的一种新的方式。但是手绘草图输入的自由度较大,输入意图与领域背景、思维方式、手绘习惯和偏好等多种特性相关,手绘过程也会受到图形结构和设备特性等多种环境 ...
【技术保护点】
【技术特征摘要】
1.一种基于手绘轨迹的形状识别及矫正方法,其特征在于,所述方法包括:基于预训练的神经网络模型,对获取的手绘轨迹进行大分类识别,以使得所述手绘轨迹被区分为封闭图形和非封闭图形中的一种;在所述手绘轨迹为所述封闭图形时,计算所述手绘轨迹中存在的拐点,以确定所述手绘轨迹的具体形状;在所述手绘轨迹为所述非封闭图形时,计算所述手绘轨迹的每三个相邻数据点之间的曲率以获取特征点数量,并根据所述特征点数量以确定所述手绘轨迹的具体形状;根据得到的所述手绘轨迹的具体形状的不同,以及根据所述拐点或/和所述特征点,对所述手绘轨迹进行矫正,以使得所述手绘轨迹与标准图形拟合。2.根据权利要求1所述的基于手绘轨迹的形状识别及矫正方法,其特征在于,所述封闭图形至少包括圆形、多边形、五角星、心形、云朵中的一种,所述非封闭图形至少包括直线、抛物线、带箭头的直线、带箭头的曲线中的一种。3.根据权利要求2所述的基于手绘轨迹的形状识别及矫正方法,其特征在于,在所述手绘轨迹为圆形、多边形、五角星、心形、云朵中的一种时,所述计算所述手绘轨迹中存在的拐点,以确定所述手绘轨迹的具体形状,具体包括以下步骤S301~S304:步骤S201:在所述手绘轨迹的任一选取线的首尾两点之间连接一条第一直线段,所述第一直线段为选取线的弦;步骤S202:得到所述选取线上离所述第一直线段距离最大的点,计算其与所述第一直线段的距离;步骤S203:比较所述距离与预先给定的第一阈值的大小,若小于所述第一阈值,则所述第一直线段作为所述选取线的近似段,多个所述近似段的连接点为所述拐点,根据所述拐点的数量,以确定所述手绘轨迹的具体形状;步骤S204:如果所述距离大于所述第一阈值,则选取所述选取线上离所述第一直线段距离最大的点作为拆分点,将所述选取线拆分为两段,并分别对两段所述选取线执行步骤S201~S203。4.根据权利要求2所述的基于手绘轨迹的形状识别及矫正方法,其特征在于,在所手绘轨迹为直线、抛物线、带箭头的直线、带箭头的曲线中的一种时,所述计算所述手绘轨迹的每三个相邻数据点之间的曲率以获取特征点数量,并根据所述特征点数量以确定所述手绘轨迹的具体形状,具体包括:设定所述手绘轨迹上的各个点的坐标为(x1,y1),(x2,y2),(x3,y3),...,(x
n
,y
n
);通过计算公式得到所述曲率为cur,其中:temp=(a*a+b*b
‑
c*c)/(2*a*b);c*c)/(2*a*b);c*c)/(2*a*b);a、b、c为相邻的三个点,x1~x3分别为a、b、c的x轴坐标,y1~y3为a、b、c的y轴坐标;
计算所述曲率的差值:dcur[n]=cur[n+1]
‑
cur[n];由于dcur[n]*dcur[n+1]<0 and cur[n]>threshold;n为所述特征点的位置,threshold为可调的第二阈值;根据所述特征点的数量,得到所述手绘轨迹的具体形状。5.根据权利要求1所述的基于手绘轨迹的形状识别及矫正方法,其特征在于,所述对所述手绘轨迹进行矫正,以使得所述手绘轨迹与标准图形拟合,具体包括:在所述手绘轨迹的具体形状为直线时,将所述手绘轨迹的首尾两点相连,以生成新的直线;在所述手绘轨迹的具体形状为抛物线时,将所述手绘轨迹的首尾两点连成第二直线段,设定所述手绘轨迹中距离所述第二直线段最远的点当做抛物线的顶点,从所述顶点开始将所述手绘轨迹拆分为两段,对两段所述手绘轨迹分别用三次贝塞尔曲线进行平滑连接,以生成新的抛物线;在所述手绘轨迹的具体轨迹为圆形时,选取所述手绘轨迹的中心点作为圆心,计算得到...
【专利技术属性】
技术研发人员:庄建明,邢淑敏,
申请(专利权)人:泓宇星私人有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。