一种手势识别装置的制造方法_3

文档序号:9350371阅读:来源:国知局
将该待测特征点序列分割为多个子序列,并获得每个子序列对应的平均位置。其中,每个子 序列对应的平均位置可以选取指定特征点(如手腕中点,或者也可为其他特征点)在该子 序列中的平均位置。此外,预定时间窗约为一个单手基本动作(即单手的握、抓等)从开始 到结束的时间,可根据经验值来设定,或可以通过试验的方法来确定,例如可以为2. 5秒。
[0064] 在一个例子中,假设待测特征点序列是在10秒内采集的,分割子单元410利用 2. 5秒的时间窗可以将左手的待测特征点序列以及右手的待测特征点序列分别分割成4个 子序列。以左手的待测特征点序列(Pl1,i= 1,2,...,M}为例(右手的待测特征点序列 {Pri,i= 1,2,...,M}与其类似,这里不再详述),假设每秒采集10帧图像,则待测特征点 序列对应的是100帧图像,即M= 100,也就是说,(Pl1,i= 1,2, ...,M}包括100组特征点 集Pli、Pl2、…、PIiq。。这样,通过上述2. 5秒的时间窗,可以将(Pl1,i= 1,2,...,M}分割 为(Pl1,i= 1,2, ? ? ?,25}、(Pl1,i= 25, 26, ? ? ?,50}、(Pl1,i= 51,52, ? ? ?,75}和(Pl1,i =76, 77, ...,100} 4个子序列,且每个子序列各对应25帧图像,也即,每个子序列各包括25 组特征点集。指定特征点选取手腕中点,以子序列(Pl1,i= 1,2, ...,25}为例(其余三个 子序列与其处理相似,这里不再详述),手腕中点在(Pl1,i= 1,2, ...,25}对应的25组特 征点集中的位置分别为位置Pr P2、…、P25,于是手腕中点在子序列{Pli,i= 1,2, ...,25} 中的平均位置为化办2+~+口25)/25,作为子序列妒1 1,1 = 1,2,...,25}对应的平均位置。
[0065] 然后,匹配序列确定子单元420可以针对每只手对应的每个子序列,将该子序列 与多个预设特征点序列中的每一个分别进行匹配,在多个预设特征点序列中选择与该子序 列的匹配程度高于预设的匹配阈值(该匹配阈值可以根据经验值来设定,或者也可以通过 试验的方法来确定)、并且最大的那个预设特征点序列,作为该子序列的匹配序列。其中,匹 配序列确定子单元420可以计算子序列与预设特征点序列之间的相似度,来作为二者之间 的匹配程度。
[0066] 其中,多个预设特征点序列可以预先设置在一个手部动作名列表中,该手部动作 名列表包括基本的手部动作,例如:挥、推、拉、张、合、转等,每个动作都有唯一的名称标识 以及用归一化的用手部特征点序列(即预设特征点序列)表示的模板。需要说明的是,对于 使用者的双手来说,每只手都具有一个上述的手部动作名列表。也就是说,对于左手来说, 左手的手部动作名列表(简称左手动作名列表)中包括的每个动作除了分别具有各自的名 称之外,还具有一个左手模板(即左手的一个预设特征点序列);对于右手来说,右手的手 部动作名列表(简称右手动作名列表)中包括的每个动作除了分别具有各自的名称之外, 还具有一个右手模板(即右手的一个预设特征点序列)。
[0067] 例如,单只手的多个预设特征点序列分别记为序列A1、序列A2、…、序列Ah,其中,H 为该单只手的上述多个预设特征点序列所包含的序列数,则在该单只手的手部动作名列表 中:动作1的名称标识为"挥"且对应的模板(即预设特征点序列)为序列A1;动作2的名 称标识为"推"且对应的模板为序列A1;…;动作H的名称标识为"转"且对应的模板为序 列A1 〇
[0068] 需要说明的是,对于每个子序列,并非一定能够在多个预设特征点序列中找到该 子序列对应的匹配序列。当对于单只手的某个子序列并未找到其匹配序列时,则将该子序 列的匹配序列记为"空",但该子序列的平均位置可以不为"空"。根据一种实现方式,若子 序列的匹配序列为"空",则将该子序列的平均位置设为"空";根据另一种实现方式,若子序 列的匹配序列为"空",该子序列的平均位置为该子序列中指定特征点的实际平均位置;根 据其他一种实现方式,若子序列的匹配序列为"空",将该子序列的平均位置设为"+0"。
[0069] 此外,根据一种实现方式,若子序列中不存在指定特征点(也即不存在该指定特 征点的实际平均位置),可以将该子序列的平均位置设为"+ 0"。
[0070] 然后,如图4所示,关联子单元430可以将每个子序列对应的平均位置与该子序列 的匹配序列对应的动作名称相关联。
[0071] 这样,动作名称确定子单元440可以针对每只手,可以将该只手对应的各子序列 的匹配序列作为该只手对应的多个匹配序列,并将该多个匹配序列各自对应的动作名称 (按时间顺序排序后)作为该只手的多个动作名称。
[0072] 例如,假设对于左手的待测特征点序列的多个子序列为{PUi= 1,2,...,25}、 (Pl1,i= 25, 26, ? ? ?,50}、(Pl1,i= 51,52, ? ? ?,75}和(Pl1,i= 76, 77, ? ? ?,100},分别在左 手的多个预设特征点序列中找到(Pl1,i= 1,2,. . .,25}、(Pl1,i= 25, 26,. . .,50}、(Pl1,i =51,52,. . .,75}的匹配序列依次为Pl/、P12'、P13',而未找到(Pl1,i= 76, 77,. . .,100} 的匹配序列。假设PV、P12'、P13'在左手动作名列表中对应的动作名称依次分别为"挥"、 "推"、"拉",(Pl1,i= 1,2,? ? ?,25}、(Pl1,i= 25, 26,? ? ?,50}、(Pl1,i= 51,52,? ? ?,75}和 (Pli,i= 76, 77, ? ? ?,100}各自的平均位置分另Ij为pmppm2、pm3和pm4,贝抽此得至Ij的左手 的动作名称和位置包括:"挥"(位置Pm1)推"(位置pm2)拉"(位置pm3)空"(位置 "pm4")。需要注意到是,在不同实施例中,?!114可能是真实位置值,也可能是"空"或"+m" 等。
[0073] 由此,通过分割子单元410、匹配序列确定子单元420、关联子单元430和动作名称 确定子单元440的处理,能够得到使用者每只手对应的多个动作名称(作为该只手的动作 名称,也就是说,该只手的动作名称),且每个动作名称分别关联有一个平均位置(作为该 只手的位置,"该只手的位置"中包括一个或多个平均位置,数量与动作名称的数量相同)。 相比于单单识别单个动作作为手势的识别技术来说,采用如图4所示的组成的处理所识别 的双手各自的多个动作和位置,提供了更灵活的组合方式,一方面使得手势的识别精度更 高,另一方面使得能够识别的手势更多样、丰富。
[0074] 此外,根据一种实现方式,可以通过如图5所示的结构来实现手势确定单元150的 处理。如图5所示,手势确定单元150可以包括手势表存储子单元510和手势表匹配子单 元 520〇
[0075] 如图5所示,手势确定单元150将预定义的一个从两只手动作和位置两个要素到 手势的映射列表存储为预设手势表:每个映射的左端是一组动作名称对及每个动作名称对 的位置;每个映射的右端是一个手势HandSignal。
[0076] 其中,"一组动作名称对"包括多个动作名称对,每个动作名称对包括左手动作名 称ActNamelf3fJP右手动作名称ActName"ght,每个动作名称对的位置包括两只手的相对位 置。
[0077]例如,在预设手势表中,映射一为{( "拉","空"拉","拉"空","合")、 ("空","空")}(作为要素一)、{(Xl,yi),(x2,y2),(x3,y3),(x4,y4)}(相对位置,作为要 素二)到手势"开关"的映射;映射二为{("拉","拉")、("张","张")、("空","空")、 ("空","空")}、{(x5,y5),(x6,y6),(x7,y7),(xs,ys)}到手势"爆炸"的映射;等等。其中, 每个动作对(如("拉","空"))中左边的动作名称对应于左手动作,而右边的动作名称对 应于右手动作。
[0078] 以映射一为例,(X1,Y1)表不的是左手第一个动作"拉"与右手第一个动作"空"之 间的相对位置(即动作对("拉","空")中左手动作和右手动作对应的两只手的相对位 置);(X2,y2)表示的是左手第二个动作"拉"与右手第二个动作"拉"之间的相对位置;(X3, y3)表示的是左手第三个动作"空"与右手第三个动作"合"之间的相对位置;而(X4,y4)表 示的是左手第四个动作"空"与右手第四个动作"空"之间的相对位置。其他映射中的表述 意义与此类似,不再赘述。
[0079] 这样,手势表匹配子单元520可以将预设手势表中的每个映射的左端与使用者双 手的动作名称和位置进行匹配。
[0080] 其中,动作名称的匹配执行严格匹配,也即,在两个动作名称之间一字不差的情况 下判定这两个动作名称是匹配的;而位置则是通过使用者双手各自的平均位置计算得到相 对位置信息,进而计算该相对位置信息与映射左端的位置之间的相似度来实现的(如可以 设定一个相似度阈值,当计算的相似度大于或等于该相似度阈值时判定位置是匹配的)。
[0081] 例如,假设通过动作识别单元140得到使用者双手各自的动作名称为{( "拉", "拉"张","张"空","空"空","空")},位置为{(xn,y12)、(x21,y22)、(x31, y"32)、(X41,5^42)(对
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1