陳梅 李振杰
摘 要:濟南智能旅游咨詢員,把電子科技與旅游業相結合,同時運用3D人物虛擬技術,人機智能交互等技術來完成。通過生動的人物形象、肢體語言,以及智能語音系統,讓游客在用文字進行軟件使用的同時,增加了語音識別功能,進行語音輸入及輸出,提高服務質量。文對3D虛擬人物和語音系統的實現技術、方法做了詳細的介紹,用此方法最終完成旅游咨詢員的各方面功能實現,更好的服務于來濟南游玩的游客。
關鍵詞:智能旅游;3D;人機交互;語音識別
人機交互技術,是指通過計算機輸入輸出設備,以有效的方式實現人與計算機對話的技術。本系統中,人機交互技術主要體現在了智能語音識別技術上,語音識別與三維動畫同樣是本項目的智能核心所在。將語音技術運用到計算機,便可以使計算機能夠識別、接收、處理語言,使計算機技術運用起來更方便,更加易于操作。濟南智能旅游咨詢員項目,采用語音技術與軟件相結合,將人聲通過麥克風輸入到計算機,然后進行處理,同時,具有文本播報功能,可以將游客查詢時所得到的文本答案通過語音播報出來。
1.語音識別
語音識別的目的是讓計算機能夠聽懂人的語言,對于識別結果,包含兩種:一是聽懂后能夠轉換成書面文字,二是可以聽到后進行理解,做出正確的動作。
在本項目上的語音功能實現技術上,便是采用微軟的win7及以上操作系統自帶的speech語音識別功能。通過代碼將該功能進行引用,簡單方便。引用成功后,當開啟語音功能識別時,可以調動系統的語音識別功能,人的聲音通過麥克風輸入到計算機,計算機接收后進行識別理解,然后將識別的結果轉換成相應的動作或者命令。
Speech的語音識別有文本識別與命令識別兩種方式,區別如下:
微軟語音識別中的文本識別與命令識別最大的區別是匹配字典不同。
文本識別是用的通用字典內容多,覆蓋的詞匯量較大,字典由sdk提供,適用于沒有預定目標的隨機聽寫之類的應用。因為沒有預定目標,詞匯量大,會導致識別時的精確度降低,識別速度慢。
SpeechVoiceSpeakFlags SpFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync;
SpVoice Voice = new SpVoice();
上述代碼實現后,開啟語音識別,使用者利用麥克風,將人聲輸入到計算機,輸入到計算機后,計算機會進行理解、識別,然后將識別的結果轉化為相應的動作,省去了人工,解放了雙手,使得使用者通過語音便可以達到自己的需求。在此功能的實現上,主要使用了speech.lib和SpShareRecConteatClass兩個接口,在項目中先引用speech.lib命名空間,然后在SpShareRecConteatClass對象中構造一個語法器,各語法器加載到識別器中,然后識別器開始艦艇符合該語法的各個語音,當識別出符合的語法時,調用SpShareRecConteatClass時間處理程序。
同時,為了提高語音識別的準確率,增加了關鍵字查詢,實現智能查詢功能。在一方面的實現上,添加了speech.xml文件,在該文件夾下會有各個功能的xml文件,添加了關鍵詞,減少了在語音識別時的需要匹配的詞匯量,提高了識別速度。
2.語音朗讀查詢
智能旅游咨詢員在人機交互技術的實現上面,除了可以用計算機進行語音識別,讓使用者語音對軟件進行控制操作外,還可以將游客使用時查詢到的答案通過語音播報出來,讓游客不僅可以得到查詢的文字結果,同時可以語音播放這些文字。實現此功能時,需要在設計的引用時添加speech.lib,通過在每個功能頁面編寫相應代碼,就可以使得文本框里查詢到的文字答案通過語音播放出來。
3.智能人物
本系統的3D智能人物,借用下載的人物形象。該虛擬人物利用3DMAX進行保存修改,然后借助Microsoft Expression Blend對模型進行動作設計,再引入到VS環境中。Microsoft Expression Blend是一款功能齊全的專業設計工具,用來針對基于Microsoft Windows 和 Microsoft Silverlight的應用程序制作精美復雜的用戶界面。Microsoft Expression Blend主要有以下功能:
(1)易于使用且新穎的可視界面,帶有可??康拿姘搴兔嫦驅ο蟮纳舷挛牟藛?
(2)全套矢量繪圖工具,包括文本工具和三維(3D)工具;
(3)三維和媒體支持,可增強用戶體驗;
(4)先進、靈活且可重用的自定義和外觀選項,適用于各種常用控件;
(5)實時動畫;
(6)實時的設計和標記視圖;
(7)強大的數據源和外部資源集成點;
(8)從 Expression Encoder ?導入站點的功能;
(9)從 Expression Design導入作品的功能;
(10)可以與 Visual Studio 2012 交互使用,從而幫助設計人員和開發人員更緊密、更有效地進行團隊協作。
首先,我們用3DMAX打開下載的三維動畫模型,將不匹配的部分進行修改,然后保存為obj格式,在導出對話框選擇在下一步需要的顏色、圖片等。保存好后,這時候便需要上述提到的Microsoft Expression Blend,打開后新建WPF應用程序,從項目中添加現有項,然后將通過3DMAX保存的包括人物模型、顏色的.mtl和.obj的兩個文件添加到項目中,此時便將3D模型導入進了WPF中。
在本項目中,要求在某些功能界面需要3D人物對用戶進行一些介紹,因此,要求人物的動作、功能、語音三者之間相互配合,配合默契,才使智能交互表現的更加完美。而且,在進行語音朗讀時,3D人物可以表現出相應的動作,正如一個真實導游為游客介紹。
4.結論
本文介紹了智能旅游咨詢員系統設計與實現的基本實現過程,系統利用了智能語音識別、語言理解、3D動畫人物等技術,基本實現了具有真實感,人性化的3D人物,用戶可以通過語言、文本兩種方式進行問題查詢,得到想要的結果,并通過語音播放,利用3D人物將查詢答案朗讀出來。加強了文本、圖像與聲音的處理,提高了人機交互的能力和操作時的人性化。
項目支持:國家級大學生創新創業訓練計劃項目——智能旅游咨詢員(編號:201713324141)
參考文獻
[1]佩佐德著,蔡學鏞譯.Windows Presentation Foundation程序設計指南[M].電子工業,2008
[2]林大為.3D游戲角色制作[M].華東師范大學出版社,2009
(作者單位:山東協和學院)