本發(fā)明屬視頻處理領(lǐng)域,涉及一種基于雙目相機的自然手漢字書寫識別方法。
背景技術(shù):
在信息化的今天,在計算機技術(shù)迅速普及的現(xiàn)代,人與計算機的交互已經(jīng)成為日常生活的一部分。尤其是在最近幾年,研究如何使人和計算機進行自然直接順暢的交流已經(jīng)成為人們的焦點。從輸入方式的角度來講,采用鼠標(biāo)和鍵盤來作為輸入手段的人機交互已不能完全滿足人們當(dāng)前的需求,而以自然手為輸入直接與計算機進行交流或者對機器進行控制才是發(fā)展的新趨勢。
根據(jù)手勢識別實現(xiàn)的基礎(chǔ)不同,可以將手勢識別分為基于數(shù)據(jù)手套和基于視覺兩類。基于穿戴設(shè)備的手勢識別,如數(shù)據(jù)手套或者顏色標(biāo)記等,可以反應(yīng)出手的具體細節(jié)信息并且具備可觀的效率,但是設(shè)備給人帶來的空間不便利性限制他的發(fā)展。所以,以自然手的手勢作為輸入,基于機器視覺進行自然手勢的檢測識別成為研究熱點。
根據(jù)識別技術(shù)的不同,自然手的模型可分為基于二維表觀模型和基于三維立體模型兩類。二維表觀的手勢識別局限了信息平面,無法解決手勢的遮擋問題,這在一定程度上就限制了手勢識別的準(zhǔn)確性,三維手勢識別技克服傳統(tǒng)二維手勢交互的信息限制缺點。
本發(fā)明基于雙目相機捕捉自然手勢,實現(xiàn)不同角度的手勢識別以及手勢軌跡識別,能夠輸出所書寫的漢字。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于克服單目相機在信息捕捉上的缺陷,提供一種可以實現(xiàn)多角度的手勢識別和軌跡跟蹤,能夠提高用戶輸入的自由度的漢字識別方法。本發(fā)明利用雙目相機所能提供的左右圖像進行立體匹配,獲得手的三維空間坐標(biāo)信息,以便進行手勢的識別和軌跡的計算,從而實現(xiàn)書寫漢字的識別。技術(shù)方案如下:
一種基于雙視點手勢識別的漢字識別方法,將手的動作分為筆劃書寫的動作和兩筆劃之間的過渡動作,與此相對應(yīng),定義有效手勢和無效手勢分別代表兩種輸入狀態(tài),分別對應(yīng)漢字筆畫書寫軌跡和筆畫之間的過渡軌跡;定義伸出一只食指朝上為有效手勢,寫有效筆劃的時候使用有效手勢;定義握拳為無效輸入手勢,手在兩筆劃位置之間過渡時使用無效手勢,包括下列步驟:
第一步:對書寫漢字時采集的手部圖像進行色彩空間轉(zhuǎn)換,選取在YCbCr色彩空間進行膚色建模并進行手勢分割,分割出的手勢二值化圖像。
第二步:在分割出的手勢二值化圖像中,手勢區(qū)域像素值為1,背景區(qū)域的像素值為0,計算手勢中心點
第三步:在書寫漢字時,在進行動態(tài)軌跡識別時,先判斷一下此手勢是否為有效手勢方法如下:
利用canny算子進行邊緣提取,根據(jù)提取的邊緣得到一個矩形邊界,計算手的指尖與中心的距離,即上邊界與中心點的距離d1,手腕與中心點,即下邊界和中心點的距離d2,若滿足d1/d2≥1.4,則判斷該手勢為有效手勢,否則為無效手勢;
第四步:對于含有有效手勢的幀圖像,在雙目相機獲得的左右兩幅圖像中,選右圖為基準(zhǔn)圖進行立體匹配并計算視差。計算步驟如下:
1)將基準(zhǔn)圖和待匹配圖都轉(zhuǎn)為灰度圖;
2)選基準(zhǔn)圖的指尖點p為興趣點,以其為中心建立窗口,計算窗口里的像素灰度特征作為參考值;
3)在待匹配圖里建立一個相同尺寸的窗口,移動并不斷計算窗口覆蓋區(qū)域的像素灰度特征;
4)判斷移動窗口和基準(zhǔn)窗口特征值的相似性,取相似程度最高的窗口為匹配的窗口,窗口的中心點即為匹配點p';
5)計算視差disparity=p'(x)-p(x)。
第五步:根據(jù)視差原理,計算獲得指尖點的三維坐標(biāo);
第六步:對所有含有有效手勢的幀進行第四步和第五步處理,連接有效手勢的空間位置,得到書寫漢字的軌跡。
本發(fā)明實現(xiàn)多角度的手勢識別和軌跡跟蹤,能夠提高用戶輸入的自由度,利用雙目相機所能提供的左右圖像進行立體匹配,獲得手的三維空間坐標(biāo)信息,以便進行手勢的識別和軌跡的計算,從而實現(xiàn)書寫漢字的識別。
附圖說明
圖1形態(tài)學(xué)處理操作。
圖2手勢分割圖示,左圖包含有效手勢,右圖包含無效手勢;第一行是膚色檢測的分割效果,有噪聲;第二行是經(jīng)過形態(tài)學(xué)處理的效果;第三行是計算出的中心和指尖標(biāo)示。
圖3手勢判斷涉及的距離標(biāo)示,左圖為有效手勢,右圖為無效手勢。
具體實施方式
基于雙目相機的漢字輸入識別,手勢由雙目相機進行拍攝輸入,每一時刻都有左右兩幅圖像,對其進行手勢定位分割,特征提取和手勢分析,立體匹配和三維坐標(biāo)計算,具體包括以下步驟:
第一步:對圖像進行色彩空間轉(zhuǎn)換,選取在YCbCr色彩空間進行膚色建模進行手勢分割。具體步驟如下:
1)首先對圖像進行色彩空間轉(zhuǎn)換,把RGB圖像轉(zhuǎn)換到Y(jié)CbCr色彩空間;
2)提取Y、Cb、Cr分量,對其進行膚色檢測,定位手勢區(qū)域,滿足下式則判斷為膚色:
在上式中,a=25.39,b=14.03,ecx=1.60,ecy=2.41,cx=109.38,cy=152.02。將待檢測的關(guān)鍵幀圖像轉(zhuǎn)換到Y(jié)CbCr空間后,判斷像素的CbCr值是否在式3式描述的橢圓內(nèi)。如在橢圓內(nèi),則認(rèn)為該像素為膚色點,設(shè)置像素點值為1,否則就為背景點,設(shè)置像素點值為0;
3)對上一步得到的二值化圖像進行腐蝕膨脹形態(tài)學(xué)處理,填補孔洞,去除噪聲,得到優(yōu)化的手勢分割圖。
第二步:在分割出的有效手勢二值化圖像中,手勢區(qū)域像素值為1,背景區(qū)域的像素值為0。計算手勢中心點(xcenter,ycenter),具體步驟如下:
1)求得所有值為1的像素的x坐標(biāo)的和為sumx,y坐標(biāo)的和為sumy;
2)求得所有值為1的像素的個數(shù)的總和為sum;
3)中心點x坐標(biāo)y坐標(biāo)
第三步,在書寫漢字時,將手的動作分為有效筆劃的動作和兩筆劃之間的過渡動作,與此相對應(yīng),定義有效手勢和無效手勢分別代表兩種輸入狀態(tài)。在進行動態(tài)軌跡識別時,先判斷一下此手勢是否有效,只有當(dāng)輸入為漢字有效筆畫時只有在有效手勢輸入才跟蹤記錄手勢的軌跡信息。具體定義為:
1)伸出一只食指朝上為有效輸入手勢,寫有效筆畫的時候我們使用有效手勢;
2)定義握拳為無效輸入手勢,手在兩筆畫位置之間過渡時使用無效手勢。
利用canny算子進行邊緣提取,根據(jù)提取的邊緣得到一個矩形邊界,計算手的指尖與中心的距離,即上邊界與中心點的距離d1,手腕與中心點,即下邊界和中心點的距離d2,若滿足d1/d2≥1.4,則判斷該手勢為有效手勢,否則為無效手勢。
第四步:對于含有有效手勢的幀圖像,在雙目相機獲得的左右兩幅圖像中,選右圖為基準(zhǔn)圖進行立體匹配并計算視差。計算步驟如下:
1)將基準(zhǔn)圖和待匹配圖都轉(zhuǎn)為灰度圖;
2)選基準(zhǔn)圖的指尖點p為興趣點,以其為中心建立窗口,計算窗口里的像素灰度特征作為參考值;
3)在待匹配圖里建立一個相同尺寸的窗口,移動并不斷計算窗口覆蓋區(qū)域的像素灰度特征;
4)判斷移動窗口和基準(zhǔn)窗口特征值的相似性,取相似程度最高的窗口為匹配的窗口,窗口的中心點即為匹配點p';
5)計算視差disparity=p'(x)-p(x)。
第五步:根據(jù)視差原理,可以計算獲得指尖點的三維坐標(biāo)
第六步:對所有含有有效手勢的幀進行第四步和第五步處理,連接有效手勢的空間位置,得到書寫漢字的軌跡。