用語(yǔ)言控制Linux:Linux的語(yǔ)音識別軟件
丁大勇
2002/12/19
很久以來(lái),與計算機進(jìn)行交談一直是科幻小說(shuō)慣用的故事情節,直到今天真正的交談也只有在小說(shuō)中才能實(shí)現。但是在過(guò)去的十年中,語(yǔ)音識別軟件的發(fā)展速度非常迅速。目前,市面上出現了多種支持不同操作系統的語(yǔ)音識別控制軟件。也許許多人并沒(méi)有意識到Linux桌面系統也完全可以用聲音來(lái)控制,并且軟件開(kāi)發(fā)人員們已經(jīng)取得了一定的成果。下面我們就對Linux系統下的語(yǔ)音識別軟件進(jìn)行分析概括,以便幫助大家了解其優(yōu)勢和缺陷。
Linux上的語(yǔ)音識別軟件
Linux系統下的語(yǔ)音控制軟件可以為身患殘疾或由于過(guò)度使用計算機而患計算機綜合癥的人提供使用Linux系統的機會(huì )。此前他們不得不改裝其它的操作系統,以獲得語(yǔ)音識別技術(shù)支持。即使不考慮特殊因素,普通人也可以通過(guò)使用語(yǔ)音識別軟件,使操作計算機變得更為簡(jiǎn)單有趣。盡管本文對語(yǔ)音識別系統未來(lái)的發(fā)展趨勢深表憂(yōu)慮(原因是它們并不能完全把手解放出來(lái)),但是它們的確可以分擔一部分手的工作。
目前已經(jīng)有兩種套裝軟件中含有支持Linux系統的語(yǔ)音控制軟件。一種是IBM 開(kāi)發(fā)的支持Linux的ViaVoice,它可以提供一些基本的語(yǔ)音識別功能;另一種是GPL下的Xvoice,它通過(guò)ViaVoice庫來(lái)為桌面系統和應用程序提供語(yǔ)音控制功能。
IBM 的Linux ViaVoice是美語(yǔ)版本,目前只在美國和加拿大銷(xiāo)售。它的售價(jià)大約是40美元,包括送貨費和一副耳機。用戶(hù)也可以從IBM的網(wǎng)站上下載ViaVoice,并可享受一定的價(jià)格優(yōu)惠。新版本的ViaVoice在Mandrake 8.0 PowerPack和ProSuite中也可以找到。目前,Mandrake ViaVoice既可以支持英國英語(yǔ),也可以支持美國英語(yǔ)、法語(yǔ)和德語(yǔ)。Mandrake 8.0以后的版本將不再包含ViaVoice。本文將著(zhù)重介紹IBM ViaVoice的安裝和使用。
應用ViaVoice
Linux ViaVoice需要機器的配置為:Pentium MMX 233以上的CPU、128MB的內存,以及16位的聲卡。實(shí)際上,ViaVoice是專(zhuān)門(mén)為Red Hat 6.2設計開(kāi)發(fā)的,但是用戶(hù)在Red Hat 7.3環(huán)境和其它Linux版本中也可以正常地運行ViaVoice。當然用戶(hù)也有可能在安裝過(guò)程中遇到一些問(wèn)題。
在安裝ViaVoice語(yǔ)音識別軟件前,要首先安裝Java運行環(huán)境。ViaVoice 1.0和1.1版本是在JRE-1.2.2環(huán)境下進(jìn)行測試的。使用正確的版本可以避免在不同JRE環(huán)境下的不兼容。
JRE安裝完畢后,將安裝盤(pán)放入光驅并運行根目錄下的vvsetup,然后再運行vvstartuser將自己設為ViaVoice用戶(hù),并且設置好適當的音量,最后便是反復練習,使軟件適應自己的聲音。切記安裝順序決不能顛倒。
“調教”ViaVoice
與其它語(yǔ)音識別軟件一樣,第一次安裝的ViaVoice并不能對用戶(hù)的聲音識別得十分準確。使用者必須對它進(jìn)行一番“調教”,然后才能使它識別使用者的聲音。
“調教”ViaVoice的一種方法就是按照用戶(hù)手冊中的詞語(yǔ)反復的朗讀。對于大多數用戶(hù)來(lái)說(shuō),這一點(diǎn)并不難,但是手冊中的詞語(yǔ)也許并不是用戶(hù)經(jīng)常用到的,因此這個(gè)方法的效率并不是很高。
比較好的方法是在工作時(shí)利用ViaVoice的Dictation應用軟件。它是用Java語(yǔ)言寫(xiě)成的。當用戶(hù)進(jìn)行口述時(shí),一些詞語(yǔ)也許不能被正確識別,當這種情況發(fā)生時(shí),用戶(hù)可以使用Dictation中的適當工具對其進(jìn)行修改。這樣ViaVoice便可以對識別工具進(jìn)行修正,以便更精確地識別用戶(hù)的聲音。這種方法也許會(huì )花費較多的力氣,但是類(lèi)似的修改可以用語(yǔ)音命令來(lái)完成。不過(guò)請注意隨時(shí)存盤(pán),因為Dictation并不十分穩定。
曾經(jīng)有一位專(zhuān)家說(shuō),目前的語(yǔ)音識別軟件只要經(jīng)過(guò)10到60小時(shí)的“調教”,便可以達到98%的正確率。但是到目前為止,對Linux環(huán)境下的ViaVoice進(jìn)行測試的結果是,它的正確率只有92%到95%,絕大多數的語(yǔ)音命令都可以被正確識別。即使用戶(hù)只花費幾個(gè)小時(shí)進(jìn)行練習,也可以發(fā)現ViaVoice的正確率明顯提高。不過(guò)用戶(hù)在使用時(shí)要特別注意,詞語(yǔ)的發(fā)音、麥克風(fēng)的質(zhì)量和周?chē)h(huán)境都會(huì )影響語(yǔ)音識別的正確率。
XVoice控制Linux桌面
當用戶(hù)完成ViaVoice的安裝并訓練了一段時(shí)間后,便可以安裝Xvoice了。Xvoice的作用是對桌面系統及應用軟件進(jìn)行控制。ViaVoice則沒(méi)有這些功能。用戶(hù)可以到xvoice.sourceforge.net去下載Xvoice軟件,注意一定要事先安裝RPM,因為源程序需要Linux SDK中的ViaVoice中斷運行。
安裝完成后,在最后出現的窗口中輸入xvoice m,注意不要運行Dictation。這時(shí)用戶(hù)可以做一個(gè)簡(jiǎn)單的測試,口述命令“下一窗口”,桌面上應該出現另一個(gè)窗口。
Xvoice允許用戶(hù)事先設定好一些操作的口述命令。一套口述命令被稱(chēng)為一個(gè)語(yǔ)法組。語(yǔ)法組可以與確定的應用程序、窗口或者應用程序中的某一模塊聯(lián)系在一起,也可以由上下文產(chǎn)生。由口述命令調用的操作可以包括敲鍵盤(pán)、鼠標事件、運行外部命令或三者的任意結合。
Xvoice使用ViaVoice語(yǔ)音庫來(lái)識別命令和常規文字。xvoice.xml配置文件可以對命令進(jìn)行定義。Xvoice使用標準的配置文件,其位置是/usr/share/xvoice/xvoice.xml。當然用戶(hù)也可以對其位置進(jìn)行修改,例如可以改為~/.xvoice/xvoice.xml。
Xvoice的窗口可以顯示哪一個(gè)命令語(yǔ)法是被擊活的,并且窗口中還包括一個(gè)面板可以顯示最近口述的命令。如果Xvoice認為用戶(hù)口述的一些詞語(yǔ)與某個(gè)命令十分相似難以識別,那么在面板中顯示的這一命令將是灰色的,以便提醒用戶(hù),并且這條命令不會(huì )被執行。
對于任何應用程序窗口,Xvoice都有4種不同的狀態(tài)。在命令模式下,Xvoice只對命令進(jìn)行識別;在聽(tīng)寫(xiě)模式下,Xvoice不識別特定的應用程序命令,只是顯示出它能識別的詞語(yǔ);在空閑模式下,只有一般命令可以被識別;最后,在命令和聽(tīng)寫(xiě)模式下,口述詞語(yǔ)和命令都可以被識別,這時(shí)用戶(hù)需要在命令的前后稍加停頓,以便與文本相區別。
當用戶(hù)第一次運行某一應用程序時(shí),Xvoice會(huì )自動(dòng)啟動(dòng)命令模式。如果用戶(hù)想同時(shí)打開(kāi)聽(tīng)寫(xiě)模式,只需要說(shuō)“聽(tīng)寫(xiě)模式”便可以了;如果想關(guān)閉聽(tīng)寫(xiě)模式,也只需要說(shuō)“停止聽(tīng)寫(xiě)模式”就萬(wàn)事大吉了。
當然,最好的方法是將Xvoice窗口置于系統的窗口管理器中,這樣你就可以隨時(shí)了解它的工作情況了。如果你想在開(kāi)機時(shí)便自動(dòng)運行Xvoice,只要將xvoice m 放入窗口管理器的啟動(dòng)程序中就行了。
聲控應用程序
下面來(lái)看一看如何為應用程序定義語(yǔ)法。首先,將要定義語(yǔ)法的軟件定義為一個(gè)可讀的名字,然后為程序的窗口命名一個(gè)語(yǔ)句,這樣X(jué)voice便可以識別哪個(gè)語(yǔ)法命令是要激活的。在第一行,可以看到一個(gè)特殊的固定應用程序名,而它并不是窗口標題。這一特殊的應用程序名必須上下文統一。
應用程序的標簽中包含有聽(tīng)寫(xiě)屬性。如果條件為真,則首次運行語(yǔ)句時(shí),Xvoice自動(dòng)進(jìn)入聽(tīng)寫(xiě)模式。語(yǔ)句的第二行包含有一些在<define name='numbers'>區中已經(jīng)定義過(guò)的值。用戶(hù)可以在定義區中自行定義標記,并應用于整個(gè)配置文件中。
語(yǔ)句的第3行舉例說(shuō)明定義區內可以包含的內容,而這里的命令標記只能在本命令范圍內使用。這一行的主要作用是通過(guò)語(yǔ)音命令各自的箭頭鍵將彼此互聯(lián)系起來(lái)。當執行命令時(shí),系統會(huì )將語(yǔ)音命令與相應的鍵盤(pán)命令對應起來(lái)。語(yǔ)音命令的識別轉換過(guò)程從第4行語(yǔ)句開(kāi)始。第4行到第8行都是與鍵盤(pán)操作相關(guān)的語(yǔ)句,與鼠標相關(guān)的語(yǔ)句在第9行到第15行,第16行到第22行是與其它應用程序相關(guān)的命令語(yǔ)句,第23行是結束行。
通過(guò)對個(gè)人配置文件的編輯,用戶(hù)幾乎可以自動(dòng)完成過(guò)去需要鍵盤(pán)和鼠標才能完成的所有操作過(guò)程。許多普通應用軟件的語(yǔ)法組,事先已經(jīng)包含在缺省的配置文件中了,成為用戶(hù)良好的范例。
語(yǔ)音識別的發(fā)展
Xvoice無(wú)法控制一些特殊的應用軟件和一些主流游戲軟件。對于一些諸如GIMP和Netscape軟件來(lái)說(shuō),雖然Xvoice可以對其進(jìn)行控制,但是由于此類(lèi)軟件需要大量的鼠標操作,用戶(hù)會(huì )對用語(yǔ)音控制鼠標感到十分厭煩。
雖然語(yǔ)音識別軟件對于大多數命令和一般的文本都可以正確地識別,但是在某些情況下,即使是一個(gè)微小的錯誤也是不允許。語(yǔ)音軟件的使用者必須使自已的聲音保持穩定。
另外,雖然XVoice 和ViaVoice可以完成大量的工作,但是用戶(hù)卻無(wú)法通過(guò)聲音控制整個(gè)Linux桌面環(huán)境。
IBM公司已經(jīng)發(fā)布了新的ViaVoice,但是只支持Mac 和Windows,未來(lái)是否能支持Linux目前尚不確定。Xvoice的開(kāi)發(fā)人員們正在努力尋找一種能支持開(kāi)放系統的替代產(chǎn)品,而不希望再為Xvoice增加新的功能了。
賽迪網(wǎng) 中國信息化(industry.ccidnet.com)
相關(guān)鏈接:
亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩
巧家县|
崇左市|
青川县|
东台市|
改则县|
乌兰县|
贡觉县|
中宁县|
米易县|
耒阳市|
阿拉善左旗|
柳林县|
岳西县|
林周县|
安徽省|
加查县|
黄山市|
宁陵县|
长武县|
唐海县|
禹城市|
同德县|
逊克县|
新余市|
隆安县|
邻水|
普格县|
琼中|
北川|
德江县|
弥勒县|
龙陵县|
綦江县|
全南县|
台北市|
九龙县|
汤阴县|
洪洞县|
垫江县|
卢氏县|
格尔木市|
http://444
http://444
http://444
http://444
http://444
http://444