本發(fā)明涉及音頻信號處理技術(shù)領(lǐng)域,尤其涉及音頻信號的端點檢測方法、裝置、處理系統(tǒng)及計算機設(shè)備。
背景技術(shù):
語音端點檢測(voiceactivedetection,vad)是音頻編碼、音頻識別以及音頻增強等音頻信號處理中的一個重要環(huán)節(jié),它通常作為一種音頻信號處理的預處理模塊,能夠?qū)⑤斎氲囊纛l信號劃分為語音段和非語音段,后續(xù)可對語音段或非語音段進行區(qū)別性處理,從而達到音頻信號處理的目標效果。
一般地,vad的性能容易受到環(huán)境噪聲的影響,在信噪比越低的環(huán)境下,語音端點檢測也就越不準確。目前工程中常用的vad算法,如基于短時能量和過零率的“雙門限”的vad算法,其性能會隨著信噪比的下降而明顯降低,在低信噪比(小于5db)的環(huán)境下會基本上失去應用價值,另外,其針對噪聲強度、噪聲類型等聲學場景的變化缺少魯棒性,算法參數(shù)往往需要根據(jù)環(huán)境的變化進行訓練和調(diào)節(jié)。
近年來出現(xiàn)的一些新的vad算法,如基于譜熵的vad算法,基于小波變換的vad算法等,在抗噪性能和魯棒性方面都有所提高,但計算較為復雜,目前工程實際中應用的并不多。目前比較有代表性的vad算法是由itu-t的g.729annexb提出的,該算法利用音頻信號的短時平穩(wěn)性,將待檢測的音頻信號以“幀”為單位分成若干段(每10~30ms長的數(shù)據(jù)為一幀,音頻信號在該時間段范圍內(nèi)可被認為是平穩(wěn)信號),最終返回音頻信號幀為語音信號幀或非語音信號幀的檢測結(jié)果。具體地,g.729annexb的vad算法主要分為兩步進行:第一步,待檢測的一幀音頻信號中提取4個特征參數(shù),分別是:線譜頻率lsf,過零率zc,全帶寬信號能量ef,低頻帶信號能量ei,然后用這些特征參數(shù)和各參數(shù)的門限閾值比較,做出初步的vad判決ivd;第二步,對初步判決結(jié)果進行平滑處理,得到平滑后的判決結(jié)果svd。平滑后的判決結(jié)果可以使語音幀和非語音幀之間的切換更為自然,在一定程度上降低有用語音信息的丟失。g.729annexb的vad算法的缺陷在于:它面對噪聲環(huán)境變化的魯棒性不足,并且在信噪比較低的環(huán)境下,語音端點檢測的準確性會明顯下降。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供了音頻信號的端點檢測方法、裝置、處理系統(tǒng)及計算機設(shè)備,更好地增強了語音端點檢測隨噪聲環(huán)境變化時的魯棒性,從而提高了音頻信號中語音信號檢測的準確性。
第一方面,本發(fā)明實施例提供了一種音頻信號的端點檢測方法,包括:
基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù);
基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值;
根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
第二方面,本發(fā)明實施例提供了一種音頻信號的端點檢測裝置,包括:
判定參數(shù)確定模塊,用于基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù);
端點標記確定模塊,用于基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值;
檢測結(jié)果確定模塊,用于根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
第三方面,本發(fā)明實施例還提供了一種音頻信號處理系統(tǒng),音頻信號處理系統(tǒng)包括了本發(fā)明實施例提供的音頻信號的端點檢測裝置。
第四方面,本發(fā)明實施例也提供了一種計算機設(shè)備,該設(shè)備包括:
本發(fā)明實施例提供的音頻信號處理系統(tǒng);
一個或多個處理器;
存儲裝置,用于存儲所述音頻信號處理系統(tǒng)中的一個或多個程序,
所述一個或多個程序被所述一個或多個處理器執(zhí)行,使得所述一個或多個處理器實現(xiàn)本發(fā)明實施例提供的音頻信號的端點檢測方法。
第五方面,本發(fā)明實施例又提供了一種包含計算機可執(zhí)行指令的存儲介質(zhì),包含計算機可執(zhí)行指令的存儲介質(zhì),所述計算機可執(zhí)行指令在由計算機處理器執(zhí)行時用于執(zhí)行本發(fā)明實施例提供的音頻信號的端點檢測方法。
本發(fā)明實施例提供了音頻信號的端點檢測方法、裝置、處理系統(tǒng)及計算機設(shè)備,該音頻信號的端點檢測方法首先基于待檢測信號的功率譜及預先確定的噪聲功率譜確定待檢測音頻信號的端點檢測判定參數(shù);然后基于設(shè)定長度的檢測結(jié)果標識數(shù)組記錄的各端點檢測標記值,確定檢測結(jié)果標識數(shù)組的端點檢測標記值之和,最終根據(jù)端點檢測判定參數(shù)及端點檢測標記值之和,確定待檢測音頻信號的端點檢測結(jié)果。利用該方法,僅基于音頻信號的功率譜及噪聲功率譜就可確定端點檢測的判定參數(shù),并最終實現(xiàn)端點檢測,其技術(shù)方案的實現(xiàn)并不依賴音頻信號本身的音節(jié)特征,因此與現(xiàn)有方案相比,本技術(shù)方案能夠在低信噪比的條件下依舊保持端點檢測的高準確率,且噪聲環(huán)境的變化并不影響本技術(shù)方案端點檢測的準確度,更好地增強了語音端點檢測隨噪聲環(huán)境變化時的魯棒性;同時,本技術(shù)方案的實現(xiàn)簡單方便,更容易集成到各類嵌入式音頻處理系統(tǒng)中,適用范圍廣,在實際應用中具有更好的實用性。
附圖說明
圖1為本發(fā)明實施例一提供的一種音頻信號的端點檢測方法的流程示意圖;
圖2為本發(fā)明實施例二提供的一種音頻信號的端點檢測方法的流程示意圖;
圖3為本發(fā)明實施例三提供的一種音頻信號的端點檢測方法的流程示意圖;
圖4a為本發(fā)明實施例四提供的音頻信號的端點檢測方法優(yōu)選實施例的流程示意圖;
圖4b為本發(fā)明實施例使提供的一段純凈音頻信號文件的示意圖;
圖4c為5db白噪聲環(huán)境下基于g.729annexb的vad算法檢測到含噪音頻信號文件中語音信號的示意圖;
圖4d為5db白噪聲環(huán)境下基于本發(fā)明技術(shù)方案檢測到含噪音頻信號文件中語音信號的示意圖;
圖4e為10db說話人環(huán)境下基于g.729annexb的vad算法檢測到含噪音頻信號文件中語音信號的示意圖;
圖4f為10db說話人環(huán)境下基于本發(fā)明技術(shù)方案檢測到含噪音頻信號文件中語音信號的示意圖;
圖4g為15db車內(nèi)環(huán)境下基于g.729annexb的vad算法檢測到含噪音頻信號文件中語音信號的示意圖;
圖4h為15db車內(nèi)環(huán)境下基于本發(fā)明技術(shù)方案檢測到含噪音頻信號文件中語音信號的示意圖。
圖5為本發(fā)明實施例五提供的一種音頻信號的端點檢測裝置的結(jié)構(gòu)框圖;
圖6為本發(fā)明實施例六提供的一種計算機設(shè)備的結(jié)構(gòu)圖。
具體實施方式
下面結(jié)合附圖和實施例對本發(fā)明作進一步的詳細說明??梢岳斫獾氖?,此處所描述的具體實施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
實施例一
圖1為本發(fā)明實施例一提供的一種音頻信號的端點檢測方法的流程示意圖,該方法適用于具有音頻信號處理功能的設(shè)備在對音頻信號處理前對音頻信號進行端點檢測的情況,該方法可以由音頻信號的端點檢測裝置執(zhí)行,其中該裝置可由軟件和/或硬件實現(xiàn),并一般集成在具有音頻處理功能的音頻信號處理系統(tǒng)中,且音頻信號處理系統(tǒng)可設(shè)置在計算機設(shè)備上。
需要說明的是,所述音頻信號處理系統(tǒng)具體可對音頻信號進行音頻編碼、音頻識別以及音頻增強等信號處理操作;所述計算機設(shè)備可以是手機、平板電腦、筆記本等具有通話功能的電子產(chǎn)品,同時也可以是智能語音助手、智能家居以及語音導航儀等帶有音頻交互功能的電子產(chǎn)品。
如圖1所示,本發(fā)明實施例提供的一種音頻信號的端點檢測方法,包括如下操作:
s101、基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定待檢測音頻信號的端點檢測判定參數(shù)。
在本實施例中,所述待檢測音頻信號具體可理解為當前獲取的待進行端點檢測的音頻信號,本實施例優(yōu)選地以幀為單位確定待檢測音頻信號,并對每幀待檢測音頻信號進行端點檢測操作,以確定每幀待檢測音頻信號為語音信號還是非語音信號。一般地,根據(jù)語音信號具有短時平穩(wěn)性的特點,可確定其在10ms至30ms的時間段內(nèi)通常是平穩(wěn)的,因此,為保證音頻信號端點檢測的準確度,本實施例將單位幀的時間長度優(yōu)選在10ms至30ms的范圍內(nèi)。
在本實施例中,所述待檢測音頻信號的功率譜可以基于待檢測音頻信號在頻域上的頻率幅度值確定;如果當前的待檢測音頻信號為首幀待檢測的音頻信號,則當前采用的噪聲功率譜為預先初始化的噪聲功率譜;否則,當前采用的噪聲功率譜具體可在對前一幀待檢測音頻信號進行端點檢測時更新確定。
此外,本實施例中的端點檢測判定參數(shù)具體可看作對待檢測音頻信號進行端點檢測所需的判定參數(shù)??梢岳斫獾氖?,本步驟具體通過待檢測音頻信號的功率譜及預先獲取的噪聲功率譜確定端點檢測所需的端點檢測判定參數(shù)。
進一步地,所述待檢測音頻信號為實時輸入的音頻信號或者為預先錄制的音頻信號;相應的,當所述待檢測音頻信號為預先錄制的音頻信號時,基于所述預先錄制的前m幀音頻信號進行噪聲功率譜的初始化計算,其中,m為設(shè)定常數(shù)值。
在本實施例中,所述待檢測音頻信號的可以為實時輸入音頻輸入設(shè)備的音頻信號,也可以預先錄制并存儲在計算機設(shè)備中的音頻信號。
具體地,當待檢測音頻信號實時輸入時,一般直接通過計算機設(shè)備中的音頻輸入設(shè)備進行待檢測音頻信號的拾取,此時可以將待檢測音頻信號緩存至設(shè)定緩存區(qū)中,以便于后續(xù)從設(shè)定緩存區(qū)中以幀為單位獲取待檢測音頻信號并進行端點檢測,此外,噪聲功率譜的初始值可在啟動計算機設(shè)備時基于緩存在設(shè)定緩存區(qū)中的前m幀緩存信號確定。
當待檢測音頻信號為預先錄制時,通常將形成的音頻文件預先存儲在計算機設(shè)備的設(shè)定存儲路徑下,此時可直接以幀為單位從存儲路徑中獲取音頻信號,并可基于預先錄制音頻文件中的前m幀音頻信號確定噪聲功率譜的初始值,本實施例優(yōu)選設(shè)定m的取值為[5,10]中的整數(shù)。
需要說明的是,本實施例中噪聲功率譜的初始值可通過下述公式計算獲?。?imgfile="bda0001331992640000071.gif"wi="605"he="151"img-content="drawing"img-format="gif"orientation="portrait"inline="no"/>其中,λne0表示進行端點檢測前預設(shè)的噪聲功率譜初始值,n表示所需信號的幀號,1≤n≤m,m表示計算噪聲功率譜的初始值所需信號的幀數(shù),|fft(x(n))|2表示第n幀所需信號的功率譜。
可以理解的是,初始化噪聲功率譜時所需的m幀信號可以是設(shè)定緩存區(qū)中的前m幀信號,也可以是預先錄制音頻文件中的前m幀音頻信號,其所需信號的選擇可具體情況具體確定。
s102、基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定檢測結(jié)果標識數(shù)組的端點檢測標記值之和。
在本實施例中,所述檢測結(jié)果標識數(shù)組具體可用于存放歷史待檢測音頻信號的端點檢測標記值,且所存放端點檢測標記值的最大個數(shù)通過所述檢測結(jié)果標識數(shù)組的設(shè)定長度限定。一般地,所述檢測結(jié)果標識數(shù)組的設(shè)定長度可根據(jù)歷史經(jīng)驗隨機設(shè)定,本實施例優(yōu)選該設(shè)定長度與確定噪聲功率譜初始值所需信號的幀數(shù)相同。
在本實施例中,所述端點檢測標記值具體可理解為對音頻信號進行端點檢測后對應于端點檢測結(jié)果的標記值,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值。可以理解的是,當端點檢測結(jié)果確定為語音信號時,可將所述端點標記值賦值為語音端點標記值;同時,當端點檢測結(jié)果確定為非語音信號時,可將所述端點標記值賦值為非語音端點標記值。本步驟具體可獲取檢測結(jié)果標識數(shù)組中的端點檢測標記值,并由此確定檢測結(jié)果標識數(shù)組對應的端點檢測標記值之和。
需要說明的是,當待檢測音頻信號為首幀待檢測的音頻信號時,可初始化設(shè)定檢測結(jié)果標識數(shù)組中的元素值(端點檢測標記值),示例性地,可優(yōu)選將檢測結(jié)果標識數(shù)組中的各元素值均初始設(shè)定為非語音端點標記值。此外,如果當前的待檢測音頻信號不是首幀待檢測的音頻信號,當前所采用檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值可根據(jù)前一幀待檢測音頻信號對應的檢測結(jié)果進行更新確定。
可以知道的是,當待檢測音頻信號為實時輸入的音頻信號時,本實施例可直接將輸入的首幀音頻信號看作首幀待檢測音頻信號;當待檢測音頻信號為預先錄制的音頻信號時,本實施例則可將用于計算噪聲功率譜初始值的前m幀音頻信號看作噪聲信號,然后可直接忽略對上述前m幀音頻信號的端點檢測,直接將第m+1幀音頻信號看作首幀待檢測音頻信號。
s103、根據(jù)端點檢測判定參數(shù)及端點檢測標記值之和,確定待檢測音頻信號的端點檢測結(jié)果。
在本實施例中,所述端點檢測結(jié)果具體可以為語音信號或非語音信號。具體地,本步驟可根據(jù)端點檢測判定參數(shù)與所設(shè)定相應門限值的比較結(jié)果,以及端點檢測標記值之和與所設(shè)定相應閾值的比較結(jié)果來確定該幀待檢測音頻信號為語音信號還是非語音信號。
本發(fā)明實施例一提供的一種音頻信號的端點檢測方法,僅基于音頻信號的功率譜及噪聲功率譜就可確定端點檢測的判定參數(shù),并最終實現(xiàn)端點檢測,其技術(shù)方案的實現(xiàn)并不依賴音頻信號本身的音節(jié)特征,因此與現(xiàn)有方案相比,本技術(shù)方案能夠在低信噪比的條件下依舊保持端點檢測的高準確率,且噪聲環(huán)境的變化并不影響本技術(shù)方案端點檢測的準確度,更好地增強了語音端點檢測隨噪聲環(huán)境變化時的魯棒性;同時,本技術(shù)方案的實現(xiàn)簡單方便,更容易集成到各類嵌入式音頻處理系統(tǒng)中,適用范圍廣,在實際應用中具有更好的實用性。
實施例二
圖2為本發(fā)明實施例二提供的一種音頻信號的端點檢測方法的流程示意圖,本實施例以上述實施例為基礎(chǔ)進行優(yōu)化,在本實施例中,將基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù),進一步優(yōu)化為:基于所述待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的后驗信噪比和先驗信噪比;根據(jù)設(shè)定的判定參數(shù)公式以及所述后驗信噪比和先驗信噪比,確定所述待檢測音頻信號的端點檢測判定參數(shù)。
進一步地,本實施例還優(yōu)化增加了:根據(jù)所述待檢測音頻信號的檢測結(jié)果,更新預先確定的噪聲功率譜并保存,以用于確定下一幀待檢測音頻信號的端點檢測判定參數(shù)。
如圖2所示,本發(fā)明實施例二提供的一種音頻信號的端點檢測方法,具體包括如下操作:
需要說明的是,本實施例中的s201和s202具體化了端點檢測判定參數(shù)的確定過程。
s201、基于所述待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的后驗信噪比和先驗信噪比。
本步驟首先確定用于待檢測音頻信號端點檢測的后驗信噪比和先驗信噪比。具體地,本步驟可以獲得待檢測音頻信號的功率譜,同時可以獲取預先確定的噪聲功率譜,之后根據(jù)確定待檢測音頻信號的功率譜和噪聲信號功率譜獲得所需的后驗信噪比及先驗信噪比。
進一步地,分別根據(jù)下述后驗信噪比公式以及先驗信噪比公式,確定所述待檢測音頻信號的后驗信噪比和先驗信噪比,
所述后驗信噪比公式表示為:
所述先驗信噪比公式表示為:
ξ(n,k)=αξ(n-1,k)+(1-α)max(γ(n,k)-1,0),其中,k表示頻率域的頻率編號,為0至k-1中的任一整數(shù)值,k表示頻率域長度,n表示當前待檢測音頻信號的幀號,x(n)表示時域上的第n幀待檢測音頻信號,fft(x(n))表示頻域上的第n幀待檢測音頻信號,γ(n,k)表示第n幀待檢測音頻信號的后驗信噪比,|fft(x(n))|2表示第n幀待檢測音頻信號的功率譜,λne(n-1,k)表示第n-1幀待檢測音頻信號中噪聲信號對應的噪聲功率譜,ξ(n,k)表示第n幀待檢測音頻信號的先驗信噪比,α為0~1之間的任一常數(shù),ξ(n-1,k)表示第n-1幀待檢測音頻信號的先驗信噪比。
在本實施例中,如果當前待檢測音頻信號為首幀待檢測的音頻信號(即n為1),則計算后驗信噪比時采用的噪聲功率譜相當于噪聲功率譜的初始值??梢岳斫獾氖?,第n-1幀待檢測音頻信號相當于第n幀待檢測音頻信號的前一幀,因此,當待檢測音頻信號不是首幀待檢測的音頻信號時,可采用基于前一幀待檢測音頻信號的端點檢測結(jié)果更新后的噪聲功率譜確定當前的后驗信噪比。此外,本實施例中α的設(shè)定可根據(jù)歷史經(jīng)驗值人為選取,或者根據(jù)具體使用場景確定相應的取值,本實施例可優(yōu)選α的取值范圍為[0.75,1)。
需要說明的是,當n為1時,可設(shè)定但不限定ξ(n-1,k)的初始值為0.98,此時,ξ(n-1,k)的值為一個優(yōu)選的歷史經(jīng)驗值。
s202、根據(jù)設(shè)定的判定參數(shù)公式以及所述后驗信噪比和先驗信噪比,確定所述待檢測音頻信號的端點檢測判定參數(shù)。
本步驟可基于上述確定的后驗信噪比及先驗信噪比以及設(shè)定的判定參數(shù)公式,確定端點檢測所需的端點檢測判定參數(shù)。進一步地,本實施例可以根據(jù)下述判定參數(shù)公式確定所述待檢測音頻信號的端點檢測判定參數(shù),所述判定參數(shù)公式表示為:
在本步驟中,判定參數(shù)公式中出現(xiàn)的變量與s201中具有相同的含義,這里不再贅述,本步驟具體可通過該判定參數(shù)公式確定所需的端點檢測判定參數(shù)。
s203、基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和。
具體地,所述檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值具體可通過前一幀待檢測音頻信號的端點檢測結(jié)果更新確定,其中,所述端點檢測標記值可以為語音端點標記值或非語音端點標記值,且如果不存在前一幀待檢測音頻信號,則可認為所述檢測結(jié)果標識數(shù)組中的各端點檢測標記值均為初始化設(shè)定的初始值(一般均初始為非語音端點標記值)。
s204、根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
示例性地,本步驟可將端點檢測判定參數(shù)與設(shè)定的多個門限值進行大小比較,由此可獲得第一比對結(jié)果,同時可以將所述端點檢測標記值之和與設(shè)定的多個閾值進行大小比較,由此最終可獲得第二比對結(jié)果,最終可根據(jù)第一比對結(jié)果以及第二部對結(jié)果確定待檢測音頻信號為語音信號還是非語音信號。
s205、根據(jù)所述待檢測音頻信號的端點檢測結(jié)果,更新預先確定的噪聲功率譜并保存,以用于確定下一幀待檢測音頻信號的端點檢測判定參數(shù)。
在本實施例中,確定待檢測音頻信號的端點檢測結(jié)果后,可以根據(jù)端點檢測結(jié)果進一步更新端點檢測所需的噪聲功率譜并保存,且更新后的噪聲功率譜可以用于下一幀待檢測音頻信號端點檢測判定參數(shù)的確定。
進一步地,所述根據(jù)所述待檢測音頻信號的端點檢測結(jié)果,更新預先確定的噪聲功率譜并保存,包括:如果確定所述待檢測音頻信號為語音信號,則保持所述噪聲功率譜不變;否則,根據(jù)下述噪聲功率譜更新公式更新所述噪聲功率譜并保存,所述噪聲功率譜更新公式表示為:
λne(n,k)=μλne(n-1,k)+(1-μ)|fft(x(n))|2,其中,k表示頻率域的頻率編號;λne(n,k)表示第n幀待檢測音頻信號中噪聲信號對應的噪聲功率譜;λne(n-1,k)表示第n-1幀待檢測音頻信號中噪聲信號對應的噪聲功率譜;|fft(x(n))|2表示第n幀待檢測音頻信號的功率譜。
在本實施例中,當待檢測音頻信號確定為語音信號時,可認為當前的待檢測音頻信號中不存在或僅存在少量的噪聲信號,此時不需要進行噪聲功率譜的更新,可沿用之前確定的噪聲功率譜。當待檢測音頻信號確定為非語音信號時,可認為當前的待檢測音頻信號中存在較多的噪聲信號,此時可根據(jù)預先確定的噪聲功率譜及上述噪聲功率譜更新公式更新噪聲功率譜。需要說明的是,上述噪聲功率譜更新公式中μ的取值范圍為(0,1),本實施例可優(yōu)選μ的取值范圍為(0.9,1),此外,其具體值可以根據(jù)歷史經(jīng)驗值人為設(shè)定,或者根據(jù)具體使用場景確定相應的取值。
需要注意的是,由于本實施例中對噪聲功率譜的初始化相當于對噪聲功率譜的預估計操作,所以基于預估計的噪聲功率譜初始值進行噪聲功率譜更新后確定的噪聲功率譜依舊相當于一個估計值,因此,可以認為本實施例基于噪聲功率譜確定的先驗信噪比以及后驗信噪比均可看作一個估計值。由此可以對確定噪聲功率譜初始值的正確估計與否可以影響待檢測音頻信號端點檢測的準確度。
本發(fā)明實施例二提供的一種音頻信號的端點檢測方法,具體化了端點檢測判定參數(shù)的確定過程,并具體增加了噪聲功率譜的更新操作。利用該方法,能夠基于音頻信號的功率譜及噪聲功率譜就可確定端點檢測的判定參數(shù),端點檢測的實現(xiàn)不依賴音頻信號本身的音節(jié)特征,由此無論噪聲環(huán)境怎樣變化,都不會影響端點檢測的準確性,從而更好地增強了語音端點檢測隨噪聲環(huán)境變化時的魯棒性。同時,本技術(shù)方案的實現(xiàn)簡單,更容易集成到各類嵌入式音頻處理系統(tǒng)中,適用范圍廣,在實際應用中具有更好的實用性。
實施例三
圖3為本發(fā)明實施例三提供的一種音頻信號的端點檢測方法的流程示意圖,本發(fā)明實施例以上述實施例一或?qū)嵤├榛A(chǔ)進行優(yōu)化,在本實施例中,將根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果,進一步具體化為:如果所述端點檢測標記值之和大于或等于第一設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為語音端點標記值,則根據(jù)所述端點檢測判定參數(shù)與第一設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;如果所述端點檢測標記值之和小于或等于第二設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為非語音端點標記值,則根據(jù)所述端點檢測判定參數(shù)與第二設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;如果所述端點檢測標記值之和大于或等于第一設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為非語音端點標記值,則根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;如果所述端點檢測標記值之和小于或等于第二設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為語音端點標記值,則根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;如果所述元素值之和小于所述第一設(shè)定閾值且大于所述第二設(shè)定閾值,則根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;其中,所述第一設(shè)定閾值大于所述第二設(shè)定閾值;所述第一設(shè)定門限值小于所述第三設(shè)定門限值;所述第三設(shè)定門限值小于所述第二設(shè)定門限值。
此外,本實施例在所述確定所述待檢測音頻信號的端點檢測結(jié)果之后,還優(yōu)化增加了:更新所述檢測結(jié)果標識數(shù)組中記錄的端點檢測標記值,以用于對下一幀待檢測音頻信號進行端點檢測。
如圖3所示,本發(fā)明實施例三提供的一種音頻信號的端點檢測方法,具體包括如下操作:
s301、基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù)。
示例性地,本步驟可以首先根據(jù)待檢測音頻信號的功率譜及預先確定的噪聲功率譜確定待檢測音頻信號的先驗信噪比和后驗信噪比,之后可根據(jù)設(shè)定的判定參數(shù)公式以及先驗信噪比和后驗信噪比確定待檢測音頻信號的端點檢測判定參數(shù)。
s302、基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和。
示例性地,本實施例可將檢測結(jié)果標識數(shù)組的設(shè)定長度確定為一個定值,該定值可等同于噪聲功率譜初始值確定時所需信號的幀數(shù),由此,上述檢測結(jié)果標識數(shù)組中可記錄設(shè)定長度個端點檢測標記值,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值。本步驟可根據(jù)獲取的各端點檢測標記值,確定最終的端點檢測標記值之和。
此外,初始進行音頻信號的端點檢測時,可預先為檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值設(shè)置一個初始值,后續(xù)可根據(jù)每次迭代的端點檢測結(jié)果更新各端點檢測標記值。
需要說明的是,本實施例中s303至s309具體描述了端點檢測結(jié)果的確定過程。
s303、判定該端點檢測標記值之和是否大于或等于第一設(shè)定閾值,若是,則執(zhí)行s304;若否,則執(zhí)行s305。
本步驟首先判定s302中所確定端點檢測標記值之和與第一設(shè)定閾值的比對結(jié)果,如果端點檢測標記值之和大于或等于第一設(shè)定閾值,則可執(zhí)行s304的操作,否則,可執(zhí)行s305的操作。
s304、判定檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值是否為語音端點標記值,若是,則執(zhí)行s307;若否,則執(zhí)行s309。
本步驟在基于s303的判定確定端點檢測標記值之和大于或等于第一設(shè)定閾值之后,又進一步對檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值進行判定,并在最后一個端點檢測標記值為語音端點標記值時,執(zhí)行s307的操作,否則,相當于最后一個端點檢測標記值為非語音端點標記值,此時執(zhí)行s309的操作。
s305、判定該端點檢測標記值之和是否小于或等于第二設(shè)定閾值,若是,則執(zhí)行s306;若否,則執(zhí)行s309。
本步驟在基于s303的判定確定端點檢測標記值之和小于第一設(shè)定閾值之后,又進一步判定該端點檢測標記值之和與第二設(shè)定閾值的大小關(guān)系,并當端點檢測標記值之和小于或等于第二設(shè)定閾值時,執(zhí)行s306的操作,否則,相當于端點檢測標記值之和大于第二設(shè)定閾值且小于第一設(shè)定閾值時執(zhí)行s309的操作。
需要說明的是,本步驟中的第二設(shè)定閾值小于s303中的第一設(shè)定閾值,且所述第二設(shè)定閾值以及第一設(shè)定閾值的具體值可以根據(jù)歷史經(jīng)驗值人為設(shè)定,或者根據(jù)具體使用場景確定相應的取值。示例性地,可認為第二設(shè)定閾值以及第一設(shè)定閾值的選擇與檢測結(jié)果標識數(shù)組的設(shè)定長度以及端點檢測標記值的設(shè)定值存在一定的關(guān)系,如,當檢測結(jié)果標識數(shù)組的設(shè)定長度為6,端點檢測標記值僅設(shè)定為0或1時,可將第一設(shè)定閾值確定為4,同時可將第二設(shè)定閾值確定為2,需要注意的是,上述示例僅是選取具體值的其中一種方式,并不限定具體值采用其他方式選取。
s306、判定檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值是否為語音端點標記值,若否,則執(zhí)行s308;若是,則執(zhí)行s309。
本步驟在基于s305的判定確定端點檢測標記值之和小于第二設(shè)定閾值之后,又進一步對檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值進行判定,并在最后一個端點檢測標記值不為語音端點標記值(即為非語音端點標記值)時,執(zhí)行s308的操作;否則,相當于最后一個端點檢測標記值為語音端點標記值,此時執(zhí)行s309的操作。
s307、根據(jù)所述端點檢測判定參數(shù)與第一設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果。
在本實施例中,可以在s303以及s304的判定狀態(tài)均為肯定時,即,端點檢測標記值之和大于或等于第一設(shè)定閾值且最后一個端點檢測標記值為語音端點標記值時執(zhí)行本步驟的操作,此時,可通過端點檢測判定參數(shù)與第一設(shè)定門限值的比對結(jié)果,最終確定待檢測音頻信號的端點檢測結(jié)果。
進一步地,所述根據(jù)所述端點檢測判定參數(shù)與第一設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果,包括:當所述端點檢測判定參數(shù)大于或等于所述第一設(shè)定門限值時,確定所述待檢測音頻信號為語音信號,并將所述待檢測音頻信號的端點檢測標記值記為語音端點標記值;否則,確定所述待檢測音頻信號為非語音信號,并將所述待檢測音頻信號的端點檢測標記值記為非語音端點標記值。
在本實施例中,所述端點檢測標記值具體表示了待檢測音頻信號的端點檢測結(jié)果,如,語音信號與語音端點標記值相對應,非語音信號與非語音端點標記值相對應??梢岳斫獾氖牵緦嵤├姓Z音端點標記值以及非語音端點標記值的具體值可為隨意設(shè)定的常數(shù)值,本實施例優(yōu)選設(shè)定所述語音端點標記值為1,同時優(yōu)選設(shè)定所述非語音端點標記值為0。
s308、根據(jù)所述端點檢測判定參數(shù)與第二設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果。
在本實施例中,可以在s305的判定狀態(tài)為肯定,以及s306的判定狀態(tài)為否定時,即,端點檢測標記值之和小于或等于第二設(shè)定閾值且最后一個端點檢測標記值為非語音端點標記值時,執(zhí)行本步驟的操作,此時,可通過端點檢測判定參數(shù)與第二設(shè)定門限值的比對結(jié)果,最終確定待檢測音頻信號的端點檢測結(jié)果。
進一步地,所述根據(jù)所述端點檢測判定參數(shù)與第二設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果,包括:當所述端點檢測判定參數(shù)大于或等于所述第二設(shè)定門限值時,確定所述待檢測音頻信號為語音信號,并將所述待檢測音頻信號的端點檢測標記值記為語音端點標記值;否則,確定所述待檢測音頻信號為非語音信號,并將所述待檢測音頻信號的端點檢測標記值記為非語音端點標記值。
s309、根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果。
在本實施例中,可在s303的判定狀態(tài)為肯定,以及s304的判定狀態(tài)為否定,即,端點檢測標記值之和大于或等于第一設(shè)定閾值且最后一個端點檢測標記值為非語音端點標記值時執(zhí)行本步驟的操作;同時,也可在s303的判定狀態(tài)為否定,以及s305的判定狀態(tài)為否定,即端點檢測標記值之和大于第二設(shè)定閾值且小于第一設(shè)定閾值時執(zhí)行本步驟的操作;此外,還可在s305的判定狀態(tài)為肯定,以及s306的判定狀態(tài)也為肯定,即,端點檢測標記值之和小于或等于第二設(shè)定閾值且最后一個端點檢測標記值為語音端點標記值時執(zhí)行本步驟的操作。當出現(xiàn)上述任一種情況時,均可通過端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,最終確定待檢測音頻信號的端點檢測結(jié)果。
進一步地,所述根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果,包括:當所述端點檢測判定參數(shù)大于或等于所述第三設(shè)定門限值時,確定所述待檢測音頻信號為語音信號,并將所述待檢測音頻信號的端點檢測標記值記為語音端點標記值;否則,確定所述待檢測音頻信號為非語音信號,并將所述待檢測音頻信號的端點檢測標記值記為非語音端點標記值。
需要注意的是,本實施例中第一設(shè)定門限值、第二設(shè)定門限值以及第三設(shè)定門限值均可看作一個常數(shù)值,其中,第一設(shè)定門限值小于第三設(shè)定門限值;且第三設(shè)定門限值小于所述第二設(shè)定門限值,本實施例可優(yōu)選第一設(shè)定門限值的取值范圍為(0.05,0.1),優(yōu)選第三設(shè)定門限值的取值范圍為(0.1,0.3),優(yōu)選第二設(shè)定門限值的取值范圍為(0.5,5.0)。此外,在本實施例中,所述第一設(shè)定門限值、第二設(shè)定門限值以及第三設(shè)定門限值的具體值可以根據(jù)歷史經(jīng)驗值人為設(shè)定,或者根據(jù)具體使用場景確定相應的取值。
s310、根據(jù)所述待檢測音頻信號的端點檢測結(jié)果,更新預先確定的噪聲功率譜并保存,以用于確定下一幀待檢測音頻信號的端點檢測判定參數(shù)。
示例性地,本步驟可以根據(jù)上述端點檢測結(jié)果,基于噪聲功率譜的更新條件及噪聲功率譜更新公式,實現(xiàn)噪聲功率譜的更新。
s311、更新所述檢測結(jié)果標識數(shù)組中記錄的端點檢測標記值,以用于對下一幀待檢測音頻信號進行端點檢測。
在本實施例中,還可以在確定待檢測音頻信號的端點檢測結(jié)果之后,對檢測結(jié)果標識數(shù)組中的各端點檢測標記值進行更新。
進一步地,根據(jù)下述標記值更新公式更新所述檢測結(jié)果標識數(shù)組中的端點檢測標記值,所述標記值更新公式表示為:
在本實施例中,可認為所述檢測結(jié)果標識數(shù)組中具體記錄了當前待檢測音頻信號的前設(shè)定長度幀歷史待檢測音頻信號對應的端點檢測標記值,且可根據(jù)當前待檢測音頻信號的端點檢測結(jié)果實時更新檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值。
具體地,檢測結(jié)果標識數(shù)組中的第1個端點檢測標記值可表示為value[1],基于上述標記值更新公式,當1小于設(shè)定長度l時,可將value[1]更新為當前檢測結(jié)果標識數(shù)組中的value[2],后續(xù)將依次基于與value[1]相同的更新方式對value[2]至value[l-1]進行更新,并最終將value[l]更新為當前待檢測音頻信號的端點檢測結(jié)果對應的端點檢測標記值。示例性地,若當前待檢測音頻信號對應的端點檢測標記值為語音端點標記值,則value[l]此時更新賦值為語音端點標記值。
基于上述對檢測結(jié)果標識數(shù)組中各端點檢測標記值的更新,可以保證檢測結(jié)果標識數(shù)組中各端點檢測標記值一直記錄的是待檢測音頻信號前的設(shè)定長度幀歷史待檢測音頻信號對應的端點檢測標記值。
本發(fā)明實施例三提供的一種音頻信號的端點檢測方法,具體表述了端點檢測的實現(xiàn)過程,同時優(yōu)化增加了檢測結(jié)果標識數(shù)組中元素值的更新過程。與現(xiàn)有方案相比,該方法能夠在低信噪比的條件下依舊保持端點檢測的高準確率,且噪聲環(huán)境的變化并不影響本技術(shù)方案端點檢測的準確度,更好地增強了語音端點檢測隨噪聲環(huán)境變化時的魯棒性;同時,本技術(shù)方案的實現(xiàn)簡單方便,更容易集成到各類嵌入式音頻處理系統(tǒng)中,適用范圍廣,在實際應用中具有更好的實用性。
實施例四
圖4a為本發(fā)明實施例四提供的音頻信號的端點檢測方法優(yōu)選實施例的流程示意圖。為驗證本發(fā)明實施例提供的音頻信號的端點檢測方法具有強魯棒性和端點檢測高準確率的特點,本實施例在三種不同噪聲環(huán)境下基于所提供的音頻信號的端點檢測方法進行端點檢測。
具體地,三種不同的噪聲環(huán)境分別為:白噪聲(white)、說話人噪聲(babble)以及車內(nèi)噪聲(vehicle),且為不同的噪聲環(huán)境分別設(shè)定了三個信噪比:5db,10db和15db。為了評價本發(fā)明所提供端點檢測方法的端點檢測效果,本實施例首先錄制一端時長為15秒的純凈音頻信號文件(即,沒有噪聲的音頻信號文件),并確定該音頻信號文件中含語音信號的部分約占60%左右,其余40%左右為靜音部分,本實施例設(shè)定單位幀的幀長為10ms;之后以該幀長對上述純凈音頻信號文件進行分幀,并手動確定每一幀的端點檢測結(jié)果為語音幀還是非語音幀,圖4b為本發(fā)明實施例四提供的一段純凈音頻信號文件的示意圖,由圖4b可以看出,存在信號波動的部分為語音信號部分,沒有信號波動的部分為靜音部分;然后,本實施例在上述三種噪聲環(huán)境下分別播放上述純凈音頻信號文件,并錄音形成各包含噪音的音頻信號文件,最終,本實施例基于所提供的音頻信號的端點檢測方法對所形成的三種包含噪音的音頻信號文件進行端點檢測。
如圖4a所示,基于本發(fā)明上述實施例提供的音頻信號的端點檢測方法對包含噪音的三種音頻信號文件(本實施例統(tǒng)稱含噪音頻信號文件)進行端點檢測,具體包括如下操作:
s401、獲取當前幀的待檢測音頻信號,并根據(jù)該幀待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定待檢測音頻信號的后驗信噪比和先驗信噪比。
本實施例可以幀為單位對含噪音頻信號文件進行分幀,并基于前m幀含噪音頻信號進行噪聲功率譜初始化,同時將第m+1幀含噪音頻信號看作首幀待檢測音頻信號。示例性地,本步驟具體根據(jù)待檢測音頻信號的功率譜及預先確定(初始確定或更新確定)的噪聲功率譜,通過設(shè)定的后驗信噪比以及先驗信噪比的計算公式,獲得端點檢測所需的后驗信噪比及先驗信噪比。
s402、根據(jù)判定參數(shù)公式以及后驗信噪比及先驗信噪比,確定待檢測音頻信號的端點檢測判定參數(shù)。
s403、獲取設(shè)定長度檢測結(jié)果標識數(shù)組中的各端點檢測標記值,并確定端點檢測標記值之和。
示例性地,假設(shè)設(shè)定長度為6,則檢測結(jié)果標識數(shù)組中相當于記錄了該幀待檢測音頻信號前的6幀歷史待檢測音頻信號對應的端點檢測標記值,且記錄順序與歷史待檢測音頻信號的輸入順序相同。同時,假設(shè)待檢測音頻信號前不存在歷史待檢測音頻信號,則可將檢測結(jié)果標識數(shù)組中的各端點檢測標記值初始化為0(假設(shè)非語音端點標記值為0)。
s404、根據(jù)端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
本步驟可具體根據(jù)上述實施例三中描述的判定操作,確定待檢測音頻信號的端點檢測結(jié)果。
s405、如果確定所述待檢測音頻信號為語音信號,則保持所述噪聲功率譜不變;否則,根據(jù)噪聲功率譜更新公式更新所述噪聲功率譜并保存,以用于確定下一幀待檢測音頻信號的端點檢測判定參數(shù)。
本步驟具體實現(xiàn)噪聲功率譜的更新。
s406、根據(jù)標記值更新公式更新所述檢測結(jié)果標識數(shù)組中的端點檢測標記值,以用于對下一幀待檢測音頻信號進行端點檢測。
本步驟具體實現(xiàn)檢測結(jié)果標識數(shù)組中的端點檢測標記值的更新。
s407、如果當前幀的待檢測音頻信號不是上述含噪音頻信號文件的最后一幀,則將下一幀確定為當前幀,并返回執(zhí)行s401;否則,結(jié)束端點檢測操作。
本步驟具體判定迭代進行端點檢測操作的結(jié)果條件。
需要說明的是,本實施例為確定所提供端點檢測方法的端點檢測效果,同時基于現(xiàn)有的g.729annexb的vad算法對上述三種噪聲環(huán)境下形成的含噪音頻信號文件進行端點檢測。且本實施例提出了兩個端點檢測結(jié)果的比對參數(shù),分別為:正檢率pd(將語音幀檢測為語音幀的概率)和虛檢率pf(將非語音幀檢測為語音幀的概率),其中,正檢率pd越高,虛檢率pf越低,說明檢測的準確性越高用于比對說明本發(fā)明方案與現(xiàn)有方案的檢測效果。
表1本發(fā)明技術(shù)方案與g.729annexb提出的vad算法的檢測結(jié)果比對
具體地,表1給出了不同噪聲環(huán)境下本發(fā)明所提方案和g.729annexb提出的vad算法的檢測結(jié)果比對。從表1可以看出,相比g.729annexb的vad算法,本發(fā)明提出的端點檢測方法在低信噪比(5db)條件下檢測的準確性有顯著的提高;同時,在不同信噪比、不同噪聲環(huán)境下,本發(fā)明提出的端點檢測方法都能夠保持相對較高的端點檢測的準確性,從而證明了本發(fā)明提出的端點檢測方法對于噪聲環(huán)境變化具有較強的魯棒性。
需要說明的是,本實施例還給出了不同端點檢測方法對應的端點檢測效果圖,具體地,圖4c為5db白噪聲環(huán)境下基于g.729annexb的vad算法檢測到含噪音頻信號文件中語音信號的示意圖;圖4d為5db白噪聲環(huán)境下基于本發(fā)明技術(shù)方案檢測到含噪音頻信號文件中語音信號的示意圖;圖4e為10db說話人環(huán)境下基于g.729annexb的vad算法檢測到含噪音頻信號文件中語音信號的示意圖;圖4f為10db說話人環(huán)境下基于本發(fā)明技術(shù)方案檢測到含噪音頻信號文件中語音信號的示意圖;圖4g為15db車內(nèi)環(huán)境下基于g.729annexb的vad算法檢測到含噪音頻信號文件中語音信號的示意圖;圖4h為15db車內(nèi)環(huán)境下基于本發(fā)明技術(shù)方案檢測到含噪音頻信號文件中語音信號的示意圖。
可以理解的是,上述圖4c至圖4h中具體標記了含噪音頻信號文件中的語音信號,將上述圖4c至圖4h的檢測結(jié)果與上述圖4b所示出純凈音頻信號文件中的語音信號相比對,可以發(fā)現(xiàn),本發(fā)明實施例提供的端點檢測方法的檢測結(jié)果準確度高于現(xiàn)有g(shù).729annexb的vad算法,由此進一步說明本發(fā)明實施例提供的端點檢測方法具有較高的檢測準確率,且具有較強的魯棒性。
實施例五
圖5為本發(fā)明實施例五提供的一種音頻信號的端點檢測裝置的結(jié)構(gòu)框圖,該裝置適用于適用于具有音頻信號處理功能的設(shè)備在對音頻信號處理前對音頻信號進行端點檢測的情況,該裝置可由軟件和/或硬件實現(xiàn),并一般集成在具有音頻處理功能的音頻信號處理系統(tǒng)中,且音頻信號處理系統(tǒng)設(shè)置在計算機設(shè)備上。如圖5所示,該裝置包括:判定參數(shù)確定模塊51、端點標記確定模塊52以及檢測結(jié)果確定模塊53。
其中,判定參數(shù)確定模塊51,用于基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù);
端點標記確定模塊52,用于基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值;
檢測結(jié)果確定模塊53,用于根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
在本實施例中,該裝置首先通過判定參數(shù)確定模塊51基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù);然后通過端點標記確定模塊52基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和;最終通過檢測結(jié)果確定模塊53根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
本發(fā)明實施例五提供的一種音頻信號的端點檢測裝置,僅基于音頻信號的功率譜及噪聲功率譜就可確定端點檢測的判定參數(shù),并最終實現(xiàn)端點檢測,其技術(shù)方案的實現(xiàn)并不依賴音頻信號本身的音節(jié)特征,因此與現(xiàn)有方案相比,本技術(shù)方案能夠在低信噪比的條件下依舊保持端點檢測的高準確率,且噪聲環(huán)境的變化并不影響本技術(shù)方案端點檢測的準確度,更好地增強了語音端點檢測隨噪聲環(huán)境變化時的魯棒性;同時,本技術(shù)方案的實現(xiàn)簡單方便,更容易集成到各類嵌入式音頻處理系統(tǒng)中,適用范圍廣,在實際應用中具有更好的實用性。
在上述優(yōu)化的基礎(chǔ)上,判定參數(shù)確定模塊51,包括:
信噪比確定單元,用于基于所述待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的后驗信噪比和先驗信噪比;
判定參數(shù)獲取單元,用于根據(jù)設(shè)定的判定參數(shù)公式以及所述后驗信噪比和先驗信噪比,確定所述待檢測音頻信號的端點檢測判定參數(shù)。
進一步地,所述信噪比確定單元,具體用于分別根據(jù)下述后驗信噪比公式以及先驗信噪比公式,確定所述待檢測音頻信號的后驗信噪比和先驗信噪比,所述后驗信噪比公式表示為:
所述判定參數(shù)獲取單元,具體用于根據(jù)下述判定參數(shù)公式確定所述待檢測音頻信號的端點檢測判定參數(shù),所述判定參數(shù)公式表示為:
其中,k表示頻率域的頻率編號,為0至k-1中的任一整數(shù)值,k表示頻率域長度,n表示當前待檢測音頻信號的幀號,x(n)表示時域上的第n幀待檢測音頻信號,fft(x(n))表示頻域上的第n幀待檢測音頻信號,γ(n,k)表示第n幀待檢測音頻信號的后驗信噪比,|fft(x(n))|2表示第n幀待檢測音頻信號的功率譜,λne(n-1,k)表示第n-1幀待檢測音頻信號中噪聲信號對應的噪聲功率譜,ξ(n,k)表示第n幀待檢測音頻信號的先驗信噪比,α為0~1之間的任一常數(shù),ξ(n-1,k)表示第n-1幀待檢測音頻信號的先驗信噪比。
進一步地,該裝置還優(yōu)化包括了:功率譜更新模塊54,用于根據(jù)所述待檢測音頻信號的端點檢測結(jié)果,更新預先確定的噪聲功率譜并保存,以用于確定下一幀待檢測音頻信號的端點檢測判定參數(shù)。
在上述優(yōu)化的基礎(chǔ)上,功率譜更新模塊54,具體用于:
當確定所述待檢測音頻信號為語音信號時,保持所述噪聲功率譜不變;否則,根據(jù)下述噪聲功率譜更新公式更新所述噪聲功率譜并保存,所述噪聲功率譜更新公式表示為:λne(n,k)=μλne(n-1,k)+(1-μ)|fft(x(n))|2,其中,k表示頻率域的頻率編號;λne(n,k)表示第n幀待檢測音頻信號中噪聲信號對應的噪聲功率譜;λne(n-1,k)表示第n-1幀待檢測音頻信號中噪聲信號對應的噪聲功率譜;|fft(x(n))|2表示第n幀待檢測音頻信號的功率譜。
進一步地,檢測結(jié)果確定模塊53,包括:
第一確定單元,用于當所述端點檢測標記值之和大于或等于第一設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為語音端點標記值時,根據(jù)所述端點檢測判定參數(shù)與第一設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;
第二確定單元,用于當所述端點檢測標記值之和小于或等于第二設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為非語音端點標記值時,根據(jù)所述端點檢測判定參數(shù)與第二設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;
第三確定單元,用于當所述端點檢測標記值之和大于或等于所述第一設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為非語音端點標記值時,根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;
第四確定單元,用于當所述端點檢測標記值之和小于或等于所述第二設(shè)定閾值且所述檢測結(jié)果標識數(shù)組中最后一個端點檢測標記值為語音端點標記值時,根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;
第五確定單元,用于當所述端點檢測標記值之和小于所述第一設(shè)定閾值且大于所述第二設(shè)定閾值時,根據(jù)所述端點檢測判定參數(shù)與第三設(shè)定門限值的比對結(jié)果,確定所述待檢測音頻信號的端點檢測結(jié)果;
其中,所述第一設(shè)定閾值大于所述第二設(shè)定閾值;所述第一設(shè)定門限值小于所述第三設(shè)定門限值;所述第三設(shè)定門限值小于所述第二設(shè)定門限值。
在上述實施例的基礎(chǔ)上,所述第一確定單元,具體用于:
當所述端點檢測判定參數(shù)大于或等于所述第一設(shè)定門限值時,確定所述待檢測音頻信號為語音信號,并將所述待檢測音頻信號的端點檢測標記值記為語音端點標記值;否則,確定所述待檢測音頻信號為非語音信號,并將所述待檢測音頻信號的端點檢測標記值記為非語音端點標記值。
同時,所述第二確定單元,具體用于:
當所述端點檢測判定參數(shù)大于或等于所述第二設(shè)定門限值時,確定所述待檢測音頻信號為語音信號,并將所述待檢測音頻信號的端點檢測標記值記為語音端點標記值;否則,確定所述待檢測音頻信號為非語音信號,并將所述待檢測音頻信號的端點檢測標記值記為非語音端點標記值。
進一步地,所述第三確定單元,具體用于:
當所述端點檢測判定參數(shù)大于或等于所述第三設(shè)定門限值時,確定所述待檢測音頻信號為語音信號,并將所述待檢測音頻信號的端點檢測標記值記為語音端點標記值;否則,確定所述待檢測音頻信號為非語音信號,并將所述待檢測音頻信號的端點檢測標記值記為非語音端點標記值。
此外,該裝置還優(yōu)化包括了:標記值更新模塊55,用于在所述確定所述待檢測音頻信號的端點檢測結(jié)果之后,更新所述檢測結(jié)果標識數(shù)組中記錄的端點檢測標記值,以用于對下一幀待檢測音頻信號進行端點檢測。
在上述優(yōu)化的基礎(chǔ)上,標記值更新模塊55,具體用于根據(jù)下述標記值更新公式更新所述檢測結(jié)果標識數(shù)組中的端點檢測標記值,所述標記值更新公式表示為:
在上述實施例的基礎(chǔ)上,該裝置中所述待檢測音頻信號為實時輸入的音頻信號或者為預先錄制的音頻信號;
相應的,當所述待檢測音頻信號為預先錄制的音頻信號時,基于所述預先錄制的前m幀音頻信號進行噪聲功率譜的初始化計算,其中,m為設(shè)定常數(shù)值。
同時,本發(fā)明實施例還提供了一種音頻信號處理系統(tǒng),該音頻信號處理系統(tǒng)包括了本發(fā)明上述實施例提供的音頻信號的端點檢測裝置。
可以理解的是,所述音頻信號處理系統(tǒng)具體可用于對音頻信號進行進行音頻編碼、音頻識別以及音頻增強等信號處理操作,基于本發(fā)明實施例提供的音頻信號處理系統(tǒng),可以在進行上述處理操作之前,通過所集成的音頻信號的端點檢測裝置對音頻信號進行預處理操作,即實現(xiàn)音頻信號的端點檢測。由此可以將輸入的音頻信號劃分為語音段和非語音段,然后進行有區(qū)別性的處理,進而保證了音頻信號處理系統(tǒng)具有降低碼率、提高語音識別率、提升信號的信噪比等性能。
實施例六
圖6為本發(fā)明實施例六提供的一種計算機設(shè)備的結(jié)構(gòu)圖,如圖6所示,該計算機設(shè)備集成了上述實施例提供的音頻信號處理系統(tǒng)60,還包括:處理器61和存儲裝置62;計算機設(shè)備中處理器61的數(shù)量可以是一個或多個,圖6中以一個處理器61為例;所述計算機設(shè)備中的處理器61和存儲裝置62可以通過總線或其他方式連接,圖6中以通過總線連接為例。此外,音頻信號處理系統(tǒng)可以直接以軟件形式安裝于設(shè)備中,也可以進行嵌入式集成,以芯片形式設(shè)置于計算機設(shè)備中,此時,音頻信號處理系統(tǒng)可以通過總線或其他方式連接與處理器61和存儲裝置62連接。
可以理解的是,該計算機設(shè)備可以是是手機、平板電腦、筆記本等具有通話功能的電子產(chǎn)品,同時也可以是智能語音助手、智能家居以及語音導航儀等帶有音頻交互功能的電子產(chǎn)品。
存儲裝置62作為一種計算機可讀存儲介質(zhì),可用于存儲一個或多個程序,同樣可存儲音頻信號處理系統(tǒng)60中的一個或多個程序,所述程序可以是軟件程序、計算機可執(zhí)行程序以及模塊,如本發(fā)明實施例中的音頻信號的端點檢測方法對應的程序指令/模塊(例如,附圖6所示的音頻信號的端點檢測裝置中的判定參數(shù)確定模塊51、端點標記確定模塊52以及檢測結(jié)果確定模塊53)。處理器61通過運行存儲在存儲裝置62中的軟件程序、指令以及模塊,從而執(zhí)行設(shè)備的各種功能應用以及數(shù)據(jù)處理,即實現(xiàn)上述方法實施例中的音頻信號處理方法。
存儲裝置62可包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需的應用程序;存儲數(shù)據(jù)區(qū)可存儲根據(jù)設(shè)備的使用所創(chuàng)建的數(shù)據(jù)等。此外,存儲裝置62可以包括高速隨機存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他非易失性固態(tài)存儲器件。在一些實例中,存儲裝置62可進一步包括相對于處理器61遠程設(shè)置的存儲器,這些遠程存儲器可以通過網(wǎng)絡(luò)連接至設(shè)備。上述網(wǎng)絡(luò)的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。
并且,當上述計算機設(shè)備所包括一個或者多個程序被所述一個或者多個處理器61執(zhí)行時,程序進行如下操作:
基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù);基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值;根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
此外,本發(fā)明實施例又提供一種包含計算機可執(zhí)行指令的存儲介質(zhì),所述計算機可執(zhí)行指令在由計算機處理器執(zhí)行時用于執(zhí)行一種如實施例一、實施例二、實施例三或?qū)嵤├闹兴龅囊纛l信號的端點檢測方法,該方法包括:基于待檢測音頻信號的功率譜及預先確定的噪聲功率譜,確定所述待檢測音頻信號的端點檢測判定參數(shù);基于設(shè)定長度的檢測結(jié)果標識數(shù)組中記錄的各端點檢測標記值,確定所述檢測結(jié)果標識數(shù)組的端點檢測標記值之和,其中,所述端點檢測標記值為語音端點標記值或非語音端點標記值;根據(jù)所述端點檢測判定參數(shù)及所述端點檢測標記值之和,確定所述待檢測音頻信號的端點檢測結(jié)果。
通過以上關(guān)于實施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,本發(fā)明可借助軟件及必需的通用硬件來實現(xiàn),當然也可以通過硬件實現(xiàn),但很多情況下前者是更佳的實施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在計算機可讀存儲介質(zhì)中,如計算機的軟盤、只讀存儲器(read-onlymemory,rom)、隨機存取存儲器(randomaccessmemory,ram)、閃存(flash)、硬盤或光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
值得注意的是,上述的實施例中,所包括的各個單元和模塊只是按照功能邏輯進行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護范圍。
注意,上述僅為本發(fā)明的較佳實施例及所運用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實施例,對本領(lǐng)域技術(shù)人員來說能夠進行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護范圍。因此,雖然通過以上實施例對本發(fā)明進行了較為詳細的說明,但是本發(fā)明不僅僅限于以上實施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。