基于嵌入式Linux的語音識別系統(tǒng)硬軟件設(shè)計
該設(shè)計運用三星公司的S3C2440,結(jié)合ICRoute公司的高性能語音識別芯片LD3320,進行了語音識別系統(tǒng)的硬件和軟件設(shè)計。在嵌入式Linux操作系統(tǒng)下,運用多進程機制完成了對語音識別芯片、超聲波測距和云臺的控制,并將語音識別技術(shù)應(yīng)用于多角度超聲波測距系統(tǒng)中。通過測試,系統(tǒng)可以通過識別語音指令控制測量方向,無需手動干預(yù),最后將測量結(jié)果通過語音播放出來。
1.引言
語言是人類傳播信息的重要手段,語音識別則是實現(xiàn)語音控制的關(guān)鍵技術(shù)。采用嵌入式語音識別技術(shù)使得設(shè)備具有功耗低、使用簡便、靈活等優(yōu)點,擺脫了復(fù)雜按鍵和按鈕的困擾,在服務(wù)機器人、智能家居及消費電子等領(lǐng)域發(fā)揮著重要作用。
2.系統(tǒng)構(gòu)成與原理
語音識別主要包括兩個階段:訓(xùn)練階段和識別階段。在訓(xùn)練或識別過程中,都必須對輸入語音進行預(yù)處理和特征提取。訓(xùn)練階段通過用戶輸入的若干次訓(xùn)練語音,經(jīng)過預(yù)處理和特征提取后得到特征參數(shù),最后通過特征參數(shù)建模,進而建立訓(xùn)練語音的參考模型庫。而識別階段是將輸入語音的特征矢量參數(shù)和參考模型庫中的參考模型進行相似性度量,然后把相似度最高的輸入特征矢量作為識別結(jié)果輸出,從而達到語音識別目的,如圖1 所示。
圖1 語音識別原理框圖
語音識別技術(shù)可分為:特定人識別和非特定人識別兩種。特定人識別是指需要對待識別人的語音進行采集訓(xùn)練,識別對象為專門的人;非特定人識別是指識別對象為大多數(shù)用戶,一般要采集多個人的語音進行錄音、訓(xùn)練和學(xué)習(xí),從而達到較高的識別率。
在實際應(yīng)用中,現(xiàn)代技術(shù)開發(fā)嵌入式語音識別有兩種實現(xiàn)方式:調(diào)入嵌入式語音開發(fā)包和外擴語音識別芯片。本文的語音識別系統(tǒng)方案是以嵌入式處理器S3C2440 為核心,外擴非特定人語音識別芯片LD3320,并將超聲波測距模塊和云臺相結(jié)合作為系統(tǒng)的機械執(zhí)行機構(gòu)。系統(tǒng)測量過程如下:首先根據(jù)語音指令控制兩自由度云臺的位姿,使超聲波探測器指向特定方向,然后開啟超聲波探測器,測量出前方障礙物距離,最后將測量結(jié)果轉(zhuǎn)化為可以播放的二進制數(shù)據(jù)流,通過LD3320的播放功能完成數(shù)據(jù)的播放。
3.硬件電路設(shè)計方案
硬件電路主要包括語音識別部分、主控部分、超聲波測距部分和舵機控制部分,如圖2 所示。處理器為三星公司的S3C2440,系統(tǒng)主頻最高可達533 MHz,支持SPI、I2C、UART等接口,能夠滿足控制系統(tǒng)的需求。主控芯片S3C2440 通過SPI 總線完成對語音識別模塊的讀寫操作,超聲波測距部分和舵機控制部分由處理器的GPIO進行統(tǒng)一控制。
圖2 硬件電路設(shè)計方案