林海波,王圣彬,張 毅
(國家信息無障礙研發(fā)中心(重慶郵電大學(xué)),重慶 400065)
(*通信作者電子郵箱1357503397@qq.com)
基于改進(jìn)深度信息的手勢分割與定位
林海波,王圣彬*,張 毅
(國家信息無障礙研發(fā)中心(重慶郵電大學(xué)),重慶 400065)
(*通信作者電子郵箱1357503397@qq.com)
針對基于Kinect深度信息分割的手勢往往包含手腕易造成后續(xù)手勢誤識別的問題,提出一種改進(jìn)深度信息的手勢分割與定位算法。首先,基于深度信息閾值限定在實驗空間中檢測出手勢二值圖;然后,根據(jù)普通手勢特征,提出基于手勢端點檢測和可變閾值算法分割出準(zhǔn)確手勢。為得到穩(wěn)定的分割效果,對分割手勢進(jìn)行形態(tài)學(xué)處理,最后選取基于手勢重心坐標(biāo)和最大內(nèi)切圓圓心坐標(biāo)的聯(lián)合手勢定位法定位手勢。實驗結(jié)果表明,該手勢分割方法比已有分割方法更準(zhǔn)確可靠,聯(lián)合手勢定位比Kinect軟件開發(fā)工具包骨骼數(shù)據(jù)定位和手勢重心定位穩(wěn)定,無奇異點。
深度信息;手勢分割;手勢定位;可變閾值;最大內(nèi)切圓
Chongqing400065,China)
隨著計算機(jī)技術(shù)的發(fā)展,基于機(jī)器視覺的手勢識別作為一種很有前途的人機(jī)交互技術(shù),一直是一個值得研究的課題[1]。在手勢識別中,手勢分割與定位為手勢軌跡提取和手勢識別奠定了基礎(chǔ)?;谏疃刃畔⒌哪w色分割較新[2],首先獲取Kinect深度信息,運用深度閾值分割手勢[3-4],但膚色檢測遍歷每幀整幅圖像,消耗時間長,實時性差,不同膚色人群差異、光照環(huán)境變化以及類膚色物體都對手勢檢測造成小部分手腕的干擾[5-6]。文獻(xiàn)[7-9]等融合深度信息和彩色圖像分割出手勢,但不能避免光照影響,降低了手勢分割的魯棒性。文獻(xiàn)[10-11]再次深度分割手勢與手腕,對兩部分距離變換運算求各自的距離灰度圖像中心點,連接兩中心點取垂直平分線,此方法較準(zhǔn)確地將手勢和手腕分開,但計算量大。
因此,本文提出一種改進(jìn)深度信息的手勢分割與定位算法,融合深度信息與可變閾值算法分割出準(zhǔn)確手勢,消除類膚色以及光照環(huán)境變化的干擾,并在黑暗環(huán)境下得到良好的手勢檢測結(jié)果,魯棒性好,減少了計算量;并聯(lián)合手勢重心坐標(biāo)和最大內(nèi)切圓圓心坐標(biāo)準(zhǔn)確定位出手勢位置,提高了輪椅控制的穩(wěn)定安全性。
1.1 基于深度信息閾值限定的手勢檢測
在手勢識別中,準(zhǔn)確檢測手勢是關(guān)鍵。本文規(guī)定手勢正對Kinect攝像頭,并將其馬達(dá)限定在向上約10°角度。根據(jù)華南理工大學(xué)麥健樺[3]的深度閾值手勢分割法,將深度信息獲取范圍限定在距離Kinect攝像頭d1和d2之間,但不能滿足輪椅精確安全的控制。為了更穩(wěn)定精確,進(jìn)一步縮小(d2-d1)的值,本文設(shè)定d1=250 mm,d2=450 mm,最大限度消除實驗空間之外復(fù)雜環(huán)境的干擾,當(dāng)類似深度有干擾物體時,對深度圖像進(jìn)行直方圖分析,計算區(qū)分手勢與干擾物體的閾值,通過該閾值對深度圖像進(jìn)行處理得到手勢圖像,獲得較優(yōu)分割效果,手勢實驗空間設(shè)定如圖1所示,坐標(biāo)系{V}為手勢空間基坐標(biāo)系。
根據(jù)已有的基于深度閾值手勢檢測的文獻(xiàn)[3-4,12],RGB圖、深度灰度圖(將深度值在d1和d2之間的像素點線性化到灰度區(qū)間[1,254],小于d1和大于d2的令灰度值為0和255)和手勢二值圖(對深度灰度圖二值化,手勢灰度值為255,其余為0)容易獲得,結(jié)果如圖2所示。用矩陣G(i,j)表示圖2(b)深度灰度圖對應(yīng)位置的像素灰度值,二值矩陣H1表示圖2(c)手勢二值圖,目標(biāo)手勢的值為1,否則為0。G和H1均為m×n矩陣,m和n是圖像的像素高和像素寬。
圖1 手勢實驗空間設(shè)定
圖2 三種手勢圖像
1.2 基于可變閾值的手勢分割
如圖2(c)所示,基于深度信息閾值限定檢測的手勢不準(zhǔn)確,有手腕區(qū)域,干擾后面的手勢軌跡提取和手勢識別,而文獻(xiàn)[10-11]通過距離變換計算手勢與手腕兩部分,計算量大。通過研究普通手勢特征,本文提出比文獻(xiàn)[10-11]更為簡便穩(wěn)定的基于可變閾值算法分割出準(zhǔn)確手勢,計算量較小。
在手勢實驗空間中,研究了普通手勢特性,手指基本上向上或左右傾斜向上。圖2(c)手勢二值圖中很快找到最高點M和最低點N,如圖3所示,其中a是MN線段的任意垂線,P是交點,設(shè):
MP=λMN
(1)
式(1)中,若能找到恰當(dāng)?shù)目勺冮撝祬?shù)λ,就能將手勢和手腕準(zhǔn)確分開。
圖3 準(zhǔn)確手勢分割
圖3中點M和N的獲取易受孤立點、孔洞等噪聲干擾,分割圖像邊界不夠光滑,導(dǎo)致準(zhǔn)確獲取點M和N存在偏差,因此采用形態(tài)學(xué)處理方法消除干擾,即在手勢二值圖中提取連通區(qū)域,統(tǒng)計出各連通區(qū)域大小,通過閾值門限去除較小的孤立點,采用形態(tài)學(xué)中的閉運算消除手勢圖像內(nèi)部的孔洞,得到準(zhǔn)確手勢二值圖,記作矩陣H2。
(2)
(3)
2.1 手勢重心定位算法
手勢定位是控制輪椅安全穩(wěn)定的基礎(chǔ),對實驗空間中手勢實時準(zhǔn)確定位,實際是對手勢軌跡的提取[13],手勢軌跡是動態(tài)手勢的重要特征。在實驗空間中,建立基坐標(biāo)系{V},設(shè)手勢重心坐標(biāo)為(xg,yg,zg),zg為手勢深度平均灰度值,手勢定位公式為:
(4)
其中:G(i,j)H3(i,j)表示兩同型矩陣相同位置元素相乘;xg,yg單位為像素;zg的值在區(qū)間[0,255]內(nèi),表示灰度值。SH3表示手勢大小,單位為像素數(shù),(xg,yg,zg)即為手勢定位坐標(biāo)點。
2.2 最大內(nèi)切圓定位算法
基于手勢形狀特征,采用最大內(nèi)切圓法定位手勢。設(shè)手勢像素點集為T,手勢邊緣像素點集為E,E?T。點t∈T是手勢內(nèi)的像素點,點e∈E是手勢邊緣像素點,對任意ti∈T,有:
(5)
其中:xti,yti和xej,yej表示點ti和ej的橫縱坐標(biāo),故di表示點ti到手勢邊緣的最小距離。對所有di,為了盡量減少浮點運算和冗余計算,結(jié)合手掌特征,定義掌心坐標(biāo)及手掌半徑為:
(6)
取得R的ti為最大內(nèi)切圓圓心,相應(yīng)的xti和yti為圓心坐標(biāo)。式(5)和(6)用畫內(nèi)切圓確定半徑R,計算流程如圖4。
圖4中定義了一個初始半徑,這是容許的最小半徑,若以此半徑不能畫圓,則表示此目標(biāo)找不到足夠?qū)挻蟮牟糠?,所以不是目?biāo)手勢。圖5直觀地展示了最大內(nèi)切圓法獲取手勢圓心和半徑的原理,在目標(biāo)手勢內(nèi),以點A為圓心畫的圓最大,故點A是最大內(nèi)切圓圓心,該圓半徑是手勢半徑。
圖4 最大內(nèi)切圓法定位流程
圖5 最大內(nèi)切圓法示意圖
圖6是實際采用最大內(nèi)切圓法獲取的手勢圓心和半徑。其中,四個候選目標(biāo)被標(biāo)記成不同顏色,A和B目標(biāo)滿足面積的條件,經(jīng)過內(nèi)部點消除處理,而C和D目標(biāo)面積較小,分辨率較低,無法識別,為節(jié)省開支,不再對它們作后續(xù)處理。由于目標(biāo)B以初始半徑不能畫圓而無法定位,所以也不是手勢。目標(biāo)A滿足全部條件,通過本文方法處理后,定位到手勢,并找到手勢半徑。
圖6 最大內(nèi)切圓法實驗結(jié)果
2.3 聯(lián)合手勢重心和最大內(nèi)切圓圓心定位算法
Nikhil等[14]采用放射線法比較準(zhǔn)確地定位手勢,但放射線法并不簡便,會產(chǎn)生大量冗余數(shù)據(jù),于是本文首先采用手勢重心定位手勢。重心定位法對圖形邊緣平滑度要求不高,在手勢二值化過程中速度較快,在定位中易出現(xiàn)奇異點。由于可變閾值分割是基于一定實驗空間條件下分割手勢的,若手勢異常運動會超出實驗空間,出現(xiàn)手臂干擾,手勢重心定位準(zhǔn)確度降低。而最大內(nèi)切圓定位法是基于手勢形狀特征并采用定點運算定位手勢,在實驗環(huán)境中實時計算運動手勢最大內(nèi)切圓圓心的軌跡運動,避免了手腕的干擾,擴(kuò)大了算法的應(yīng)用范圍;但最大內(nèi)切圓定位法只獲取了圓心二維坐標(biāo),缺少手勢區(qū)域的平均深度灰度值zg,即豎坐標(biāo)。為了彌補兩種定位法的不足,本文聯(lián)合手勢重心和最大內(nèi)切圓圓心的定位算法,將重心與圓心的二維坐標(biāo)中點作為手勢定位的二維位置,zg作為手勢豎坐標(biāo),從而得到聯(lián)合定位結(jié)果,提高了手勢定位準(zhǔn)確度,同時獲取手掌半徑R,為后續(xù)手勢軌跡提取、手勢跟蹤與識別也起著非常重要的作用。聯(lián)合手勢定位流程如圖7所示。
圖7 聯(lián)合手勢定位流程
3.1 手勢分割實驗
為驗證本文算法的有效性,通過實驗進(jìn)行研究。MicrosoftKinect(XBOX360)深度攝像頭是在軟件KinectforWindowsSoftwareDevelopmentKit-v1.7及Kinect驅(qū)動軟件下進(jìn)行視覺信息采集,使用MicrosoftVisualStudio2010開發(fā)環(huán)境及Matlab2012a軟件在CPU為3.30GHz、內(nèi)存容量為3.19GB計算機(jī)上進(jìn)行編譯與仿真。在手勢分割中,由于手勢在Kinect視景范圍內(nèi)目標(biāo)小,選取Kinect高分辨率的深度數(shù)據(jù)格式為深度圖像高480像素,寬640像素??紤]到Kinect性能最優(yōu),設(shè)定實驗空間d1=250 mm,d2=450 mm,實驗結(jié)果如圖8所示。
圖8 不同條件下手勢分割對比
3.2 手勢定位實驗
在Kinect自身坐標(biāo)系下,Kinect能夠提供人體骨骼數(shù)據(jù)格式[13](包括手勢的人體主要20個骨骼點三維坐標(biāo)),這是微軟通過特殊算法對整個人體在視覺場景中的深度信息估算得到的。因此,可以直接讀取手勢骨骼點獲取手勢軌跡信息,骨骼數(shù)據(jù)和深度數(shù)據(jù)幀頻率都為30Hz,手勢在Kinect場景內(nèi)做螺旋運動,骨骼數(shù)據(jù)定位到手勢軌跡點;但在出現(xiàn)手勢與身體自遮擋時易跳變[15],如圖9中點gm,而且骨骼數(shù)據(jù)定位軌跡易重疊,如圖10(a)所示。
圖9 異常手勢動作軌跡
圖10 手勢定位效果對比
手勢重心定位軌跡有奇異點干擾,如圖10(b)所示,因此本文提出聯(lián)合手勢重心和最大內(nèi)切圓圓心的定位算法,選取手勢重心和最大內(nèi)切圓圓心的中點作為手勢捕捉,對于可能出現(xiàn)異常手勢動作軌跡,可采用球面閾值限定算法處理,將1 s分成3個時間片計算平均軌跡點,取異常手勢球面限定閾值τr=100,得到手勢初始軌跡和處理后的軌跡效果,如圖10(c)所示,使手勢更穩(wěn)定且降低了軌跡冗余度。圖10中x、y軸單位pixel表示像素,z軸(grey value)表示灰度值,由圖10(a)、圖10(b)和圖10(c)對比效果,骨骼數(shù)據(jù)手勢定位易跳變、重疊,手勢重心定位存在異常軌跡點,本文算法的手勢定位效果更穩(wěn)定,對異常手勢軌跡點有一定的抵制能力。
本文提出了一種改進(jìn)深度信息的手勢分割與定位算法,通過引入可變閾值去除手腕對手勢進(jìn)行分割并形態(tài)學(xué)處理,使得手勢分割效果更準(zhǔn)確;針對手勢定位的不穩(wěn)定問題,提出聯(lián)合手勢重心坐標(biāo)和最大內(nèi)切圓圓心坐標(biāo)的手勢定位法準(zhǔn)確可靠地定位出手勢,并采用球面閾值限定法處理異常手勢動作軌跡,為后續(xù)高精度手勢軌跡提取、手勢跟蹤與識別提供了有力保證,實驗結(jié)果證明了該改進(jìn)算法的可行性與有效性。然而本文只在Matlab上仿真手勢軌跡點,實用性不足,因此下一步的研究目標(biāo)是把手勢定位軌跡應(yīng)用到智能輪椅平臺上。
)
[1]LIUX,FUJIMURAK.Handgesturerecognitionusingdepthdata[C]//ProceedingsoftheSixthIEEEInternationalConferenceonAutomaticFaceandGestureRecognition.Piscataway,NJ:IEEE, 2004: 529-534.
[2] 羅元,何超,王艷,等.基于深度預(yù)分割結(jié)合Camshift跟蹤算法的動態(tài)手勢識別方法[J].半導(dǎo)體光電,2015,36(1):155-159.(LUOY,HEC,WANGY,etal.Anoveldynamichandgesturerecognitionmethodbasedondepthpre-segmentationcombiningwithCamshifttrackingalgorithm[J].SemiconductorOptoelectronics, 2015, 36(1): 155-159.)
[3] 麥健樺.基于自然手勢的機(jī)器人控制[D].廣州:華南理工大學(xué),2013:12-14.(MAIJH.Roboticcontrolbasedonnaturalgesture[D].Guangzhou:SouthChinaUniversityofTechnology, 2013: 12-14.)
[4] 李振.基于手勢識別的遠(yuǎn)程控制機(jī)械手的設(shè)計[D].武漢:武漢理工大學(xué),2014:22-29.(LIZ.Designofremotecontrolofmanipulatorbasedongesturerecognition[D].Wuhan:WuhanUniversityofTechnology, 2014: 22-29.)
[5]YANGWJ,WANGCM.Depthinformationandmotioncontextfeaturebaseddynamichandgesturedetectionandrecognition[J].JournalofInformationandComputationalScience, 2015, 12(10): 3775-3782.
[6]LEET,HOLLERERT.HandyAR:markerlessinspectionofaugmentedrealityobjectsusingfingertiptracking[C]//Proceedingsofthe2007IEEEInternationalSymposiumonWearableComputers.Washington,DC:IEEEComputerSociety, 2007: 83-90.
[7]RENZ,YUANJ,MENGJ,etal.Robustpart-basedhandgesturerecognitionusingKinectsensor[J].IEEETransactionsonMultimedia, 2013, 15(5): 1110-1120.
[8]ELSAADANYOS,ABDELWAHABMM.Real-time2DHoG-2DPCAalgorithmforhandgesturerecognition[C]//ICIAP2013:Proceedingsofthe17thInternationalConferenceonImageAnalysisandProcessing,LNCS8157.Berlin:Springer, 2013: 601-610.
[9]YAOY,ZHANGF,FUY.Real-timehandgesturerecognitionusingRGB-Dsensor[M]//ComputerVisionandMachineLearningwithRGB-DSensors.NewYork:SpringerInternationalPublishing, 2014: 289-313.
[10]QINS,ZHUX,YANGY,etal.Real-timehandgesturerecognitionfromdepthimagesusingconvexshapedecompositionmethod[J].JournalofSignalProcessingSystems, 2014, 74(1): 47-58.
[11]QINS,ZHUX,YUH,etal.Real-timemarkerlesshandgesturerecognitionwithdepthcamera[M]//AdvancesinMultimediaInformationProcessing—PCM2012.Berlin:Springer, 2012: 186-197.
[12] 陳子毫.基于深度信息的手勢檢測與跟蹤[D].廣州:華南理工大學(xué),2012:20-29.(CHENZH.Gesturedetectionandtrackingbasedondepthinformation[D].Guangzhou:SouthChinaUniversityofTechnology, 2012: 20-29.)
[13]SUAREZJ,MURPHYRR.Handgesturerecognitionwithdepthimages:Areview[C]// 2012IEEERO-MAN:Proceedingsofthe21stIEEEInternationalSymposiumonRobotandHumanInteractiveCommunication.Piscataway,NJ:IEEE, 2012: 411-417.
[14] NIKHIL S, MOHAN S, RAMYA B, et al.Design and development of a DSP processor based reconfigurable hand gesture recognition system for real time applications [C]// Proceedings of the 2010 International Conference on Signal and Image Processing.Piscataway, NJ: IEEE, 2010: 39-44.
[15] 張世輝,張煜婕,孔令富.一種基于深度圖像的自遮擋檢測方法[J].小型微型計算機(jī)系統(tǒng),2010,31(5):964-968.(ZHANG S H, ZHANG Y J, KONG L F.Self-occlusion detection approach based on depth image [J].Journal of Chinese Computer Systems, 2010, 31(5): 964-968.)
This work is supported by the Scientific and Technological Research Project Funds of Chongqing Municipal Education Commission (KJ130512).
LIN Haibo, born in 1965, M.S., professor.His research interests include intelligent system and robot.
WANG Shengbin, born in 1989, M.S.candidate.His research interests include pattern recognition.
ZHANG Yi, born in 1966, Ph.D., professor.His research interests include mobile robot navigation, multi-mode human-machine interaction.
Gesture segmentation and positioning based on improved depth information
LIN Haibo, WANG Shengbin*, ZHANG Yi
(NationalEngineeringResearchandDevelopmentCenterforInformationAccessibility(ChongqingUniversityofPostsandTelecommunications),
Aiming at the problem that segmented gesture by Kinect depth information usually contains wrist data, which easily causes subsequent false gesture recognition, a gesture segmentation and positioning algorithm based on improved depth information was proposed.Firstly, the gesture binary image was detected based on depth information threshold limit in experimental space.Secondly, according to characteristics of common gestures, accurate gesture was segmented by gesture endpoint detection and variable threshold algorithm.In order to obtain stable segmentation results, morphological processing of segmented gesture was conducted.Lastly, the gesture positioning algorithm was proposed based on the method of combining gesture gravity center coordinates and maximum inscribed circle center coordinates.The experimental results show that the proposed gesture segmentation method has better accuracy and stability than the existing algorithm.The combined gesture positioning is more stable than gesture gravity center positioning and skeletal data positioning of Kinect Software Development Kit (SDK) and it has no singular points.
depth information; gesture segmentation; gesture positioning; variable threshold; maximum inscribed circle
2016-08-20;
2016-09-06。 基金項目:重慶市教委科學(xué)技術(shù)研究項目(KJ130512)。
林海波(1965—),男,重慶人,教授,碩士,主要研究方向:智能系統(tǒng)與機(jī)器人; 王圣彬(1989—),男,江蘇徐州人,碩士研究生,主要研究方向:模式識別; 張毅(1966—),男,重慶人,教授,博士,主要研究方向:機(jī)器人導(dǎo)航、多模人機(jī)交互。
1001-9081(2017)01-0251-04
10.11772/j.issn.1001-9081.2017.01.0251
TP391.413
A