0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于16位單片機的語音電子門鎖系統(tǒng)詳解

電子工程師 ? 來源:陳翠 ? 2019-07-13 11:09 ? 次閱讀

本文介紹的語音電子門鎖是一種在凌陽16位單片機SPCE061A上實現(xiàn)的與文本有關的說話人確認系統(tǒng)。該系統(tǒng)主要由說話人識別模塊、門鎖控制電機以及門鎖等部分組成。在訓練時,說話人的聲音通過麥克風進入說話人語音信號采集前端電路,由語音信號處理電路對采集的語音信號進行特征化和語音處理,提取說話人的個性特征參數(shù)并進行存儲,形成說話人特征參數(shù)數(shù)據(jù)庫。在識別時,將待識別語音與說話人特征參數(shù)數(shù)據(jù)庫進行匹配,通過輸出電路控制門鎖電機,最終實現(xiàn)對門鎖的控制。

1 算法原理

說話人識別算法原理框圖如圖1所示。

1.1 預處理

(1)去噪

對麥克風輸入的模擬語音信號進行量化和采樣,獲得數(shù)字化的語音信號;再將含噪的語音信號通過去噪處理,得到干凈的語音信號后并通過預加重技術濾除低頻干擾,尤其是50Hz或60Hz的工頻干擾,提升語音信號的高頻部分,而且它還可以起到消除直流漂移、抑制隨機噪聲和提升清音部分能量的作用。

(2)端點檢測

本系統(tǒng)采用語音信號的短時能量和短時過零率進行端點檢測。語音信號的采樣頻率為8kHz,每幀數(shù)據(jù)為20ms,共計160個采樣點。每隔20ms計算一次短時能量和短時過零率。通過對語音信號的短時能量和短時過零率檢測可以剔除掉靜默幀、白噪聲幀和清音幀,最后保留對求取基音、LPCC等特征參數(shù)非常有用的濁音信號。

1.2 特征提取

在語音信號預處理后,接著是特征參數(shù)的提取。特征提取的任務就是提取語音信號中表征人的基本特征。

1.2.1 特征參數(shù)的選取

特征必須能夠有效地區(qū)分不同的說話人,且對同一說話人的變化保持相對穩(wěn)定,同時要求特征參數(shù)計算簡便,最好有高效快速算法,以保證識別的實時性。

說話人特征大體可歸為下述幾類:

(1)基于發(fā)聲器官如聲門、聲道和鼻腔的生理結構而提取的參數(shù)。如譜包絡、基音、共振峰等。其中基音能夠很好地刻畫說話人的聲帶特征,在很大程度上反映了人的個性特征。

(2)基于聲道特征模型,通過線性預測分析得到的參數(shù)。包括線性預測系數(shù)(LPC)以及由線性預測導出的各種參數(shù),如線性預測倒譜系數(shù)(LPCC)、部分相關系數(shù)、反射系數(shù)、對數(shù)面積比、LSP線譜對、線性預測殘差等。根據(jù)前人的工作成果和實際測試比較,LPCC參數(shù)不但能較好地反饋聲道的共振峰特性,具有較好地識別效果,而且可以用比較簡單的運算和較快的速度求得。

(3)基于人耳的聽覺機理,反映聽覺特性,模擬人耳對聲音頻率感知的特征參數(shù)。如美國爾倒譜系數(shù)(MFCC)等。MFCC參數(shù)與基于線性預測的倒譜分析相比,突出的優(yōu)點是不依賴全極點語音產(chǎn)生模型的假定,在與廣西無關的說話人識別系統(tǒng)中MFCC參數(shù)能夠比LPCC參數(shù)更好地提高系統(tǒng)的識別性能。

此外,人們還通過對不同特征參數(shù)量的組合來提高實際系統(tǒng)的性能。當各組合參量間相關性不大時,會有較好的效果,因為它們分別反映了語音信號的不同特征。

在計算機平臺的仿真實驗中,通過各種參數(shù)的實際比較,采用MFCC參數(shù)比采用LPCC參數(shù)有更好的識別效果。但在SPCE061A平臺上做實時處理時,與LPCC系統(tǒng)相比,MFCC系數(shù)計算有兩個缺點:一是計算時間長;二是精度難以保證。由于MFCC系統(tǒng)的計算需要FFT變換和對數(shù)操作,影響了計算的動態(tài)范圍;要保證系統(tǒng)識別的實時性,就只有犧牲參數(shù)精度。而LPCC參數(shù)的計算有遞推公式,速度和精度都可以保證,識別效果也滿足實際需要。

本系統(tǒng)采用了基音周期和線性預測倒譜系數(shù)(LPCC)共同作為說話人識別的特征參數(shù)。

1.2.2 LPCC參數(shù)的提取

基于線性預測分析的倒譜參數(shù)LPCC可以通過簡單的遞推公式由線性預測系數(shù)求得。遞推公式如下:

其中p為LPC模型的階數(shù),也是模型的極點個數(shù)。

(1)LPC模型階數(shù)p的確定

為使模型假定更好地符合語音產(chǎn)生模型,應該使LPC模型的階數(shù)p與共振峰個數(shù)相吻合,其次是考慮聲門脈沖形狀和口唇輻射影響的補償。通常一對極點對應一個共振峰,10kHz采樣的語音信號通常有5個共振峰,取p=10,對于8kHz采樣的語音信號可取p=8。此外為了彌補鼻音中存在的零點以及其他因素引起的偏差,通常在上述階數(shù)的基礎上再增加兩個極點,即分別是p=12和p10。實驗表明,選擇LPC分析階數(shù)p=12,對絕大多數(shù)語音信號的聲道模型可以足夠近似地逼近。P值選得過大雖然可以略微改善逼近效果,但也帶來一些負作用,一方面是加大了計算量,另一方面有可能增添一些不必要的細節(jié)。

(2)線性預測系數(shù)的求取

自相關解法主要有杜賓(Durbin)算法、格型(Lattice)算法和舒爾(Schur)算法等幾種遞推算法。其中在杜賓算法是目前最常用的算法,而且在求取LPC系數(shù)時計算量也量小,本系統(tǒng)采用該遞推算法。

1.2.3 基音參數(shù)的提取

基音估計的方法很多,主要有基于短時自相關函數(shù)和基于短時平均幅度差函數(shù)(AMDF)等基音估計方法。

(1)基于短時自相關函數(shù)的基音估計

短時自相關函數(shù)在基音周期的整數(shù)倍位置存在較大的峰值,只要找出第一最大峰值的位置就可以估計出基音周期。

(2)基于短時平均幅度差函數(shù)(AMDF)的基音估計

基于短時平均幅度差函數(shù)(AMDF)在基音周期的整數(shù)倍位置存在較大的谷值,找到第一最大谷值的位置就可以估計出基音周期。這種方法的缺點是當語音信號的幅度快速變化時,AMFD函數(shù)的谷值深度會減小,從而影響基音估計的精度。

實際上第一最大峰(谷)值點的位置有時并不能與基音周期吻合,第一最大峰(谷)值點的位置與短時窗的長度有關且會受到共振峰的干擾。一般窗長至少應大于兩個基音周期,才可能獲得較好的估計效果。語音中最長基音周期值約為20ms,本系統(tǒng)在估計基音周期時窗長選擇40ms。為了減小共振峰的影響,首先對語音進行頻率范圍為[60,900]Hz的帶通濾波。因為最高基音頻率為450Hz,所以將上限頻率設為900Hz可以保留語音的一、二次諧波,下降頻率為60Hz是為了濾除50Hz的電源干擾。

以上兩種方法都是對語音信號本身求相應的函數(shù)。本系統(tǒng)采用的基音估計方法是:首先對帶通濾波后的短時語音信號進行線性預測,求取預測殘差;再對殘差信號求自相關函數(shù),找出第一最大峰值點的位置,即得到該段語音的基音估計值。實驗表明,通過殘差求取的基音軌跡比直接通過語音求取的基音軌跡效果更好,如圖2所示。圖2中橫坐標為語音幀數(shù),縱坐標為8000/f,其中f為基音頻率。

1.3 模式匹配

目前針對各種特征參數(shù)提出的模式匹配方法的研究越來越深入。典型的方法有:矢量量化方法、高斯混合模型方法、隱馬爾可夫模型方法、動態(tài)時間規(guī)整(DTW)方法和人工神經(jīng)網(wǎng)絡方法。

這些方法都有各自的優(yōu)點和缺點。其中DTW算法對于較長語音的識別,模板匹配運算量太大,但對短語音(有效語音長度低于3s)的識別既簡單又有效,而且并不比其他方法識別率低,特別適用于短語音、與文本有關的說話人識別系統(tǒng)。本系統(tǒng)采用端點松馳兩點的(DTW)算法,端點松馳引起的計算量增加并不大,還可以放松對端點檢測的精度要求。

動態(tài)時間規(guī)整(DTW)算法基于動態(tài)規(guī)劃的思想,解決了說話人不同時期發(fā)音長短、語速不一樣的匹配問題。DTW算法用于計算兩個長度不同的模板之間的相似程度,用失真距離表示。假設測試模板和參考模板分別用T和R表示,按時間順序含有N幀和M幀的語音參數(shù)(本系統(tǒng)為12維LPCC參數(shù)),失真距離越小,表示T、R越接近。把測試模板的各個幀號n=1~N在一個二維直角坐標系中的橫軸上標出,把參考模板的各幀號m=1~M在縱軸上標出,如圖3所示。通過這些表示幀號的整數(shù)坐標畫出縱橫線即形成網(wǎng)絡,網(wǎng)格中的每一個交叉點(n,m)表示測試模板中某一幀與參考模式中某一幀的交會點,對應兩個向量的歐氏距離。DTW算法可以歸結為尋找一條通過此網(wǎng)格中若干交叉點的路徑,使得該路徑上節(jié)點的距離和(即失真距離)為最小。對于端點松弛的情況,路徑搜索原理相同,只是增加了搜索路徑。

2 硬件系統(tǒng)

語音電子門鎖系統(tǒng)的核心是說話人識別模塊。包括按鍵輸入、語音信號采集、語音信號處理、FLASH存儲擴展、揚聲器輸出、控制輸出以及LCD模組等。說話人識別模型的原理框圖如圖4所示。其核心為語音信號處理,本系統(tǒng)選用特別適用于數(shù)字語音識別領域的凌陽16位單片機SPCE061A,并通過SPCE061A實現(xiàn)對其他各組成部分的編程控制。

SPCE061A是凌陽公司開發(fā)的一種性價比非常高的16位單片機。在2.6V~3.6V工作電壓范圍內,工作頻率范圍為0.32MHz~49.152Mhz,較高的處理速度使其能夠非常容易、快速地處理復雜的數(shù)字信號;中斷系統(tǒng)支持10個中斷向量以及14個可來自系統(tǒng)時鐘、定時器/計數(shù)器、時間基準發(fā)生器、外部中斷、鍵喚醒、通用異步串行通信及軟件中斷的中斷源,非常適合實時應用領域;內嵌2K字的SRAM和32K字的FLASH,具有32位可編程的多功能I/O端口;包含有7通道10位通用A/D轉換器和內置麥克風放大器與自動增益控制AGC功能的單通道聲音A/D轉換器,以及具有音頻輸出功能的雙通道10位D/A轉換器;SPCE061A采用CMOS制造工藝,同時增加了軟件激發(fā)的弱振方式、空閑方式和掉電方式,系統(tǒng)處于備用狀態(tài)下(時鐘處于停止狀態(tài)),耗電僅為2μA3.6V,極大地降低了其功耗;另外,μ’nSPTM的指令系統(tǒng)還提供具有較高運算速度的16位×16位的乘法運算指令和內積運算指令,為其應用增添了DSP功能,在復雜的數(shù)字信號處理方面既非常便利,又比專用的DSP芯片便宜得多。

說話人識別模塊各組成部分完成的功能如下:

(1)按鍵輸入部分:共有數(shù)字鍵、訓練鍵、刪除鍵、確認鍵和取消鍵等16個按鍵,用于密碼輸入和工作模式選擇。采用4×4矩陣式鍵盤輸入,只使用具有鍵喚醒功能IOA的低8位,可以合理利用硬件資源,且編程靈活。

(2)語音信號采集部分:通過SPCE061A內置麥克風放大器與自動增益控制AGC功能的單通道聲音A/D轉換器完成8kHz語音信號采集。

(3)FLASH存儲擴展部分:用于存儲說話人的個性特征參數(shù)參考模板。

(4)揚聲器輸出部分:通過SPCE061A具有音頻輸出功能的雙通道10位D/A轉換器完成用戶訓練、識別等各種操作的語音提示。

(5)控制輸出部分:通過SPCE061A的可編程I/O口控制門鎖控制電機。

(6)LCD模組部分:用以顯示系統(tǒng)的工作狀態(tài),該部分根據(jù)成本和實際需要可選。

(7)SPCE061A:說話人的語音信號處理以及各部分的編程控制均由SPCE061A完成。

說話人識別模塊有三種工作模式:訓練模式、認證模式和密碼模式,這三種模式都可通過工作模式按鍵選擇。

(1)訓練模式,說話人的聲音通過麥克風進入語音信號采集前端電路。第一次語音輸入時,由16位單片機SPCE061A對采集的語音信號進行處理,提取說話人的個性特征參數(shù),并存儲到外擴的FLASH內,形成說話人特征參數(shù)模板。可以進行三次訓練,第二語音輸入時,提取的個數(shù)特征參數(shù)與由第一次語音輸入形成的特征參數(shù)模板進行匹配,在匹配距離小于模板更新閾值時,將說話人特征參數(shù)模板更新為兩次特征參數(shù)的平均值。第三次語音輸入時,提取的個性特征參數(shù)與由第一、二次語音輸入形成的特征參數(shù)模板進行匹配,在匹配距離小于模板更新閾值時,將說話人特征參數(shù)模板更新為三次特征參數(shù)的平均值,形成最后的該說話人的特征參數(shù)模板。

(2)認證模式,同樣通過麥克風錄入說話人的聲音,再由SPCE061A對采集的語音信號進行處理,將提取的說話人特征參數(shù)與存儲在外擴FLASH內的特征參數(shù)模板進行匹配,匹配距離小于認證閾值時,通過認證;然后再判斷匹配距離是否小于認證模式下的模板更新閾值,決定是否對模板進行更新。

(3)密碼工作模式,在說話人感冒或其他使其聲音發(fā)生暫時改變的情況下,可以采用長密碼方式進行認證,以免因為非常原因被拒之門外。

另外,每個用戶都有一個短密碼(用戶可自行修改),無論在訓練模式還是認證模式都要輸入此密碼,以形成或找到與該用戶相對應的特征參數(shù)模板。系統(tǒng)還設置一個具有長密碼的超級管理員用戶,可以通過鍵盤對用戶模板進行添加或刪除。

3 實驗結果

對于說話人確認系統(tǒng),表征其性能的最重要的兩個參量是拒識率和誤識率。前者是拒絕真實的說話人而造成的錯誤,后者是接受假冒者而造成的錯誤,二者與匹配閾值的設定相關。匹配閾值的設定與語音鎖系統(tǒng)的應用場合、功能側重有關,對于家庭、賓館等門鎖用戶,要求誤識率盡可能低,甚至為零;若用于公司員工考勤等同類功能,就不能有太高的拒識率。表1是對以下每種情況各進行100次實時匹配的結果,其中設定的閾值適合門鎖用戶。

表1 100次實時匹配結果

由以上實驗結果可知,對于同一個人相同發(fā)送的拒識率為8%;對于同一個人相似發(fā)音情況,因為系統(tǒng)是對說話的人進行判別,對于這種情況,無論拒絕或接受都是合理的;對于同一個人不同發(fā)音和不同人發(fā)音的情況,誤識率為零。使用錄音機進行多次實驗,通過認證的次數(shù)為零。對于門鎖用戶,這個結果十分理想的。若用于考勤等同類功能,可通過修改匹配閾值值實現(xiàn)。

聲紋識別與其他生物識別技術相比,除具有不會遺失和忘記、不需記憶、使用方便等優(yōu)點外,還具有以下特性:用戶接受程度高,由于不涉及隱私問題,用戶無任何心理障礙;聲音輸入設備造價低廉,而其他生特識別技術的輸入設備通常造價昂貴。與利用虹膜、指紋和人臉等技術的門鎖相比,基于SPCE061A構建的語音電子門鎖系統(tǒng)具有成本低、使用方便、保密性好等優(yōu)點。經(jīng)大量實驗測試表明,該系統(tǒng)性能穩(wěn)定、識別效果好。下一步將進行小批量的試用,以發(fā)現(xiàn)問題并加以完善。但是,在環(huán)境噪聲或干擾信號高于語音信號時,該系統(tǒng)將無法進行正確的語音識別,在背景噪聲處理及其工程實際上還要進一步改進。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6037

    文章

    44558

    瀏覽量

    635292
  • 電子門鎖
    +關注

    關注

    1

    文章

    15

    瀏覽量

    9474
收藏 人收藏

    評論

    相關推薦

    日電電子16單片機--78K0R

    日電電子16單片機--78K0R 簡述
    發(fā)表于 09-28 20:50 ?37次下載

    基于單片機的單通道16數(shù)據(jù)采集系統(tǒng)設計

    基于單片機的單通道16數(shù)據(jù)采集系統(tǒng)設計
    發(fā)表于 11-10 10:53 ?12次下載

    8單片機中的經(jīng)典之作,51單片機使用心得分享

    雖然現(xiàn)在1632單片機越來越多,但51單片機依然是8
    發(fā)表于 11-04 19:08 ?3485次閱讀
    8<b class='flag-5'>位</b><b class='flag-5'>單片機</b>中的經(jīng)典之作,51<b class='flag-5'>單片機</b>使用心得分享

    pic16單片機學習

    pic16單片機學習
    發(fā)表于 01-14 22:32 ?8次下載

    [轉載]Freescalenbsp;16單片機

    轉載自中電網(wǎng)-毛毛的博客,三篇文章重新編輯合為一篇,內容未作任何改動。 原文鏈接:freescale 16單片機的地址映射--(1)前言 freescale 16
    發(fā)表于 11-23 17:52 ?649次閱讀

    Freescale 16單片機的地址映射

    原文鏈接:freescale 16單片機的地址映射--(1)前言 freescale 16單片機
    發(fā)表于 11-24 07:43 ?1150次閱讀

    16單片機有哪些

    在實際運用中,很多人使用16單片機,16單片機有哪些呢?本文給大家?guī)?/div>
    發(fā)表于 12-20 11:41 ?4.3w次閱讀

    單片機816是怎么區(qū)分的

    本文開始介紹了單片機的概念和單片機的硬件特性,其次介紹了單片機的種類及介紹了8單片機16
    的頭像 發(fā)表于 04-10 16:00 ?2.6w次閱讀

    AVR單片機自學教程之AVR單片機操作詳細資料詳解

    本文檔的主要內容詳細介紹的是AVR單片機自學教程之AVR單片機操作詳細資料詳解主要內容包括了:一、操作基礎知識1、
    發(fā)表于 11-12 08:00 ?22次下載
    AVR<b class='flag-5'>單片機</b>自學教程之AVR<b class='flag-5'>單片機</b>的<b class='flag-5'>位</b>操作詳細資料<b class='flag-5'>詳解</b>

    瑞薩電子16單片機M16C/28群數(shù)據(jù)手冊

    瑞薩電子16單片機M16C/28群數(shù)據(jù)手冊
    發(fā)表于 08-20 17:24 ?24次下載

    基于單片機語音控制燈系統(tǒng)設計

    設計簡介:本設計是基于單片機語音控制燈系統(tǒng),主要實現(xiàn)以下功能:1、顯示燈光等級2、顯示口令3、顯示開關狀態(tài)4、語音控制5、PWM控制燈光亮度喚醒詞:小愛同學、天貓精靈、特納斯
    發(fā)表于 11-12 15:21 ?27次下載
    基于<b class='flag-5'>單片機</b><b class='flag-5'>語音</b>控制燈<b class='flag-5'>系統(tǒng)</b>設計

    8單片機16單片機的區(qū)別

    的4單片機發(fā)展到如今的32單片機,其中8單片機16
    的頭像 發(fā)表于 08-12 13:50 ?3504次閱讀

    單片機81632詳解,收藏起來!

    電路。在電子控制和嵌入式系統(tǒng)中得到了廣泛的應用,而8、16、和32是不同類型的
    的頭像 發(fā)表于 05-09 17:34 ?4108次閱讀
    <b class='flag-5'>單片機</b>8<b class='flag-5'>位</b><b class='flag-5'>16</b><b class='flag-5'>位</b>32<b class='flag-5'>位</b><b class='flag-5'>詳解</b>,收藏起來!

    16單片機數(shù)控系統(tǒng)對普通車床進給系統(tǒng)進行改造設計方案

    電子發(fā)燒友網(wǎng)站提供《16單片機數(shù)控系統(tǒng)對普通車床進給系統(tǒng)進行改造設計方案.pdf》資料免費下載
    發(fā)表于 10-19 10:11 ?0次下載
    <b class='flag-5'>16</b><b class='flag-5'>位</b><b class='flag-5'>單片機</b>數(shù)控<b class='flag-5'>系統(tǒng)</b>對普通車床進給<b class='flag-5'>系統(tǒng)</b>進行改造設計方案

    什么是單片機語音芯片?

    電子技術的飛速發(fā)展下,語音芯片成為了日常生活中不可或缺的一部分。而在語音芯片領域,單片機語音芯片占據(jù)了重要的地位。那么,究竟什么是
    的頭像 發(fā)表于 12-07 08:53 ?814次閱讀
    什么是<b class='flag-5'>單片機</b><b class='flag-5'>語音</b>芯片?