<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于SPCE061A的語(yǔ)音識別系統的設計

基于SPCE061A的語(yǔ)音識別系統的設計

作者: 時(shí)間:2012-01-07 來(lái)源:網(wǎng)絡(luò ) 收藏

1引言

語(yǔ)音識別技術(shù)就是讓機器通過(guò)識別和理解把語(yǔ)音信號轉變?yōu)橄鄳奈谋净蛎畹募夹g(shù)。語(yǔ)音識別是一門(mén)交叉學(xué)科,正逐步成為信息技術(shù)中人機接口的關(guān)鍵技術(shù),語(yǔ)音識別技術(shù)與語(yǔ)音合成技術(shù)的結合,使人們能夠甩掉鍵盤(pán),通過(guò)語(yǔ)音命令進(jìn)行操作。近年來(lái)語(yǔ)音學(xué)研究的深入和數字信號處理軟硬件技術(shù)的發(fā)展,語(yǔ)音技術(shù)的應用己經(jīng)逐步具備走出實(shí)驗室,服務(wù)于社會(huì )的能力。尤其在中小字表孤立詞語(yǔ)音識別技術(shù)已基本成熟,逐漸開(kāi)始應用于家電產(chǎn)品、智能玩具等對識別率要求不是極其嚴格的領(lǐng)域。

2 硬件系統的總體方案介紹

本系統采用凌陽(yáng)作為主控芯片,并根據功能需求設計嵌入式的硬件。由于這是一款包含DSP功能并集成了戶(hù)A/D,D/A等一系列功能的語(yǔ)音處理專(zhuān)用SOC,模塊電路、外擴存儲FLASH、LED顯示電路、通信模塊、功放和喇叭輸出模塊等。

圖1 的硬件組成

2.1電源電路

采用低電壓供電方式,這可以大大降低芯片的功率損耗。其中,SPCE06lA的電源分兩種,即內核電源(VDD)和I/O口電源(VDDH)。I/O口電源采用5V電壓,而內核電源則為3.3V或者更低。降低芯片內核電壓的目的主要還是降低芯片的功耗,同時(shí)也可以降低芯片的工作溫度,延長(cháng)芯片使用壽命。盡管這種語(yǔ)音芯片的工作電壓范圍很大,但是為了使芯片內核運行更加穩定,同時(shí)又保證I/O口及外部擴展部件的工作電壓要求,系統采取:

AC220V電源通過(guò)AC10V進(jìn)行整流,利用以7805穩壓集成塊為核心的電路,產(chǎn)生+5V電源,作為語(yǔ)音識別與播放模塊共同使用的電源。5V電源經(jīng)過(guò)TR1972-33得到DC3.3v為CPU核心供電。

圖2 電源電路

2.2存儲模塊部分電路設計

因為的FLASH只有32Kwords,要存放大量的語(yǔ)音資源,就需要外擴存儲器。系統使用的是一種用SIO擴展串行存儲器的方法。本方案采用凌陽(yáng)公司的SPR4096芯片進(jìn)行設計。SPR4096是一個(gè)高性能的4M-bit(512K×8-bit)總線(xiàn)FLASH,分為256個(gè)扇區(sector)每個(gè)扇區為2K-byte。SPR4096還內置了一個(gè)4K×8-bit的SRAM。在進(jìn)行FLASH的編程/擦除的時(shí)候,可以并發(fā)執行SRAM的讀/寫(xiě)。SPR4096內置了一個(gè)總線(xiàn)存儲器接口和一個(gè)串行接口,它允許單片機通過(guò)8-bit并行模式或者1-bit的串行模式訪(fǎng)問(wèn)FLASH SRAM存儲區。本例使用串行模式,其接口的工作頻率為5MHz。SPR4096有兩個(gè)電源輸入端VDDI和VDDQ。VDDI為內部FLASH和控制邏輯供電;VDDQ專(zhuān)門(mén)為I/O供電。SPR4096最大讀電流為2mA,最大編程/擦除電流為6mA。

2.3音頻輸出電路模塊

放音利用的是SPCE06lA內部集成的DAC,它是電流輸出,為了能夠驅動(dòng)揚聲器SPEAKER放音需要相應的驅動(dòng)電路。圖中的SPY0030單運放是凌陽(yáng)公司的產(chǎn)品。與常用的單運放LM386比,SPY0030的優(yōu)勢在如LM386的工作電壓需要在4v以上,而SPY0030只需要2.4v可工作,LM386的輸出功率在100mw以下,而SPY0030約為700mw,可以提供足夠的驅動(dòng)能力。音頻輸出電路如圖3所示。

圖3 音頻輸出電路

2.4 MIC輸入模塊

SPCE061A的A/D轉換器有8個(gè)通道,其中有1個(gè)通道是MIC-NI輸入,它專(zhuān)門(mén)用于對語(yǔ)音信號進(jìn)行采樣。語(yǔ)音信號經(jīng)過(guò)MCI轉換成電信號,然后輸入至SPCE061A內部前置放大器。由于人們說(shuō)話(huà)時(shí),麥克風(fēng)距離嘴邊的距離不同,語(yǔ)音信號的能量將會(huì )有很大的差異,此時(shí),如果芯片的的輸入信號太大或是太小都將影響識別的精度。而SPCE06lA內部就帶有自動(dòng)增益控制電路AGC能隨時(shí)跟蹤、監視前置放大器輸出的音頻信號電平,當輸入信號增大時(shí)AGC電路自動(dòng)減小放大器的增益;當輸入信號減小時(shí),AGC電路自動(dòng)增大放大器的增益,從而以補償太小或是太大的信號,以便使進(jìn)入戶(hù)A/D的信號保持在最佳電平,又可使削波減至最小。

2.5通信接口電路

單片機中的數據通過(guò)串口經(jīng)MAX232電平轉換成RS-232電平向上位傳輸。由于SPCE06lA的串行口都為T(mén)TL電平,它與RS-232C電平互不相容,所以在二者接口處,必須進(jìn)行電平轉換。利用MAX232芯片外接5V電源,外接電容,可產(chǎn)生正負10V的電源形成232C的收發(fā)器。本系統中設有通信電路是為將大量語(yǔ)音數據處理都需要上傳給PC,由PC完成。比如,噪聲能量和過(guò)零率的計算,數字濾波器設計,模型庫的訓練等。

3軟件設計部分

總體來(lái)說(shuō),本系統包含語(yǔ)音識別模塊的軟件設計和語(yǔ)音回放模塊的軟件設計。

3.1語(yǔ)音識別部分設計

語(yǔ)音識別程序是軟件編程的主體工作識別模塊的程序流程圖4所示。本系統采用了常用的能量過(guò)零率雙門(mén)限法進(jìn)行語(yǔ)音端點(diǎn)檢測,采用了計算量較小的線(xiàn)性預測倒譜系數作為語(yǔ)音信號特征矢量,另外,基于非特定人的嵌入式系統要求,為了達到減少計算量和存儲量的目的,在特征參數提取完成之后,利用矢量量化方法進(jìn)行數據壓縮。語(yǔ)音識別模型采用(DHMM)離散隱馬爾可夫模型,利用Baum-welth重估算法、前向后向算法、viterbi算法來(lái)完成語(yǔ)音模板的訓練和語(yǔ)音識別的任務(wù)。

圖4 語(yǔ)音識別模塊流程圖

初始化子程序的作用是將微處理器中與語(yǔ)音識別相關(guān)的資源進(jìn)行參數設置,使其實(shí)現為相應的功能,例如自動(dòng)A/D變換等;

端點(diǎn)檢測用來(lái)避免不必要的計算量,同時(shí)設定語(yǔ)音識別解碼的起點(diǎn)和終點(diǎn),防止無(wú)效搜索;預處理用來(lái)提高語(yǔ)音識別性能,增強穩健性的重要環(huán)節。預處理包括對原始語(yǔ)音信號的濾波、預加重、加窗、分幀等環(huán)節。同時(shí)還可能包含語(yǔ)音增強、噪聲抵消、端點(diǎn)檢測等等。預加重主要是為了提升高頻部分,以彌補聲音在唇部輻射時(shí)產(chǎn)生的高頻部分的損失,可以使信號的頻譜平坦,減少信號的動(dòng)態(tài)范圍;

特征提取就是對語(yǔ)音信號進(jìn)行分析處理,去除對語(yǔ)音識別無(wú)關(guān)緊要的冗余信息,提取出對語(yǔ)音識別有用的重要信息;

矢量量化(VQ)是一種重要的信號壓縮方法,它可以減少語(yǔ)音信號處理中所需要的大量的存儲空間,并可以減少識別匹配的計算量;

語(yǔ)音信號本身是一個(gè)可觀(guān)察的序列:它是由大腦中的(不可觀(guān)察的)、根據言語(yǔ)需要和語(yǔ)法知識(狀態(tài)選擇)所發(fā)出的音素(詞、句)的參數流,所以用離散隱馬爾可夫模型(DHMM)來(lái)模擬語(yǔ)音信號。

3.2語(yǔ)音播放的模塊設計

為了有一個(gè)友好的人機交互的功能,該系統還必須語(yǔ)音回放。語(yǔ)音數據的保存形式是以臺灣凌陽(yáng)公司開(kāi)發(fā)的幾種語(yǔ)音壓縮編碼算法來(lái)實(shí)現的。同時(shí),凌陽(yáng)公司還提供了相應的語(yǔ)音壓縮與解壓算法的API接口,可以方便開(kāi)發(fā)人員進(jìn)行編程開(kāi)發(fā)工作。

先用凌陽(yáng)Compress Tool事先把所需要的語(yǔ)音信號錄制好,用凌陽(yáng)壓縮工具進(jìn)行壓縮,這樣就可以得到所要播報的語(yǔ)音了。語(yǔ)音播放程序調用凌陽(yáng)提供的音頻編碼算法庫中的API函數,采用凌陽(yáng)壓縮算法中的SACM_S480進(jìn)行自動(dòng)放音,其語(yǔ)音自動(dòng)播放程序流程圖如下圖5所示。語(yǔ)音播放是在中斷服務(wù)程序中執行,本系統使用了FIQ_TMA中斷源。語(yǔ)音播放通常會(huì )出現兩種情況:一是系統能正確識別語(yǔ)音,此時(shí)的識別后處理是通過(guò)語(yǔ)音播報出正確的結果;二是系統不能正確識別語(yǔ)音,則播報出不能識別的原因。語(yǔ)音回放流程圖如圖5所示。

圖5 語(yǔ)音回放流程圖

4 總結

本文的創(chuàng )新點(diǎn)是設計的提出的嵌入式非特定人所選用的SPCE061A微處理CPU最高時(shí)鐘可達到49MHZ,因此在處理復雜的數字信號方面它可以和DSP相媲美,但其價(jià)格卻要比專(zhuān)用的DSP芯片廉價(jià),并且它具有較強的中斷處理能力,系統支持10個(gè)中斷向量及10余個(gè)中斷源,適合實(shí)時(shí)語(yǔ)音處理,并具有雙通道10位DAC方式的音頻輸出功能,配置帶自動(dòng)增益控制功能(AGC)的麥克風(fēng)輸入方式,為語(yǔ)音處理帶來(lái)了極大便利;其次,采用了離散隱馬爾可夫模型來(lái)模擬語(yǔ)音信號,并且隨著(zhù)DHMM在語(yǔ)音模板的訓練階段計算復雜度的增加,識別階段的計算負擔相應的大大減少,對于特定人、小詞匯量的語(yǔ)音控制系統己能滿(mǎn)足要求。此項目投入市場(chǎng)后,半年內產(chǎn)生50余萬(wàn)的經(jīng)濟效益。

參考文獻

[1]薛均義,張延斌,虞鶴松等.凌陽(yáng)16位單片機原理及應用[M].北京航空航天大學(xué)出版社2003.72~89

[2]易克初等.語(yǔ)音信號處理.國防工業(yè)出版社[M].2000.11-15 ;154-172

[3]胡航.語(yǔ)音信號處理.哈爾濱工業(yè)大學(xué)出版社[M].2000.88-120

[4]胡凱,張穎超.生化分析儀的設計及與PC機的通信[J].微計算機信息.2006,9-1:20-22

[5]馬鴻文.基于A(yíng)T89C52單片機的自動(dòng)存取柜的設計與實(shí)現[J].微計算機信息,2006,7-2:10-13.

矢量控制相關(guān)文章:矢量控制原理


關(guān)鍵詞: SPCE061A 語(yǔ)音識別系統

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>