鄧雅琪, 徐承韜, 宋禹輝, 高鵬飛, 韓國良, 高 寧
(沈陽化工大學 信息工程學院, 遼寧 沈陽 110142)
一種便攜式語音提示器的設計
鄧雅琪, 徐承韜, 宋禹輝, 高鵬飛, 韓國良, 高 寧
(沈陽化工大學 信息工程學院, 遼寧 沈陽 110142)
設計一種基于語音識別技術(shù)的便攜式語音提示器,采用STC90LE52系列單片機作為核心處理器,采用ICRoute公司生產(chǎn)研發(fā)的LD3320語音識別芯片實現(xiàn)語音識別功能.該系統(tǒng)屬于非特定人語音識別,識別關(guān)鍵詞列表可以由用戶自己進行動態(tài)編輯.并對該語音識別系統(tǒng)的總體結(jié)構(gòu)、主控制模塊和語音識別模塊的軟硬件設計進行詳細闡述.實驗結(jié)果表明:該系統(tǒng)識別準確率高,結(jié)構(gòu)簡單,性價比高,具有較高的推廣應用價值.
語音識別; 單片機; 提示器
近幾年,隨著科技的發(fā)展,語音識別技術(shù)應用日漸廣泛,方便了人們的生產(chǎn)和生活.本文提出一種基于語音識別技術(shù)的語音提示器,采用STC90LE52單片機作為核心處理器,使用ICRoute公司的LD3320語音識別芯片實現(xiàn)語音識別功能.經(jīng)過合理的軟硬件設計,該語音提示系統(tǒng)可以很好地實現(xiàn)對輸入語音信號的接收、識別與判斷,并在此基礎(chǔ)上正確地發(fā)出提示信息.與很多既定語音指令的產(chǎn)品相比,該語音識別系統(tǒng)屬于非特定人語音識別系統(tǒng),語音識別列表關(guān)鍵詞可以由用戶進行動態(tài)編輯,使其使用更加人性化.同時,該語音提示器體積小、功耗低,因此,有著很好的應用前景.
語音識別過程包括訓練和識別兩個階段[1-2].訓練階段是由用戶輸入若干次訓練語音,經(jīng)過語音預處理和特征提取后得到該語音的特征參數(shù),建立語音的參考模型庫.識別階段是將使用時用戶再次輸入的語音和參考模型庫相比較,把相似度最高的語音作為識別結(jié)果輸出,從而完成語音識別的過程.上述過程的工作原理如圖1所示.
圖1 語音識別原理
Fig.1 Speech recognition theory
自動語音識別技術(shù)[3](ASR,Auto Speech Recognition)是一種基于“關(guān)鍵詞”的語音識別技術(shù),首先需要采集大量不同人群的語音數(shù)據(jù),統(tǒng)一在一起建立數(shù)學模型,進行模型分析,提取語音的細節(jié)特征及特征差異,得到最優(yōu)化意義上的每個基元語音的音節(jié)特征,最后將建立好的識別語音庫集成在硬件芯片上并加以應用.而基于ASR技術(shù)的語音識別芯片所完成的工作過程是:用戶發(fā)出語音信號,由麥克風接收信號,并對接收到的語音信號進行分析,提取其語音特征,再與之前已經(jīng)設定好的關(guān)鍵詞一一進行匹配,最后找出相似度最高的一個作為其識別結(jié)果輸出.
現(xiàn)以STC90LE52單片機為核心,外圍加非特定人語音識別芯片LD3320及相關(guān)電路構(gòu)成語音識別系統(tǒng).提示器工作時,麥克接收外界語音信號(主人的呼喚),送入LD3320進行識別處理,然后根據(jù)識別結(jié)果,由單片機控制揚聲器及指示燈輸出,使主人能夠?qū)ふ业剿鶎の锲返奈恢?
2.1 語音識別部分
提示器采用的LD3320語音芯片,不需要FLASH、RAM 等外部儲存器,也不需要用戶提前錄音訓練語音關(guān)鍵詞,芯片內(nèi)部集成的已建立好的語音庫可以完成語音的處理和識別工作.自帶的完整模型庫和算法使外接的硬件結(jié)構(gòu)更加簡潔,并且識別準確率也更高[4].
硬件電路設計如圖2所示.LD3320數(shù)據(jù)線P0~P7引腳均采用并行傳輸方式直接與STC90LE52相接,并用1 kΩ上拉電阻進行上拉.引腳RSTB用于接收復位信號,引腳INTB用于接收中斷返回信號,引腳A0用于判斷傳輸?shù)男盘柺菙?shù)據(jù)段還是地址段,RDB、WRB、CSB用于接收控制信號,它們都與STC90LE52直接相連,并采用10 kΩ電阻上拉,其他語音播放功能的管腳暫時不使用.LD3320語音芯片和STC90LE52采用的是同一個12 MHz的晶振提供的外部時鐘,發(fā)光二極管D1、D2用作復位后系統(tǒng)的通電指示燈.引腳MBS為麥克風偏置,與麥克風相連,以獲取外界的語音信號[5].
圖2 語音識別電路原理圖
2.2 單片機主控模塊
設計思路:將語音識別模塊和單片機控制模塊相結(jié)合,卻又相互獨立,使得語音的接收和識別過程與提示器的提示工作過程同時工作且互不干擾,最終使復雜的語音識別控制功能轉(zhuǎn)化為簡單的通過單片機I/O口接收語音識別處理結(jié)果,再輸出控制外設工作的過程,使設計簡潔精致,并且功能也易于實現(xiàn)[6].硬件電路設計如圖3所示.單片機的P1口與LD3320相連,用來做數(shù)據(jù)的并行傳輸;P2.2~P2.5連接一組LED小燈,P2.7連接一個蜂鳴器,當語音識別結(jié)果傳送到單片機時,提示器可以從聲和光兩個方面對用戶進行提示.
圖3 單片機主控模塊電路原理圖
語音識別程序的運行順序是:首先進行芯片的初始化,LD3320芯片工作檢查,當確定LD3320語音芯片正常工作后,寫入語音片段的識別列表,即用戶“關(guān)鍵詞”.關(guān)鍵詞用漢語拼音表示,每個關(guān)鍵詞對應一個編號.LD3320語音芯片最多能夠?qū)懭?0個用戶關(guān)鍵詞.然后系統(tǒng)開始語音識別階段.此時打開中斷,等待語音識別的結(jié)果.在語音識別的過程中,間斷地讀取寄存器B2H的值,如果寄存器B2H的值為21H,表示LD3320語音芯片有識別結(jié)果產(chǎn)生.將讀取出來的識別結(jié)果與之前設定的每個關(guān)鍵詞相互比對,選出相似度最高的關(guān)鍵詞作為最終的識別結(jié)果,單片機讀取識別結(jié)果對應的特定編號,并通過I/O口輸出控制提示器作出相應的提示動作,具體過程如圖4、圖5所示.
圖4 語音識別系統(tǒng)主程序流程
圖5 中斷服務程序流程
通常,LD3320語音識別芯片能在以下兩種情況給出識別結(jié)果:
(1) 用戶向LD3320芯片送入預定時間的語音數(shù)據(jù),芯片接收數(shù)據(jù)并對其進行處理和識別,最后給出識別結(jié)果;
(2) 用戶向LD3320芯片送入語音數(shù)據(jù),語音識別芯片通過端點檢測技術(shù)檢測用戶說話的停止點,接收到完整的語音數(shù)據(jù)并對其進行處理和識別,最后給出識別結(jié)果.
由于設計是由使用環(huán)境和工作原理所決定,所以該系統(tǒng)主要是通過端點檢測技術(shù)來截取用戶說話.為了檢驗語音提示器語音識別正確率、識別結(jié)果的穩(wěn)定性和識別響應時間,分別在安靜的實驗室和嘈雜的街道兩種環(huán)境下對其工作進行測試.選擇“開燈”、“音響”、“你在哪兒”3條語音指令,每個環(huán)境下每個特定人分別對3條指令共進行100次測試,記錄成功識別的次數(shù),計算識別率[7].測試結(jié)果如表1所示.
表1 測試結(jié)果
由表1中數(shù)據(jù)可以很明顯地看出:在安靜環(huán)境下識別率可達到95 %以上,在嘈雜環(huán)境下也可達85 %以上.實驗室比街道上對語音識別的正確率更高,系統(tǒng)的穩(wěn)定性也比較高;實時性方面,在安靜環(huán)境下,響應時間較短,一般不超過2 s,在噪聲環(huán)境下的響應時間更長一些.
當然,這種便攜式語音提示器的語音識別也有一定誤差.有時用戶說關(guān)鍵詞列表之外的話也會影響提示器的語音識別過程,甚至可能會產(chǎn)生誤判.針對這種情況,可以在原基礎(chǔ)上優(yōu)化設置.例如使用觸發(fā)識別模式,即先用某個詞作為識別的一級指令,在一級指令的基礎(chǔ)上再發(fā)出二級指令,這樣可以有效避免無關(guān)詞語對識別的干擾;也可以在需要的指令關(guān)鍵詞中再增加一些與其讀音相似的關(guān)鍵詞,用來過濾可能會干擾語音識別的相似指令.
該語音提示系統(tǒng)設計中以LD3320為語音識別芯片、STC90LE52系列單片機作為主控芯片,兩個模塊相互協(xié)調(diào)工作,使得整個設計具有結(jié)構(gòu)簡潔經(jīng)典、識別準確、性價比高等優(yōu)點.基于LD3320設計的獨立語音識別模塊可以由市場上很多種類的核心處理器控制,具有很強的通用性和移植性;其指令識別的關(guān)鍵詞列表可以由用戶自己隨時隨地進行動態(tài)編輯,因此,它的使用范圍更大更廣,能夠滿足各類語音識別和控制類工作的要求.由于其成本低,因此,有著很廣泛的市場應用前景.
與市場上現(xiàn)有的語音提示系統(tǒng)相比,該便攜式語音提示器填補了智能提示功能語音產(chǎn)品的空白.實際應用中可以將該語音提示器制成小飾物等便攜形式,掛接在諸如手機、鑰匙、錢包等生活必須物品上,以幫助老年人群、健忘人群及生活工作快節(jié)奏人群通過發(fā)出語音呼喚快速便捷地找到物品.該語音提示器還可以嵌入盲人使用的物品或家居中,為盲人提供便利.此外,經(jīng)進一步設計,該語音提示系統(tǒng)還可具有防盜、解鎖、控制等衍生功能,具有很高的實際應用價值.
[1] 蘇鵬,周風余,陳磊.基于STM32的嵌入式語音識別模塊設計[J].單片機與嵌入式系統(tǒng)應用,2011,11(2):42-45.
[2] 金鑫,田犇,闕大順.基于LD3320的語音控制系統(tǒng)設計實現(xiàn)[J].電腦與信息技術(shù),2011,19(6):22-25.
[3] 洪家平.LD3320的嵌入式語音識別系統(tǒng)的應用[J].單片機與嵌入式系統(tǒng)應用,2012,12(2):47-49.
[4] 喬琳,鄧彥松,田曉亮.基于AVR和51單片機的機器魚語音控制系統(tǒng)設計與實現(xiàn)[J].電子元器件應用,2011,13(12):29-32.
[5] ICRoute.LD332X數(shù)據(jù)手冊[EB/OL].[2010-03-10].http://www.icroute.com/web_cn/Download.html.
[6] 張戟,楊騰飛.車載自動語音識別系統(tǒng)設計[J].佳木斯大學學報:自然科學版,2011,29(2):201-205.
[7] 蘇寶林.基于AVR單片機的語音識別系統(tǒng)設計[J].現(xiàn)代電子技術(shù),2012,35(11):136-138.
Design of a Portable Intelligent Voice Prompter
DENG Ya-qi, XU Cheng-tao, SONG Yu-hui, GAO Peng-fei, HAN Guo-liang, GAO Ning
(Shenyang University of Chemical Technology, Shenyang 110142, China)
The design of a portable intelligent voice prompter based on STC90LE52 microcontroller as the core processor is being proposed,and its speech recognition function is introduced by the single chip LD3320 from the ICRoute Corporation.In this paper,the design involving the software and hardware includes the overall structure in voice control system and the main control module,and also the speech recognition module is invented.The target of this system belongs to the speaker independent speech recognition.What’s more,the key words in the identifying list can also be edited dynamically by the customers.After a large amount of experiments validated,it has a simple structure and a fantastic recognition accuracy rate as high as 99 %.Meanwhile,it can produce high quality at low cost,so it’s convenient to popularize and apply.
speech recognition; single chip microcomputer; prompter
2013-12-19
鄧雅琪(1995-),女,安徽滁州人,本科生在讀,主要從事測控技術(shù)與儀器儀表的研究.
徐承韜(1977-),男,吉林延邊人,講師,碩士,主要從事電氣傳動與電磁應用的研究.
2095-2198(2015)04-0358-05
10.3969/j.issn.2095-2198.2015.04.013
TN912.34
A