你的位置:首頁 > 互連技術 > 正文

技術達人:ARM的非特定人語音識別系統(tǒng)的設計

發(fā)布時間:2014-01-24 責任編輯:mikeliu

【導讀】語音交互是人類交流和交換信息中最便捷的手段和最重要的媒體,長久以來,人們都希望找尋一種新的途徑解決人類與機器的交互方式,希望機器設備能夠“聽”懂人類的語音信息進行交互,識別其含義并響應、從而做出相應動作,這樣的交互方式更能被使用者接受,取代原有的鍵盤、按鈕、開關等傳統(tǒng)交互方式,基于非特定人的語音識別技術已然成為人機交互新方式的一個重要發(fā)展方向和研究熱點。

語音信號的識別涉及眾多學科知識體系,與計算機、語言學、通信、數(shù)理統(tǒng)計、信號處理和人工智能等學科都有著密切的關系,由于語音信號具有信息量大、不確定性、動態(tài)性和連續(xù)性的特點,在語音信號的預處理、特征提取等階段處理數(shù)據(jù)量非常大,對軟件的處理算法和硬件的處理能力都有較高的要求,傳統(tǒng)使用PC機或者工控機等高處理性能的平臺實現(xiàn)語音信號識別,但硬軟件開發(fā)造價無疑是阻礙普及的重要因素,本系統(tǒng)采用ARM Cortex M3 內(nèi)核ST 公司的32 位高性能單片機STM32F103C8T6結合LD3320語音識別芯片,通過構建SD卡文件系統(tǒng)實現(xiàn)非特定人語音識別關鍵詞動態(tài)編輯功能,適用于嵌入式語音識別場合。系統(tǒng)電路簡單,性價比高,識別距離和識別精度都可以滿足嵌入式應用。

1 非特定人語音識別技術原理

非特定人語音識別技術研究的最終目的是讓計算機等設備能夠“聽懂”人類語音,提取出語音中所包含的特定信息,成為人機通信和交互最便捷的手段。由于語音信號本身具有不確定性、動態(tài)性和連續(xù)性,這就為準確量化和處理該信號帶來非常大的困難,每個人的語音要建立不同的語音樣本也為識別的普及帶來瓶頸約束。目前的語音識別是先建立特征庫然后將待識別的信號經(jīng)處理與特征庫比對得到相似結果判定輸出。從本質上屬于基于統(tǒng)計模式的基本理論,分語言模型訓練、識別分析兩個大階段構成和實現(xiàn),如圖1所示。

技術達人:ARM的非特定人語音識別系統(tǒng)的設計

聲學訓練階段通常是離線完成的,由語言學家對預先收集好的海量語音樣本、語言數(shù)據(jù)庫、噪聲數(shù)據(jù)進行信號處理和知識挖掘,通過語音信號處理理論及相應數(shù)學算法模型建立語音識別系統(tǒng)所需要的“聲學模型”和“語言模型”.

識別分析階段通常是在線完成的,對用戶實時的語音進行自動識別。識別過程通常又可以分為“前端”和“后端”兩大模塊:“前端”模塊主要的作用是進行端點檢測、降噪、特征提取等;“后端”模塊的作用是利用訓練好的“聲學模型”和“語言模型”對用戶說話的特征向量進行統(tǒng)計模式識別,得到其包含的文字信息,此外,后端模塊還存在一個“自適應”的反饋模塊,可以對用戶的語音進行自學習,從而對“聲學模型”和“語音模型”進行必要的“校正”,進一步提高識別的準確率。

2 系統(tǒng)設計的整體結構

本系統(tǒng)以STM32F103C8T6 微控制器為控制核心,搭配微控制器最小核心電路、LD3320語音識別電路、SD卡電路、電源電路、用戶按鍵輸入電路、串口數(shù)據(jù)輸出電路、狀態(tài)指示電路等綜合組成。該系統(tǒng)體積小巧,可以作為嵌入式組件單元融入用戶電路或者板卡中,上電后STM32F108C8T6內(nèi)部程序進行程序初始化、SD 卡文件系統(tǒng)初始化、LD3320初始化、隨后等待識別音頻接收,識別完成后輸出響應信息或者解碼音頻,系統(tǒng)整體結構如圖2所示,最終實現(xiàn)積木式功能組件的全部功能。

技術達人:ARM的非特定人語音識別系統(tǒng)的設計
[page]

3 系統(tǒng)硬件電路設計

3.1 微控制核心方案選型及電路

系統(tǒng)采用ARM Cortex M3內(nèi)核ST公司的32位高性能單片機STM32F103C8T6 為控制核心,該芯片可以達到72 MHz的工作頻率,內(nèi)置高速存儲器(64 KB的閃存和20 KB的SRAM),擁有豐富的I/O口資源和鏈接到兩條APB 總線的外設。包括了12 b 的ADC、通用16 b 的定時器、還包括I2C、SPI、USART、USB、CAN等總線或串行通信接口,片內(nèi)資源和擴展接口都十分豐富,該微控制核心是專門設計于滿足高穩(wěn)定性、低功耗、實時性、高性價比的嵌入式產(chǎn)品應用。該內(nèi)核芯片可以滿足非特定人語音識別的功能要求,利用相關電路構成STM32F103C8T6 的最小系統(tǒng),在硬件PCB 中還集成了功能引針輸出接口、SD卡接口、USB下載調試電路,用戶按鍵、電源電路等,核心系統(tǒng)電路圖如圖3所示,配合其他外圍擴展達到功能要求。

技術達人:ARM的非特定人語音識別系統(tǒng)的設計

3.2 非特定人語音識別方案選型及電路

本系統(tǒng)中選用IC Route公司生產(chǎn)的LD3320非特定人語音識別芯片,該芯片是非特定人語音識別的專用芯片,內(nèi)部已經(jīng)集成了語音識別處理器和一些信號調制電路,擁有高性能的A/D轉換器、D/A轉換器、麥克風音頻信號輸入接口、音頻解碼輸出接口等,用戶只需要用軟件編輯好待識別的關鍵詞列表,LD3320最大可以支持50 條關鍵詞句,把這些列別以字符的形式傳送到芯片中,就可以對待識別的語音信號進行近似度分析,識別后輸出結果。

技術達人:ARM的非特定人語音識別系統(tǒng)的設計

LD3320 整體工作電路如圖4 所示,總體上可以把電路圖分為8個部分,分別是LD3320基礎外圍電路、電源電路、外部晶體振蕩器電路、麥克風信號處理電路、去耦合濾波電路、解碼音頻去直流成分電路、功能引針輸出電路、狀態(tài)信號指示電路。語音識別單元對于電源供電電路的要求較高,電路中注重對供電純凈度的要求,由系統(tǒng)中的LDO芯片LM1117-3.3 V為語音識別系統(tǒng)供電,加上電感、電容為供電進行濾波,RSTB為LD3320復位引腳,連接到主控制器進行復位控制。LD3320支持并行數(shù)據(jù)通信和串行數(shù)據(jù)通信,在本系統(tǒng)設計中考慮對主控I/O 資源的占用問題,故而選用串行通信方式對LD3320 進行數(shù)據(jù)傳送和控制,LD3320 的MD 引腳通過上拉電阻鉗位為高電平。SPI總線的SDI、SDO、SDCK和SCS引腳連接到主控芯片對應引腳。INTB為中斷信號引腳,遇到識別結果輸出或者是內(nèi)部音頻文件解碼完成等狀態(tài),該引腳會對應輸出電平狀態(tài)通知主控。MBS引腳作為麥克風偏置電壓輸入,連接了RC電路,保證產(chǎn)生一個浮動電壓供給麥克風信號。

4 系統(tǒng)軟件功能設計

4.1 語音識別軟件設計


系統(tǒng)主控上電后首先進行各項初始化,包括LD3320 需要的8M 時鐘信號,由STM32 初始化后輸出8M 頻率供給LD3320使用,初始化STM32內(nèi)部時鐘、SD卡文件系統(tǒng)、SPI相關寄存器、SDIO數(shù)據(jù)初始化、中斷設置等等。經(jīng)過初始化后SD 卡文件系統(tǒng)會在SD 卡中尋找system.ini配置文件,將里面的字段進行拆分后提取,送給LD3320相關寄存器,隨后把關鍵字句列表和長度信息傳送給LD3320并啟動識別過程,當識別成功后串口會發(fā)出響應的返回值參數(shù),并且按照用戶需求可以指定需要解碼的音頻文件,經(jīng)過LD3320進行MP3文件解碼輸出,程序流程圖如圖5所示。

技術達人:ARM的非特定人語音識別系統(tǒng)的設計
[page]

主控程序初始化代碼如下:

技術達人:ARM的非特定人語音識別系統(tǒng)的設計

4.2 SD卡文件系統(tǒng)軟件設計


在實際應用中,修改主控制單片機程序較為復雜,本系統(tǒng)將識別關鍵語句寫在一個命名為system.ini文件中,將此文件拷貝到SD卡中,SD卡需要實現(xiàn)格式化,只能出現(xiàn)一個。ini 文件,其他的文件均為XXX.mp3 文件,SD 的片選信號CS、數(shù)據(jù)輸入信號DI、數(shù)據(jù)輸出信號DO、時鐘信號SCLK 在硬件上已經(jīng)與STM32的SPI接口相連接,系統(tǒng)上電后會初始化SD卡文件系統(tǒng),發(fā)送至少74個時鐘以上確保SD卡片選正常后將SD卡復位等待8個時鐘周期進入SPI讀寫模式,通過STM32內(nèi)部編寫好的文件系統(tǒng)程序找尋“配置文件”即system.ini文件,讀取關鍵詞識別列表內(nèi)容,在系統(tǒng)軟件編程中,采用3個字段進行功能約定,字段功能約定配置如下:

技術達人:ARM的非特定人語音識別系統(tǒng)的設計
[page]

5 性能測試與分析

為保證系統(tǒng)對非特定人的語音識別效果、環(huán)境底噪影響、語音識別過程響應時間、非特定人聲音樣本識別成功率等參數(shù)達標,本文針對各項參數(shù)指定了測試方案,實驗環(huán)境分為安靜環(huán)境(如家居環(huán)境)和相對嘈雜的環(huán)境(如課堂環(huán)境)進行了實測,指定3名發(fā)音人作為3個不同的聲音識別樣本,選定了短句識別語句、中長句識別語句,長句識別語句各2條進行樣本測試(約定3字以下為短句,3~5字為中長句,5字以上為長句),每種測試語句結合不同發(fā)音人重復20次結果進行統(tǒng)計,在安靜環(huán)境下測試短句識別準確率為93.37%、中長句識別準確率為91.67%、長句識別準確率為90.23%.在嘈雜環(huán)境下測試短句識別準確率為87.25%、中長句識別準確率為84.36%、長句識別準確率為81.12%.從實驗數(shù)據(jù)上分析,制約識別準確率的原因是多方面的,與發(fā)音人本身聲音質量、環(huán)境底噪、識別語句近似度、識別語句長度均有關系,單從數(shù)據(jù)上不難得到總體識別率應該是在81%以上,可以滿足應用需求,系統(tǒng)實物圖如圖6所示,硬件結構小巧,功耗低、性價比高,因此具備市場應用前景和市場需求。

技術達人:ARM的非特定人語音識別系統(tǒng)的設計

6 結語

普及語音識別技術是當前研究和發(fā)展的新趨勢,特別是對于非特定人的語音識別是語音信號領域處理的熱點和難點,本方案利用了STM32F103C8T6與LD3320結合,配合各種外圍電路完成了非特定人語音識別的嵌入式平臺,在平臺中通過硬軟件構建,在不更改主控制芯片程序的前提下,用戶可以通過更改SD 卡內(nèi)配置文件的方法隨意設定識別關鍵語句,經(jīng)過不同發(fā)音人和環(huán)境的實測,該系統(tǒng)在嘈雜環(huán)境中的識別準確率可達81%,在安靜環(huán)境中的識別準確率可達90%以上,本系統(tǒng)可以方便的嵌入用戶系統(tǒng)或者板卡中,積木式搭建靈活實用,因而具有廣泛的市場需求和應用前景。

相關閱讀:
非特定人車載音響語音控制系統(tǒng)的設計
語音識別技術系統(tǒng)結構
語音合成&語音識別技術-打造能聽會說的智能家電

要采購麥克風么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉