隨著城市建設(shè)步伐的加快,城市公共交通也得到了迅速發(fā)展,公交線路越來越多,極大地方便了市民和外地游客。同時,公交公司也為人們提供了電話查詢公交線路的服務(wù)熱線。目前的服務(wù)熱線是人工查詢和自動查詢2種方式。
在人工查詢時,時間長、效果不好;在自動查詢時,人們根據(jù)語音提示,采用按鍵操作的方式,也要進行較長的時間才能查詢完畢。例如:如果您要查詢"105'路公交車的運行情況,就需要將"1", "0","5"三個數(shù)字通過電話機進行按鍵選擇;如果您要查詢?nèi)ツ骋粋€地方的所有公交車次,那只能通過人工查詢了,因為通過按鍵是不能實現(xiàn)這種查詢服務(wù)的。
伴隨著計算機技術(shù)和數(shù)字電子技術(shù)的重大突破性發(fā)展,語音識別技術(shù)也趨于成熟,尤其是在大詞匯量、非特定的連續(xù)語音識別方面,取得了重大進展,已經(jīng)進入到實用階段[1]。因此,我們提出了采用一種公共語音識別系統(tǒng)對原有的服務(wù)熱線進行改造的方案。
1 公交線路智能查詢系統(tǒng)的特點
該公交線路語音查詢系統(tǒng)包括按鍵查詢(只包含公交線路查詢)和語音查詢(含按公交線路查詢和按城市地點查詢)2部分,其中按鍵查詢主要為了適應(yīng)老客戶,但系統(tǒng)主體是語音查詢,其特點有:
(1)實現(xiàn)了交互問答式查詢,用戶只需按系統(tǒng)的提示作出相應(yīng)的回答,便可得到自己所需的信息。
(2)作為系統(tǒng)本身來說,實現(xiàn)了語音識別的大眾化,任何第一次使用本系統(tǒng)的用戶,不需經(jīng)過語音訓(xùn)練,便可滿意的得到所需信息。
(3)可統(tǒng)計系統(tǒng)每天的話務(wù)量。
2 系統(tǒng)結(jié)構(gòu)與軟件方法
系統(tǒng)[1.2]主要由計算機網(wǎng)絡(luò)、人工座席、語音處理及存儲、系統(tǒng)管理(數(shù)據(jù)庫管理十語音編輯)幾部分組成,如圖1所示。本系統(tǒng)使用了工業(yè)機,性能穩(wěn)定,系統(tǒng)平臺為Windows NT操作系統(tǒng),其作用是利用計算機和數(shù)字語音卡來處理大量繁雜的電話業(yè)務(wù),提供開放式的公交線路智能查詢服務(wù),具有速度快、全天候、高效率等特點。
2.1 系統(tǒng)軟硬件平臺配置和開發(fā)工具選擇(按30線配置)
系統(tǒng)的硬件采用工控機,以實現(xiàn)較高的性能價格比,而且可以通過計算機集群系統(tǒng)大幅度提高整個系統(tǒng)的性能。具體是CPU為P4 2.4G以上,內(nèi)存為1G以上,硬盤為60G以上。
系統(tǒng)的軟件平臺選擇Windows NT。Windows NT具有良好的圖形管理功能,而且提供了可靠的技術(shù)支持和開發(fā)環(huán)境。
語音卡采用D321/641語音卡,該卡在WindowsNT下的開發(fā)非常成熟,可以處理各種不同的需求。
D321/641[3]語音卡具有一下特點:
(1)集30/60路語音處理和El/2e1(PCM)數(shù)字中繼接口于一體,同時支持一號信令(ssl)和數(shù)字一號信令(Dssl)。
(2)功能強大,性價比高,便于用戶構(gòu)建性能穩(wěn)定、多功能的應(yīng)用系統(tǒng)。
(3)采用全DSP結(jié)構(gòu),處理能力強大,可減輕主機負擔(dān),保證高密度、大容量的應(yīng)用系統(tǒng)高效穩(wěn)定地運行。同時,DSP技術(shù)便于軟件升級。
數(shù)據(jù)庫系統(tǒng)采用SQL Server。SQL Server是Windows NT環(huán)境下比較成熟的數(shù)據(jù)庫產(chǎn)品,他具有大型數(shù)據(jù)庫系統(tǒng)的所有特性,而且便于與NT集成管理。
開發(fā)工具選擇Visual C++,Visual Basic等。Visual C++功能強大、控制靈活,可以處理各種程序設(shè)計的需要;Visual Basic編制程序速度快,對程序設(shè)計人員要求不高,因此將兩者結(jié)合起來使用。
|
2.2 軟件設(shè)計
本系統(tǒng)界面由Visual Basic 6.0編程實現(xiàn)。以漢字和圖標明確顯示其功能,操作簡單,一目了然,便于值班人員操作和監(jiān)控。
各功能程序由Visual C++編程實現(xiàn),主要分為:檢測振鈴事件及接受用戶語音實現(xiàn)相應(yīng)的功能調(diào)用;確定進入系統(tǒng)后界面菜單的有效狀態(tài)以及檢測和初始化電話語音卡;登錄數(shù)據(jù)庫服務(wù)器。
2.3 數(shù)據(jù)庫服務(wù)器的設(shè)計
客戶/服務(wù)器結(jié)構(gòu)[4]是基于數(shù)據(jù)庫的應(yīng)用程序廣泛采用的一種結(jié)構(gòu)。他利用了計算機系統(tǒng)硬件和軟件分布的不平衡性,把數(shù)據(jù)服務(wù)集中在服務(wù)器端,而識別客戶端則專門負責(zé)處理應(yīng)用邏輯和界面。這使得程序開發(fā)的復(fù)雜性大大降低,同時識別客戶端和識別服務(wù)器實時通信、協(xié)同工作,減少了時延,保證了較高的識別效率??蛻簦?wù)器結(jié)構(gòu)包括了2個獨立的實
體:識別客戶端和識別服務(wù)器。前者上運行的應(yīng)用程序稱為"前端"或"前臺",后者的稱為"后端"。也就是說,服務(wù)器增加了"后端數(shù)據(jù)庫引擎",電話接入時,識別客戶端接管電話用戶的語音輸入,實時傳送到識別服務(wù)器,并把識別服務(wù)器的識別結(jié)果向電話應(yīng)用平臺層返送,然后進行內(nèi)部運算查找符合條件的數(shù)據(jù),此時客戶機還可以利用這些閑置時間處理其他的工作,等到服務(wù)器處理完畢,就會把所需的數(shù)據(jù)傳遞給前端應(yīng)用程序。
由于客戶/服務(wù)器結(jié)構(gòu)的前端應(yīng)用程序并不直接對數(shù)據(jù)庫進行處理,因此利用ODBC作為一個橋梁幫我們打開前端應(yīng)用程序與后端數(shù)據(jù)庫管理系統(tǒng)的通道,并且由ODBC API提供制式化的控制函數(shù)來維護服務(wù)器的數(shù)據(jù)庫數(shù)據(jù)。
語音合成的處理是通過邊合成邊播放的策略,避免了由于合成長文本帶來的較大的延時。該系統(tǒng)在分段播放語音時,用戶的任何打斷都可以中止該次合成任務(wù),免去了無謂的資源消耗。
3 系統(tǒng)的實現(xiàn)
本系統(tǒng)在啟動時,首先會訪問DataSource.ini文件,從中讀出有關(guān)數(shù)據(jù)庫信息,若數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)改動時,只需改動此文件便可。DataSource.ini文件內(nèi)容如下:
[Source]
namc=flight
[DSN]
name="ODBC ;DSN=flight;UID=flight;PWD=flight'其中:nAME=flight為數(shù)據(jù)源名稱,DSN為數(shù)據(jù)源名稱,UID為用戶ID,PWD為用戶密碼。
圖2為用戶通過語音實現(xiàn)的自動查詢系統(tǒng)流程圖。
|
4 結(jié) 語
本系統(tǒng)是以通信系統(tǒng)為背景,滿足實際需要為目的,采用現(xiàn)有成熟的硬件產(chǎn)品與軟件開發(fā)相結(jié)合的方法設(shè)計的一種使用方便、功能完善的語音查詢系統(tǒng),集成語音識別和語音合成技術(shù),改變舊的使用電話按鍵查詢的使用方式,支持語音輸入,人性化的語音界面使查詢更便捷、更有親和力,為公交系統(tǒng)的熱線服務(wù)提供了可靠的技術(shù)支持。