陳建國(guó) 鄧曉軍 譚孟旭 張官正 于順洪
摘要:針對(duì)聽(tīng)力障礙人群與正常人群存在語(yǔ)言交流障礙的問(wèn)題,基于Unity平臺(tái)采用Leap Motion設(shè)備收集手勢(shì)特征,利用Maya3D建模和幾何模板匹配技術(shù),采用.NetCore框架開(kāi)發(fā)一款手語(yǔ)動(dòng)態(tài)識(shí)別系統(tǒng),為聾啞人群體創(chuàng)建一個(gè)無(wú)障礙交流的平臺(tái)。實(shí)際應(yīng)用效果表明,系統(tǒng)具有良好的易用性、識(shí)別率和可靠性,系統(tǒng)的研發(fā)為聾啞人與健全人群的交流帶來(lái)了極大的便利。
關(guān)鍵詞:Unity;Maya 3D;LeapMotion;.NetCore框架;手語(yǔ)識(shí)別
中圖分類(lèi)號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)09-0055-04
1 國(guó)內(nèi)外研究現(xiàn)狀及分析
據(jù)統(tǒng)計(jì),世界上有將近2.5-3億聽(tīng)力障礙人群,包括弱聽(tīng)、重聽(tīng)、老性耳聾等。大多數(shù)聾啞人僅使用手語(yǔ)與書(shū)面語(yǔ)與他人交流,因此多數(shù)聾啞人只能與家人或同群體互動(dòng)交流,與正常人群體往來(lái)甚少。聾啞人士與不懂手語(yǔ)的正常人群溝通存在極大的障礙,而當(dāng)前僅有非常小比例的正常人群體掌握了手語(yǔ)。聽(tīng)力障礙讓他們與外界交流非常不便,隨著科技的不斷進(jìn)步也使得他們期望通過(guò)科技改變生活。
手語(yǔ)是聾啞人與正常人之間溝通的橋梁,目前市面上還沒(méi)有成功的手語(yǔ)翻譯產(chǎn)品,大多數(shù)都停留在實(shí)驗(yàn)室階段。實(shí)現(xiàn)手語(yǔ)翻譯的關(guān)鍵就是手語(yǔ)識(shí)別,20世紀(jì)80年代就有人開(kāi)始了簡(jiǎn)單的手勢(shì)識(shí)別研究。1983年,美國(guó)電話(huà)電報(bào)公司的G.J.Grimes發(fā)明一款能夠識(shí)別72個(gè)單手字母“數(shù)字?jǐn)?shù)據(jù)輸入手套接口設(shè)備”,被認(rèn)為是最早進(jìn)行手語(yǔ)識(shí)別研究的人。目前對(duì)手語(yǔ)識(shí)別的研究主要分為兩大類(lèi):基于數(shù)據(jù)手套的手語(yǔ)識(shí)別和基于視覺(jué)的手語(yǔ)識(shí)別。
通過(guò)對(duì)文獻(xiàn)的研究,上述兩類(lèi)手語(yǔ)識(shí)別設(shè)備主要存在以下問(wèn)題:
1)數(shù)據(jù)手套的成本高昂,佩戴和使用不便。雖然利用數(shù)據(jù)手套進(jìn)行識(shí)別有數(shù)據(jù)量較小,識(shí)別率較高等優(yōu)點(diǎn),但是基于數(shù)據(jù)手套的手語(yǔ)識(shí)別大都停留在實(shí)驗(yàn)室研究階段。
2)國(guó)內(nèi)對(duì)基于視覺(jué)的手語(yǔ)識(shí)別的研究比較少,而且可識(shí)別的靜態(tài)手勢(shì)的數(shù)量過(guò)少,手語(yǔ)識(shí)別系統(tǒng)的準(zhǔn)確率不高。
3)手語(yǔ)識(shí)別系統(tǒng)由軟硬件構(gòu)成的系統(tǒng),系統(tǒng)體積較大,不方便攜帶。
針對(duì)以上的問(wèn)題,設(shè)計(jì)一款價(jià)格實(shí)惠、攜帶方便和識(shí)別率高的手語(yǔ)交流平臺(tái)已凸顯。本系統(tǒng)將采用Leap Motion收集手部特征,相對(duì)于數(shù)據(jù)手套其性?xún)r(jià)比和便攜性的優(yōu)勢(shì)顯而易見(jiàn),通過(guò)對(duì)提取出的三維手勢(shì)數(shù)據(jù)進(jìn)行平面化,通過(guò)幾何模板匹配算法,達(dá)到良好的手語(yǔ)識(shí)別率,并且采用百度語(yǔ)音API能夠?qū)崿F(xiàn)文字、語(yǔ)音的相互轉(zhuǎn)換。利用Unity、Maya、Leap Motion能夠?qū)崿F(xiàn)手語(yǔ)、文字的相互轉(zhuǎn)換。
2 系統(tǒng)分析與設(shè)計(jì)
2.1 需求分析
2.1.1 性能需求
本系統(tǒng)性能需求主要包括以下幾個(gè)方面:
1)兼容性。系統(tǒng)采用基于類(lèi)聊天程序的交流模式,兼容市面上大多數(shù)電腦以及手機(jī)設(shè)備,對(duì)不同系統(tǒng)版本、分辨率、屏幕尺寸進(jìn)行兼容性開(kāi)發(fā),特別針對(duì)市場(chǎng)占有率高的設(shè)備進(jìn)行全面的兼容性測(cè)試。
2)安全性。系統(tǒng)應(yīng)當(dāng)保證用戶(hù)信息和系統(tǒng)數(shù)據(jù)的安全,通過(guò)用戶(hù)登錄和權(quán)限驗(yàn)證,實(shí)現(xiàn)代碼混淆等途徑保證系統(tǒng)的安全性。
3)便攜性。系統(tǒng)采用LeapMotion作為手勢(shì)采集設(shè)備,該設(shè)備重量209,體積相當(dāng)于半個(gè)手掌大小,便攜性突出。
4)可靠性。通過(guò)LeapMotion采集手勢(shì),對(duì)數(shù)據(jù)進(jìn)行向量化,提出一種幾何模板匹配識(shí)別算法,達(dá)到較好的識(shí)別率和可靠性。
2.1.2 功能需求
系統(tǒng)主要是方便聾啞人能和正常人進(jìn)行交流。系統(tǒng)由硬件和軟件平臺(tái)構(gòu)成,硬件主要包括:LeapMotion設(shè)備負(fù)責(zé)提取用戶(hù)輸入手勢(shì)并解析成三維數(shù)據(jù)。軟件平臺(tái)主要包括用戶(hù)交流平臺(tái)和LeapMotion硬件串口數(shù)據(jù)轉(zhuǎn)發(fā)平臺(tái),結(jié)合移動(dòng)互聯(lián)網(wǎng)的優(yōu)勢(shì),實(shí)現(xiàn)用戶(hù)間的交流。系統(tǒng)采用在線(xiàn)聊天交互模式,該模式類(lèi)似于QQ等在線(xiàn)聊天工具,這樣在最大程度上保證了用戶(hù)使用的簡(jiǎn)便程度。平臺(tái)的系統(tǒng)功能模塊如圖1所示,通過(guò)該平臺(tái)實(shí)現(xiàn)聾啞人和正常人交流。
2.2 系統(tǒng)設(shè)計(jì)
系統(tǒng)的整體架構(gòu)由Socket服務(wù)器、用戶(hù)終端(包括PC客戶(hù)端和Android客戶(hù)端)以及數(shù)據(jù)庫(kù)服務(wù)器、LeapMotion控制器4個(gè)部分組成,它們之間通過(guò)網(wǎng)絡(luò)互聯(lián),其整體架構(gòu)如圖2所示。
Socket服務(wù)器通過(guò)網(wǎng)絡(luò)向各個(gè)終端接收和發(fā)送請(qǐng)求,然后進(jìn)行處理并緩沖到數(shù)據(jù)庫(kù)服務(wù)器中,之后當(dāng)用戶(hù)終端通過(guò)網(wǎng)絡(luò)向Socket服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求時(shí),Socket服務(wù)器利用負(fù)載均衡機(jī)制快速向數(shù)據(jù)庫(kù)服務(wù)器集群請(qǐng)求數(shù)據(jù),然后將數(shù)據(jù)返回給用戶(hù),對(duì)于用戶(hù)發(fā)送過(guò)來(lái)的數(shù)據(jù),Socket服務(wù)器會(huì)快速同步到各個(gè)數(shù)據(jù)庫(kù)服務(wù)器。
系統(tǒng)使用Maya制作手勢(shì)模型,然后將模型進(jìn)行骨骼綁定,之后將手勢(shì)模型制作成動(dòng)畫(huà),在Unity引擎中將該動(dòng)畫(huà)與動(dòng)畫(huà)對(duì)應(yīng)的手勢(shì)進(jìn)行一一映射,就能實(shí)現(xiàn)文字轉(zhuǎn)會(huì)成手語(yǔ)的功能。使用Leap motion對(duì)手勢(shì)進(jìn)行捕捉和提取,獲得手上各個(gè)關(guān)節(jié)的具體位置向量信息,將該信息用算法進(jìn)行分析、訓(xùn)練并保存。當(dāng)再次出現(xiàn)該手勢(shì)時(shí),系統(tǒng)通過(guò)提取保存的數(shù)據(jù)并與之對(duì)比,便能快速實(shí)現(xiàn)手語(yǔ)識(shí)別的功能,手語(yǔ)識(shí)別過(guò)程如圖3所示。
3 關(guān)鍵技術(shù)研究
3.1 Leap Motion手勢(shì)特征提取
通過(guò)建立三維空間的右手笛卡爾直角,重建手掌在真實(shí)世界的三維空間運(yùn)動(dòng)信息。坐標(biāo)原點(diǎn)是控制器的中心,坐標(biāo)X軸平行于控制器指向屏幕,坐標(biāo)Y軸垂直指向上方,坐標(biāo)Z軸指向背離屏幕的方向。
根據(jù)Leap Motion捕捉到的目標(biāo)信息,通過(guò)判斷手掌法向量、手掌關(guān)節(jié)相對(duì)位移,計(jì)算手的移動(dòng)方向、速度、位移以及俯仰角、翻滾角等變化情況定義了上移和下移、前移和后移以及左移和右移三種基本手勢(shì)趨勢(shì)。基于Leap Motion API所編寫(xiě)的手勢(shì)判斷處理模塊,該程序在Leap API自帶的Gesture之外,通過(guò)分析四種基本手勢(shì)可組合判斷不同類(lèi)型手勢(shì)。上移動(dòng)即手掌平放后向遠(yuǎn)離設(shè)備的方向移動(dòng),下移即手掌平放后向靠近設(shè)備的方向移動(dòng)。前移和后移前移即手掌平放后指尖抬高高于手腕的運(yùn)動(dòng),后移即手掌平放后手腕抬高高于指尖的運(yùn)動(dòng)。左移和右移左移即手掌平放后左邊抬高高于右邊的運(yùn)動(dòng),右移即手掌平放后右邊抬高高于左邊的運(yùn)動(dòng)。
Leap Motion設(shè)備內(nèi)置的三個(gè)紅外LED燈和兩個(gè)帶廣角鏡頭的高幀率灰度攝像頭示。通過(guò)這種方式可以在極低光照的環(huán)境中采集到圖像信息,而灰度攝像頭可以進(jìn)一步減少運(yùn)算數(shù)據(jù)量,提高算法速度。LeapMotion通過(guò)計(jì)算機(jī)視覺(jué)的算法(一般是三角測(cè)距法)不斷將前方接收的立體圖像作為一個(gè)幀接收并傳人客戶(hù)端程序,一個(gè)幀的對(duì)象提供了綁定數(shù)據(jù)即手勢(shì)和元素的列表,這些數(shù)據(jù)用來(lái)描述設(shè)備視野內(nèi)觀察到整體的動(dòng)作。根據(jù)之前接收的列表,建立三維特征庫(kù)識(shí)別手勢(shì)。手勢(shì)的判別可分為兩部分:一部分與包含位置和方向的靜態(tài)姿勢(shì)有關(guān),另一部分則用來(lái)標(biāo)識(shí)動(dòng)態(tài)手勢(shì)。
3.2 噪聲抑制技術(shù)
手語(yǔ)識(shí)別系統(tǒng)處理的數(shù)據(jù)流是通過(guò)LeapMotion傳感器實(shí)時(shí)返回的動(dòng)作捕捉數(shù)據(jù),包括手部各關(guān)鍵節(jié)點(diǎn)的空間軌跡、運(yùn)動(dòng)速度和指向矢量。這些信息主要用于對(duì)身體數(shù)據(jù)進(jìn)行切割、探測(cè)操作。盡管理論上LeapMotion傳感器的軌跡跟蹤精度達(dá)到亞毫米級(jí),但由于是通過(guò)軟件算法實(shí)現(xiàn)其高精度跟蹤,同時(shí)器件分辨率、熱磁噪聲、人手抖動(dòng)視覺(jué)遮擋及數(shù)值解算的奇異值都可能引入噪聲信號(hào),所以在實(shí)際使用時(shí)仍會(huì)產(chǎn)生識(shí)別不穩(wěn)定的現(xiàn)象。本項(xiàng)目采用自適應(yīng)截止頻率低通濾波方法,通過(guò)檢測(cè)用戶(hù)手掌掌心點(diǎn)速度實(shí)時(shí)改變低通濾波器的截止頻率,LeapMotion空間軌跡的獲取如圖4所示。
3.3 Socket高并發(fā)通信
通信系統(tǒng)基于TCP長(zhǎng)連接實(shí)現(xiàn),由于TCP在數(shù)據(jù)傳遞時(shí),有確認(rèn)、窗口、重傳、擁塞控制機(jī)制,保證了較好的穩(wěn)固性,使數(shù)據(jù)無(wú)差錯(cuò),不丟失,不重復(fù),且按序到達(dá)。在數(shù)據(jù)傳完后,還會(huì)斷開(kāi)連接用來(lái)節(jié)約系統(tǒng)資源。其次,TCP采用了連續(xù)ARQ協(xié)議來(lái)保證數(shù)據(jù)傳輸?shù)恼_性,使用滑動(dòng)窗口協(xié)議來(lái)保證接方能夠及時(shí)處理所接收到的數(shù)據(jù),進(jìn)行流量控制,客戶(hù)端與服務(wù)器通信過(guò)程如圖5所示。TCP使用慢開(kāi)始、擁塞避免、快重傳和快恢復(fù)來(lái)進(jìn)行擁塞控制,以避免網(wǎng)絡(luò)擁塞。
4 系統(tǒng)實(shí)現(xiàn)及結(jié)果分析
手語(yǔ)交流平臺(tái)由硬件平臺(tái)和軟件平臺(tái)構(gòu)成,硬件平臺(tái)包括LeapMotion體感控制器,主要實(shí)現(xiàn)識(shí)別用戶(hù)、手勢(shì)的數(shù)據(jù)提取、計(jì)算分析用戶(hù)身體信息功能;軟件系統(tǒng)采用C#編程語(yǔ)言實(shí)現(xiàn),主要實(shí)現(xiàn)手語(yǔ)雙向翻譯、聾啞人與正常人在線(xiàn)交流、手語(yǔ)教學(xué)等功能。采用可視化簡(jiǎn)潔的圖形界面便于聾啞人以及正常人的使用。
4.1 系統(tǒng)登錄界面
登錄界面有登錄、創(chuàng)建用戶(hù)、創(chuàng)建手勢(shì)庫(kù)和退出四個(gè)功能如圖6所示。
4.2 系統(tǒng)交流窗口
聊天交流可以在正常人(Normal模式)、聾啞人(Deaf模式)兩種身份模式中隨時(shí)切換。
1)Normal(正常人模式)模式
系統(tǒng)默認(rèn)模式,在該模式下左下角的按鈕圖標(biāo)為一個(gè)揚(yáng)聲器標(biāo)志,點(diǎn)擊這個(gè)按鈕,便能連接到百度語(yǔ)音API然后進(jìn)行錄音,將音頻轉(zhuǎn)換為文字至輸入框,將文字發(fā)送后,文字左邊就會(huì)出現(xiàn)耳朵狀圖標(biāo),點(diǎn)擊就能轉(zhuǎn)換為語(yǔ)音播放出來(lái)。圖7為Nor-mal模式下的聊天框。
2)Deaf(聾啞人)模式
Deaf模式是手語(yǔ)交流通信系統(tǒng)中最重要的功能,包括了手語(yǔ)識(shí)別、文字轉(zhuǎn)換手勢(shì)等交流所需核心功能。切換到Deaf模式,點(diǎn)擊左下角的手掌按鈕圖標(biāo)便能進(jìn)行手語(yǔ)識(shí)別,如圖8所示。手語(yǔ)識(shí)別主要是通過(guò)連接的LeapMotion提取手勢(shì),使用圖像識(shí)別算法,識(shí)別出正確的手語(yǔ)。點(diǎn)清空將屏幕上識(shí)別出的字清空,點(diǎn)一鍵發(fā)送將識(shí)別出的字按順序發(fā)送到輸入框,點(diǎn)擊文字能彈出手勢(shì)視圖用來(lái)介紹手語(yǔ)的動(dòng)作展示,可以方便聾啞人檢驗(yàn)是否是需要發(fā)出的正確手勢(shì)含義,如圖9所示。文字以方便正常入學(xué)習(xí)手語(yǔ),還能拖動(dòng)字體來(lái)改變?cè)~語(yǔ)順序,以便對(duì)句子的結(jié)構(gòu)進(jìn)行調(diào)整。軟件左邊界面是能夠查找不同的在線(xiàn)聯(lián)系人,點(diǎn)擊名字便能切換窗口,方便交流。當(dāng)接收到消息的時(shí)候,點(diǎn)擊文字就能夠?qū)⑽淖洲D(zhuǎn)換成手語(yǔ),通過(guò)播放手語(yǔ)聾啞人就可以讀懂消息,如圖10所示。
4.3 系統(tǒng)自制識(shí)別手語(yǔ)
不同地方的聾啞人也會(huì)使用不同的手語(yǔ)就如同各個(gè)地方的方言。因此為了能夠識(shí)別“方言”手語(yǔ),可以創(chuàng)建自定義手勢(shì)識(shí)別庫(kù),創(chuàng)建自定義手語(yǔ)的界面如圖11所示。在輸入框中輸入要保存的手語(yǔ)名稱(chēng),然后點(diǎn)擊后面對(duì)應(yīng)的:“Submit”按鈕就能通過(guò)LeapMotion設(shè)備進(jìn)行手勢(shì)存儲(chǔ),按“R”將手勢(shì)錄入,如果錄入時(shí)手勢(shì)錄入錯(cuò)誤,可以按“E”進(jìn)行手勢(shì)清空,按“S”將錄入的手語(yǔ)保存的。之后在交流過(guò)程中就能識(shí)別“方言”手語(yǔ)。
5 結(jié)束語(yǔ)
本手語(yǔ)交流平臺(tái)通過(guò)對(duì)手勢(shì)識(shí)別算法改進(jìn),并在程序執(zhí)行速度方面進(jìn)行優(yōu)化,同時(shí)對(duì)手勢(shì)特征的提取進(jìn)行了簡(jiǎn)化,實(shí)現(xiàn)了聾啞人與正常人正常交流。下一步將在系統(tǒng)的識(shí)別率、穩(wěn)定性和易用性方面進(jìn)行更深入的研究,同時(shí)在系統(tǒng)的功能方面加以完善,如加入學(xué)習(xí)、音樂(lè)和娛樂(lè)等功能,吸引更多的用戶(hù)使用該平臺(tái),使系統(tǒng)不僅是一個(gè)手語(yǔ)識(shí)別系統(tǒng)而使其成為聾啞人交流、寓教于樂(lè)一體的綜合平臺(tái),同時(shí)加入手語(yǔ)矯正功能,提供手語(yǔ)翻譯員學(xué)習(xí)手語(yǔ)功能,并努力打造其生態(tài)圈。
參考文獻(xiàn):
[1]王繼紅,國(guó)內(nèi)外手語(yǔ)翻譯研究:歷史與現(xiàn)狀[[Jl.上海翻譯,2009 (2):23-28.
[2]張思遠(yuǎn).優(yōu)勢(shì)視角下聾啞人社會(huì)融合研究[D],貴陽(yáng):貴州大學(xué),2015.
[3]王賦攀,吳亞?wèn)|,楊文超,等.一種視覺(jué)信息融合數(shù)據(jù)手套設(shè)計(jì)研究[J].計(jì)算機(jī)研究與發(fā)展,2018,55(12):182-192.
[4]任海兵,祝遠(yuǎn)新,徐光祐,等.基于視覺(jué)手勢(shì)識(shí)別的研究一綜述[Jl.電子學(xué)報(bào),2000,28(2):118-121.
[5]呂蕾,張金玲,朱英杰,等.一種基于數(shù)據(jù)手套的靜態(tài)手勢(shì)識(shí)別方法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2015(12):2410-2418.
【通聯(lián)編輯:朱寶貴】
基金項(xiàng)目:湖南省自然科學(xué)基金省市聯(lián)合基金項(xiàng)目(2019JJ60054);2018年湖南省教育廳普通高校教學(xué)改革研究項(xiàng)目([2018]436號(hào)一441);2018年國(guó)家級(jí)大學(xué)生創(chuàng)新訓(xùn)練項(xiàng)目(201811535011)
作者簡(jiǎn)介:陳建國(guó)(1998-),男,本科在讀;通信作者:鄧曉軍(1974-),男,教授,主要從事大學(xué)生創(chuàng)新創(chuàng)業(yè)教育。