一種非接觸式手勢操控用戶界面的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種非接觸式手勢交互方法,具體來說是一種基于Kinect的手勢與 電腦、觸摸屏和投影等用戶界面進行非接觸式交互的方法。
【背景技術(shù)】
[0002] 進入21世紀,手機、計算機等電子設(shè)備的硬件性能和普及程度不斷提高,觸摸屏 開始流行。觸摸操作使人們脫離了鍵盤和鼠標的束縛,直接操作屏幕上顯示的對象,更加符 合人的認知和生活習(xí)慣,成為近期人機交互方式的潮流。然而隨著越來越多不同種類和規(guī) 格的屏幕的出現(xiàn),觸摸操作的不便和局限性也漸漸顯露出來:小尺寸觸摸屏只不過是換了 一種形式的鼠標和鍵盤而已,仍未讓用戶擺脫硬件的束縛;掛在墻上的觸摸屏尺寸能達到 60甚至100英寸,操作時必須走近屏幕,使得用戶無法看全屏幕上的對象,另外對象在屏上 占據(jù)的龐大面積也使拖動、縮放和選取等基本操作變得非常笨拙,以致無法完成;在有些情 景中,用戶不允許接觸到操作設(shè)備,例如正在實施手術(shù)的醫(yī)生不能接觸到任何可能帶菌的 物體,為了操作電子設(shè)備,不得不多次在操作結(jié)束后對手進行消毒。在公共服務(wù)領(lǐng)域,觸摸 屏的應(yīng)用也遇到了一些難以解決的瓶頸。
[0003] 隨著人機交互技術(shù)的迅速發(fā)展,人們想使人機交互變得更加的自然和直接,而傳 統(tǒng)交互方式,比如鍵盤、鼠標等硬件設(shè)備,顯然已經(jīng)達不到我們的要求,研宄更加符合人的 交流習(xí)慣的人機交互技術(shù)近年來變得非常的活躍,人機交互已經(jīng)從之前的以計算機為中心 逐步轉(zhuǎn)移到以人為中心,基于視覺的人機交互研宄正是順應(yīng)了這一潮流。
[0004] 研宄表明,人類信息的獲取80%以上來自于視覺,而手勢有很強的視覺效果,生動 形象且直觀。基于視覺的手勢識別技術(shù)也逐漸應(yīng)用于手語識別、字母及漢字識別、幻燈片演 示、燈具的開關(guān)控制、游戲控制、電視遙控、瀏覽網(wǎng)頁控制、手指繪圖等多個領(lǐng)域。
【發(fā)明內(nèi)容】
[0005] 為了解決以上技術(shù)問題,本發(fā)明采取了以下技術(shù)方案:一種基于Kinect的非接 觸式手勢控制方法,采用Kinect采集用戶雙臂骨骼關(guān)節(jié)動作,通過手勢識別算法識別出手 勢,最后利用識別出的手勢對電腦、觸摸屏和投影等用戶界面進行操作控制。
[0006] 本發(fā)明采取的手勢識別方法包含以下步驟:
[0007] 步驟1、通過攝像頭采集操作者雙臂骨骼關(guān)節(jié)動作;
[0008] 若被控對象為觸摸大屏,則將Kinect攝像頭安裝在觸摸大屏的正中上方;若被控 對象為投影或電腦,則將Kinect放置在投影或電腦旁邊便于操作的位置即可。通過Kinect 攝像頭采集操作者雙臂骨骼關(guān)節(jié)動作。
[0009] 步驟2、對采集到的圖像進行有效性判斷,具體判斷方法A如下:
[0010] 攝像頭采集操作者的骨骼關(guān)節(jié)點的三維坐標信息數(shù)據(jù);當每幀圖像中采集到的操 作者的骨骼關(guān)節(jié)點大于14,并且這14個骨骼關(guān)節(jié)點中包含了操作者的中肩、左右肩、左右 肘、左右腕和左右手關(guān)節(jié)共9個關(guān)節(jié)點的三維坐標數(shù)據(jù)時,則將其視作有效圖像幀數(shù)據(jù),否 貝1J,視為無效,并舍棄;
[0011] 其中,Kinect攝像頭最多可以采集出現(xiàn)在其攝像頭前面操作者的20個骨骼關(guān)節(jié) 點的三維坐標信息數(shù)據(jù),該三維數(shù)據(jù)有3種狀態(tài)值:空值,真實值,估計值;
[0012] 然后分別判斷有效圖像中的左、右手臂是否為有效操作手臂,具體為:肩關(guān)節(jié) 與對應(yīng)腕關(guān)節(jié)y軸坐標之差的絕對值m小于d即為有效的手臂,否則為無效操作,其中 9個骨豁關(guān)節(jié)點的坐標表示如下:中肩S e(xs。,ys。,zs。)= (0, 0, 0),左肩Sjxu,ysl, zsl), 右肩 Sr (xsr, ysr, zsr),左肘 (xel, yel, zel),右肘 Er (xer, yer, zer),左腕 A (xwl, ywl, zwl),右腕 Wr (xwr, ywr, zwr),左手 (xhl, yhl, zhl),右手 Hr (Xj^,y^,zhr)。
[0013] 其中:m = |ysi_ywi|,
【主權(quán)項】
1. 一種非接觸式手勢操控用戶界面的方法,其特征在于包含以下步驟: 1) 通過攝像頭采集操作者雙臂骨骼關(guān)節(jié)動作; 2) 對采集到的圖像進行有效性判斷,具體判斷方法如下: 首先判斷采集到的圖像是否是有效圖像,具體為,攝像頭采集操作者的骨骼關(guān)節(jié)點的 三維坐標信息數(shù)據(jù);當每幀圖像中采集到的操作者的骨骼關(guān)節(jié)點大于14,并且這14個骨骼 關(guān)節(jié)點中包含了操作者的中肩、左右肩、左右肘、左右腕和左右手關(guān)節(jié)共9個關(guān)節(jié)點的三維 坐標數(shù)據(jù)時,則將其視作有效圖像幀數(shù)據(jù),否則,視為無效,并舍棄; 然后分別判斷有效圖像中的左、右手臂是否為有效操作手臂,具體為:肩關(guān)節(jié)與對 應(yīng)腕關(guān)節(jié)y軸坐標之差的絕對值m小于d即為有效的手臂,否則為無效操作,其中9個 骨豁關(guān)節(jié)點的坐標表示如下:中肩S。(xs。,ys。,zs。)= (0, 0, 0),左肩Si(xsl,ysl,zsl),右 zsr),左財 (xel,zel),右財Er (xer,yer,zer),左月姐 (xwl,ywl,zwl),右月姐 Wr (xwr,ywr,zwr),左手 (xhl,yhl,zhl),右手Hr (Xj^,y^,zhr)。 其中:m= |,
,i 取r或者1 ; 3) 對采集到的存在有效操作手臂的圖像進行手勢識別,具體識別方法A如下: 3. 1)將圖像中的關(guān)節(jié)點的三維坐標數(shù)據(jù)轉(zhuǎn)換為人體坐標系下的三維數(shù)據(jù),其中所述的 人體坐標系是以中肩關(guān)節(jié)為原點坐標(0, 0, 0),人體所在平面為X-Y平面,豎直向上方向為 Y軸正方向,人體正對方向為Z軸負方向,X-Y-Z遵守右手螺旋定則; 3. 2)提取t時間段內(nèi)中肩、左右肩、左右肘、左右腕和左右手關(guān)節(jié)共9個關(guān)節(jié)點的人體 坐標系下的三維坐標數(shù)據(jù),計算中肩、左肩、右肩、左肘、右肘、左腕、右腕、左手、右手這9個 關(guān)節(jié)點中,肘關(guān)節(jié)到對應(yīng)肩關(guān)節(jié)點的矢量U與肘關(guān)節(jié)到對應(yīng)腕關(guān)節(jié)點的矢量V的夾角a