一种基于手势信号识别的设计意图判别方法及系统与流程

文档序号:18032404发布日期:2019-06-28 22:49阅读:272来源:国知局
一种基于手势信号识别的设计意图判别方法及系统与流程

本发明涉及产品设计过程中的智能人机交互技术领域,特别是涉及一种基于手势信号识别的设计意图判别方法及系统。



背景技术:

近年来,随着智能设计概念的提出,对产品设计过程中的人机交互技术提出了新的技术要求和挑战。鼠标、键盘等传统交互工具在使用的自然性和友好性等方面存在很大局限性,难以满足智能设计中对人机交互技术的发展需求,也无法准确识别用户在产品设计过程中的设计意图。

手势是人类表达非语言类的意图感知的重要载体,近年来随着科学技术的不断发展,对于手势识别技术的研究得到广泛关注。然而,目前针对手势识别的研究工作主要集中在提高手势识别精度和处理效率方面,却鲜有针对产品设计过程中的手势交互技术进行研究,特别是利用手势识别技术对用户的设计意图进行有效判别,以实现产品设计的智能交互过程。



技术实现要素:

本发明的目的是提供一种基于手势信号识别的设计意图判别方法及系统,以实现产品设计过程中对用户设计意图的判别。

为实现上述目的,本发明提供了如下方案:

一种基于手势信号识别的设计意图判别方法,所述方法包括:

获取设计者在设计过程中的待识别手势信号;

根据所述待识别手势信号构建待判别的观测序列;

获取多个训练好的手势识别模型;

采用多个所述训练好的手势识别模型确定所述待判别的观测序列的多个观测概率;

确定多个所述观测概率中的最大观测概率对应的所述训练好的手势识别模型为当前识别模型;

根据所述当前识别模型和所述最大观测概率从手势特征库提取出对应的cad操作指令;

根据所述cad操作指令驱动cad软件完成相应的指令操作。

可选的,所述根据所述待识别手势信号构建待判别的观测序列,具体包括:

根据所述待识别手势信号构造待判别的手势特征向量n'(c',v');其中c'=(c’1,c'2,c'3,c'4,c'5,c'6),c1'为手心坐标,c'2~c'6分别为拇指指尖到小指指尖的坐标;v'=(v’1,v'2,v'3,v'4,v'5,v'6),v’1为手心内法向量,v'2~v'6分别为拇指指尖到小指指尖的法向量;

根据所述待判别的手势特征向量n'构建待判别的观测序列o’i(o’1,o'2,...o't);其中o’1=n’1,o'2=n'2,...o't=n't;n’t表示根据t时刻采集的待识别的手势信号构造的t时刻的待判别的手势特征向量,t=1,2,...,t;t为采集时刻总数。

可选的,在所述获取多个训练好的手势识别模型之前,还包括:

通过大量实验采集设计者在设计过程中的大量手势信号;

根据大量所述手势信号构建手势特征向量数据集;

随机选取所述手势特征向量数据集中80%的手势特征向量作为训练集,其余20%的手势特征向量作为测试集;

采用所述训练集对hmm模型的模型参数进行训练,得到多个训练后的hmm模型;

采用所述测试集计算多个所述训练后的hmm模型的多个输出观测概率;

确定多个所述输出观测概率中的最大输出观测概率对应的训练后的hmm模型为训练好的手势识别模型。

可选的,所述采用多个所述训练好的手势识别模型确定所述待判别的观测序列的多个观测概率,具体包括:

采用公式计算t时刻的待判别的观测序列的观测概率p(o/λ);其中αt(i)表示t时刻的待判别的观测序列的隐藏状态为qi的概率。

可选的,所述根据所述当前识别模型和所述最大观测概率从手势特征库提取出对应的cad操作指令,具体包括:

判断所述当前识别模型对应的所述最大观测概率是否大于等于0.8,获得第一判断结果;

若所述第一判断结果为所述当前识别模型对应的所述最大观测概率大于等于0.8,根据所述当前识别模型从手势特征库提取出对应的cad操作指令;

若所述第一判断结果为所述当前识别模型对应的所述最大观测概率小于0.8,确定所述待识别的手势信号为无效手势。

一种基于手势信号识别的设计意图判别系统,所述系统包括:

待识别手势信号获取模块,用于获取设计者在设计过程中的待识别手势信号;

观测序列构建模块,用于根据所述待识别手势信号构建待判别的观测序列;

手势识别模型获取模块,用于获取多个训练好的手势识别模型;

观测概率计算模块,用于采用多个所述训练好的手势识别模型确定所述待判别的观测序列的多个观测概率;

当前识别模型判别模块,用于确定多个所述观测概率中的最大观测概率对应的所述训练好的手势识别模型为当前识别模型;

操作指令提取模块,用于根据所述当前识别模型和所述最大观测概率从手势特征库提取出对应的cad操作指令;

指令操作模块,用于根据所述cad操作指令驱动cad软件完成相应的指令操作。

可选的,所述观测序列构建模块具体包括:

手势特征向量构造单元,用于根据所述待识别手势信号构造待判别的手势特征向量n'(c',v');其中c'=(c’1,c'2,c'3,c'4,c'5,c'6),c’1为手心坐标,c'2~c'6分别为拇指指尖到小指指尖的坐标;v'=(v’1,v'2,v'3,v'4,v'5,v'6),v1'为手心内法向量,v'2~v'6分别为拇指指尖到小指指尖的法向量;

观测序列构建单元,用于根据所述待判别的手势特征向量n'构建待判别的观测序列o’i(o’1,o'2,...o't);其中o’1=n’1,o'2=n'2,...o't=n't;n’t表示根据t时刻采集的待识别的手势信号构造的t时刻的待判别的手势特征向量,t=1,2,...,t;t为采集时刻总数。

可选的,所述系统还包括手势识别模型构建模块,所述手势识别模型构建模块具体包括:

大量手势信号采集单元,用于通过大量实验采集设计者在设计过程中的大量手势信号;

手势特征向量数据集构建单元,用于根据大量所述手势信号构建手势特征向量数据集;

训练集和测试集选取单元,用于随机选取所述手势特征向量数据集中80%的手势特征向量作为训练集,其余20%的手势特征向量作为测试集;

hmm模型训练单元,用于采用所述训练集对hmm模型的模型参数进行训练,得到多个训练后的hmm模型;

hmm模型观测概率计算单元,用于采用所述测试集计算多个所述训练后的hmm模型的多个输出观测概率;

手势识别模型建立单元,用于确定多个所述输出观测概率中的最大输出观测概率对应的训练后的hmm模型为训练好的手势识别模型。

可选的,所述观测概率计算模块具体包括:

观测概率计算单元,用于采用公式计算t时刻的待判别的观测序列的观测概率p(o/λ);其中αt(i)表示t时刻的待判别的观测序列的隐藏状态为qi的概率。

可选的,所述操作指令提取模块具体包括:

观测概率判断单元,用于判断所述当前识别模型对应的所述最大观测概率是否大于等于0.8,获得第一判断结果;

操作指令提取单元,用于若所述第一判断结果为所述当前识别模型对应的所述最大观测概率大于等于0.8,根据所述当前识别模型从手势特征库提取出对应的cad操作指令;

无效手势确定单元,用于若所述第一判断结果为所述当前识别模型对应的所述最大观测概率小于0.8,确定所述待识别的手势信号为无效手势。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明提供一种基于手势信号识别的设计意图判别方法及系统,在目前的设计者设计交互过程中,主要依赖的设备是鼠标和键盘,这些设备极大的限制了设计者的工作范围及设计方式,因为设计过程主要依赖于设计者大脑的想象,双手被限制在鼠标和键盘上,对于设计者的思维和表达方式造成了束缚。采用本发明的方法,利用手势信号采集装置获取设计过程中的手势信号,把双手从设计过程中解放出来,用更加自然并贴合设计需求的手势来表达设计需求,利用训练好的hmm模型从设计者的手势中识别出设计意图,通过设计手势驱动cad软件完成对应的指令操作,达到让计算机理解设计者的设计意图并完成设计任务的效果,避免了鼠标、键盘等手动操作设备对设计者的工作范围及设计方式的限制,提高了设计过程的智能化水平。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的基于手势信号识别的设计意图判别方法的原理图;

图2为本发明提供的基于手势信号识别的设计意图判别系统的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种基于手势信号识别的设计意图判别方法及系统,所述方法提取设计者在设计过程中常用的基本操作,针对每种操作定义一种手势与之对应并构建手势特征库,该库中包含设计手势动作及对应的hmm模型和对应的cad操作指令。在模型建立阶段,通过大量实验采集设计者在设计过程中的手势信号并建立隐马尔科夫模型(hiddenmarkovmodel,hmm),利用训练好的hmm模型识别手势类型。当用户产生设计手势动作时,采集该手势信号构建特征值观测序列,利用训练完成的hmm模型对该手势进行识别和分类,此手势类型对应着设计操作即cad操作指令,用于驱动cad软件完成设计任务。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

图1为本发明提供的基于手势信号识别的设计意图判别方法的原理图。参见图1,本发明提供的基于手势信号识别的设计意图判别方法具体包括:

步骤1:建立手势特征库。

设计者的各种设计操作都可以分解为几个简单的基本操作,通过各种基本操作的组合完成复杂的设计工作。以二维cad设计为例,常用的设计操作包括:直线,圆,曲线,平移,旋转,剪切。通过这些基本操作的相互协作,可以完成大部分较为复杂的二维设计工作。在二维cad操作的基础上,添加三维操作如移动,旋转,缩放,拉伸,回转。通过二维操作与三维操作结合,能够完成复杂的产品设计过程。本发明针对这11种设计操作,构建了11种一一对应的手势,并建立一个设计手势的特征库进行存储。11种设计操作指令与11种hmm模型的对应关系如下表1所示:

表1设计操作指令与hmm模型对照表

步骤2:建立11种设计操作指令对应的hmm模型h1~h11。

步骤2.1:手势信号采集及预处理。

利用手势信号采集装置采集设计者在设计过程中某一时刻t状态下的以上11种设计手势的手势信号,提取所述手势信号包含的手势信息,所述手势信息包括手心所在空间坐标c1及手心内法向量v1,拇指指尖到小指指尖的坐标c2~c6,及各手指指尖的空间法向量v2~v6。例如c2为拇指指尖坐标,c3为食指指尖坐标,c4为中指指尖坐标,c5为无名指指尖坐标,c6为小指指尖坐标;v2为拇指指尖法向量,v3为食指指尖法向量,v4为中指指尖法向量,v5为无名指指尖法向量,v6为小指指尖法向量。然后对手势信号进行预处理操作,去除噪声及无效信息。

步骤2.2:构造手势特征向量。

构造手势特征向量n(c,v),其中c=(c1,c2,c3,c4,c5,c6),v=(v1,v2,v3,v4,v5,v6)。多个设计手势的多个手势特征向量共同组成手势特征向量数据集,并将手势特征向量数据集分为训练集和测试集,其中训练集占80%,测试集占20%。利用获取到的从时刻1开始,到时刻t结束的手势特征向量n作为观测序列o=(o1,o2,..,ot),其中nt=ot表示t时刻的手势特征向量,t=1,2,...,t;即o1=n1,o2=n2,...,ot=nt,然后利用hmm模型对设计手势进行识别训练。

步骤2.3:hmm模型训练。

采用前向算法求出hmm观测序列的概率p(o/λ),所述hmm模型的输入为λ=(a,b,π),其中π为隐藏状态初始概率分布,a为隐藏状态转移概率矩阵,b为观测状态概率矩阵。所述hmm模型的观测序列为特征向量n构成的o=(o1,o2,..,ot);所述hmm模型的输出为观测序列概率p(o|λ)。

首先,对hmm模型的输入λ=(a,b,π)初始化。

1)计算t=1时刻的各个隐藏状态前向概率:

αt=1(i)=πibi(oi),i=1,2,...n

其中,oi表示i时刻的观测序列,bi表示i时刻的观测状态概率矩阵,πi表示i时刻的隐藏状态的概率分布,αt=1(i)表示i时刻的前向概率,i=1,2,...n表示隐藏状态的个数。

2)递推2,3,...t时刻的前向概率:

式中,oi+1表示t+1时刻的观测序列,bi表示t时刻的观测状态概率矩阵;αi(j)αji表示在t时刻观测到o1,o2,...oi、并且该t时刻的隐藏状态为qj、且t+1时刻的隐藏状态为qi的概率;αt+1(i)表示通过递推获得的t+1时刻的前向概率。

计算最终结果:

式中,p(o/λ)表示观测序列o在hmm模型λ=(a,b,π)下出现的条件概率,αt(i)表示在t时刻观测序列为o1,o2,..,ot并且t时刻隐藏状态为qi的概率。

通过计算观测序列概率p(o|λ),可以对当前的观测序列进行识别,识别到特定手势的观测序列并建立标签,可以作为不同手势的判别标准。

步骤2.4:利用baum-welch算法(前向-后向算法)求解hmm模型参数。

hmm模型参数求解过程如下:

输入:d个观测序列样本{(o1,o2,...od)},其中{(o1,o2,...od)}是通过采样实验获得的通过特征向量n建立的观测序列oi=(o1,o2,...ot),i=1,2,...d的集合。

输出:hmm模型参数λ=(a,b,π),包括隐藏状态初始概率分布π,隐藏状态转移概率矩阵a和观测状态概率矩阵b。

(1)随机初始化所有的πi,αji,bj(k),利用计算机对其随机取值。

其中πi表示第i个观测序列样本的隐藏状态概率分布,d为观测序列样本个数;aij表示第i个观测序列样本从隐藏状态qi转移到qj的频率计数;bj(k)表示第i个观测序列样本隐藏状态为qj且观测状态为oi的频率计数。

具体的:

其中表示给定模型参数λ和观测序列o,在1时刻处于状态qi的概率。

其中表示给定模型参数λ和观测序列o,在t时刻处于状态qi的概率。表示给定模型参数λ和观测序列o,在t时刻处于状态qi,且t+1时刻处于状态qj的概率。

其中表示第d个观测观测序列样本在t时刻的观测序列。

(2)对于每个样本d=1,2,...d,利用步骤(1)中的公式计算

(3)利用步骤(1)中的公式,在随机初始化参数的情况下,迭代计算πi,αij,bj(k)的值:

如果πi,αji,bj(k)的值已经收敛,则算法结束,否则回到第2)步继续迭代计算πi,αji,bj(k)的值。

(4)通过迭代计算出πi,αji,bj(k)的值,构建出hmm模型参数λ=(a,b,π),用以对观测序列进行识别。

对于hmm模型的训练采用交叉验证的方法,通过以上4个步骤(包括步骤(1)至步骤(4))不断优化hmm模型的参数λ=(a,b,π),在获得训练后的hmm模型参数后,选取数据组{(o1,o2,...od)}中的观测序列oi,计算该hmm模型产生该观察序列oi的似然度,似然度最大的hmm模型代表的设计行为,就是识别出的当前设计行为。

通过改变hmm模型的初始化参数,可以获得多个训练后的hmm模型,用测试集的观测序列计算训练后的hmm模型的输出p(o/λ),选择不同训练后的hmm模型中输出的p(o/λ)值最大的训练后的模型的作为设计手势分类识别的hmm模型,即训练好的手势识别模型。

通过对11种不同的设计手势做手势信息采样实验,并通过训练可以获得与11种手势信号对应的11种不同的训练好的手势识别模型,即h1(a1,b1,π1)~h11(a11,b11,π11),不同的设计手势又对应着不同的cad指令,即可利用一一对应的关系构建一个关于设计手势的手势特征库。

步骤3:采用训练好的手势识别模型对设计者的设计意图进行判别。

采用训练好的手势识别模型对设计者的设计意图进行判别的过程如下:

步骤3.1:手势信号采集及观测序列构建。

利用手势信号采集装置采集设计者在设计过程中的待识别手势信号,根据所述待识别手势信号中的手势信息构造待判别的手势特征向量n'(c',v'),其中c'=(c’1,c'2,c'3,c'4,c'5,c'6),c’1为手心坐标,c'2~c'6为拇指指尖到小指指尖的坐标,v'=(v’1,v'2,v'3,v'4,v'5,v'6),v’1为手心内法向量,v'2~v'6为拇指指尖到小指指尖法向量,形成手势特征向量数据集。利用获取到的手势特征向量n'作为新的待判别的观测序列o’i(o’1,o'2,...o't),其中o’1=n’1,o'2=n'2,...o't=n't。n’t表示根据t时刻采集的待识别的手势信号构造的t时刻的待判别的手势特征向量,t=1,2,...,t;t为采集时刻总数。

步骤3.2:手势信号的判别。

采用步骤2中的训练好的手势识别模型h1~h11分别计算待识别的观测序列o’i(o’1,o'2,...o't)下手势识别模型h1~h11对应的观测概率p'=(o'|λ),其中λ为训练后的模型参数,取手势识别模型h1~h11对应的观测概率p’1~p’11中最大的值作为本次观测序列的模型识别结果并做归一化处理,确定多个所述观测概率p’1~p’11中的最大观测概率对应的所述训练好的手势识别模型为当前识别模型。判断所述当前识别模型对应的所述最大观测概率p'是否大于等于0.8,当识别结果p'≥0.8时,即可判定该观测序列对应着观测概率最大的识别模型,根据所述当前识别模型从手势特征库提取出对应的cad操作指令;当识别结果p'<0.8时,则判断本次观测序列无对应的手势识别模型,本次观测序列下无有效手势,判断此设计手势为无效手势。

步骤4:根据手势识别模型识别结果进行相关指令操作。

在完成设计者实时手势识别之后,根据所述当前识别模型和所述最大观测概率从所述手势特征库选取出对应的cad操作指令,根据该cad操作指令驱动cad软件完成相应的指令操作,达到利用手势信号识别设计意图并在cad中实现产品设计的效果。

在目前的设计者设计交互过程中,主要依赖的设备是鼠标和键盘,这些设备极大的限制了设计者的工作范围及设计方式。由于设计过程主要依赖于大脑的想象,双手被限制在鼠标和键盘上,对于设计者的思维和表达方式造成了束缚。使用本发明的方法,利用手势信号采集装置获取设计过程中的手势信息,把双手从设计过程中解放出来,用更加自然并贴合设计需求的手势来表达设计需求,利用训练好的hmm模型从设计者的手势中识别出设计意图,通过设计手势驱动cad软件完成对应的指令操作,达到让计算机理解设计者的设计意图并完成设计任务的效果,避免了鼠标、键盘等手动操作设备对设计者的工作范围及设计方式的限制,提高了设计过程的智能化水平。

基于本发明提供的方法,本发明还提供一种基于手势信号识别的设计意图判别系统。图2为本发明提供的基于手势信号识别的设计意图判别系统的结构图。参见图2,所述系统包括:

待识别手势信号获取模块201,用于获取设计者在设计过程中的待识别手势信号;

观测序列构建模块202,用于根据所述待识别手势信号构建待判别的观测序列;

手势识别模型获取模块203,用于获取多个训练好的手势识别模型;

观测概率计算模块204,用于采用多个所述训练好的手势识别模型确定所述待判别的观测序列的多个观测概率;

当前识别模型判别模块205,用于确定多个所述观测概率中的最大观测概率对应的所述训练好的手势识别模型为当前识别模型;

操作指令提取模块206,用于根据所述当前识别模型和所述最大观测概率从手势特征库提取出对应的cad操作指令;

指令操作模块207,用于根据所述cad操作指令驱动cad软件完成相应的指令操作。

其中,所述观测序列构建模块202具体包括:

手势特征向量构造单元,用于根据所述待识别手势信号构造待判别的手势特征向量n'(c',v');其中c'=(c’1,c'2,c'3,c'4,c'5,c'6),c’1为手心坐标,c'2~c'6分别为拇指指尖到小指指尖的坐标;v'=(v’1,v'2,v'3,v'4,v'5,v'6),v’1为手心内法向量,v'2~v'6分别为拇指指尖到小指指尖的法向量;

观测序列构建单元,用于根据所述待判别的手势特征向量n'构建待判别的观测序列o’i(o’1,o'2,...o't);其中o’1=n’1,o'2=n'2,...o't=n't;n’t表示根据t时刻采集的待识别的手势信号构造的t时刻的待判别的手势特征向量,t=1,2,...,t;t为采集时刻总数。

所述系统还包括手势识别模型构建模块,所述手势识别模型构建模块具体包括:

大量手势信号采集单元,用于通过大量实验采集设计者在设计过程中的大量手势信号;

手势特征向量数据集构建单元,用于根据大量所述手势信号构建手势特征向量数据集;

训练集和测试集选取单元,用于随机选取所述手势特征向量数据集中80%的手势特征向量作为训练集,其余20%的手势特征向量作为测试集;

hmm模型训练单元,用于采用所述训练集对hmm模型的模型参数进行训练,得到多个训练后的hmm模型;

hmm模型观测概率计算单元,用于采用所述测试集计算多个所述训练后的hmm模型的多个输出观测概率;

手势识别模型建立单元,用于确定多个所述输出观测概率中的最大输出观测概率对应的训练后的hmm模型为训练好的手势识别模型。

所述观测概率计算模块204具体包括:

观测概率计算单元,用于采用公式计算t时刻的待判别的观测序列的观测概率p(o/λ);其中αt(i)表示t时刻的待判别的观测序列的隐藏状态为qi的概率。

所述操作指令提取模块206具体包括:

观测概率判断单元,用于判断所述当前识别模型对应的所述最大观测概率是否大于等于0.8,获得第一判断结果;

操作指令提取单元,用于若所述第一判断结果为所述当前识别模型对应的所述最大观测概率大于等于0.8,根据所述当前识别模型从手势特征库提取出对应的cad操作指令;

无效手势确定单元,用于若所述第一判断结果为所述当前识别模型对应的所述最大观测概率小于0.8,确定所述待识别的手势信号为无效手势。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1