嵌入式實時音樂語音識別系統(tǒng)的實現
引言
本文引用地址:http://m.butianyuan.cn/article/152533.htm隨著電子音樂的快速發(fā)展, 迫切需要一種更智能、更便捷的用戶操作系統(tǒng)。自動音樂語音識別系統(tǒng)能夠提供便利的人機交互[1],方便人們自己學習音樂知識, 將成為一種主要方法,也是一個發(fā)展的方向。目前, 實驗室環(huán)境中自動語音識別系統(tǒng)已經取得了很好的效果, 但是應用于電子音樂方面的自動音樂語音識別卻很少。當自動語音識別應用于電子音樂時, 必須對識別方法進行相應改進, 才能滿足其對運算速度、內存資源等方面的要求。為了解決這個問題, 本文將結合音樂語音的特點,設計并實現嵌入式音樂語音識別系統(tǒng)。
1系統(tǒng)硬件電路設計系統(tǒng)
硬件電路設計的原理框圖如圖1所示,它主要由音樂語音信息采集部分、音樂語音處理DSP部分、程序數據存儲器FLASH部分、數據存儲器SRAM部分、鍵盤管理部分、音源芯片語音輸出部分、以及電源部分組成。音樂語音信息采集部分主要由MCU GPL162001來完成,該芯片自帶12bit ADC和72個I/O口,方便鍵盤管理,。音樂語音處理DSP部分選用了目前通用的TI公司的TMS320VC5402 16位微處理器,處理速度快,最快運行速度可達100MIPS,功耗低,是一款理想的DSP處理器??紤]到速度要求較快,DSP的晶振選用100MHZ的晶振。另外,由于音樂輸出要求有專業(yè)的樂音效果,電路中選擇了由中芯微公司提供的64和弦MIDI音頻處理芯片。此外,TMS320VC5402片上沒有FLASH且片內RAM只有16K,考慮到語音數據比較大,我們外擴了1M的FLASH芯片和64K的SRAM芯片。 DSP(TMS320VC5402) 是整個硬件系統(tǒng)的信號處理中心,完成音樂語音識別工作, 進行RAM及FLASH 存儲芯片的數據管理與調度, 并向主控芯片 MCU 提供反饋信息。電源的工作電壓為3.3V。
圖1 系統(tǒng)原理圖
2系統(tǒng)的軟件實現
和大部分語音識別系統(tǒng)一樣,音樂語音識別系統(tǒng)本質也是一種模式識別系統(tǒng)。它的基本流程圖如圖2所示,主要包括語音信號預處理,端點檢測,特征參數求取和語音識別等幾個步驟。
圖2 系統(tǒng)識別算法流程圖
2.1語音信號預處理
語音信號預處理主要是對語音信號進行前期的優(yōu)化處理,方便后面的端點檢測和語音識別,語音信號預處理主要包括分幀處理、預加重處理、加窗處理、濾波和消除毛刺處理等。
2.1.1語音信號的分幀
語音信號的特征是隨著時間而變化的,只有在一段短的時間間隔中,語音信號才保持相對穩(wěn)定一致的特征, 通常這段時間取5~50ms。在程序中取200個采樣點,對于8k的采樣頻率,即相當于25ms。幀間重疊為100個采樣點,亦即12.5ms。
2.1.2預加重
由于語音信號平均功率譜受聲門激勵和口鼻輻射影響,800HZ以上的高頻信號按6DB/倍頻跌落,所以求語音信號頻譜時,頻率越高相應成分越少,高頻部分的頻譜比低頻部分難求,所以要進行預加重處理。在數字語音信號處理中,數字語音信號通常都通過一個低階的系統(tǒng)(典型的是一個一階的濾波器),即 式中, 為預加重系數,通常 最為常用的取值是在0.95附近。由于本系統(tǒng)采用的是 =0.94
2.1.3加窗
對每一幀語音進行加窗實質是語音波形乘窗函數,為減少時間窗兩端的坡度,使窗口邊緣兩端平滑過渡到零,減小語音幀的截斷效應, 這里采用典型的應用在語音識別系統(tǒng)中加hamming窗。
2.1.4濾波、消除毛刺
由于語音信號包含很多噪聲信號,這些噪聲信號在時域中表現出高頻隨機、毛刺等信號,這些信號很可能影響識別的效果,所以,對信號進行帶通濾波和消除毛刺處理能很好提高識別的精度。由于人聲主要在60-1000HZ ,采用50-1000HZ的FIR帶通濾波器對原信號進行濾波,即可獲得良好的效果。 消除毛刺影響主要采用語音信號峰谷值檢測的方法,把相鄰兩峰值之間很不明顯的谷值和相鄰兩谷值之間很不明顯的峰值去掉,對語音曲線中一些較小的毛刺進行曲線整形,消除那些明顯的毛刺!
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論