一種手勢(shì)識(shí)別方法及裝置的制造方法
【專利摘要】本發(fā)明公開了一種手勢(shì)識(shí)別方法,所述方法包括如下步驟:S1、獲取待識(shí)別手勢(shì),并獲取輪廓上的所有輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo);S2、確定當(dāng)前所有輪廓點(diǎn)所在的輪廓的層數(shù)為1,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù);S3、將當(dāng)前層加1作為當(dāng)前層,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù),然后計(jì)算差異,并判斷比值是否小于差異閾值,如果是,則確定當(dāng)前層減1得到的層數(shù)為輪廓的層數(shù),并執(zhí)行步驟S5,如果否,則執(zhí)行步驟S4;S4、返回步驟S3;S5、利用每個(gè)輪廓點(diǎn)的特征參數(shù),將待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到輸出手勢(shì)類別。本發(fā)明特征參數(shù)的維度較低,計(jì)算復(fù)雜度降低,從而本發(fā)明能同時(shí)保證較高的識(shí)別效率和識(shí)別準(zhǔn)確率。
【專利說明】
-種手勢(shì)識(shí)別方法及裝置
技術(shù)領(lǐng)域
[0001 ]本發(fā)明設(shè)及一種于多尺度不變量描述的手勢(shì)識(shí)別方法及裝置,屬于目標(biāo)識(shí)別技術(shù) 領(lǐng)域。
【背景技術(shù)】
[0002] 手勢(shì)識(shí)別在人機(jī)交互領(lǐng)域具有重要意義,在虛擬現(xiàn)實(shí)、手語識(shí)別和人機(jī)博弈等方 面有著廣泛的應(yīng)用。
[0003] 現(xiàn)有手勢(shì)識(shí)別技術(shù)的難點(diǎn)在于手勢(shì)的獲取,隨著深度相機(jī)的發(fā)展,Kinect傳感器 很好的解決了運(yùn)一問題,進(jìn)而手勢(shì)識(shí)別的難點(diǎn)集中到識(shí)別效率和準(zhǔn)確率上。
[0004] 通常手勢(shì)識(shí)別方法可W分為兩類。第一類是基于統(tǒng)計(jì)學(xué)的方法:對(duì)于一個(gè)動(dòng)態(tài)手 勢(shì),將它看成一個(gè)隨機(jī)過程的輸出,手勢(shì)識(shí)別則可W根據(jù)統(tǒng)計(jì)學(xué)模型來確定,如PCA、HMMS、 粒子濾波、濃縮算法等,但計(jì)算復(fù)雜,識(shí)別效率低,無法達(dá)到實(shí)時(shí)的要求。第二類是基于規(guī)則 的方法:先根據(jù)輸入特征預(yù)設(shè)一些列模板,對(duì)一個(gè)手勢(shì)進(jìn)行識(shí)別時(shí),獲取該手勢(shì)的一系列特 征并與預(yù)設(shè)的模板特征進(jìn)行匹配,與輸入手勢(shì)匹配度最佳的模板則作為待識(shí)別手勢(shì)的類別 輸出,如化ape contexts ,Thresholding+陽MD、Nea;r-convex+陽MD等,但無法同時(shí)保證識(shí)別 準(zhǔn)確率和識(shí)別效率。
[0005] 針對(duì)上述問題,如何獲取一種能夠同時(shí)保證較高的識(shí)別準(zhǔn)確率及識(shí)別效率的手勢(shì) 識(shí)別方法,是目前相關(guān)技術(shù)領(lǐng)域的關(guān)鍵問題。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的發(fā)明目的是提供一種手勢(shì)識(shí)別方法及裝置,W同時(shí)保證較高的識(shí)別效率 及識(shí)別準(zhǔn)確率。
[0007] 為達(dá)到上述發(fā)明目的,本發(fā)明采用的技術(shù)方案是:一種手勢(shì)識(shí)別方法,所述方法包 括如下步驟: 51、 獲取待識(shí)別手勢(shì),并由所述待識(shí)別手勢(shì)形狀的邊緣提取一個(gè)封閉的輪廓,獲取所述 輪廓上的所有輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo); 52、 確定當(dāng)前所有輪廓點(diǎn)所在的輪廓的層數(shù)為1,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的 歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重屯、距,將 每個(gè)輪廓點(diǎn)的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一 化重屯、距作為該輪廓點(diǎn)的特征參數(shù); 53、 將當(dāng)前層加1作為當(dāng)前層,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù),然后計(jì) 算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù)與當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的層數(shù)減1的 特征參數(shù)之間的差異,并判斷當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)的所述差異的和與所述所有輪廓點(diǎn)的數(shù) 量的比值是否小于差異闊值,如果是,則確定當(dāng)前層減1得到的層數(shù)為所述輪廓的層數(shù),并 執(zhí)行步驟S5,如果否,則執(zhí)行步驟S4; 54、 返回步驟S3; S5、利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到輸出手 勢(shì)類別; 其中歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重 屯、距獲取的步驟包括: (1) 、確定任一輪廓點(diǎn)為目標(biāo)輪廓點(diǎn),W所述目標(biāo)輪廓點(diǎn)的坐標(biāo)為中屯、,W與所述當(dāng)前 層對(duì)應(yīng)的半徑為預(yù)設(shè)半徑作圓,得到與所述當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)圓; (2) 、將所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓截取的與所述目標(biāo)輪廓點(diǎn)具有直接連接 關(guān)系的區(qū)域的面積與所述預(yù)設(shè)圓的面積的比值作為所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域 面積; (3) 、取目標(biāo)輪廓點(diǎn)前一點(diǎn),并求取所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū)域面積, 將所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域面積與所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū) 域面積相減,得到面積變化率; (4) 、將所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓切割出的與所述目標(biāo)輪廓點(diǎn)具有直接連 接關(guān)系的弧段的長度與所述預(yù)設(shè)圓的周長的比值作為所述目標(biāo)輪廓點(diǎn)的歸一化單連通弧 長; (5) 、取目標(biāo)輪廓點(diǎn)前一點(diǎn),并求取所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長,將所 述目標(biāo)輪廓點(diǎn)的歸一化單連通弧長與所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長相減,得 到弧長變化率; (6) 、確定所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓截取的與所述目標(biāo)輪廓點(diǎn)具有直接連 接關(guān)系的區(qū)域的重屯、與所述目標(biāo)輪廓點(diǎn)的距離,并將該距離與所述預(yù)設(shè)半徑的比值作為所 述目標(biāo)輪廓點(diǎn)的歸一化重屯、距。
[000引優(yōu)選地,利用Kinect傳感器獲取所述待識(shí)別手勢(shì)的形狀。
[0009] 優(yōu)選地,采用化nny算子提取所述待識(shí)別手勢(shì)形狀的邊緣獲得一個(gè)封閉的輪廓。
[0010] 優(yōu)選地,確定與所述當(dāng)前層對(duì)應(yīng)的半徑為預(yù)設(shè)半徑,包括: 將所述待識(shí)別手勢(shì)形狀的等效半徑與2的N次方的比值作為所述當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)半 徑,其中,N為所述當(dāng)前層對(duì)應(yīng)的層數(shù)。
[0011] 優(yōu)選地,確定所述待識(shí)別手勢(shì)形狀的等效半徑,包括: 計(jì)算所述待識(shí)別手勢(shì)形狀的面積,并對(duì)所述待識(shí)別手勢(shì)形狀的面積進(jìn)行開平方得到所 述待識(shí)別手勢(shì)的等效半徑。
[0012] 優(yōu)選地,利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得 到輸出手勢(shì)類別,包括: 將所述待識(shí)別手勢(shì)的所有輪廓點(diǎn)的特征參數(shù)按序排列組成目標(biāo)序列; 將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸出層神經(jīng)元的輸出信 號(hào); 每個(gè)輸出層神經(jīng)元的輸出信號(hào)代表一種手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào) 中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì)類別即為所述待識(shí)別手勢(shì)的手勢(shì)類別。
[0013] 進(jìn)一步技術(shù)方案中,將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò) 的輸出層神經(jīng)元的輸出信號(hào)的步驟如下: 將所述目標(biāo)序列的每一項(xiàng)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層的對(duì)應(yīng)神經(jīng)元,作為預(yù)設(shè)BP神 經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元的輸入信號(hào), 將預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元的輸入信號(hào)作為預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元 的輸出信號(hào), 再將預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層每個(gè)神經(jīng)元的輸出信號(hào)與預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)輸入層與第 一層隱藏層一個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為第一層隱藏層一個(gè)神經(jīng)元的輸入信號(hào), 再將第一層隱藏層一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述第一層 隱藏層一個(gè)神經(jīng)元的輸出信號(hào),循環(huán)上述步驟,直至得到所述第一層隱藏層每個(gè)神經(jīng)元的 輸出信號(hào);再將所述第一層隱藏層每個(gè)神經(jīng)元的輸出信號(hào)與所述第一層隱藏層到下一層隱 藏層一個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為所述下一層隱藏層一個(gè)神經(jīng)元的輸入信號(hào),再 將所述下一層隱藏層一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述下一 層隱藏層一個(gè)神經(jīng)元的輸出信號(hào),循環(huán)上述步驟,直至得到所述下一層隱藏層每個(gè)神經(jīng)元 的輸出信號(hào); 按上述方法,重復(fù)上述隱藏層之間的操作,得到最后一層隱藏層每個(gè)神經(jīng)元的輸出信 號(hào),將所述最后一層隱藏層每個(gè)神經(jīng)元的輸出信號(hào)與所述最后一層隱藏層到所述輸出層一 個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為所述輸出層一個(gè)神經(jīng)元的輸入信號(hào),再將所述輸出層 一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述輸出層一個(gè)神經(jīng)元的輸出 信號(hào),循環(huán)上述步驟,直至得到所述輸出層每個(gè)神經(jīng)元的輸出信號(hào),輸出層一個(gè)神經(jīng)元對(duì)應(yīng) 一個(gè)手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào)中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì) 類別即為所述待識(shí)別手勢(shì)的手勢(shì)類別。
[0014] 本發(fā)明還公開了一種手勢(shì)識(shí)別裝置,包括: 提取模塊,用于獲取待識(shí)別手勢(shì)的形狀,由所述手勢(shì)形狀邊緣提取一個(gè)封閉的輪廓,獲 取該輪廓上所有的輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo); 計(jì)算模塊,用于確定輪廓的層數(shù),并基于每個(gè)所述輪廓點(diǎn)的坐標(biāo)計(jì)算每個(gè)所述輪廓點(diǎn) 對(duì)應(yīng)于每層的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長弧長變化率及歸一 化重屯、距,作為該輪廓點(diǎn)的特征參數(shù); 識(shí)別模塊,用于利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò), 得到輸出手勢(shì)類別,并確定所述輸出手勢(shì)類別為所述待識(shí)別手勢(shì)的類別。
[0015] 由于上述技術(shù)方案運(yùn)用,本發(fā)明與現(xiàn)有技術(shù)相比具有下列優(yōu)點(diǎn): 1. 本發(fā)明不是單一的關(guān)注全局特征或局部特征,而是同時(shí)對(duì)全局特征、局部特征及全 局特征與局部特征之間的關(guān)系進(jìn)行描述,多尺度、全方位地進(jìn)行分析表述,實(shí)現(xiàn)了對(duì)待識(shí)別 手勢(shì)形狀的全局特征和局部特征的有效提取和表示,避免了基于單一特征導(dǎo)致的識(shí)別準(zhǔn)確 率低的情況; 2. 本發(fā)明的特征參數(shù)的維度較低,計(jì)算復(fù)雜度降低,實(shí)現(xiàn)了較高的識(shí)別效率,從而本發(fā) 明能同時(shí)保證較高的識(shí)別效率和識(shí)別準(zhǔn)確率。
【附圖說明】
[0016] 圖1是本發(fā)明手勢(shì)識(shí)別方法的流程示意圖。
[0017] 圖2是本發(fā)明實(shí)施例一的提供的手勢(shì)識(shí)別方法中設(shè)及的目標(biāo)形狀的具體例子示意 圖。
[0018] 圖3為本發(fā)明實(shí)施例一中提供的手勢(shì)識(shí)別方法中目標(biāo)形狀的具體示意圖。
[0019] 圖4為本發(fā)明實(shí)施例一中提供的手勢(shì)識(shí)別方法中目標(biāo)形狀被預(yù)設(shè)圓截取后的示意 圖。
[0020] 圖5為本發(fā)明實(shí)施例一中提供的手勢(shì)識(shí)別方法中目標(biāo)形狀被預(yù)設(shè)圓分割后的示意 圖。
[0021] 圖6為本發(fā)明實(shí)施例一中提供的手勢(shì)識(shí)別裝置的結(jié)構(gòu)示意圖。
[0022] 其中:1、提取模塊;2、計(jì)算模塊;3、匹配模塊。
【具體實(shí)施方式】
[0023] 下面結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述: 實(shí)施例一:參見圖1所示,一種手勢(shì)識(shí)別方法,所述方法包括如下步驟: 51、 獲取待識(shí)別手勢(shì),并由所述待識(shí)別手勢(shì)形狀的邊緣提取一個(gè)封閉的輪廓,獲取所述 輪廓上的所有輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo); 52、 確定當(dāng)前所有輪廓點(diǎn)所在的輪廓的層數(shù)為1,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的 歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重屯、距,將 每個(gè)輪廓點(diǎn)的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一 化重屯、距作為該輪廓點(diǎn)的特征參數(shù); 53、 將當(dāng)前層加1作為當(dāng)前層,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù),然后計(jì) 算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù)與當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的層數(shù)減1的 特征參數(shù)之間的差異,并判斷當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)的所述差異的和與所述所有輪廓點(diǎn)的數(shù) 量的比值是否小于差異闊值,如果是,則確定當(dāng)前層減1得到的層數(shù)為所述輪廓的層數(shù),并 執(zhí)行步驟S5,如果否,則執(zhí)行步驟S4; 54、 返回步驟S3; 55、 利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到輸出手 勢(shì)類別; 其中歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重 屯、距獲取的步驟包括: (1) 、確定任一輪廓點(diǎn)為目標(biāo)輪廓點(diǎn),W所述目標(biāo)輪廓點(diǎn)的坐標(biāo)為中屯、,W與所述當(dāng)前 層對(duì)應(yīng)的半徑為預(yù)設(shè)半徑作圓,得到與所述當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)圓; (2) 、將所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓截取的與所述目標(biāo)輪廓點(diǎn)具有直接連接 關(guān)系的區(qū)域的面積與所述預(yù)設(shè)圓的面積的比值作為所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域 面積,歸一化單連通區(qū)域面積的取值范圍應(yīng)當(dāng)在0到1之間; (3) 、取目標(biāo)輪廓點(diǎn)前一點(diǎn),并求取所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū)域面積, 將所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域面積與所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū) 域面積相減,得到面積變化率; (4) 、將所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓切割出的與所述目標(biāo)輪廓點(diǎn)具有直接連 接關(guān)系的弧段的長度與所述預(yù)設(shè)圓的周長的比值作為所述目標(biāo)輪廓點(diǎn)的歸一化單連通弧 長,歸一化單連通弧長的取值范圍應(yīng)當(dāng)在0到1之間; (5) 、取目標(biāo)輪廓點(diǎn)前一點(diǎn),并求取所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長,將所 述目標(biāo)輪廓點(diǎn)的歸一化單連通弧長與所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長相減,得 到弧長變化率; (6)、確定所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓截取的與所述目標(biāo)輪廓點(diǎn)具有直接連 接關(guān)系的區(qū)域的重屯、與所述目標(biāo)輪廓點(diǎn)的距離,并將該距離與所述預(yù)設(shè)半徑的比值作為所 述目標(biāo)輪廓點(diǎn)的歸一化重屯、距,歸一化重屯、距的取值范圍應(yīng)當(dāng)在O到1之間。
[0024] 其中,需要說明的是,預(yù)設(shè)半徑為與當(dāng)前層對(duì)應(yīng)的半徑,即不同的層對(duì)應(yīng)不同的預(yù) 設(shè)半徑。且,對(duì)于每個(gè)輪廓點(diǎn),均需要按照上述步驟得到其對(duì)應(yīng)于每層的特征參數(shù),在此不 再寶述。
[0025] 依據(jù)上述步驟得到預(yù)設(shè)圓Ci(i)后,手勢(shì)形狀必然有一部分落在該預(yù)設(shè)圓內(nèi),假設(shè) 圖3所示為目標(biāo)形狀,則預(yù)設(shè)圓與目標(biāo)形狀的示意圖則如圖4所示。如果目標(biāo)形狀落在預(yù)設(shè) 圓內(nèi)的部分為一單獨(dú)區(qū)域,則該單獨(dú)區(qū)域即為與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的區(qū)域,記 為Zi( i);如果目標(biāo)形狀落在預(yù)設(shè)圓內(nèi)的部分分為若干個(gè)互不連通的區(qū)域的話,如圖4所示 的區(qū)域A和區(qū)域B,那么確定目標(biāo)輪廓點(diǎn)在其輪廓上的區(qū)域?yàn)榕c目標(biāo)輪廓點(diǎn)具有直接連接關(guān) 系的區(qū)域,記為Zi(i)。具體來說,將預(yù)設(shè)圓Ci(i)中的與目標(biāo)輪廓點(diǎn)p(i)具有直接連接關(guān)系 的區(qū)域Zi(i)的面積記為<(/),貝賄:
將Zi(i)的面積與預(yù)設(shè)圓Ci(i)面積的比值作為目標(biāo)輪廓點(diǎn)的特征參數(shù)的歸一化單連 通區(qū)域面積si(i),即:
Siiij的収但化南應(yīng)當(dāng)在0到1之間。
[0026] 利用上述方法計(jì)算所述輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū)域面積si(i-l),將所述 輪廓點(diǎn)的歸一化單連通區(qū)域面積si(i)與前一點(diǎn)的歸一化單連通區(qū)域面積相減,得到面積 變化率si'(i),即 S' i(i) = si(i)-si(i-l) 計(jì)算與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的區(qū)域的重屯、時(shí),具體可W為將該區(qū)域中所有像 素點(diǎn)的坐標(biāo)值求取平均數(shù),所得結(jié)果即為該區(qū)域的重屯、的坐標(biāo)值,可W表示為:
其中,wi(i)即為上述區(qū)域的重屯、。 1 而計(jì)算目標(biāo)輪廓點(diǎn)與重屯、wi(i)的距離,可W表示為:
并將C|/)與目標(biāo)輪廓點(diǎn)的預(yù)設(shè)圓的半徑的比值作為該目標(biāo)輪廓點(diǎn)特征參數(shù)的歸一化 重屯、距ci(i),即
ci(i)的取值范圍應(yīng)當(dāng)在O到1之間。
[0028] 依據(jù)上述步驟得到預(yù)設(shè)圓后,目標(biāo)形狀的輪廓被預(yù)設(shè)圓切割后必然會(huì)有一段或者 多段弧段落在預(yù)設(shè)圓內(nèi),如圖5所示。如果目標(biāo)形狀只有一段弧段落在預(yù)設(shè)圓內(nèi),則確定該 弧段為與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的弧段,如果目標(biāo)形狀有多段弧段落在預(yù)設(shè)圓內(nèi), 如圖5中的弧段A(Segment A)、弧段B(Segment B)、弧段C(Segment C),則確定目標(biāo)輪廓點(diǎn) 所在的弧段為與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的弧段,在圖5中即為弧段A(Segment A)。
[0029] 將預(yù)設(shè)圓Ci(i)內(nèi)與目標(biāo)輪廓點(diǎn)p(i)具有直接連接關(guān)系的弧段的長度記為/;(/), 并將/f(/)與預(yù)設(shè)圓Ci(i)周長的比值作為目標(biāo)輪廓點(diǎn)的特征參數(shù)的歸一化單連通弧長Ii a),即
其中,h(i)的取值范圍應(yīng)當(dāng)在0到1之間。
[0030] 利用上述方法計(jì)算所述輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長h(i-l),將所述輪廓 點(diǎn)的歸一化單連通弧長h(i)與前一點(diǎn)的歸一化單連通區(qū)域面積相減,得到面積變化率h' (i),即 li(i) = li(i)-li(i-l) 從而可W通過上述方式得到目標(biāo)輪廓點(diǎn)及其他全部輪廓點(diǎn)的特征參數(shù),表示為M(i): M(i) = {sk(i),s'k(i),lk(i),l'k(i),ck(i) IkG [1,m],i G [1,n]} 上文中,需要說明的是,本發(fā)明設(shè)計(jì)的目標(biāo)形狀均可W為具有閉合輪廓的形狀,如圖2 所示為本發(fā)明設(shè)及的目標(biāo)形狀的具體例子。另外,輪廓點(diǎn)的數(shù)量為輪廓點(diǎn)上所有點(diǎn)的個(gè)數(shù), 其具體取值根據(jù)實(shí)際情況確定,W完整表示手勢(shì)形狀的輪廓特征為準(zhǔn)。
[0031] 在數(shù)字圖像中,形狀的邊緣可W由一系列具有坐標(biāo)信息的輪廓點(diǎn)表示,本實(shí)施例 中手勢(shì)形狀的輪廓點(diǎn)的集合S可W表示為: S={p(i) I iG [l,n]} 其中,n表示輪廓的長度,即輪廓點(diǎn)的個(gè)數(shù);p(i)表示輪廓點(diǎn)的序列中的第i個(gè)輪廓點(diǎn), 且有: p(i) = {u(i) ,v(i)} 其中,u(i)、v(i)分別是p(i)的橫縱坐標(biāo)。
[0032] 需要說明的是,預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)為工作人員預(yù)先設(shè)置的神經(jīng)網(wǎng)絡(luò),是經(jīng)訓(xùn)練過的 BP神經(jīng)網(wǎng)絡(luò),是通過將預(yù)設(shè)模版庫中的模版作為樣本經(jīng)過訓(xùn)練所確定的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),預(yù) 設(shè)模版庫為工作人員預(yù)先設(shè)置的模板庫,其中的每個(gè)模板都具有相應(yīng)的特征參數(shù),而每個(gè) 模板的特征參數(shù)的計(jì)算方法與待識(shí)別手勢(shì)的特征參數(shù)的計(jì)算方法相同,在此不再寶述。通 過將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到輸出手勢(shì)類別,并確定所述輸出手勢(shì)的類 別為所述待識(shí)別手勢(shì)的類別。
[0033] 本實(shí)施例中,利用Kinect傳感器獲取所述待識(shí)別手勢(shì)的形狀,但獲取待識(shí)別手勢(shì) 形狀時(shí)可W采用工作人員預(yù)先確定的任何能夠有效實(shí)現(xiàn)手勢(shì)形狀獲取的方法。
[0034] 本實(shí)施例中,提取手勢(shì)形狀的邊緣時(shí)可W采用作人員預(yù)先確定的任何能夠有效實(shí) 現(xiàn)手勢(shì)形狀邊緣提取的方法,具體可W為化nny算子、Laplacian算子等,本實(shí)施例中優(yōu)選 Canny算子,W快速有效地獲取手勢(shì)形狀的輪廓,采用化nny算子提取所述待識(shí)別手勢(shì)形狀 的邊緣獲得一個(gè)封閉的輪廓。
[0035] 上文中,差異闊值可W根據(jù)實(shí)際需要進(jìn)行確定,例如差異闊值為1(T3,如當(dāng)前層為2 時(shí),每個(gè)輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、 弧長變化率及歸一化重屯、距與當(dāng)前層為3時(shí)該輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的歸一化單連通區(qū)域面 積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重屯、距之間的差異的平均值,即 全部輪廓點(diǎn)對(duì)應(yīng)的上述差異的和與輪廓點(diǎn)的個(gè)數(shù)的比值小于差異闊值,則確定每個(gè)輪廓點(diǎn) 的層數(shù)為2層。另外,平均值指的是每個(gè)輪廓點(diǎn)對(duì)應(yīng)的差異的平均值,而任一輪廓點(diǎn)的差異 為該輪廓點(diǎn)在不同層對(duì)應(yīng)的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長 變化率及歸一化重屯、距之間的差異。而在確定任一輪廓點(diǎn)在兩個(gè)層分別對(duì)應(yīng)的歸一化單連 通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重屯、距之間的差異時(shí), 可W是分別計(jì)算該輪廓點(diǎn)在兩個(gè)層分別對(duì)應(yīng)的歸一化單連通區(qū)域面積的差值,兩個(gè)層分別 對(duì)應(yīng)的面積變化率的差值,兩個(gè)層分別對(duì)應(yīng)的歸一化單連通弧長的差值,兩個(gè)層分別對(duì)應(yīng) 的弧長變化率的差值及兩個(gè)層分別對(duì)應(yīng)的歸一化重屯、距的差值,進(jìn)而根據(jù)上述五個(gè)差值及 五個(gè)差值的權(quán)重計(jì)算得到最后的差異,也可W是將每個(gè)層對(duì)應(yīng)的歸一化單連通區(qū)域面積、 面積變化率、歸一化單連通弧長、弧長變化率及歸一化重屯、距構(gòu)成一參數(shù)向量,進(jìn)而計(jì)算兩 個(gè)層分別對(duì)應(yīng)的參數(shù)向量之間的向量差,得到最后的差異,還可W根據(jù)實(shí)際需要按照其他 方法計(jì)算上述差異,均在本發(fā)明的保護(hù)范圍之內(nèi)。
[0036] 本實(shí)施例中,確定與所述當(dāng)前層對(duì)應(yīng)的半徑為預(yù)設(shè)半徑,包括: 將所述待識(shí)別手勢(shì)形狀的等效半徑與2的N次方的比值作為所述當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)半 徑,其中,N為所述當(dāng)前層對(duì)應(yīng)的層數(shù)。
[0037] 具體可W表示為:Wp(i)為圓屯、,Wri為預(yù)設(shè)半徑做圓得到預(yù)設(shè)圓Ci(i),該預(yù)設(shè)圓 是為計(jì)算對(duì)應(yīng)輪廓點(diǎn)的特征參數(shù)所做的準(zhǔn)備工作。
[0038] 而預(yù)設(shè)半徑n的具體表示方式可W為:
其中,R為目標(biāo)形狀的等效半徑,N為當(dāng)前層對(duì)應(yīng)的層數(shù)。計(jì)算第一層對(duì)應(yīng)的預(yù)設(shè)半徑ri 時(shí),此公式中N取1;而計(jì)算其他層對(duì)應(yīng)的預(yù)設(shè)半徑時(shí),N為對(duì)應(yīng)的層數(shù)。
[0039] 當(dāng)然,上述預(yù)設(shè)半徑及等效半徑的具體計(jì)算方法也可W由工作人員根據(jù)實(shí)際需要 進(jìn)行其他設(shè)定,均在本發(fā)明的保護(hù)范圍之內(nèi)。
[0040] 本實(shí)施例中,確定所述待識(shí)別手勢(shì)形狀的等效半徑,包括: 計(jì)算所述待識(shí)別手勢(shì)形狀的面積,并對(duì)所述待識(shí)別手勢(shì)形狀的面積進(jìn)行開平方得到所 述待識(shí)別手勢(shì)的等效半徑。
[0041 ] 且化巧1;1親示為;
共T,areas;/、」于勢(shì)形狀的面積,R為手勢(shì)形狀的等效半徑。
[0042] 本實(shí)施例中,利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng) 絡(luò),得到輸出手勢(shì)類別,包括: 將所述待識(shí)別手勢(shì)的所有輪廓點(diǎn)的特征參數(shù)按序排列組成目標(biāo)序列; 將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸出層神經(jīng)元的輸出信 號(hào); 每個(gè)輸出層神經(jīng)元的輸出信號(hào)代表一種手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào) 中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì)類別即為所述待識(shí)別手勢(shì)的手勢(shì)類別。
[0043] 本實(shí)施例中,將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸出 層神經(jīng)元的輸出信號(hào)的步驟如下: 將所述目標(biāo)序列的每一項(xiàng)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層的對(duì)應(yīng)神經(jīng)元,作為預(yù)設(shè)BP神 經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元的輸入信號(hào), 將預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元的輸入信號(hào)作為預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元 的輸出信號(hào), 再將預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層每個(gè)神經(jīng)元的輸出信號(hào)與預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)輸入層與第 一層隱藏層一個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為第一層隱藏層一個(gè)神經(jīng)元的輸入信號(hào), 再將第一層隱藏層一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述第一層 隱藏層一個(gè)神經(jīng)元的輸出信號(hào),循環(huán)上述步驟,直至得到所述第一層隱藏層每個(gè)神經(jīng)元的 輸出信號(hào);再將所述第一層隱藏層每個(gè)神經(jīng)元的輸出信號(hào)與所述第一層隱藏層到下一層隱 藏層一個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為所述下一層隱藏層一個(gè)神經(jīng)元的輸入信號(hào),再 將所述下一層隱藏層一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述下一 層隱藏層一個(gè)神經(jīng)元的輸出信號(hào),循環(huán)上述步驟,直至得到所述下一層隱藏層每個(gè)神經(jīng)元 的輸出信號(hào); 按上述方法,重復(fù)上述隱藏層之間的操作,得到最后一層隱藏層每個(gè)神經(jīng)元的輸出信 號(hào),將所述最后一層隱藏層每個(gè)神經(jīng)元的輸出信號(hào)與所述最后一層隱藏層到所述輸出層一 個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為所述輸出層一個(gè)神經(jīng)元的輸入信號(hào),再將所述輸出層 一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述輸出層一個(gè)神經(jīng)元的輸出 信號(hào),循環(huán)上述步驟,直至得到所述輸出層每個(gè)神經(jīng)元的輸出信號(hào),輸出層一個(gè)神經(jīng)元對(duì)應(yīng) 一個(gè)手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào)中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì) 類別即為所述待識(shí)別手勢(shì)的手勢(shì)類別。
[0044] 具體來說,所述目標(biāo)序列可W表示A= {xi,X2, ...,xm},期望輸出可W表示為B = (yi,y2, . . .,yn},不失一般性的,可W假設(shè)m>n,則在A輸入下當(dāng)前神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出為 yr,即:
其中,I為當(dāng)前層所在神經(jīng)網(wǎng)絡(luò)的層數(shù),L為該神經(jīng)網(wǎng)絡(luò)總的層數(shù),f( ?)是Sigmoid函數(shù)
得到實(shí)際輸出Y,即: Y={yi,y2,---,yn} 確定實(shí)際輸出Y即為期望輸出B。
[0045] 需要說明的是,本發(fā)明實(shí)施例所提供的一種手勢(shì)識(shí)別方法的功能如果W軟件功能 單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可W存儲(chǔ)在一個(gè)計(jì)算設(shè)備可讀取存儲(chǔ)介 質(zhì)中?;谶\(yùn)樣的理解,本發(fā)明實(shí)施例對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分 可W W軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用W 使得一臺(tái)計(jì)算設(shè)備(可W是個(gè)人計(jì)算機(jī),服務(wù)器,移動(dòng)計(jì)算設(shè)備或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā) 明各個(gè)實(shí)施例方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)可W包括:U盤、移動(dòng)硬盤、只讀存 儲(chǔ)器(ROM,Read-Only Memoir)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memoir)、磁碟或者 光盤等各種可W存儲(chǔ)程序代碼的介質(zhì)。
[0046] 如圖6所示,本實(shí)施例還公開了一種手勢(shì)識(shí)別裝置,包括: 提取模塊,用于獲取待識(shí)別手勢(shì)的形狀,由所述手勢(shì)形狀邊緣提取一個(gè)封閉的輪廓,獲 取該輪廓上所有的輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo); 計(jì)算模塊,用于確定輪廓的層數(shù),并基于每個(gè)所述輪廓點(diǎn)的坐標(biāo)計(jì)算每個(gè)所述輪廓點(diǎn) 對(duì)應(yīng)于每層的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長弧長變化率及歸一 化重屯、距,作為該輪廓點(diǎn)的特征參數(shù); 識(shí)別模塊,用于利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò), 得到輸出手勢(shì)類別,并確定所述輸出手勢(shì)的類別為所述待識(shí)別手勢(shì)的類別。
[0047] 所述提取模塊和計(jì)算模塊相連接,所述計(jì)算模塊和識(shí)別模塊相連。
[0048] 本實(shí)施例提供的一種手勢(shì)識(shí)別裝置中,提取模塊可W包括: 獲取單元,用于利用Kinect傳感器獲得待識(shí)別手勢(shì)的形狀; 提取單元,用于采用化nny算子針對(duì)手勢(shì)形狀的邊緣提取一個(gè)封閉的輪廓。
[0049] 本實(shí)施例提供的一種手勢(shì)識(shí)別裝置中,計(jì)算模塊可W包括: 計(jì)算單元,用于:確定任一輪廓點(diǎn)為目標(biāo)輪廓點(diǎn),W目標(biāo)輪廓點(diǎn)的坐標(biāo)為中屯、,W與當(dāng) 前層對(duì)應(yīng)的半徑為預(yù)設(shè)半徑作圓,得到與當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)圓;將目標(biāo)形狀中被預(yù)設(shè)圓截 取的,與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的區(qū)域的面積與預(yù)設(shè)圓的面積的比值作為目標(biāo)輪廓 點(diǎn)的歸一化單連通區(qū)域面積;將所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域面積與所述目標(biāo)輪廓 點(diǎn)前一點(diǎn)的歸一化單連通區(qū)域面積相減,作為目標(biāo)輪廓點(diǎn)的面積變化率;將目標(biāo)形狀中被 預(yù)設(shè)圓切割出的,與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的弧段的長度與預(yù)設(shè)圓的周長的比值作 為目標(biāo)輪廓點(diǎn)的歸一化單連通弧長;將所述目標(biāo)輪廓點(diǎn)的歸一化單連通弧長與所述目標(biāo)輪 廓點(diǎn)前一點(diǎn)的歸一化單連通弧長相減,作為目標(biāo)輪廓點(diǎn)的弧長變化率;確定目標(biāo)形狀中被 預(yù)設(shè)圓截取的,與目標(biāo)輪廓點(diǎn)具有直接連接關(guān)系的區(qū)域的重屯、與目標(biāo)輪廓點(diǎn)的距離,并將 該距離與預(yù)設(shè)半徑的比值作為目標(biāo)輪廓點(diǎn)的歸一化重屯、距。
[0050] 本實(shí)施例提供的一種手勢(shì)識(shí)別裝置中,計(jì)算單元可W包括: 半徑確定單元,用于將手勢(shì)形狀的等效半徑與2的N次方的比值作為當(dāng)前層對(duì)應(yīng)的預(yù)設(shè) 半徑,其中,N為當(dāng)前層對(duì)應(yīng)的層數(shù)。
[0051] 本發(fā)明實(shí)施例提供的一種手勢(shì)識(shí)別裝置中,半徑確定單元可W包括: 半徑確定子單元,用于計(jì)算手勢(shì)形狀的面積,并對(duì)手勢(shì)形狀的面積進(jìn)行開平方得到目 標(biāo)形狀的等效半徑。
[0052] 本發(fā)明實(shí)施例提供的一種手勢(shì)識(shí)別裝置中,識(shí)別模塊可W包括: 識(shí)別單元,用于:將所述待識(shí)別手勢(shì)的所有輪廓點(diǎn)的特征參數(shù)按序排列組成目標(biāo)序列; 將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸出層神經(jīng)元的輸出信 號(hào); 每個(gè)輸出層神經(jīng)元的輸出信號(hào)代表一種手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào) 中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì)類別所述待識(shí)別手勢(shì)的手勢(shì)類別。
[0053] 本實(shí)施例提供的一種手勢(shì)識(shí)別裝置中相關(guān)部分的說明請(qǐng)參見本發(fā)明實(shí)施例提供 的一種手勢(shì)識(shí)別方法中對(duì)應(yīng)部分的詳細(xì)說明,在此不再寶述。
[0054] 另外,本說明書中各個(gè)實(shí)施例采用的遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都 是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同或相似的部分互相參見即可。
[0055] 對(duì)所公開的實(shí)施例的上述說明,使本領(lǐng)域技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)運(yùn) 些實(shí)施例的多種修改對(duì)本領(lǐng)域技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可 W在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限 制于本文所示的運(yùn)些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的 范圍。
【主權(quán)項(xiàng)】
1. 一種手勢(shì)識(shí)別方法,其特征在于:所述方法包括如下步驟: 51、 獲取待識(shí)別手勢(shì),并由所述待識(shí)別手勢(shì)形狀的邊緣提取一個(gè)封閉的輪廓,獲取所述 輪廓上的所有輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo); 52、 確定當(dāng)前所有輪廓點(diǎn)所在的輪廓的層數(shù)為1,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的 歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重心距,將 每個(gè)輪廓點(diǎn)的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一 化重心距作為該輪廓點(diǎn)的特征參數(shù); 53、 將當(dāng)前層加1作為當(dāng)前層,計(jì)算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù),然后計(jì) 算當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的特征參數(shù)與當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)于當(dāng)前層的層數(shù)減1的 特征參數(shù)之間的差異,并判斷當(dāng)前所有輪廓點(diǎn)對(duì)應(yīng)的所述差異的和與所述所有輪廓點(diǎn)的數(shù) 量的比值是否小于差異閾值,如果是,則確定當(dāng)前層減1得到的層數(shù)為所述輪廓的層數(shù),并 執(zhí)行步驟S5,如果否,則執(zhí)行步驟S4; 54、 返回步驟S3; 55、 利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到輸出手 勢(shì)類別; 其中歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長、弧長變化率及歸一化重 心距獲取的步驟包括: (1) 、確定任一輪廓點(diǎn)為目標(biāo)輪廓點(diǎn),以所述目標(biāo)輪廓點(diǎn)的坐標(biāo)為中心,以與所述當(dāng)前 層對(duì)應(yīng)的半徑為預(yù)設(shè)半徑作圓,得到與所述當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)圓; (2) 、將所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓截取的與所述目標(biāo)輪廓點(diǎn)具有直接連接 關(guān)系的區(qū)域的面積與所述預(yù)設(shè)圓的面積的比值作為所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域 面積; (3) 、取目標(biāo)輪廓點(diǎn)前一點(diǎn),并求取所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū)域面積, 將所述目標(biāo)輪廓點(diǎn)的歸一化單連通區(qū)域面積與所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通區(qū) 域面積相減,得到面積變化率; (4) 、將所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓切割出的與所述目標(biāo)輪廓點(diǎn)具有直接連 接關(guān)系的弧段的長度與所述預(yù)設(shè)圓的周長的比值作為所述目標(biāo)輪廓點(diǎn)的歸一化單連通弧 長; (5) 、取目標(biāo)輪廓點(diǎn)前一點(diǎn),并求取所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長,將所 述目標(biāo)輪廓點(diǎn)的歸一化單連通弧長與所述目標(biāo)輪廓點(diǎn)前一點(diǎn)的歸一化單連通弧長相減,得 到弧長變化率; (6) 、確定所述待識(shí)別手勢(shì)形狀中被所述預(yù)設(shè)圓截取的與所述目標(biāo)輪廓點(diǎn)具有直接連 接關(guān)系的區(qū)域的重心與所述目標(biāo)輪廓點(diǎn)的距離,并將該距離與所述預(yù)設(shè)半徑的比值作為所 述目標(biāo)輪廓點(diǎn)的歸一化重心距。2. 根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于:利用Kinect傳感器獲取所述待識(shí) 別手勢(shì)的形狀。3. 根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于:采用Canny算子提取所述待識(shí)別 手勢(shì)形狀的邊緣獲得一個(gè)封閉的輪廓。4. 根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于:確定與所述當(dāng)前層對(duì)應(yīng)的半徑為 預(yù)設(shè)半徑,包括: 將所述待識(shí)別手勢(shì)形狀的等效半徑與2的N次方的比值作為所述當(dāng)前層對(duì)應(yīng)的預(yù)設(shè)半 徑,其中,N為所述當(dāng)前層對(duì)應(yīng)的層數(shù)。5. 根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于:確定所述待識(shí)別手勢(shì)形狀的等效 半徑,包括: 計(jì)算所述待識(shí)別手勢(shì)形狀的面積,并對(duì)所述待識(shí)別手勢(shì)形狀的面積進(jìn)行開平方得到所 述待識(shí)別手勢(shì)的等效半徑。6. 根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于:利用每個(gè)輪廓點(diǎn)的特征參數(shù),將 所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到輸出手勢(shì)類別,包括: 將所述待識(shí)別手勢(shì)的所有輪廓點(diǎn)的特征參數(shù)按序排列組成目標(biāo)序列; 將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸出層神經(jīng)元的輸出信 號(hào); 每個(gè)輸出層神經(jīng)元的輸出信號(hào)代表一種手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào) 中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì)類別即為所述待識(shí)別手勢(shì)的手勢(shì)類別。7. 根據(jù)權(quán)利要求6所述的手勢(shì)識(shí)別方法,其特征在于:將所述目標(biāo)序列輸入預(yù)設(shè)BP神經(jīng) 網(wǎng)絡(luò),得到預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸出層神經(jīng)元的輸出信號(hào)的步驟如下: 將所述目標(biāo)序列的每一項(xiàng)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層的對(duì)應(yīng)神經(jīng)元,作為預(yù)設(shè)BP神 經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元的輸入信號(hào), 將預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元的輸入信號(hào)作為預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元 的輸出信號(hào), 再將預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入層每個(gè)神經(jīng)元的輸出信號(hào)與預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò)輸入層與第 一層隱藏層一個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為第一層隱藏層一個(gè)神經(jīng)元的輸入信號(hào), 再將第一層隱藏層一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述第一層 隱藏層一個(gè)神經(jīng)元的輸出信號(hào),循環(huán)上述步驟,直至得到所述第一層隱藏層每個(gè)神經(jīng)元的 輸出信號(hào); 再將所述第一層隱藏層每個(gè)神經(jīng)元的輸出信號(hào)與所述第一層隱藏層到下一層隱藏層 一個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為所述下一層隱藏層一個(gè)神經(jīng)元的輸入信號(hào),再將所 述下一層隱藏層一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述下一層隱 藏層一個(gè)神經(jīng)元的輸出信號(hào),循環(huán)上述步驟,直至得到所述下一層隱藏層每個(gè)神經(jīng)元的輸 出信號(hào); 按上述方法,重復(fù)上述隱藏層之間的操作,得到最后一層隱藏層每個(gè)神經(jīng)元的輸出信 號(hào),將所述最后一層隱藏層每個(gè)神經(jīng)元的輸出信號(hào)與所述最后一層隱藏層到所述輸出層一 個(gè)神經(jīng)元之間對(duì)應(yīng)的權(quán)值相乘,作為所述輸出層一個(gè)神經(jīng)元的輸入信號(hào),再將所述輸出層 一個(gè)神經(jīng)元的所有輸入信號(hào)相加并代入Sigmoid函數(shù),得到所述輸出層一個(gè)神經(jīng)元的輸出 信號(hào),循環(huán)上述步驟,直至得到所述輸出層每個(gè)神經(jīng)元的輸出信號(hào),輸出層一個(gè)神經(jīng)元對(duì)應(yīng) 一個(gè)手勢(shì)類別,所有所述輸出層神經(jīng)元中輸出信號(hào)中數(shù)值最大的一個(gè)神經(jīng)元所對(duì)應(yīng)的手勢(shì) 類別即為所述待識(shí)別手勢(shì)的手勢(shì)類別。8. -種手勢(shì)識(shí)別裝置,其特征在于:包括: 提取模塊,用于獲取待識(shí)別手勢(shì)的形狀,由所述手勢(shì)形狀邊緣提取一個(gè)封閉的輪廓,獲 取該輪廓上所有的輪廓點(diǎn)及每個(gè)輪廓點(diǎn)的坐標(biāo); 計(jì)算模塊,用于確定輪廓的層數(shù),并基于每個(gè)所述輪廓點(diǎn)的坐標(biāo)計(jì)算每個(gè)所述輪廓點(diǎn) 對(duì)應(yīng)于每層的歸一化單連通區(qū)域面積、面積變化率、歸一化單連通弧長弧長變化率及歸一 化重心距,作為該輪廓點(diǎn)的特征參數(shù); 識(shí)別模塊,用于利用每個(gè)輪廓點(diǎn)的特征參數(shù),將所述待識(shí)別手勢(shì)輸入預(yù)設(shè)BP神經(jīng)網(wǎng)絡(luò), 得到輸出手勢(shì)類別,并確定所述輸出手勢(shì)類別為所述待識(shí)別手勢(shì)的類別。
【文檔編號(hào)】G06F3/01GK106022297SQ201610382507
【公開日】2016年10月12日
【申請(qǐng)日】2016年6月1日
【發(fā)明人】楊劍宇, 何溢文, 徐浩然, 朱晨
【申請(qǐng)人】蘇州大學(xué)