国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Kinect骨骼信息和改進(jìn)重心距離法的指尖識(shí)別

2014-09-17 14:18:39樊景超周國(guó)民
電腦知識(shí)與技術(shù) 2014年22期

樊景超 周國(guó)民

摘要:針對(duì)膚色識(shí)別易受環(huán)境影響問題,提出了一種基于Kinect骨骼信息和改進(jìn)重心距離法的手指指尖識(shí)別方法。首先采用微軟Kinect 攝像頭獲取人體骨骼信息,并將雙手坐標(biāo)點(diǎn)的三維信息轉(zhuǎn)換成彩色圖上的二維信息進(jìn)行手掌區(qū)域的提取。然后利用OpenCV基于膚色檢測(cè)算法將手掌輪廓從背景圖像中分割出來。最后針對(duì)重心距離法魯棒性差的特點(diǎn)提出一個(gè)改進(jìn)因子。實(shí)驗(yàn)結(jié)果證明,該方法可以高效地檢測(cè)出手指的指尖位置,識(shí)別出人體的手指。實(shí)驗(yàn)結(jié)果表明該方法能有效排除類膚色區(qū)域和手指輪廓不足對(duì)指尖檢測(cè)造成的影響, 具有較高的檢測(cè)精度。

關(guān)鍵詞: 骨骼跟蹤;指尖識(shí)別;Kinect

中圖分類號(hào):TP18 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)22-5287-04

在與計(jì)算機(jī)、手機(jī)等智能設(shè)備進(jìn)行人機(jī)交互過程中,手都起到了非常重要的作用。隨著計(jì)算機(jī)技術(shù)的飛速進(jìn)步,但是鼠標(biāo)、鍵盤作為傳統(tǒng)的人機(jī)交互設(shè)備從第一臺(tái)計(jì)算機(jī)應(yīng)用以來仍然占據(jù)著主導(dǎo)地位。最近,一些革命性的控制器和傳感器被發(fā)明,用于實(shí)現(xiàn)更自然的人機(jī)交互,例如數(shù)據(jù)手套,觸摸顯示屏、語音合成器、位置跟蹤器等等。用戶為了獲得較高的精度不得不與設(shè)備的不便和束縛想妥協(xié)。手部的方位、運(yùn)動(dòng)、姿勢(shì)都包含了重要的人機(jī)交互信息[1-6],因此手部識(shí)別提供了一種非常誘人的人機(jī)交互方法,由于其具有不依賴復(fù)雜的硬件設(shè)備的有點(diǎn),擁有廣泛的應(yīng)用前景和研究?jī)r(jià)值。為了讓計(jì)算機(jī)能理解我們手的行為, 首先必須讓計(jì)算機(jī)能夠“看到”它,國(guó)內(nèi)很多學(xué)者展開了基于單目機(jī)器視覺的手勢(shì)識(shí)別研究[7-14]。

隨著微軟體感周邊外設(shè)Kinect的推出, 讓我們有機(jī)會(huì)采用比較低的成本實(shí)現(xiàn)三維空間中用戶及手的識(shí)別, 從而讓大眾都有可能享受到便捷的人機(jī)交互方式。該文利用Kinect 傳感器的骨骼跟蹤技術(shù),從復(fù)雜背景下首先提取出手部圖像,然后利用手部膚色一致這一特征提取出手部的外圍輪廓,最后通過改進(jìn)重心距離法來提取出指尖位置。

1 算法描述

本文采用了微軟公司的Kinect外設(shè)作為用戶信息采集手段。程序分為三個(gè)模塊,分別是手掌提取、輪廓提取和指尖識(shí)別。三個(gè)功能模塊順序執(zhí)行來完成指尖的最終識(shí)別。

1.1手掌區(qū)域提取

指尖識(shí)別的第一步是獲取用戶手掌所在的圖像區(qū)域,基于機(jī)器視覺的獲取方法首先要消除背景信息和自身其他膚色如臉部和手臂的干擾。Kinect傳感器可以同時(shí)獲取RGB彩色圖像和深度數(shù)據(jù),使用微軟提供的Kinect SDK程序可以從Kinect骨骼數(shù)據(jù)流中獲取骨骼三維坐標(biāo)信息。將坐標(biāo)信息映射到獲取的彩色圖像上,對(duì)于關(guān)節(jié)點(diǎn)用圓形顯示,各個(gè)關(guān)節(jié)之間用直線連接。將用戶的骨骼信息繪制到彩色圖像上以判斷獲取的骨骼信息是否正確。

邊界提取算法如下:從深度圖像中提取出人體的雙手的三維坐標(biāo)信息,以投射到彩色圖像平面的坐標(biāo)點(diǎn)(x,y)為中心,設(shè)定一個(gè)初始最大正方形邊長(zhǎng)乘以一個(gè)距離系數(shù)來獲取手部區(qū)域。距離系數(shù)=1-Duser/Dmax。其中Duser是測(cè)試者手部與Kinect探頭之間的距離,Dmax是Kinect的最大有效探測(cè)距離。根據(jù)該公式,獲取的用戶手部區(qū)域會(huì)根據(jù)用戶的遠(yuǎn)近進(jìn)行動(dòng)態(tài)變化以有效提取手部。圖1是測(cè)試者距離Kinect探頭的距離在1.3m的骨骼信息和手掌提取測(cè)試截圖,經(jīng)過實(shí)驗(yàn)驗(yàn)證設(shè)定的矩形區(qū)域邊長(zhǎng)為80像素可以完整包圍手部。

1.2輪廓提取

手部提取獲取的是一個(gè)包含手掌輪廓的矩形區(qū)域,指尖識(shí)別的第二步就是從該區(qū)域中提取中手掌的外部輪廓,為指尖識(shí)別做準(zhǔn)備。考慮到手部特征Kinect彩色攝像頭提取到的主要特征有顏色和形狀這兩種最明顯的特征[15]。形狀是指手部特有的形狀手指從手掌向外延伸,但是手勢(shì)人體最靈活的部分,它具有高度自由,從而導(dǎo)致手型有多重變化,因此很難找到一個(gè)特征提取的規(guī)律,而顏色也就是膚色,不但容易識(shí)別而且非常均勻,容易識(shí)別。膚色提取僅僅需要對(duì)檢測(cè)圖像中符合的顏色進(jìn)行提取。

基于膚色的手部提取是利用人體的膚色特征,該方法不受目標(biāo)位置、角度和大小的影響,具有較強(qiáng)的穩(wěn)定性。在手部識(shí)別中,由于手部膚色在背景中突出且顏色均勻,膚色作為手部的重要特征可以作為檢測(cè)手部的識(shí)別條件。在膚色判定之前,需要確定使用的顏色空間,并且在顏色空間中建立膚色模型。在得到手部圖像后使用OpenCV的canny算子得到手部的外輪廓邊緣,并將輪廓的重心作為掌心。圖2中所示是將提取的手掌區(qū)域經(jīng)過膚色提取、canny算子和重心提取的過程截圖。

1.3指尖識(shí)別

指尖識(shí)別使用的是如圖3所示的重心距離法[16],紅色點(diǎn)是手的重心,那么手的邊緣的所有點(diǎn)與重心點(diǎn)的距離按順時(shí)針方向或者逆時(shí)針方向遍歷,將出現(xiàn)峰值的輪廓點(diǎn)作為指尖的候選點(diǎn)。根據(jù)手指特點(diǎn)正常情況下,手指的y坐標(biāo)應(yīng)該高于掌心坐標(biāo),因此遍歷完外圍輪廓之后,將候選點(diǎn)的坐標(biāo)與掌心坐標(biāo)進(jìn)行比對(duì),低于掌心坐標(biāo)的候選點(diǎn)將予以剔除。

圖4測(cè)試者雙手的變化手型的和指尖識(shí)別的測(cè)試截圖,測(cè)試者一共設(shè)計(jì)了7個(gè)雙手手型,雙手對(duì)稱,從測(cè)試結(jié)果來看測(cè)試結(jié)果不夠理想,產(chǎn)生這種結(jié)果的主要原因是重心距離法是一種粗糙的識(shí)別方法,手指峰值的識(shí)別方法對(duì)與Kinect采集的彩色圖像并不適用,Kinect的有效距離是0.8m~4m。因此導(dǎo)致手部區(qū)域在Kinect彩色圖像上所占區(qū)域較小,即有效像素較少。而原有手指峰值的認(rèn)定方法需要在峰值區(qū)域找到40個(gè)連續(xù)下降點(diǎn),才認(rèn)定該點(diǎn)為指尖。

為了解決該問題,該文提出一種改進(jìn)型的重心距離法:首先將指尖峰值的認(rèn)定參數(shù)調(diào)低由40個(gè)連續(xù)下降點(diǎn)減少到20個(gè),但是該方法帶來的問題是引入了錯(cuò)誤指尖,很容易將手指根部的關(guān)節(jié)處也認(rèn)定為手指指尖。因此本文根據(jù)手指和關(guān)節(jié)處到掌心的距離特點(diǎn),對(duì)指尖候選點(diǎn)增加了一個(gè)過濾條件:滿足公式1才能確認(rèn)為指尖,否則剔除。公式中Dcur代表當(dāng)前峰值到掌心距離,Dmax代表最大峰值距離,Dmin代表最小峰值距離(該點(diǎn)一般為關(guān)節(jié)處)。即當(dāng)前峰值與關(guān)節(jié)的落差應(yīng)該超過最大手指峰值與關(guān)節(jié)點(diǎn)的1/3。即手指完全伸開的情況,手指之間的落差不會(huì)太大。

2 實(shí)驗(yàn)結(jié)果

本 文 使 用的計(jì)算機(jī)配置為Intel(R)Xeon Processor 3.4GHz,4.00GB 內(nèi)存,攝像頭是一個(gè)Kinect for XBOX 攝像頭。系統(tǒng)運(yùn)行時(shí)Kinect 彩色攝像頭的分辨率是640*480,視頻幀的速率為30fps。利用Microsoft Visual Studio 2010 作為系統(tǒng)開發(fā)平臺(tái),并結(jié)合微軟公司發(fā)布的MicrosoftKinect SDK 工具包以及Opencv 2.4.7版本完成上述手指指尖識(shí)別實(shí)驗(yàn)。

2.1手掌提取測(cè)試

Kinect 攝像頭能提供距離范圍在0.8~ 4米的深度圖像。針對(duì)人到 Kinect 攝像頭不同的距離Z,測(cè)試其手勢(shì)分割情況。測(cè)試結(jié)果如圖6所示。

實(shí)驗(yàn)結(jié)果是在測(cè)試者距Kinect設(shè)備最近0.8m和最遠(yuǎn)處3.8m處的實(shí)驗(yàn)結(jié)果,從圖6中可以看出 Microsoft Kinect SDK提供的骨架跟蹤技術(shù)可以有效的提取手部區(qū)域。

2.2 指尖識(shí)別測(cè)試

為了測(cè)試Kinect在不同距離上應(yīng)用改進(jìn)后重心距離法進(jìn)行指尖識(shí)別的精度,實(shí)驗(yàn)設(shè)計(jì)了四個(gè)不同的距離進(jìn)行指尖識(shí)別的實(shí)驗(yàn),每次試驗(yàn)分別測(cè)試手指1指到5指的識(shí)別的情況,測(cè)試基數(shù)為30個(gè),識(shí)別結(jié)果如表1所示。

由實(shí)驗(yàn)可知,隨著距離的有近及遠(yuǎn),手指的識(shí)別率逐步降低,主要原因是隨著距離的增加,人手指的像素點(diǎn)會(huì)變少、手指之間的像素點(diǎn)會(huì)變得模糊。

3 結(jié)論

本文設(shè)計(jì)并實(shí)現(xiàn)了基于Kinect 精確捕獲被測(cè)對(duì)象骨骼信息空間坐標(biāo)數(shù)據(jù)體骨骼信息并與OpenCV相結(jié)合的手指指尖識(shí)別方法,能夠檢測(cè)識(shí)別手掌輪廓以及伸直和彎曲的手指。相比于傳統(tǒng)的基于膚色的指尖識(shí)別方法,該文方法增加了人體骨骼信息,能夠快速地找到手掌位置并以此為基礎(chǔ)追蹤手掌輪廓和識(shí)別指尖。通過改進(jìn)重心距離法有效提高了指尖識(shí)別的魯棒性。同時(shí)該研究還有一定的不足,由于Kinect本身在環(huán)境光線較弱時(shí),對(duì)識(shí)別對(duì)象的檢測(cè)沒有較好的防抖處理,所以在操作時(shí)會(huì)發(fā)生抖動(dòng)產(chǎn)生的誤差干擾。相信本研究必將在更廣闊的領(lǐng)域得到更深層次的應(yīng)用。

參考文獻(xiàn):

[1] 任雅祥.基于手勢(shì)識(shí)別的人機(jī)交互發(fā)展研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2006,27(7)1201-1204.

[2] 李勇,高文,姚鴻勛.基于顏色手套的中國(guó)手指語字母的動(dòng)靜態(tài)識(shí)別[J].計(jì)算機(jī)工程與應(yīng)用,2002,17,55-58.

[3] 李清水,方志剛,沈模衛(wèi)等.手勢(shì)識(shí)別技術(shù)及其在人機(jī)交互中的應(yīng)用[J].人類工效學(xué),2002,8(1)27-31.

[4] 曾維.手勢(shì)識(shí)別系統(tǒng)中手指及指尖檢測(cè)方法[J]研究與開發(fā),2013,32(4)39-42.

[5] 鄒偉,原魁,劉賢華等.一種單手動(dòng)態(tài)手指語的識(shí)別方法[J].信息與控制,2003,32(1)28-33.

[6] 于蘊(yùn)杰,管業(yè)鵬,熊會(huì)軍.指勢(shì)識(shí)別的實(shí)時(shí)指尖提取[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(6)219-223.

[7] 男睿.基于單目視覺的手指識(shí)別跟蹤系統(tǒng)設(shè)計(jì)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.

[8] 馬志強(qiáng).電腦游戲中基于計(jì)算機(jī)視覺的手勢(shì)識(shí)別技術(shù)研究[D].南京:南京師范大學(xué),2012.

[9] 周航.基于計(jì)算機(jī)視覺的手勢(shì)識(shí)別系統(tǒng)研究[D].北京:北京交通大學(xué),2007.

[10] 鄔大鵬.基于視覺的手勢(shì)識(shí)別及人機(jī)交互研究[D].南京:南京航空航天大學(xué),2010.

[11] 賈建軍.基于視覺的手勢(shì)識(shí)別技術(shù)的研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2008.

[12] 郭興偉.基于視覺的手勢(shì)識(shí)別算法研究[D].上海:上海海運(yùn)學(xué)院,2003.

[13] 王冉冉.基于視覺的手勢(shì)識(shí)別在智能電視上的應(yīng)用研究[D].青島:中國(guó)海洋大學(xué),2013.

[14] 吳浩.基于視覺的應(yīng)用于智能控制的手勢(shì)識(shí)別技術(shù)的研究[D]成都:電子科技大學(xué),2008.

[15] 張登康,郭太良,姚劍敏等.改進(jìn)膚色識(shí)別參量和輪廓特征相結(jié)合的指尖檢測(cè)[J].光電子技術(shù),2012,9(3):185-189.

[16] OpenCV簡(jiǎn)單粗糙的指尖檢測(cè)方法: http://blog.csdn.net/augusdi/article/details/8865589.

绩溪县| 泗阳县| 昭通市| 元江| 麻栗坡县| 钟山县| 邮箱| 远安县| 临漳县| 社旗县| 威信县| 饶阳县| 绍兴市| 来宾市| 水城县| 浦东新区| 罗平县| 隆昌县| 泸溪县| 江门市| 玉溪市| 丰顺县| 东辽县| 额济纳旗| 长春市| 格尔木市| 桐庐县| 丁青县| 石门县| 寻乌县| 和静县| 城口县| 大城县| 黄山市| 雷州市| 周至县| 天祝| 长白| 盐亭县| 大足县| 龙里县|