相關(guān)申請的交叉引用
本申請要求2016年3月22日提交的專利申請?zhí)枮?5/076,682的美國專利的優(yōu)先權(quán),其公開的所有內(nèi)容通過引用結(jié)合到本申請。
本發(fā)明涉及一種應(yīng)用于電子裝置的有向性關(guān)鍵字驗證方法以及使用該方法的電子裝置。
背景技術(shù):
目前,關(guān)鍵字準(zhǔn)確檢測技術(shù)仍有很大的改進空間。從音頻信號中一個或一系列關(guān)鍵字的檢測可用于各種目的,包括存儲、傳輸、語音識別,語者識別等。例如,關(guān)鍵字檢測機制在由人聲遠(yuǎn)程控制的電子裝置的應(yīng)用中是很有用的。在獲得音頻信號后,不僅需要信號處理算法來識別正在說的準(zhǔn)確的字而且還需辨別語法或句子結(jié)構(gòu)。目前,仍然需要更好的算法來提高信號質(zhì)量,以提高關(guān)鍵字檢測的質(zhì)量和準(zhǔn)確性。提高信號質(zhì)量的更好的算法的實現(xiàn)任需要加強關(guān)鍵字檢測的質(zhì)量和準(zhǔn)確性。當(dāng)前,可以通過自動語音識別(asr)引擎來執(zhí)行準(zhǔn)確的字的辨別。
當(dāng)前的關(guān)鍵字檢測方法有很多待解決的難題。例如,現(xiàn)有的asr引擎的結(jié)果仍然不是很準(zhǔn)確,因此需要后續(xù)的識別算法。此外,從麥克風(fēng)判斷期望的方向上使用者的存在并且除去不期望的方向上的其他干擾也是非常重要的。這也意味著,記錄裝置連續(xù)不斷地偵聽期望的方向并且不被其他方向上的噪聲觸發(fā)進入工作。在實時應(yīng)用中,減少計算時間是非常重要的,對于恒定的計算時間,需要良好的緩沖策略。
此外,需要消除例如背景音樂的非人類語音的存在。在捕獲人類語音后,電子裝置所安裝的揚聲器的回放聲音效果可能會將不期望的回音引入關(guān)鍵字驗證系統(tǒng)。因此,也需要消除這些不期望的回音。另外,需要驗證程序來辨別使用者是否在與另一個使用者進行對話或者使用者實際上是在發(fā)出語音命令。
由于上述問題有待解決,可能需要一種新的關(guān)鍵字驗證方法和關(guān)鍵字驗證系統(tǒng)。
技術(shù)實現(xiàn)要素:
因此,本發(fā)明提供一種應(yīng)用于電子裝置的有向性關(guān)鍵字驗證方法以及使用該方法的電子裝置。
根據(jù)本發(fā)明的一個方面,本發(fā)明提供一種應(yīng)用于電子裝置的有向性關(guān)鍵字驗證方法,包括:接收預(yù)定義的角度范圍內(nèi)的第一音頻流并且消除不在所述預(yù)定義的角度范圍內(nèi)的任何方向上的噪聲;分析所述第一音頻流以獲得第一字;確定所述第一字是否匹配關(guān)鍵字?jǐn)?shù)據(jù)庫中的第一關(guān)鍵字;響應(yīng)于所述第一字被確定為不匹配所述關(guān)鍵字?jǐn)?shù)據(jù)庫的所述第一關(guān)鍵字,將所述第一字分配為屬于第一類別;響應(yīng)于確定所述第一字與所述關(guān)鍵字?jǐn)?shù)據(jù)庫的所述第一關(guān)鍵字相匹配,確定所述第一字的元音模式是否與所述第一關(guān)鍵字的元音模式相匹配;響應(yīng)于所述第一字的所述元音模式被確定為與所述第一關(guān)鍵字的所述元音模式相匹配,將所述第一字分配為屬于第二類別;以及響應(yīng)于所述第一字的所述元音模式被確定為不匹配所述第一關(guān)鍵字的所述元音模式,將所述第一字分配為屬于第一類別。
根據(jù)本發(fā)明的另一個方面,本發(fā)明提供一種電子裝置,包括:至少兩個麥克風(fēng);以及處理器,與所述至少兩個麥克風(fēng)直接耦接并且至少被配置為:接收預(yù)定義的角度范圍內(nèi)的第一音頻流并且消除不在所述預(yù)定義的角度范圍內(nèi)的任何方向上的噪聲;分析所述第一音頻流以獲得第一字;確定所述第一字是否匹配關(guān)鍵字?jǐn)?shù)據(jù)庫中的第一關(guān)鍵字;響應(yīng)于所述第一字被確定為不匹配所述關(guān)鍵字?jǐn)?shù)據(jù)庫的所述第一關(guān)鍵字,將所述第一字分配為屬于第一類別;響應(yīng)于確定所述第一字與所述關(guān)鍵字?jǐn)?shù)據(jù)庫的所述第一關(guān)鍵字相匹配,確定所述第一字的元音模式是否與所述第一關(guān)鍵字的元音模式相匹配;響應(yīng)于所述第一字的所述元音模式被確定為與所述第一關(guān)鍵字的所述元音模式相匹配,將所述第一字分配為屬于第二類別;以及響應(yīng)于所述第一字的所述元音模式被確定為不匹配所述第一關(guān)鍵字的所述元音模式,將所述第一字分配為屬于第一類別。
為使本發(fā)明的上述特征和優(yōu)點能更明顯易懂,下文特舉實施例,并配合附圖在下文中作出詳細(xì)說明,應(yīng)當(dāng)理解的是上述一般描述和以下詳細(xì)的描述僅為示例,旨在對所要求保護的本發(fā)明提供進一步的解釋。
應(yīng)當(dāng)理解的是,發(fā)明內(nèi)容中可能不包含本發(fā)明的所有方面和實施例,因此并不意味著以任何方式進行限制或限制。本發(fā)明的公開包括對本領(lǐng)域技術(shù)人員顯而易見的各種改進和修改。
附圖說明
為了更好地理解本發(fā)明,說明書包括附圖并且附圖構(gòu)成說明書的一部分。附圖例舉說明了本發(fā)明的實施例,結(jié)合說明書的描述用來解釋本發(fā)明的原理。
圖1是根據(jù)本發(fā)明一實施例的有向性關(guān)鍵字驗證方法的流程圖;
圖2是示出根據(jù)本發(fā)明一實施例的關(guān)鍵字驗證系統(tǒng)的功能框圖;
圖3示出根據(jù)本發(fā)明一實施例的回音消除技術(shù)的示意圖;
圖4是示出使用自動增益控制(agc)以提高音頻的空間到達(dá)方向上的閾值準(zhǔn)確性的示意圖;
圖5是示出根據(jù)本發(fā)明一實施例的限定一具有接受角和捕獲距離的圓錐體的概念圖;
圖6是示出根據(jù)本發(fā)明一實施例的基于期望的或不期望的源的濾波的概念圖;
圖7示出使用波束成形濾除不期望的使用者方向的結(jié)果的示意圖;
圖8是示出根據(jù)本發(fā)明一實施例的關(guān)鍵字驗證程序的示意圖;
圖9示出根據(jù)本發(fā)明一實施例的使用譜峰能量進行vop檢測的算法的示意圖;
圖10是示出使用話語的譜峰能量進行vop檢測的各種結(jié)果的示意圖;
圖11示出根據(jù)本發(fā)明一實施例的關(guān)鍵字檢測方法的示意圖。
具體實施方式
將詳細(xì)參考本發(fā)明例舉的實施例,該些例舉的實施例在附圖中示出。附圖和說明書中盡可能使用相同的標(biāo)號來指代相同/相似的部分或部件。
音頻信號中的關(guān)鍵字檢測廣為人知地應(yīng)用于使用音頻命令的控制程序。大多數(shù)應(yīng)用使用語音識別并設(shè)計基于特定有限字詞的搜索域。本發(fā)明是關(guān)于由兩個或更多個麥克風(fēng)捕獲的音頻信號中的關(guān)鍵字檢測。本發(fā)明所提出的方法是有方向選擇性的。捕獲的音頻信號可用在語音識別、語者識別、語音激活控制等領(lǐng)域。使用自動語音識別(asr)引擎來識別由多個麥克風(fēng)捕獲的音頻信號。然而,asr引擎的識別結(jié)果可能不完全準(zhǔn)確,因此提出了基于元音類型和元音時間戳的后續(xù)驗證。此外,必須具有一個機制,其能夠區(qū)分對機器發(fā)出的語音命令和人與人之間普通對話。因此,asr引擎所識別的字還需要后續(xù)通過辨別特定的語言模式(例如特定句法或人工語法)進行額外的驗證。
由多個麥克風(fēng)捕獲的音頻信號將通過算法進行數(shù)字化處理以提高信號質(zhì)量,因為需要該算法來提高關(guān)鍵字檢測的質(zhì)量和準(zhǔn)確性。并且,從麥克風(fēng)判斷期望的方向上使用者的存在以便除去不期望的方向上的其他干擾也可能是非常重要的。這意味著記錄裝置會連續(xù)不斷地記錄期望的方向上的音頻信號而不會由指定方向之外的(其他方向上的)音頻信號觸發(fā)任何活動。此外,在實時應(yīng)用中,減少計算時間是也可能非常重要,并且對于恒定的計算時間而言,需要好的緩沖策略??紤]到這些重要的條件,本發(fā)明提出一種基于在指定方向上檢測到的關(guān)鍵字或短語來檢測期望的方向上一個或多個使用者的存在的方法和裝置。本發(fā)明提出的方法和裝置會先檢測這些關(guān)鍵字并且隨后通過使用語音中的元音發(fā)生位置來進行驗證。
此外,本發(fā)明旨在使用波束成形來解決消除背景噪聲相關(guān)的問題,并且還使用了語音活動檢測(vad)技術(shù)。還可以使用一般的自動語音識別(asr)引擎來連續(xù)地搜索具有預(yù)定義的語法的音頻模式。該語法可以是自定義的以提高未錄入詞庫的字的拒絕率。asr引擎獲得的字的共振峰分析可包括基于共振峰的元音發(fā)生點檢測和元音識別。
可通過使用回音消除機制來除去裝置上揚聲器的回放聲音效果。然后,經(jīng)處理的信號被傳送到自動增益控制(agc)模塊以使增益固定在預(yù)定義的水平。agc的使用將通過穩(wěn)定增益來改善其余技術(shù)塊中的決策閾值。通過使用多個麥克風(fēng),波束成形可用于掩蔽(mask)不期望的有向性噪聲,從而形成單信道音頻流,該單信道音頻流選擇性地經(jīng)過背景噪聲消除模塊??赏ㄟ^軟件動態(tài)調(diào)整波束成形的期望的方向和不期望的方向。通過這種方式,可以為每個話語定義新的期望的方向或者不期望的方向。
在上述信號處理之后,可以檢測所記錄的音頻中人聲的存在(話音活動檢測-vad)。利用這種機制,隨機噪聲可以與人聲區(qū)分開。然后,檢測到的人聲經(jīng)過語音識別模塊,該語音識別模塊優(yōu)化為檢測音頻中的有限/特定語法模式。檢測到的模式可包括需要認(rèn)出給定發(fā)音的關(guān)鍵字與其他類似短語。自定義的語法還可以幫助關(guān)鍵字驗證系統(tǒng)定位話語中的關(guān)鍵字/短語的大致時間戳位置以及其語音結(jié)束。
基于特定音位的位置進一步驗證所認(rèn)出的關(guān)鍵字。共振峰分析被用于定位元音發(fā)生點以及元音的共振峰頻率。然后,根據(jù)asr引擎的結(jié)果來驗證共振峰分析的結(jié)果。基于元音部分的位置和檢測,關(guān)鍵字可被正確地驗證。
本發(fā)明的目的包括檢測言語中的關(guān)鍵字并且通過音頻增強、定向音頻的選擇以及話語驗證(utteranceverification)來增強關(guān)鍵字檢測。因此,在本發(fā)明中,當(dāng)多個麥克風(fēng)被用于捕獲聲音時,可為音頻信號指定接受的角度。這與使用單個麥克風(fēng)來捕獲聲音(其中捕獲區(qū)域是全向性的)是相反的。因此,如圖5所示,可以指定與麥克風(fēng)的距離(捕獲距離)以形成捕獲圓錐體,從而聲音的捕獲方向和距離被指定。如果音頻源在這個圓錐體之外,則可以忽略該音頻。因此,預(yù)期的使用者需要在用于接受而使其聲音被捕獲的這個圓錐體內(nèi)。可通過找到聲音達(dá)到的方向來確認(rèn)接受的角度??筛鶕?jù)信號強度和角度測量模塊中的置信度來測量捕獲距離。可通過使用背景噪聲消除技術(shù)進一步選擇性地增強所捕獲的音頻。然后,該音頻經(jīng)過語音活動檢測(vad)和語音識別模塊。一旦使用共振峰分析和來自語音識別引擎的音位時間戳信息對關(guān)鍵字或短語進行了驗證,則該關(guān)鍵字或短語被視為已經(jīng)檢測到。
圖1是示出根據(jù)本發(fā)明一實施例的有向性關(guān)鍵字驗證方法的流程圖。在步驟s101中,電子裝置接收音頻流,音頻流由兩個或多個麥克風(fēng)或者從其他外部源從期望的空間方向接收。在步驟s102中,電子裝置將音頻流輸入至asr引擎以識別一個或多個字。自動語音識別技術(shù)是本領(lǐng)域中普通技術(shù)人員目前已知的技術(shù)。在步驟s103中,電子裝置確定由asr引擎識別的至少一個字(例如,第一字)是否與關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字匹配。關(guān)鍵字?jǐn)?shù)據(jù)庫可以是,各種關(guān)鍵字的數(shù)據(jù)庫,例如,其包括用于控制電子裝置的各種關(guān)鍵字命令、用于觸發(fā)電子裝置聽取命令的一個或多個觸發(fā)字、例如用戶標(biāo)識和密碼的安全信息以及其他語法或連接短語。在步驟中s104中,如果電子裝置已經(jīng)確定由asr引擎檢測到的第一字不是關(guān)鍵字?jǐn)?shù)據(jù)庫中的任何一個字,則第一字會被歸為第一類別(例如,填充字或非觸發(fā)字),該第一類別包括對關(guān)鍵字驗證系統(tǒng)圖像最小的這些字。在步驟s103中,如果電子裝置已經(jīng)確定由asr引擎檢測到的第一字實際上是關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字,則執(zhí)行步驟s105。在步驟s105中,電子裝置確定第一字的元音模式是否匹配關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字(例如,第一關(guān)鍵字)的元音模式。如果匹配,在步驟s106中,第一字則被歸為第二類別,該第二類別包括包含如上文所述的各種關(guān)鍵字命令的字;否則,如果第一字的元音模式不匹配第一關(guān)鍵字的元音模式的話,第一字被歸為第一類別(例如,填充字)。
在一個例舉的實施例中,步驟s103可包括:根據(jù)第一字的元音序列是否完全匹配第一關(guān)鍵字的元音序列來確定第一字的元音模式是否匹配第一關(guān)鍵字的元音模式;并且第一字的元音序列中的元音時間戳落在基于第一關(guān)鍵字的元音序列中相應(yīng)的元音所確定的預(yù)期范圍內(nèi)。
在一個例舉的實施例中,第一類別是填充字;而第二類別是觸發(fā)字或命令字。
在一個例舉的實施例中,步驟s106包括確定第一字是否為觸發(fā)字并且只有當(dāng)?shù)谝蛔直淮_定為是觸發(fā)字時,接著確定第二字是否為關(guān)鍵字?jǐn)?shù)據(jù)庫中的命令字。
在一個例舉的實施例中,電子裝置可接收第二音頻流。在電子裝置接收第二音頻流后,電子裝置執(zhí)行語音活動檢測(vad)程序以確定第二音頻流是否為人類語音。如果第二音頻流不是人類語音,則忽略第二音頻流。
在一個例舉的實施例中,步驟s101可包括:通過使用至少兩個麥克風(fēng)來捕獲第一音頻流;對第一音頻流應(yīng)用回音消除程序;并且對第一音頻流應(yīng)用自動增益控制(agc)以產(chǎn)生在一預(yù)定功率位準(zhǔn)范圍內(nèi)的增益調(diào)整的第一音頻流。
在一個例舉的實施例中,步驟s101還可包括:計算增益調(diào)整的第一音頻流的線性預(yù)測編碼(lpc)殘余;基于到達(dá)時差(tdoa)從lpc殘余中確定第一音頻流相對于至少兩個麥克風(fēng)的方向;以及時頻掩蔽預(yù)定義的角度之外的其他任何方向上任何聲音。
在一個例舉的實施例中,掩蔽其他任何方向上任何聲源的步驟可包括:濾除預(yù)定義的角度之外的任何聲音;以及濾除超過最大距離的任何聲音。
在一個例舉的實施例中,在步驟s102中,即確定第一字是否匹配關(guān)鍵字?jǐn)?shù)據(jù)庫中的第一關(guān)鍵字可包括:將第一音頻流劃分成音位;執(zhí)行音位的共振峰分析以檢測共振峰以及元音的時間戳;以及基于共振峰以及元音的時間戳驗證第一字。
在一個例舉的實施例中,在步驟s102中,即分析第一音頻流以獲得第一字可包括:分析第一音頻以從第一角度檢測第一字;以及分析第一音頻以從第二角度檢測不同的字,從而可以從不同的方向分析和驗證不同的字。
圖2是示出根據(jù)本發(fā)明一實施例的關(guān)鍵字驗證系統(tǒng)的功能框圖。關(guān)鍵字驗證系統(tǒng)可被用于執(zhí)行圖1中所描述的步驟以及所有例舉的實施例。關(guān)鍵字驗證系統(tǒng)可包括但不限于捕獲模塊201、回音消除模塊202、自動增益控制(agc)陣列模塊203、背景噪聲消除模塊204、波束成形模塊205、語音活動檢測(vad)模塊206、共振峰分析模塊207、asr模塊208以及關(guān)鍵字驗證模塊209。每一個模塊或模塊的組合可通過硬件集成電路(ic)、或通過由處理電路執(zhí)行的軟件/固件、或者通過硬件或軟件的結(jié)合實現(xiàn)。處理電路可包括一個或多個中央處理單元(cpu)(例如,處理器)或其他類型的控制器和可編程設(shè)備。
捕獲模塊201可包括至少兩個麥克風(fēng)(將聲波轉(zhuǎn)換成模擬電子信號的變換器)。捕獲模塊201還可具有將模擬電子信號轉(zhuǎn)換成數(shù)字信號的模數(shù)轉(zhuǎn)換器。捕獲的音頻信號被送入回音消除模塊202。
回音消除模塊202從捕獲模塊201接收音頻信號并執(zhí)行回音消除以增強由捕獲模塊201捕獲的信號并且除去由麥克風(fēng)捕獲的且隨后被記錄的回放音頻。圖3中進一步說明了回音消除模塊202的實現(xiàn)。
agc陣列模塊203從回音消除模塊202接收信號并且提高或降低從回音消除模塊202所接收的信號的音頻音量以符合后續(xù)模塊進行其他處理所需的音頻電平。換句話說,agc陣列模塊被用于穩(wěn)定從回音消除模塊202所接收的信號的增益。以這種方式,agc的使用使得關(guān)鍵字驗證系統(tǒng)具有良好的遠(yuǎn)場捕獲的能力并且由于agc可被配置為不增強噪聲信號,agc的使用使得關(guān)鍵字驗證系統(tǒng)能夠提高輸入語音的信噪比。上限閾值和下限閾值可施加于捕獲的音頻信號,從而經(jīng)agc調(diào)整的音頻信號會在特定的范圍內(nèi)。舉例來說,當(dāng)捕獲的音頻信號是低于下限閾值,該音頻信號會被認(rèn)為是背景噪聲而被忽略。輸入的音頻信號可以經(jīng)agc調(diào)整以集中在特定電平。舉例來說,經(jīng)調(diào)整的音頻信號可集中在agc整個動態(tài)范圍的1/4處。由于經(jīng)調(diào)整的音頻信號集中在agc動態(tài)范圍的較低電平處,這樣可以減少轉(zhuǎn)換時間。
可選地,關(guān)鍵字驗證系統(tǒng)可包括背景噪聲消除模塊204,其被配置為檢測背景噪聲并且隨后除去背景噪聲。舉例來說,背景噪聲消除模塊204可檢測由風(fēng)扇產(chǎn)生的噪聲的頻率,然后使用數(shù)字濾波器除去這些噪聲。背景噪聲消除模塊204還被配置為可除去白噪聲以提高音頻信號的信噪比。
波束成形模塊205可從背景噪聲消除模塊204的輸出接收經(jīng)處理的音頻信號并執(zhí)行波束成形操作。波束成形是指線性麥克風(fēng)-陣列處理,其中由麥克風(fēng)的空間差異導(dǎo)致的信號之間的時差可被用于處理、增強或過濾音頻信號。波束成形主要假設(shè)傳感器之間的幾何結(jié)構(gòu)以及傳感器的定向是已知的以定位聲源。這些技術(shù)是用于空間過濾以跟蹤朝向聲源的波束而忽略(nullout)其他方向的方法。當(dāng)使用多個麥克風(fēng)時,波束成形模塊205將被使用,基于時頻掩蔽不期望的方向上的聲源。根據(jù)達(dá)到麥克風(fēng)的聲波之間的時延來測量期望的方向和不期望的方向。期望的捕獲聲音的方向通常垂直于麥克風(fēng)的平面。進一步的細(xì)節(jié)請參考圖5和圖6。
vad模塊206從波束成形模塊205接收經(jīng)處理的音頻信號。如果該音頻信號低于一特定閾值,則vad模塊206將忽略該音頻信號。此外,vad模塊206只接受是人類語音的音頻信號。只有當(dāng)相關(guān)的音頻信號是用于諸如語音識別、語音識別等應(yīng)用的人類語音時,才使用vad模塊。本領(lǐng)域技術(shù)人員知曉vad模塊的具體實現(xiàn)。
響應(yīng)于由vad模塊206進行的處理,經(jīng)處理的音頻信號通過使用預(yù)先設(shè)計的語法經(jīng)過asr(自動語音識別)引擎208以提高關(guān)鍵字檢測的準(zhǔn)確性。語音命令系統(tǒng)的語法預(yù)期能夠?qū)崿F(xiàn)觸發(fā)命令識別的高度準(zhǔn)確性、所設(shè)計的命令的高識別率、以及非命令語音的高拒絕率。共振峰分析模塊207接收vad模塊206的輸出并對經(jīng)處理的音頻信號執(zhí)行共振峰分析。關(guān)鍵字驗證模塊209接收元音模式以及每一個音位的元音的時間戳信息,隨后驗證由asr引擎208識別的字是否為關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字中的一個。
圖3~圖10以及相應(yīng)的文字描述將進一步詳細(xì)地說明本發(fā)明。圖3示出回音消除模塊202執(zhí)行的處理的示意圖。由于雙重會話(dualtalk)的檢測和消除涉及從機器聲音(回放聲音)和使用者語音的混合音中形成快速準(zhǔn)確的使用者語音的近似,這種回音消除模塊的使用有助于(例如在機器人系統(tǒng)中)使用經(jīng)清除的使用者語音進行識別和識別的各種應(yīng)用。經(jīng)清除的語音可包括:使用者命令、使用者識別或命令識別等等。這種想法是將時域上基于信號snr的雙重會話檢測與頻域回音消除器所獲得的低失真下時域上魯棒的消除相結(jié)合。首先,估計回放聲音和記錄的信號之間的延遲。然后,該延遲信息被送入時域和頻域回音消除器。時域雙重會話檢測器檢測雙重會話(回放聲音和麥克風(fēng)信號的存在)并且提供參考點以觸發(fā)濾波適應(yīng)(filteradaptation)。
請參考圖3,假定麥克風(fēng)301和揚聲器302位于可產(chǎn)生回音的空間圍成的同一系統(tǒng)中。由麥克風(fēng)接收的音頻信號可由y(m)=x(m)+yf(m)表示,其中y(m)是由麥克風(fēng)接收的音頻信號,x(m)是使用者聲音,而yf(m)是揚聲器的聲音。yf(m)是待除去的聲音。y(m)減去聲反饋合成器305(從自適應(yīng)算法304接收參數(shù))所產(chǎn)生的
圖4是示出使用自動增益控制(agc)以提高音頻的空間到達(dá)方向上的閾值準(zhǔn)確性的示意圖。第一示圖401是由捕獲模塊201捕獲并由回音消除模塊202處理的經(jīng)處理的音頻信號的示例。agc陣列模塊采用由增益增量曲線402表征的增益以在特定功率范圍內(nèi)修改經(jīng)處理的音頻信號。agc(自動增益控制)被用于穩(wěn)定輸出音頻的增益并使系統(tǒng)具有更好的遠(yuǎn)場捕獲能力。第二示圖403示出在已經(jīng)應(yīng)用增益之后的結(jié)果。從圖4中可見,可穩(wěn)定地提升或降低增益以獲得目標(biāo)增益(音量)水平??梢钥吹?,經(jīng)處理的音頻具有由關(guān)鍵字驗證系統(tǒng)預(yù)定義的穩(wěn)定的增益水平。通過應(yīng)用agc,當(dāng)使用者進一步遠(yuǎn)離麥克風(fēng)時,音量可以被提高到預(yù)定義的水平。另外,agc具有內(nèi)置的噪聲消除功能以供選擇性使用。
圖5是示出根據(jù)本發(fā)明一實施例的限定一具有接受角和捕獲距離的圓錐體的概念圖。捕獲圓錐體可以是捕獲特定空間內(nèi)的音頻信號的三維圓錐體。然而,為了方便說明,假定捕獲圓錐體是兩維的。圖5例舉的捕獲圓錐體具有最大距離(標(biāo)示為x=l)處的接受角φd1以及距離x=0處的接受角φd2。距離l是最大距離,超過最大距離的音頻信號將被音頻捕獲系統(tǒng)忽略。最大距離可以是,舉例來說,1米。距離x=0可以被定義為正好在兩個麥克風(fēng)處或者在被移位一定距離的位置處。接受角的角度φd1和φd2可以是,舉例來說,大約為30度。角度φd1=0或φd2=0可以被定義為與兩個揚聲器501a、501b完全對準(zhǔn)。在接受角φd1和φd2的范圍內(nèi)的音頻信號被認(rèn)為是有效的輸入音頻信號,并且接受角φd1和φd2之外的音頻信號將被掩蔽或濾除。
捕獲距離x可以基于信號強度和角度測量的置信度來測量。當(dāng)源進一步更加遠(yuǎn)離麥克風(fēng)501a和501b移動時,信號強度和角度測量置信度將降低。當(dāng)捕獲距離x超過l時,可以丟棄音頻源??梢曰趖doa原理測量源的角度。例如,如果源位于與麥克風(fēng)501a和501b兩者相等距離的位置處,則由麥克風(fēng)501a和501b兩者幾乎沒有延遲地接收該源。如果源朝向麥克風(fēng)中的一個(例如501a或501b)移位但是遠(yuǎn)離另一個麥克風(fēng),麥克風(fēng)501a或501b中的一個將比另一個更快地接收音頻信號?;谝纛l信號的延遲差異,可以計算源的方向,使得波束成形模塊205可以知道源是否在接受角φd1和φd2的范圍內(nèi)。
圖6是示出根據(jù)本發(fā)明例舉實施例的基于期望或不期望的源的濾波的概念圖。對于圖6的示例性場景,假定包括至少三個源,即第一源601、第二源602和第三源603。然而,對于本領(lǐng)域技術(shù)人員來說,顯然,可以使用兩個以上的麥克風(fēng)來捕獲語音信號。第一源601和第三源603均可包括人聲和非人聲源,諸如混合人類語音的揚聲器播放音樂,而第二源602被假定為期望的人類語音。自然地,麥克風(fēng)604a、604b將捕獲所有三個源
圖7示出了使用波束成形以濾處不期望的使用者方向的結(jié)果的示意圖。圖7的前兩個示圖701是呈現(xiàn)于時域中隨時間變化的音頻信號,并且示出在不使用波束成形的情況下,經(jīng)處理的音頻信號的左聲道和右聲道。圖7的第三示圖702示出了使用波束成形來消除在接受角之外的音頻噪聲。
圖8是示出根據(jù)本發(fā)明例舉實施例的關(guān)鍵字驗證程序的示意圖。圖8示出了機器語法結(jié)構(gòu)的示例。人工機器語法包括不同的命令、開始接受命令的觸發(fā)字、填充和循環(huán)返回。觸發(fā)字和命令可以包含在關(guān)鍵字庫中。每個命令和填充可以被賦予對于每個命令和填充而言不同的權(quán)重,并且是可調(diào)節(jié)的。基于經(jīng)驗調(diào)整這些權(quán)重可以獲得更好的執(zhí)行。觸發(fā)字可以是任何預(yù)定義的字,以用作電子設(shè)備開始接受命令所需的特殊命令。以這種方式,電子設(shè)備將不接受任何命令,直到已檢測到觸發(fā)字,使得電子設(shè)備避免受到不用來控制電子設(shè)備的普通人類對話的影響。
關(guān)鍵字庫可以進一步包括具有(分配給每個填充字的)特定權(quán)重的填充字集合,以便增強關(guān)鍵字驗證模塊209的識別準(zhǔn)確性。為了處理未錄入詞庫的語音,除命令之外,可以將填充字集合集成到語法中以接受命令語句之外的語音。填充可被認(rèn)為是表示用于組成詞組或句子的字的音位組合。此外,為了檢測未錄入詞庫的整個語音,可將循環(huán)(loops)添加到語法,使得填充可以被動態(tài)地組合以形成所識別的文本。
當(dāng)接收到音頻信號時,一系列所識別的字將被語法中的語言接受。如圖8所示,在asr引擎識別出字之后,關(guān)鍵字驗證模塊209將該字歸為第一類別804或第二類別805。第一類別804至少包含作為填充的字,第二類別805至少包含作為觸發(fā)字和命令的字。因此,例如,如圖8所示,關(guān)鍵字驗證模塊209執(zhí)行步驟s801或者步驟s802以將所識別的字歸類為第一類別803或第二類別804。在步驟s803中,可以使用循環(huán)以提供生成與語法不同的序列的能力。最后,產(chǎn)生填充和命令的組合以形成識別的文本(可隨后被用于檢測關(guān)鍵字/短語)。
圖9示出了根據(jù)本發(fā)明例舉實施例的通過使用譜峰能量以檢測元音發(fā)生位置的元音發(fā)生點(vop)檢測的算法的示意圖。由共振峰分析模塊207使用圖9的算法。圖10示出使用話語的譜峰能量進行vop檢測的結(jié)果的各種示意圖。通常,共振峰分析包括共振峰和元音發(fā)生點的檢測。通過使用元音發(fā)生點確切的時間位置,可以形成類似的群組。參考圖9和圖10。在步驟s901中,共振峰分析模塊207可以接收經(jīng)處理和數(shù)字化的輸入語音信號,并且在步驟s902中,首先使用傅里葉變換(例如離散傅里葉變換)來變換輸入語音信號。圖10的第一示圖1001中示出這種變換的示例。
在步驟s903中,在定位譜峰(例如,10個最大峰)之后,將譜峰總合。圖10的第二示圖1002示出第一示圖1001的n個最大峰的總合。在步驟s904中,然后,通過使用歸一化,將每個峰值縮放到特定幅度,來增強譜峰總合的結(jié)果。圖10的第三示圖1003示出了增強的n個最大峰的總合。在步驟s905中,將步驟s904的輸出與一階高斯微分器(fogd)卷積,以生成步驟s906的vop示圖。圖10的第四示圖1004示出了步驟s906的vop示圖的結(jié)果。從圖10中可以看出,處理步驟從譜峰開始,進行峰值增強以及執(zhí)行fogd后形成最終的vop示圖。從vop示圖中,可以定位元音發(fā)生位置。通過進一步使用共振峰信息,通過將具有相似共振峰頻率的元音歸在同一類,可以將元音歸在類似的群組。
圖11示出了根據(jù)本發(fā)明例舉實施例的關(guān)鍵字檢測方法的的示意圖。通過使用共振峰分析模塊207執(zhí)行的共振峰分析所獲得的信息和來自語音識別引擎208的音位時間戳信息,可以驗證關(guān)鍵字是否已被asr引擎正確地認(rèn)出。關(guān)鍵字驗證模塊209旨在減少關(guān)鍵字驗證系統(tǒng)對關(guān)鍵字或短語誤檢測的次數(shù)。關(guān)鍵字驗證模塊209的操作原理可以通過以下示例進一步闡述。
從共振峰分析模塊207執(zhí)行的共振峰分析中可以定位元音發(fā)生位置(即,時間戳)和元音類別。元音類別是基于按國際音標(biāo)表的元音集設(shè)置的。但是為了便于說明,元音類別可以是例如“a”、“e”、“i”、“o”和“u”。通過獲得的元音發(fā)生位置和元音類別,關(guān)鍵字驗證模塊209可以驗證由asr引擎208檢測到的字是否匹配關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字?;谝粋€條件或兩個條件或兩者的結(jié)合確定驗證。第一個條件是字的元音序列是否匹配與關(guān)鍵字?jǐn)?shù)據(jù)庫的關(guān)鍵字的元音序列。第二個條件是每個元音的時間戳是否出現(xiàn)在預(yù)期的時間范圍內(nèi)。
假設(shè)(使用者)說了字“davinci”并且由asr引擎208檢測到,而“davinci”是關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字,第一個條件用來確定由共振峰分析模塊207檢測到的“davinci”的元音序列是否與關(guān)鍵字?jǐn)?shù)據(jù)庫中的字“davinci”的元音序列匹配。對于字“davinci”,正確的元音序列需是“a”、“i”和“i”,因此,如果由共振峰分析模塊207檢測到了除所需的元音序列之外的任何其它元音序列,則由asr引擎檢測到的字將不會被認(rèn)為是“davinci”。因此由asr引擎檢測到的字將被關(guān)鍵字驗證模塊歸類為“填充”字,即使這樣的結(jié)論與asr引擎的結(jié)果相矛盾。
應(yīng)用第二個條件,如果共振峰分析模塊207的時間戳信息顯示元音“a”、“i”和“i”中的任何一個被分隔超過特定閾值的時間,則由asr引擎檢測到的字將不會被認(rèn)為是“davinci”。因此,由asr引擎檢測到的字將被關(guān)鍵字驗證模塊歸類為“填充”字,即使這樣的結(jié)論與asr引擎的結(jié)果相矛盾。只有滿足了第一個條件和第二個條件,由asr引擎檢測為“davinci”的字則確實是作為關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵字之一的“davinci”。
在另一個例子中,假設(shè)使用者的話語是“whereishellodavinciinthisutterance”。進一步假設(shè)包含在關(guān)鍵字?jǐn)?shù)據(jù)庫中的關(guān)鍵短語是“hellodavinci”。在這個示例中,識別的文本是“填充填充hellodavincihellodavinci填充”。在這個示例中,假設(shè)當(dāng)檢測到未包含在關(guān)鍵字?jǐn)?shù)據(jù)庫中的字時,“填充”是默認(rèn)輸出的。因此,可以看到,由asr引擎208識別的輸出,其部分是不正確的。在這個示例中,清楚的是,第二短語“hellodavinci”的位置是不正確的,并且“hellodavinci”的第二次出現(xiàn)可能是由于回聲。然而,“hellodavinci”的第二次出現(xiàn)可通過識別元音發(fā)生位置的不匹配而被檢測為不正確。換句話說,在這個示例中,由共振峰分析模塊207檢測到的元音的時間戳與由asr引擎208檢測到的元音的時間戳不符合。因此,基于上述示例可以看出,關(guān)鍵字驗證模塊209將顯著地降低誤檢測的概率。
鑒于以上描述,本發(fā)明適合在電子設(shè)備中使用,并且能夠?qū)sr引擎識別的字驗證關(guān)鍵字以用于關(guān)鍵字的存儲、傳輸、語音識別或語者識別。
在本申請所公開的實施例的詳細(xì)描述中所使用的元件、動作或指示不應(yīng)理解為對本申請的公開是絕對關(guān)鍵或必要的,除非明確描述。此外,本文所使用的不定冠詞“一”可以包括多于一個的項目。如果只想要一個項目,則使用術(shù)語“單個”或類似的語言。此外,如本文所使用的術(shù)語“任何”之后是多個項目和/或多個項目類別的列表旨在包括“任何”、“任何組合”、“任何倍數(shù)的”和/或“項目倍數(shù)和/或項目類別的任何組合”,單獨地或與其他項目和/或其他類別的項目相結(jié)合。此外,如本文所使用的術(shù)語“組”旨在包括任何數(shù)量的項目,包括零。此外,如本文所使用的術(shù)語“數(shù)量”旨在包括任何數(shù)量,包括零。
最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。