話音激活檢測模塊的設(shè)計(jì)與仿真的中期報(bào)告_第1頁
話音激活檢測模塊的設(shè)計(jì)與仿真的中期報(bào)告_第2頁
話音激活檢測模塊的設(shè)計(jì)與仿真的中期報(bào)告_第3頁
話音激活檢測模塊的設(shè)計(jì)與仿真的中期報(bào)告_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

話音激活檢測模塊的設(shè)計(jì)與仿真的中期報(bào)告中期報(bào)告:話音激活檢測模塊的設(shè)計(jì)與仿真1.介紹話音激活檢測模塊是語音處理系統(tǒng)中的一個(gè)重要部件,它負(fù)責(zé)在語音信號(hào)中檢測出有效語音信號(hào)的起始點(diǎn)和終止點(diǎn)。在語音處理領(lǐng)域,對(duì)于后續(xù)處理模塊的性能影響很大,因此說話人喚醒、語音識(shí)別、語音合成等領(lǐng)域都需要使用話音激活檢測模塊。本文將介紹話音激活檢測模塊的設(shè)計(jì)與仿真,分別從模塊的工作原理及其實(shí)現(xiàn)、仿真實(shí)驗(yàn)的步驟及結(jié)果等角度進(jìn)行闡述。2.模塊的工作原理及其實(shí)現(xiàn)話音激活檢測模塊的工作流程如下:首先,將輸入語音信號(hào)分幀,然后對(duì)幀信號(hào)進(jìn)行預(yù)處理,包括加窗、預(yù)加重等操作,接著對(duì)前一幀信號(hào)和當(dāng)前幀信號(hào)進(jìn)行能量比較,并設(shè)置一個(gè)閾值(該閾值會(huì)動(dòng)態(tài)更新),然后判斷該幀是否為語音幀。如果是語音幀,則記錄此時(shí)的時(shí)間,并繼續(xù)檢測后續(xù)幀是否為語音幀;如果非語音幀,則停止記錄時(shí)間并輸出上一個(gè)語音幀開始時(shí)間和終止時(shí)間。根據(jù)上述流程,我們實(shí)現(xiàn)了一下函數(shù):```pythondefvad(signal,fs,winlen=0.025,winstep=0.01,thresh=0.1,smooth=0.01,delta=0.5):#分幀frames=sigFraming(signal,winlen,winstep,fs)frames=frames.astype(np.float32)#預(yù)處理foriinrange(len(frames)):frames[i]=preEmphasis(frames[i],delta)frames[i]=hammingWin(frames[i])#計(jì)算每幀的能量frameEnergy=np.array([np.sum(frame**2)forframeinframes])#動(dòng)態(tài)閾值minThresh=np.min(frameEnergy)maxThresh=np.max(frameEnergy)thresh=minThresh+thresh*(maxThresh-minThresh)#平滑frameEnergySmoothed=smoothSignal(frameEnergy,smooth)#判斷是否為語音幀isVoice=np.array([1ifenergy>threshelse0forenergyinframeEnergySmoothed])#記錄語音幀的時(shí)間voicedIndex=np.where(isVoice==1)[0]timeLimit=[]i=0whilei<len(voicedIndex):begin=0end=0j=iflag=0whilej<len(voicedIndex)-1:ifvoicedIndex[j+1]-voicedIndex[j]>1:#另起一段語音幀ifflag:timeLimit.append((begin,end-1))i=j+1breakelse:ifnotflag:flag=1begin=voicedIndex[j]end=voicedIndex[j]j+=1ifj==len(voicedIndex)-1andflag:timeLimit.append((begin,end-1))i+=1returntimeLimit```其中,`sigFraming`、`preEmphasis`、`hammingWin`和`smoothSignal`函數(shù)分別實(shí)現(xiàn)了信號(hào)分幀、預(yù)加重、加窗和信號(hào)平滑操作。3.仿真實(shí)驗(yàn)的步驟及結(jié)果下面我們來用一些試驗(yàn)驗(yàn)證我們的模塊是否正常工作。首先,定義一個(gè)信號(hào):```pythonfs=8000time=np.linspace(0,1,fs,endpoint=False)freq1=100freq2=500signal1=np.sin(2*np.pi*freq1*time)signal2=np.sin(2*np.pi*freq2*time)signal=np.concatenate((signal1,signal2))```接著,使用模塊處理此信號(hào):```pythontimeLimit=vad(signal,fs,thresh=0.2)```輸出語音幀的起始、終止時(shí)間如下:```[(0,1865),(3200,4799)]``

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論