<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > 基于TMS320VC5509A的語音識別與控制系統

          基于TMS320VC5509A的語音識別與控制系統

          作者: 時間:2008-07-17 來源:網絡 收藏
          (Speech Recognition)是機器通過訓練和匹配過程把信號轉變?yōu)橄鄳奈谋净蛎畹募夹g。關于技術,先后出現了動態(tài)時間彎折(DTW)、隱馬爾可夫和人工神經網絡三種主要方法[1]。由于每種方法都涉及大量的乘加運算,并且計算精度是算法性能的有效保障,因此對處理器的運算能力要求較高。近年大規(guī)模集成電路的快速發(fā)展,為語音的實現創(chuàng)造了硬件條件。目前,DSP的語音識別系統多以浮點型DSP為主[2],但其成本較高。本文以TI公司的較低成本定點DSP 作為處理芯片。在軟件編程時,考慮運算速度和精度對性能的影響,將定點運算與定點DSP的浮點運算巧妙結合,既保證了處理速度,又提高了運算精度和識別率。此外,該系統的DSP芯片自帶USB接口,可使程序下載不借助于硬件仿真器,便于推廣應用;可編程邏輯器件(CPLD)能夠根據識別結果發(fā)出相應的控制信號以驅動各種控制對象;外擴Flash達1M16Bit,不僅能存儲較多數量的模板,也可實現程序的并行加載,使系統能夠脫機運行,便于攜帶。通過對語音信號的采集與識別,能夠完成對特定人、小詞匯量、孤立詞的識別,并且能發(fā)出相應的控制信號,以達到系統的設計要求。實踐驗證了該系統具有可靠性、穩(wěn)定性和靈活性。
          1 語音識別原理
          語音識別原理框圖如圖1所示。語音信號輸入之后,預處理和數字化是進行語音識別的前提條件。其中,預處理主要是進行預濾波,保留正常人的300~3400Hz的語音信號;數字化是要進行A/D轉換及抗混疊等處理;特征提取是進行語音信號訓練和識別必不可少的步驟。能夠體現語音信號特征的參數包括:(1)LPC的倒譜參數;(2)Mel系數的倒譜參數;(3)采用前沿數字信號處理技術的特征分析手段,如小波分析、時/頻域分析、人工神經網絡等。本文采用基于LPC的倒譜參數表示方法,提取出的特征值存入參考模式庫中,用來匹配待識別語音信號的特征值。匹配計算是進行語音識別的核心部分,由待識別人的語音經過特征提取后,與系統訓練時產生的模板進行匹配,在說話人辨認中,取與待識別語音相似度最大的模型所對應的語音作為識別結果,這就是語音識別的整個過程[1]。


          2 硬件結構部分
          本系統的硬件結構框圖如圖2所示。


          此系統的核心器件是TI公司的定點DSP芯片。它是系統的運算處理單元,具有2個乘法器(MAC),4個累加器(ACC);40位、16位的算術邏輯單元(ALU)各一個,這大大增強了DSP的運算能力;指令字長不只單一的16位,可擴展到最高48位,數據字長16位;在144MHz下工作,指令周期可達6.94ns。還提供高速的多通道緩沖串口McBSP(Multi-channel Buffererd Serial Ports),DSP可通過McBSP與其他DSP、編解碼器等器件相連。McBSP具有全雙工通信,雙緩沖數據寄存器,允許傳送連續(xù)的數據流,能夠向CPU發(fā)送中斷,向DMA控制器發(fā)送DMA事件,可設置幀同步脈沖和時鐘信號的極性等功能,這大大方便了DSP采集音頻信號[3]。除此之外,TMS320VC5509A還提供了更為高效的外部存儲器接口(EMIF),以往DSP的空間選通信號被片選信號取代,而每個片選信號分別占用不同的地址空間,這樣就不需要外部的譯碼電路,從而實現了與外部設備的無縫連接,可使DSP外部存儲空間擴大到滿足系統要求。值得強調的是,可通過USB接口對TMS320VC5509A燒寫程序而不必借助仿真器。正是基于這些優(yōu)點,選擇該芯片可節(jié)省開發(fā)資金,減小電路板面積。
          TLV320AIC23是TI公司的一款低成本、低功耗的音頻編解碼芯片(CODEC),在本系統中負責采集語音信號。它與本系統相關的性能參數如下:(1)支持8kHz~96kHz可調采樣率;(2)與DSP連接,主從類型可通過軟件編寫來實現;(3)DSP可通過I2C總線來配置TLV320AIC23的寄存器;(4)采集語音信號字長16/20/24/32Bit;(5)MIC音頻輸入具有強抗噪性;(6)具有可調1~5dB的完整緩存放大系統[4]
          EPM3128ATC100-10可編程邏輯器件(CPLD)在本系統中擔當兩方面的職能:(1)作為控制部件,接收DSP發(fā)出的信號,經邏輯判斷后,驅動諸如電機、發(fā)光二極管等器件;(2)用于DSP地址線的擴展。TMS320VC5509A只有14根地址線,但它的外部存儲空間可以擴展到16MB(字節(jié)尋址),顯然,DSP的固有地址線是無法滿足要求的。本系統采用CPLD完成地址線的擴展[5][6]
          HY57V641620同步動態(tài)存儲器(SDRAM),容量為4M16Bit。作為RAM的擴展,大大增強了DSP的存儲與運算能力[7]。
          SST39VF1601閃存存儲器(Flash),容量為1M16Bit。在這個系統中[8],它主要用來存儲程序代碼。上電后,DSP從外部Flash加載并執(zhí)行程序代碼,使系統能夠脫機運行。
          3 軟件模塊部分
          軟件流程如圖3所示。系統采集語音信號后,首先要進行預濾波和預加重;接著將語音信號進行分幀,由于語音信號具有極強的相關性,因此在分幀時,要考慮幀重復。本文將語音信號以256個采樣點為一幀,兩幀之間的重復點數為80;然后計算每幀信號的短時能量與短時平均過零率,這也是接下來進行端點檢測的依據;利用門限判決進行端點檢測后,提取每幀信號的LPC系數,作為該幀信號的特征值;最后,用語音信號的特征值與模板逐個進行匹配。相似度最大的模板所對應的語音信號為識別結果,根據識別結果就可以向外發(fā)出控制信號。


          3.1 端點檢測
          端點檢測就是要從采集的信號中檢測出說話人的命令字。此系統中,對語音信號進行了分幀操作,一種簡便的方法就是獲取說話人命令字的起始幀數,具體操作是通過求一幀信號的短時能量和短時平均過零率來判斷的。語音信號的短時能量分析給出了反應其幅度變化的一個合適描述方法。一幀語音信號的短時能量定義為:

          短時過零率,即指每幀內信號通過零值的次數,能夠在一定程度上反映信號的頻譜特性。一幀語音信號內短時平均過零率定義為:

          在正式端點檢測開始后,短時能量與短時平均過零率一起做為門限來判決說話人命令字的開始與結束:連續(xù)5幀語音信號超過門限值視為說話人命令字的開始,連續(xù)8幀語音信號低于門限值視為說話人命令字的結束。
          3.2 特征值提取
          此系統以語音信號的線性預測系數(LPC)作為特征值。采用自相關法獲取LPC系數,先計算每幀語音信號的13階自相關函數,定義為:

          得到自相關函數后,采用萊文遜―杜賓遞推算法計算線性預測系數,得到說話人一個命令字的LPC系數矩陣,大小為:命令字幀數12。
          3.3 模板匹配(DTW算法)
          模板匹配就是把上述計算得到的LPC系數矩陣中的元素與事先存在DSP中的模板元素進行差值計算。在此系統中,采用動態(tài)時間彎折(DTW)算法:假設參考模板的LPC系數向量序列為X=(x1,x2,…,xI),輸入語音的LPC系數向量序列為Y=(y1,y2,…,yJ),I≠J。DTW算法就是要尋找一個最佳的時間規(guī)正函數,使待測語音的時間軸j非線性地映射到參考模板的時間軸i上,使總的累計差值最小[1]。算法過程如圖4所示。

          圖4中曲線連接起來的點就是模板與待測語音信號間的距離d(xi(n),yj(n)),亦稱為局部匹配距離。DTW算法就是通過局部優(yōu)化的方法實現加權距離總和最小,也就是相似度最大,定義為:

          3.4 小數的定點運算
          在進行語音信號處理時,通常要先對其進行歸一化,使得語音信號|x(n)|≤1,為后面計算自相關函數及求LPC系數提供方便。這樣就面臨一個實際問題:對定點DSP而言,參與數值運算的數是16位二進制整型數,而DSP芯片如何處理小數運算呢?方法是確定一個數的小數點處于16位中的某一位,這也就是數值的定標問題,舉例如下:
          Q0 定標(19AB)16=(31147)10
          Q15定標(19AB)16=(0.95)10
          由此可見,對于定點DSP芯片內部而言,一個16位整型數到底表示多少,它本身是不能夠分辨的,必須通過定標來確定。進行歸一化處理就是把數以Q15形式定標,為以后的運算做好準備[2]。做小數的定點運算時,還要進行預運算和移位。預運算就是事先估計運算結果,為下一步移位做準備。其實現可采用如Matlab等的輔助軟件。由于此系統的識別過程涉及較多的乘加運算,如幾個Q15定標的數進行加法運算,結果可能出現溢出現象,如果不能進行很好的預運算,將對后面的運算產生很大影響;移位是小數做定點運算的具體操作。做加、減、乘、除法時,要嚴格按照相應的操作方法,每做一個四則運算都要參照實際情況,遵循先移位、再做運算、最后再移位的步驟,以在精度損失最少的情況下保證運算結果的可靠性。
          3.5 定點DSP做浮點運算
          定點運算是以DSP的實際存儲形式(16位二進制整型)為數值格式進行加、減、乘、除等四則運算,允許數值的表示范圍是:(-32768)10~(32767)10。定點DSP的浮點運算是人為地開辟兩個16位存儲單元來表示一個數值,其中一個用來存儲尾數,另一個用來存儲指數,按照自然科學計數法進行四則運算。顯而易見,這樣的存儲計算方法,其精度和動態(tài)表示范圍都遠遠高于定點運算。
          為降低成本,本系統選擇了一款定點DSP。由于端點檢測、模板匹配對精度要求不高,所以采用定點算法進行小數運算;計算自相關系數、提取LPC系數時,要求精度高,因此采用浮點算法進行小數運算。這也意味著,在端點檢測完成之后,要先將定點運算轉換為浮點運算;提取LPC系數之后,再將浮點運算轉換為定點運算進行匹配。以犧牲少量運算時間為代價,適當提高運算精度和識別率。實驗證明,這是可行的。
          4 測試方法及結果
          下面用兩種實驗方法來測試此系統的性能。
          實驗1:用CPLD的輸出信號來驅動兩個步進電機R和L,某特定人的四個命令信號“走”,“左”,“右”,“?!笨刂七@兩個電機的運轉。對應的實驗現象:走―L、R同時轉;左―L轉,R停;右―L停,R轉;停―R、L都不轉。
          實驗2:用CPLD的輸出信號驅動四個發(fā)光二極管A、B、C、D,某特定人的四個命令信號“1”,“2”,“3”,“4”來控制相應發(fā)光二極管的亮滅。對應的實驗現象:1―A亮,其余滅;2―B亮,其余滅;3―C亮,其余滅;4―D亮,其余滅。
          以上兩個實驗,除了測試識別率外,還要比較在計算自相關函數和提取LPC系數時,分別采用定點算法、浮點算法所消耗機器周期的個數,本系統DSP的機器周期為83.28ns。由于每次采集的命令字幀長不確定,以進行十次實驗消耗的機器周期的平均值來統計,測試結果如表1所示。


          由表1可見,在相同的測試條件下,當采用浮點運算計算自相關函數和提取LPC系數時,盡管識別率高于定點運算,但是系統消耗了更多的運算時間。
          本文設計的語音識別與,具有體積小、成本低、便于攜帶等優(yōu)點。在實現系統功能的同時又使板級調試與系統升級變得極為方便,因此可以作為一個處理語音信號的通用硬件平臺,亦可完成語音編碼、聲回波對消等算法的實現。系統在DSP提供的地址線少于Flash地址線的情況下,由CPLD擴展了DSP的地址線。在不借助硬件仿真器的情況下,實現了對Flash的在線燒寫,并采用二次引導的方法,完成了程序的并行加載,使系統能夠脫機運行。由CPLD發(fā)出相應的識別控制信號,能夠驅動電動機及指示燈等。測試結果表明,該系統處理速度快,運行穩(wěn)定可靠,達到設計要求。
          參考文獻
          [1] 韓紀慶,張磊,鄭鐵然.語音信號處理[M].北京:清華大學出版社,2004.
          [2] 張雄偉,陳亮,徐光輝.DSP芯片的原理與開發(fā)應用[M].北京:電子工業(yè)出版社,2004.
          [3] Texas Instruments.TMS320VC5509A Fixed-Point DigitalSignal Processor[EB/OL].Texas Instruments Inc,2006,3.www.ti.com.
          [4] Texas Instruments.TLV320AIC23 Data Manual[EB/OL]. Texas Instruments Inc,2002,1.www.ti.com.
          [5] Texas Instruments.TMS320VC5509 Evaluation Module Technical Reference[EB/OL].Texas Instruments Inc,2002,1.www.ti.com.
          [6] Altera.MAX 3000A Programmable Logic Device FamilyDate Sheets[EB/OL].Altera Corporation,2003,6.lit_req@altera.com.
          [7] Hynix.HY57V641620HG Data Sheets[EB/OL].Hynix Semiconductor,2002,1.www.21ic.com.
          [8] Silicon Storage Technology.SST39VF1601 Data Sheets[EB/OL].Silicon Storage Technology,Inc,2003,11.www.sst.com.



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();