李崗 蒙森榮 秦岳洪 張雨松
摘? ?要:為了促進聾啞人與正常人之間的溝通交流,文章研究設計了一個基于Android平臺的手語翻譯APP。本系統(tǒng)采用Web服務器,通過自然語言處理、3D動畫建模、動畫播放處理、Android開發(fā)等技術,實現(xiàn)了一款以Android客戶端與Web服務器相結合的移動應用。本系統(tǒng)首要考慮的是使用的便捷性,不僅能夠作為聾啞人士與正常人溝通交流的渠道,還可以作為一款手語學習APP,使手語能夠廣泛應用到日常生活。
關鍵詞:語音識別;自然語言處理;自然語言轉手語
隨著社會生活質(zhì)量和國家綜合能力的不斷提高,我國越來越重視國民的教育以及交流問題。然而長期以來,聾啞人與正常人之間的交流問題一直是一個薄弱環(huán)節(jié)。聾啞人是我國的弱勢群體之一,據(jù)第6次全國人口普查我國總人口數(shù)、第二次全國殘疾人抽樣調(diào)查我國殘疾人數(shù)占全國總人口數(shù)的比例和各類殘疾人數(shù)占殘疾人總人數(shù)的比例,推算出我國聾啞人總人數(shù)已超過2 600萬人。
在日常生活中,聾啞人以及聾啞人與正常人之間的相互溝通都是通過手語來實現(xiàn)。聾啞人的聽力障礙導致大部分聾啞人受教育程度不高,在大部分普通類學校中,都忽視了手語方面的教育,只有少數(shù)師范類高等院校的特殊教育專業(yè)才會開設手語課。手語教育的匱乏,進一步加劇了正常人和聾啞人之間的交流屏障。聾啞人等殘疾人士因為無法像正常人一樣融入社會,產(chǎn)生的心理問題以及對社會的影響都是難以想象的[1]。
1? ? 現(xiàn)狀分析
隨著社會的不斷發(fā)展,我國也越來越重視國民的教育和國民之間的交流,對聾啞人與正常人之間的交流更加重視。相應的,手語的需求市場不斷擴大,專業(yè)化的手語翻譯教育機構及研究項目也越來越多。諸如現(xiàn)階段已在市場上出現(xiàn)的微軟研究所和中科院聯(lián)合開發(fā)的Kinect手語翻譯系統(tǒng),日本東芝公司發(fā)明的人形交互機器人Aiko Chihira等均可以進行手語的翻譯。本文所開發(fā)設計的手語翻譯APP靈感正是來源于此[2]。
科學影響著我們生活的方方面面,尤其是當今最流行的科技產(chǎn)品—手機,在日常生活中隨處可見。在手機市場中,Android移動應用手機占主要地位,手機網(wǎng)民占總網(wǎng)民的比例高達97.5%。同時,科學也大大促進了教育事業(yè)的發(fā)展,如今,我國的教育事業(yè)已經(jīng)進入了一個發(fā)展的高峰期,但對聾啞人與正常人之間的交流重視程度仍然沒有得到大幅的提升[3]。因此,為推動聾啞人與正常人之間的交流,本文對基于Android平臺設計的一款針對聾啞人與正常人交流的移動APP應用進行闡述。本軟件操作簡單,易于快速學習與交流,系統(tǒng)設計流程如圖1所示。
2? ? 系統(tǒng)設計分析
2.1? 需求與內(nèi)容分析
本應用的設計滿足了大眾的需求,主要有手語翻譯模塊和學習模塊兩大功能模塊。
(1)手語翻譯模塊:實現(xiàn)用戶在客戶端手動輸入文字,客戶端發(fā)送文字數(shù)據(jù)到服務器,服務器再對自然語言進行處理并找到與其語義相對應的手語動畫視頻,找到后服務器發(fā)回視頻數(shù)據(jù)給客戶端的功能。除了文字輸入外,該軟件還可以進行語音輸入,軟件可以自動對輸入的語音進行識別然后將其轉換為文字,此項設計的主要功能在于可以提高用戶的交互體驗[4]。
(2)學習功能模塊:提供了相應的手語圖片、手語資源動畫庫供用戶進行學習。學習模塊由于手機硬件等能力的限制,暫時將手語動畫儲存在服務器端。用戶可以直接在學習板塊中進行手語學習,也可以直接運用搜索欄進行相關手語的搜索,當用戶進行文字輸入時,能及時獲得由服務器端提供的手語動畫,可以方便用戶進行學習或交流。
2.2? 系統(tǒng)架構以及功能
基于Android的手語動畫軟件系統(tǒng)整體架構如圖2所示,包含服務器、安卓客戶端以及數(shù)據(jù)庫。由于Android平臺的開放性,考慮到軟件的兼容以及編譯的可行性,我們對于軟件的設計在Android studio上完成。該平臺對于Android軟件的編譯有著很好的擴展性以及便捷性。本次系統(tǒng)設計采用MVP架構,將視圖邏輯與數(shù)據(jù)邏輯進行隔離,提高Activity的擴展能力[5]。
(1)數(shù)據(jù)庫:存儲系統(tǒng)數(shù)據(jù)的地方,數(shù)據(jù)包含已有的模型和通過模型建立的幾個基本動作以及通過Miku Miku Dance動作捕捉合成的基本語句手語動作動畫。
(2)服務器:用來實現(xiàn)用戶到數(shù)據(jù)庫和數(shù)據(jù)庫到用戶之間的數(shù)據(jù)交流,起到一個橋梁的作用。
(3)安卓客戶端:安卓客戶端通過局域網(wǎng)與服務器終端相連,遵循網(wǎng)絡TCP/IP的各層之間的重要協(xié)議。當用戶發(fā)來數(shù)據(jù)請求時,服務器可以及時響應。系統(tǒng)服務器與數(shù)據(jù)庫的聯(lián)合使用,使服務器成為整個系統(tǒng)的數(shù)據(jù)交互中心,能夠及時作出數(shù)據(jù)的同步處理。
2.3? 關鍵技術
2.3.1? 3D動畫建模
在模型創(chuàng)建方面,采用了3D動畫建模技術,可以實現(xiàn)面部表情以及對動作的優(yōu)化。市場上3D建模軟件有很多,但大多不盡人意。本軟件采用了Miku Miku Dance建模,原因是MMD已有模型眾多,方便采用,而且MMD對于動作的捕捉和優(yōu)化比較便捷。在模型動作方面,kinect和mikumikudance是可以連在一起做捕捉的,但kinect的捕捉效果有些不如人意,大多數(shù)MMD的動作數(shù)據(jù)應該是手工K幀的,缺點是工作量略大。文章利用這個軟件制作了一個參考模型,并建立一些基礎的動作模型,由這些動作模型對動作進行捕捉,合成簡單的日常對話語句。最后,將建立的動作捕捉形成的動畫儲存在服務器端,構成一個手語資源動畫庫[6]。
2.3.2? 自然語言處理
主要是自然語言識別與語義理解。本文解決方法是創(chuàng)建一個自然語言庫和語義上下文詞典。自然語言庫收納了聾啞人日常生活常用詞句,并對文字詞句與動畫視頻進行了一對一的映射。語義上下文詞典中收納的是詞組的同義詞、近義詞以及一些表達特別類似的句子。在客戶端傳輸來的文字,按語言上下文詞典進行過濾,找唯一對應的一個詞句,對語言庫進行查詢,找到與之映射的視頻路徑發(fā)回給客戶端,最后客戶端按該視頻路徑播放該手語動畫視頻。
除在客戶端手動輸入文字外,我們還使用了語音轉文字的方法—客戶端集成科大訊飛語音識別,能夠?qū)⒄Z音準確識別,可以為用戶提供更為方便快捷的文本輸入操作,本系統(tǒng)的文字處理過程如圖3所示。
2.3.3? 動畫播放處理
當客戶端獲得動畫視頻路徑后,使用Android本地的VideoView進行網(wǎng)絡視頻播放。為此,采用了基礎的超文本傳送協(xié)議(HyperText Transfer Protocol,HTTP),在連接局域網(wǎng)的前提之下,從服務器端加載動畫進行播放。
2.4? 實驗運行結果與分析
2.4.1? 運行環(huán)境以及參數(shù)
(1)硬件環(huán)境要求:普通PC端用于安裝手語翻譯應用平臺服務器;Android手機用于安裝手語翻譯APP客戶端。
(2)軟件環(huán)境要求:普通PC安裝Windows操作系統(tǒng),含有結構化查詢語言(Structured Query Language,SQL)數(shù)據(jù)庫、Tomcat Web服務器運行環(huán)境。
(3)網(wǎng)絡環(huán)境要求:支持TCP/IP的網(wǎng)絡環(huán)境,或搭建一個簡單的局域網(wǎng),以便進行客戶端與服務器、數(shù)據(jù)庫之間的數(shù)據(jù)交流。
本實驗中,APP軟件采用的是Android studio編寫,數(shù)據(jù)庫采用SQL Sever數(shù)據(jù)庫,具有很好的可移植性。首先,將服務器文件安裝在實驗的PC機上,需要注意的是,本實驗采用的服務器是建立在Tomcat上的。其次,需要將數(shù)據(jù)庫基礎動畫模型導入服務器所在的PC機本地數(shù)據(jù)庫文件并把數(shù)據(jù)庫文件導入本地SQL Sever數(shù)據(jù)庫中。Android客戶端安裝手語翻譯APP,并通過局域網(wǎng)或者移動數(shù)據(jù)與服務器建立連接。如果處于服務器未打開的狀態(tài),那么客戶端即用戶端將不能檢索到任何數(shù)據(jù),得不到服務器的響應,不會生成手語動畫。
2.4.2? 實驗運行結果
APP首頁面是進行檢索頁面,當用戶點擊搜索框時可以選擇兩種方式輸入文本:(1)通過調(diào)用輸入法,將文字輸入到搜索框。由于Android平臺的開放性,用戶可以任意選擇使用輸入法。(2)語音輸入,語音識別調(diào)用算法后,具有很高的保真性,能夠準確無誤地將語音內(nèi)容翻譯成文本并顯示在輸入框。
用戶點擊搜索后,將信息反饋到服務器端,同時,彈出播放視頻頁面。服務器端根據(jù)客戶端發(fā)來的文字調(diào)用算法檢索數(shù)據(jù)庫。若檢索失敗則會返回提示信息,若檢索到相關動畫,則返回視頻,用戶端就可以通過網(wǎng)絡對視頻進行加載播放。在服務器端,我們提前建立了一些動作模型,根據(jù)動作捕捉合成部分手語語句以供用戶參考。在客戶端學習頁面,包含一些常用手語的解釋內(nèi)容,用戶可以學習掌握。
3? ? 結語
基于Android系統(tǒng)的良好性能和開放環(huán)境的擴展性,課題小組對手語翻譯助手APP進行設計。設計初期難免遇到不同程度的挫折,遇到的Bug也非常困擾開發(fā)人員,但經(jīng)過后期不斷改進測試,本軟件處于安全穩(wěn)定運行狀態(tài),且操作方式也較為簡單。但不可否認,設計的軟件之中仍有許多可以改進的地方[7]。
本文所使用的技術與方法基本都是已有技術的改良與創(chuàng)新,用創(chuàng)新思想開發(fā)本軟件。本類手語翻譯的產(chǎn)品也是推動手語專業(yè)化發(fā)展的媒介,手語翻譯APP除了可以實現(xiàn)并解決聾啞人與正常人的交流問題外,還可以成為聾啞人士建立自信、獲得尊重的助力產(chǎn)品。科學技術的發(fā)展推動手語教育的發(fā)展,有助于實現(xiàn)聾啞人與正常人的零距離交流。
[參考文獻]
[1]彭成,高沛,周曉紅.基于Android平臺的校園助手研究與實現(xiàn)[J].湖南工業(yè)大學學報,2018(5):44-49.
[2]王衛(wèi)民,金力.基于Android的手語動畫自動生成軟件設計[J].電子設計工程,2017(18):42-45,49.
[3]肖曉燕,高昕,趙肖.中國大陸手語傳譯調(diào)查:現(xiàn)狀、問題與前景[J].中國翻譯,2018(6):66-72.
[4]秦澤秀.基于Android平臺的手勢與語音轉換技術[J].電子世界,2019(1):159-160.
[5]蔣燕翔.基于Android平臺的景區(qū)交互式智能導游系統(tǒng)設計[J].電子技術與軟件工程,2019(3):35-36.
[6]王嘉鵬.基于Android的便攜式智能醫(yī)療儀的設計[J].教育教學論壇,2019(4):82-83.
[7]劉英子,方嘉俊,溫昕,等.雙向交流手語翻譯器[J].物聯(lián)網(wǎng)技術,2018(10):7-11.
Abstract:In order to promote communication between deaf-mute and normal people, this paper designs a sign language translation APP based on Android platform. The system uses Web Server, natural language processing, 3D animation modeling, animation playback processing, Android development and other technologies to achieve a mobile application that combines Android client and Web Server. The primary consideration of this system is the convenience of use. It can not only serve as a channel for communication between deaf-mute and normal people, but also as a sign language learning APP, enabling sign language to be widely applied to daily life.
Key words:speech recognition; natural language processing; natural language to sign language