新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的語音智能操控系統(tǒng)

基于FPGA的語音智能操控系統(tǒng)

作者: 時(shí)間:2017-06-04 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://m.butianyuan.cn/article/201706/348697.htm

設(shè)計(jì)摘要:

1、設(shè)計(jì)意圖

科學(xué)技術(shù)水平的發(fā)展,使人們的生活受到潛移默化的影響,并逐漸改變?nèi)藗兊纳盍?xí)慣,不斷地提高人們的生活質(zhì)量。比如由于全自動洗衣機(jī)、微波爐等智能化設(shè)備的出現(xiàn),我們不必按鍵操控每一步過程,機(jī)器可以自動完成整個過程,用戶也可以遙控他們。

智能化所帶來的方便、快捷帶給人們更加舒適的生活,但是隨著家用電器的不斷增多,需要的遙控器也不斷增多,給人們造成許多的不便,因此,一種能夠解放人們雙手并且實(shí)時(shí)、快速、方便的語音智能操控系統(tǒng)的概念應(yīng)運(yùn)而生。語音智能操控系統(tǒng)可以取代多個遙控器,當(dāng)需要控制某一家電時(shí),只需說出所需調(diào)節(jié)的內(nèi)容(如,空調(diào)開,溫度25℃),語音智能操控系統(tǒng)就能通過對操控者的語音識別,完成匹配并發(fā)出遙控信息完成相應(yīng)的操作。

基于實(shí)現(xiàn)語音智能操控系統(tǒng)具有:

(一)設(shè)計(jì)靈活、操作方便、快捷

(二)準(zhǔn)確度高,工作范圍大

(三)可隨時(shí)用語音操控帶有遙控裝置的用電器

(四)可擴(kuò)展性強(qiáng),增強(qiáng)了系統(tǒng)的外接功能

(五)便于更新和系統(tǒng)升級,可隨時(shí)嵌入更新系統(tǒng)程序

(六)設(shè)計(jì)周期短、開發(fā)費(fèi)用低、功耗低等獨(dú)特優(yōu)點(diǎn)。

2、適用范圍

語音智能操控系統(tǒng)主要控制的家用電器有兩類,第一類是開關(guān)型家電,包括家居照明、飲水機(jī)、電飯煲、抽風(fēng)機(jī)、充電器、電風(fēng)扇等;第二類是紅外遙控型家電,包括空調(diào)、電視機(jī)、DVD、電動窗簾、電動閘門等。還有很多有待開發(fā)的應(yīng)用領(lǐng)域,范圍很廣。

3、主板

該系統(tǒng)利用板塊,可自主嵌入應(yīng)用程序,用戶可根據(jù)自己需求植入語音信息,以待匹配。如果用戶不需要某項(xiàng)語音匹配信息,可刪除,靈活性非常高。同時(shí),由主板設(shè)計(jì)ASIC電路,具有設(shè)計(jì)周期短、開發(fā)費(fèi)用低、功耗低的優(yōu)點(diǎn)。系統(tǒng)控制核心都在FPGA內(nèi)部實(shí)現(xiàn),可以極為方便的更新和升級系統(tǒng),大大的提高了系統(tǒng)的通用性和可提高性。

功能描述:

由FPGA實(shí)現(xiàn)語音智能操控系統(tǒng)的系統(tǒng)構(gòu)架圖如圖2-1所示,它是以FPGA為主板,嵌入語音識別系統(tǒng)并結(jié)合紅外遙控系統(tǒng)完成的智能操控系統(tǒng)。

圖2?1 由FPGA實(shí)現(xiàn)語音智能操控系統(tǒng)的系統(tǒng)構(gòu)架圖

FPGA中嵌入的語音識別系統(tǒng)分為兩種工作模式:訓(xùn)練模式和識別模式首先,用戶在訓(xùn)練模式下,完成相應(yīng)的語音信息的輸入和特征存儲工作,建立完整的語音信息特征數(shù)據(jù)庫。然后,在識別模式下,由語音輸入設(shè)備輸入語音信息進(jìn)行比對,匹配后即發(fā)出相應(yīng)操作的信號,遙控設(shè)備。系統(tǒng)框圖如圖2-2所示

圖2-2 語音識別系統(tǒng)的框圖

該系統(tǒng)分為五個模塊:語音信息特征提取模塊、語音信息特征數(shù)據(jù)庫建立模塊、語音信息輸入采集與預(yù)處理模塊、語音信息比對模塊、操控指令連接發(fā)送模塊。

1、語音信息特征提取模塊,即對接收到的語音信息通過語音識別算法提取相關(guān)特征匹配數(shù)據(jù),其中用到語音信息輸入采集模塊。

2、語音信息特征數(shù)據(jù)庫建立模塊,即對特征提取模塊所得匹配數(shù)據(jù)存儲到存儲器中,以備對比匹配使用。

3、語音信息輸入采集模塊,即通過麥克風(fēng)輸入語音信息,當(dāng)滿足要求時(shí),通過信息特征提取模塊對輸入的語音信息的特征數(shù)據(jù)進(jìn)行提取,保存到緩沖區(qū),等待對比。

4、語音信息比對模塊,即用保存到緩沖區(qū)的特征數(shù)據(jù)和數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行比對,是否與某一數(shù)據(jù)匹配。

5、操控指令連接發(fā)送模塊,即當(dāng)輸入的語音信息與某一庫存信息匹配時(shí),就完成主板與紅外發(fā)射裝置的連接并發(fā)出相應(yīng)的操作指令信息,完成操作。

整個過程由嵌入到FPGA芯片內(nèi)的程序完成。另外,基于NiosII的SOPC系統(tǒng)幫助我們完成了上述功能。同時(shí),我們通過開發(fā)工具SOPC Builder,在FPGA上創(chuàng)建軟硬件開發(fā)的基礎(chǔ)平臺,可以很快的將硬件系統(tǒng)(包括處理器、存儲器、外設(shè)接口和用戶邏輯電路)與常規(guī)軟件集成在單一可編程芯片中。而且,SOPC Builder 還提供了標(biāo)準(zhǔn)的接口方式以便我們將自己的外圍電路做成Nios Ⅱ軟核可以添加的外設(shè)模塊。這種設(shè)計(jì)方式更加方便了我們對系統(tǒng)的調(diào)試。

性能參數(shù):

  1. 系統(tǒng)的性能參數(shù):

麥克風(fēng)參數(shù):

靈敏度:-34~2dB(0dB=1V/Pa at 1kHz)

頻率響應(yīng):20Hz~20KHz

阻抗:50Ω±30% (at 1kHz) 負(fù)載阻抗:≥1000Ω

等效噪聲級:13/14/15dB

信噪比:81/80/79 dB

最大聲壓級:135dB (at 1kHz≤1% T.H.D)

耗電電流:3mA

2、 工作環(huán)境:

工作溫度:

相對濕度:

3、 通信協(xié)議參數(shù):

波特率:9600bit/s;起始位;1bit;

數(shù)據(jù)位:8bit; 停止位:1bit.

4、 算法參數(shù):

5、 耗時(shí):

6、 系統(tǒng)資源利用情況:

設(shè)計(jì)結(jié)構(gòu):

本設(shè)計(jì)以FPGA 系列Spartan-6開發(fā)板為設(shè)計(jì)平臺,開發(fā)板、麥克風(fēng)、紅外模塊組成完整的硬件平臺,整個系統(tǒng)簡潔美觀,無雜亂的連線,系統(tǒng)中語音采集和控制輸出由外圍設(shè)備實(shí)現(xiàn)外,其他部分處理全部有FPGA系列Spartan-6實(shí)現(xiàn)。圖4-1為基于FPGA實(shí)現(xiàn)語音智能操控系統(tǒng)硬件設(shè)計(jì)圖。

圖4-1 基于FPGA實(shí)現(xiàn)語音智能操控系統(tǒng)的硬件設(shè)計(jì)圖

系統(tǒng)上電后,軟件即開始運(yùn)行一系列初始化程序完成系統(tǒng)的初始化工作,然后要求用戶選擇工作模式,工作模式分為訓(xùn)練模式和識別模式,模式的選擇由用戶通過主板的按鍵進(jìn)行,若不選擇,則默認(rèn)為進(jìn)入識別模式。下面是這兩種工作模式軟件流程的簡要說明。圖4-2是語音智能操控系統(tǒng)總體設(shè)計(jì)流程圖。

圖4-2語音智能操控系統(tǒng)總體設(shè)計(jì)流程圖

訓(xùn)練模式:在該模式下,對語音信息進(jìn)行訓(xùn)練(就是把所用到的目標(biāo)語音信息特征數(shù)據(jù)進(jìn)行存儲,建立數(shù)據(jù)庫)。進(jìn)入訓(xùn)練模式后,用戶根據(jù)指示燈的提示,輸入相應(yīng)的語音信息,計(jì)算機(jī)內(nèi)部程序?qū)斎氲恼Z音信息進(jìn)行特征提取并將特征數(shù)據(jù)存入緩沖區(qū),每一遍提取后都會進(jìn)行檢測,判斷是否充分,若不充分,返回上一單元繼續(xù)提取,直到充分為止。然后進(jìn)行數(shù)據(jù)存儲,將存入緩沖區(qū)的數(shù)據(jù)存入存儲器中。系統(tǒng)發(fā)出提示是否繼續(xù)訓(xùn)練,用戶根據(jù)主板的指示燈,通過按鍵選擇,若結(jié)束訓(xùn)練,系統(tǒng)返回模式選擇單元,結(jié)束訓(xùn)練。

識別模式:在識別模式下,用戶輸入語音指令信息,系統(tǒng)檢測是否滿足識別條件(比如是否是正常的語音信號),然后進(jìn)行特征數(shù)據(jù)提取,整個過程和訓(xùn)練模式中的一樣,提取后再進(jìn)行匹配,在數(shù)據(jù)庫中尋找與提取的特征數(shù)據(jù)相匹配的數(shù)據(jù)。若沒有找到,則返回輸入單元,繼續(xù)輸入;若找到匹配后,進(jìn)入下一單元。根據(jù)存儲的特征數(shù)據(jù)在系統(tǒng)中找到相應(yīng)的操作指令,連接紅外發(fā)射裝置,發(fā)出操控指令信號,操控其他設(shè)備。完成之后,返回模式選擇單元。

設(shè)計(jì)方法:

本系統(tǒng)設(shè)計(jì)開發(fā)中主要使用的硬件工具和軟件設(shè)備:

Spartan—6、音頻編解碼芯片、麥克風(fēng)、ISE仿真軟件。

以下分模塊介紹所用算法:

5.1語音信息輸入采集與預(yù)處理模塊

本模塊要實(shí)現(xiàn)的功能是采集語音信號,并對其進(jìn)行FIR濾波、語音數(shù)據(jù)歸一化、語音的端點(diǎn)檢測處理。語音采集部分采用外加的音頻編解碼器進(jìn)行設(shè)計(jì),通過VERILOG HDL編寫對芯片的工作模式進(jìn)行設(shè)置,是芯片在上電后對工作模式設(shè)置在系統(tǒng)要求的狀態(tài)下。

語音預(yù)處理包含三部分,語音歸一化處理單元、FIR濾波器運(yùn)算單元、語音端點(diǎn)檢測單元。圖5-1.1是預(yù)處理的結(jié)構(gòu)功能圖:

圖5-1.1預(yù)處理的結(jié)構(gòu)功能圖

在分析處理之前必須進(jìn)行端點(diǎn)檢測過程,以確定語音信號的開始點(diǎn)和結(jié)束點(diǎn)。其中包括對語音信號短時(shí)能量和短時(shí)過零率的分析。

短時(shí)能量

其中,為原樣本序列在窗函數(shù)所切取出的第n段短時(shí)語音,N為幀長。

短時(shí)過零率

其中,為符號函數(shù)。

圖5-1.2語音的端點(diǎn)檢測狀態(tài)圖

5..2語音信息特征數(shù)據(jù)的提取模塊

這里利用到MFCC音頻特征提取算法,語音信號輸入系統(tǒng)后,先進(jìn)行加窗、濾波等預(yù)處理,再進(jìn)行采樣等過程,最終完成特征數(shù)據(jù)的提取。在識別模式下,語音信息的采集也是用到了這個算法,過程相同。

MFCC算法是有效的基于內(nèi)容的音頻特征提取算法,其處理過程如下:

(1) 對音頻信號進(jìn)行預(yù)處理,即預(yù)加重、分幀、加窗處理;

(2)將每幀音頻信號進(jìn)行傅里葉變換得到其頻譜:

(3)用Mel濾波器組在頻域進(jìn)行帶通濾波,并對每個頻帶的能量疊加得到頻譜能量x(k);

(4)將濾波器組的能量取對數(shù),然后做離散余弦變換,即得到MFCC特征。

圖5-2為MFCC特征提取算法的流程圖。

圖5-2 MFCC特征提取算法的流程圖

計(jì)算公式為:

此時(shí)所提取的特征為音頻信號的靜態(tài)特征,該信號再經(jīng)一階差分后即得到音頻的動態(tài)特征。

5.3 特征數(shù)據(jù)匹配模塊

完成特征數(shù)據(jù)提取后,系統(tǒng)需要完成匹配的過程,這里用到了,即在數(shù)據(jù)庫里重復(fù)尋找與輸入的音頻特征差別最小的數(shù)據(jù)信息,完成匹配。

是典型的DP人算法,它利用動態(tài)時(shí)間規(guī)整方法將模板特征序列和語音特征序列進(jìn)行匹配,比較二者之間的失真,得出識別判決的依據(jù)。的具體過程如下:

假設(shè)存儲的一個詞條模板包括M幀倒譜特征R={r(m);m=1,2,...,M};識別特征序列包括N幀倒譜特征T={t(n);n=1,2,...,N}。在r(i)和t(i)之間定義幀局部失真D(I,j),D(I,j)=|r(i)-t(i)|*2,通過動態(tài)搜索路徑中找到的累積失真最小的路徑,即最優(yōu)的匹配結(jié)果。采用對稱形式DTW:

其中S(i,j)是累積失真,D(i,j)是局部失真。

當(dāng)動態(tài)規(guī)劃過程計(jì)算到固定節(jié)點(diǎn)(N,M)時(shí),可以計(jì)算出該模板動態(tài)匹配的歸一化距離,識別結(jié)果即該歸一化距離,最小的模板詞條

計(jì)算過程中,為了減少計(jì)算量,我們采取以下方法:

全局路徑約束,即只計(jì)算四條直線:y=0.5x,y=2x,y=0.5x+(M-0.5N)

,y=2x+(M-2N)所謂的平行四邊形內(nèi)部的點(diǎn);

端點(diǎn)約束為固定起點(diǎn)、終點(diǎn),即從左下角開始計(jì)算,到右上角點(diǎn)截止;

對進(jìn)行模式匹配的兩條語音命令的長度N和M進(jìn)行了約束,如果兩者之間相差太大則直接放棄該參數(shù)模板,不進(jìn)行DTW運(yùn)算。

圖5-3 DTW算法流程圖

設(shè)計(jì)特點(diǎn):

該設(shè)計(jì)的主要特點(diǎn):

該設(shè)計(jì)采用MFCC音頻特征提取算法和DTW特征匹配算法,對音頻進(jìn)行了加窗、濾波預(yù)處理,特征數(shù)據(jù)的提取和比對都比較精確,系統(tǒng)的穩(wěn)定性和準(zhǔn)確性都得到了提高。

系統(tǒng)采用Spartan-6主板,將程序編寫后嵌入到芯片內(nèi)部,外部只是采用簡單的線,用于連接輸入、輸出設(shè)備,主板采用集成電路,減少了連線錯誤的可能性。同時(shí),內(nèi)嵌的程序可作修改,更具實(shí)用性,也節(jié)省了制作材料。

當(dāng)系統(tǒng)出現(xiàn)錯誤時(shí),可調(diào)出內(nèi)部程序,在仿真軟件上進(jìn)行模擬查詢錯誤;若問題出在外部電路,由于電路連線簡單,用戶便于查找和更改。相比于單純的電路結(jié)構(gòu),該系統(tǒng)結(jié)構(gòu)明了,無需大范圍的改動,更加實(shí)用和節(jié)省材料。

系統(tǒng)采用紅外模塊操控家電設(shè)備,結(jié)構(gòu)簡單,控制方便。

紅外操控本身就具有可遙控的特點(diǎn),即芯片可固定于某一位置,連接多個紅外發(fā)射端口,就可完成對多個設(shè)備的操控。



關(guān)鍵詞: DTW算法 語音智能操作 FPGA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉