語音接口已經成為一個改變人機交互方式的全新切入點。這些系統如何工作?打造這樣一款設備在硬件方面有什么要求?隨著語音控制接口變得越來越普及,德州儀器(TI)的一位工程師對此技術進行了深入的了解,并分享了其對這項技術的認識和看法。
語音接口是什么?
語音識別技術自20世紀50年代起開始出現在我們身邊。那時貝爾實驗室的工程師創建了一款可以識別單個數字的系統。然而,語音識別只是完整語音接口技術的一部分。語音接口包含傳統用戶接口的所有方面:它能呈現信息并為用戶提供一種操控方式。在語音接口中,操控或者甚至一些信息的呈現都將通過語音實現。在一些如按鈕或顯示屏等傳統的用戶接口上,也可能配置語音接口這一選項。
大部分人遇到的第一款語音接口設備很有可能是移動電話,或者是個人電腦上非常基礎的將語言轉換成文字的程序。然而,這些設備的運行都非常緩慢、識別不精確且可識別的詞匯有限。
那是什么將語音識別從一種附屬性功能變成了計算機世界炙手可熱的技術呢?首先,如今的計算能力和算法性能都有顯著的提高(如果你對隱馬爾科夫模型有所了解,對此你會有更直觀的認識)。其次,云技術和大數據分析的應用也改進了語音識別效果,并且提高了識別的速度和準確性。
為你的設備添加語音識別功能
一些人常常會對如何為項目添加某種語音接口存在疑問。實際上,TI供應幾種不同的語音接口產品,包括ARM?處理器的Sitara?系列產品和C5000? DSP系列產品,這些產品都具備語音處理的能力。兩種系列的產品各有千秋,分別適用于不同的應用。
在選擇DSP和ARM這兩種解決方案時,考慮的關鍵因素在于這款設備能否或將如何利用云語音平臺。當中有三種應用場景:第一種是離線,所有的處理過程都在本地設備上發生。第二種是在線,通過基于云端的語音處理設備,如亞馬遜的Alexa,谷歌助手或IBM Watson;第三種是兩者混合。
離線:車載語音控制
從目前的發展趨勢來看,人們似乎希望所有事物都能夠連接至互聯網。然而,無論是出于成本考慮或是缺乏可靠的網絡連接,在某些應用中,連接網絡的意義其實不大。在現代的汽車應用中,許多娛樂信息系統就采用了離線語音接口系統。這些語音接口系統通常只能使用有限的命令集,如“撥打電話”、“播放音樂”和“提高或降低音量”。雖然傳統處理器的語音識別算法取得了重大進展,但仍有不盡如人意之處。遇到這樣的情況,例如C55xx等DSP可能夠為系統提供最佳的性能。
在線:智能家庭中樞
關于語音接口的很多熱議主要圍繞于例如Google Home和亞馬遜 Alexa等互聯設備。由于亞馬遜允許第三方進入其已配備Alex語音服務的語音處理生態系統,他們在這方面的發展備受矚目。另外,如Microsoft Azur等其它的云服務也可以提供語音識別服務和類似功能。值得注意的是,這些設備的聲音處理過程全部發生在云端。
是否值得為了這種便捷的集成而向語音服務供應商提供上行數據完全取決于用戶。但是,云服務供應商承擔了主要的工作,設備商需要做的很簡單,實際上,由于接口的語音合成部分也發生在云端,Alexa只要完成最簡單的功能,即播放并記錄錄音文件。既然不需要特別的信號處理功能,ARM處理器足以處理接口工作。這意味著,如果你的設備已配備ARM處理器,你就可能集成云計算語音接口。
事實上,關注Alexa等不能提供的服務也是非常重要的。Alexa不直接執行任何一種設備控制或云集成。驅動Alexa的許多“智能設備”都具備云計算功能,該功能由開發商提供,可以利用Alexa的語音處理能力將驅動輸入至現有的云應用。例如,如果你告訴Alexa需要訂一個披薩,你最喜愛的披薩店則需要為Alexa編制一項“技能”。該項技能是一個可以在你訂披薩時定義工作內容的代碼。當你每次訂披薩時,Alexa都會調用該技能。該技能嵌入了可以為你下單的在線訂購系統。同樣,智能家居設備制造商必須執行Alexa如何與本地設備和在線服務相互作用的技能。亞馬遜自帶許多這樣的技能,加上第三方開發者提供的技能,即便你沒有開發任何技能,Alexa設備仍然可以非常有用。
混合:互聯自動調溫器
有時,即使沒有連接互聯網,我們也有保證設備的某些基礎功能可以正常使用的需求。例如:在連不上網的時候,如果自動調溫器不會自主調節溫度,這就會是一個很麻煩的問題。為避免這種問題的發生 ,一個好的產品設計師會設計一些本地的聲音處理功能,在功能上實現無縫銜接。為了實現此功能,系統必須具有DSP,例如用于本地語音處理的C55XX和用于將已連網的接口連接至云端的ARM處理器。
語音觸發又是什么?
你也許已經注意到了,直到現在我們還沒有提及新一代語音助手真正神奇的地方:那就是始終關注“觸發詞匯”。它們將如何追蹤你在房間內任意位置所發出的聲音,或是當設備播放音頻時,又如何聽到你的聲音?實現這些其實并沒有什么特別神奇的地方,只需要一些智能化軟件。這類軟件獨立于云端的語音接口,也能在系統離線的狀態下運行。
這個系統最易理解的部分就是“喚醒詞匯”。喚醒詞匯是一個簡單的本地語音識別程序,通過持續性采樣,在接收的音頻信號中尋找單個詞匯。由于大多數語音服務均樂意接受不含喚醒詞匯的音頻,因此該詞匯不需要指定任何特殊的語音平臺。因為實現這種功能的要求相對較低,所以通過利用Sphinx或KITT.AI等開源數據庫在ARM處理器上即可完成操作。
為了聽到你在房間內任意位置發出的聲音,語音識別設備采用一個叫波束成型的流程。最重要的是,通過對比不同聲音的到達時間和麥克風間的距離來確定聲音的來源。一旦確認了目標聲音的位置,設備就會采用如空間濾波等音頻處理技術來進一步減少噪音并增強信號質量。波束成型的實現取決于麥克風的布局。真正實現360度識別則需要一個非線性麥克風陣列(通常是圓形)。對于壁掛式設備而言,僅需兩個麥克風就能啟用180度的空間辨別。
語音助手的最后一招是采用自動回波消除(AEC)。AEC在某種程度上類似于噪音消除耳機,但應用恰好相反。該算法是利用已知的音樂等輸出音頻信號來實現的。在噪音消除耳機利用這點來消除外部雜音,AEC消除了輸出信號對輸入信號在麥克風上的影響。該設備能忽略自身產生的音頻,且無論揚聲器播放何種內容,其都仍然能接收。實現AEC需要大量的計算,其中在DSP中效果最佳。
為了實施喚醒識別、波束成型和AEC等以上提及的所有功能,則要求ARM處理器配合DSP共同工作:DSP增強了所有的信號處理功能,而ARM處理器控制設備邏輯和接口。DSP可在執行輸入數據管路方面發揮重要的作用,由此最大限度地減少處理的延遲,從而提供更好的用戶體驗。ARM可以自由運行如Linux等高級操作系統以控制其它設備。這樣高級的功能全部發生在本地,若使用云服務,將只接收包含最終處理結果的單個語音文件。
結論
語音接口似乎已收獲了超高的人氣,并且將在未來很長一段時間內以不同形式出現在我們的生活中。盡管有多種不同的處理方式可以實現語音接口服務,但無論你的應用需要何種裝置,TI都可以為你提供理想的選擇。
審核編輯:郭婷
-
處理器
+關注
關注
68文章
19160瀏覽量
229115 -
dsp
+關注
關注
552文章
7962瀏覽量
348256 -
語音識別
+關注
關注
38文章
1721瀏覽量
112542
發布評論請先 登錄
相關推薦
評論