?

基于Android的心音身份識別系統研究

2014-12-02 14:19何圣康趙治棟
關鍵詞:碼本心音特征參數

何圣康,趙治棟

(1.杭州電子科技大學通信工程學院,浙江 杭州310018;2.杭州電子科技大學電子信息學院,浙江 杭州310018)

0 引 言

常見的生物特征識別技術有指紋、虹膜、視網膜、人臉、聲紋、步態等[1-2]。不同于傳統的生物識別技術,心音身份識別技術采用心音信號進行身份識別。不同的人的心音信號有著完全不同的特征且具有極高的穩定性,可以作為生物識別技術的識別特征[3]。近年來,國內外一些研究人員對心音身份識別進行了研究,證明了采用心音信號進行個人身份識別的可能性,并取得了一定的進展[4]。本文開發的基于Android的心音身份識別系統,能夠方便地完成對用戶心音信號的采集,完成用戶的注冊以及識別。

1 心音身份識別原理

利用心音信號進行身份識別主要包括兩個過程:訓練過程和識別過程。

在訓練的過程中,本文提取MFCC 作為特征參數。MFCC 指的是MEL 頻率倒譜系數,常用于提取語音信號的特征參數??紤]到心音信號和語音信號同屬于音頻信號,心音信號同樣可以提取MFCC 作為特征參數。

MFCC參數提取流程如圖1所示。

圖1 MFCC參數提取流程

在對語音信號提取MFCC 特征參數時,幀長范圍是20 25 ms。不同于語音信號,心音信號具備準周期性,標準語音幀長的20 25 ms 并不適用于心音信號,而是應該大于20 25 ms[4]。本文選取的心音信號的幀長為256 ms,幀移為64 ms。由于心音信號的頻率范圍為30 500 Hz,所以MEL 濾波器組的截止頻率選取500 Hz[5]。

在模式匹配的過程中,采用矢量量化VQ模型匹配算法。通過LBG算法從所有特征矢量中訓練出可以表征一個人身份的碼本。LBG 初始碼本的生成采用分裂法,通過不斷地尋找與質心的畸變最大的矢量,并以該矢量作為質心進行下一次分裂的分裂方法。

在識別的過程中,提取待測試心音信號的特征矢量序列,計算特征矢量序列對應每一個碼本的平均量化誤差,平均量化誤差最小的碼本對應的人便是系統的識別結果。

2 系統實現

2.1 硬件系統

系統由上位機和下位機組成,下位機完成心音信號的采集、AD 轉換,通過HC-06 藍牙模塊將AD 轉換后的數據通過藍牙傳輸技術發送至Android 智能手機。Android 智能手機作為上位機,完成心音信號的接收、顯示及處理,系統的硬件框圖如圖2所示。

圖2 硬件系統框圖

心音信號通過自制心音拾音頭采集,由駐極體話筒、聽診頭改裝而成,可以將聲音信號轉換為電壓信號。通過30 500 Hz 有源濾波器獲取有效頻率范圍內的心音信號。音頻放大電路選用LM4811,通過dsPIC 主控電路完成對增益大小的控制。經過主放大電路后,通過耳機收聽實時的心音。此外,dsPIC 主控單元的作用還包括AD 轉換、電源管理。心音信號的采樣頻率為2 000 Hz,波特率為57 600 bps。經過12位AD 轉換后的數字信號通過dsPIC 芯片的串口發送至HC-06 藍牙模塊。通過藍牙發送數據至上位機。

2.2 基于藍牙的心音數據傳輸系統

Android 智能手機和心音采集設備的藍牙配對及傳輸過程如圖3所示。

經過AD 轉換后的數據,通過HC-06 藍牙模塊發送,每一個HC-06 藍牙模塊具備一個固有的MAC地址。接收方Android 手機打開藍牙,并向系統注冊程序UUID。搜索藍牙設備,找到HC-06 藍牙模塊,獲取其MAC 地址。通過該MAC 地址得到BluetoothDevice 對象。該BluetoothDevice 對象使用上述UUID 獲得BluetoothSocket 對象。通過BluetoothSocket 對象的connect()方法完成BluetoothSocket的連接。若Android 手機在此之前并未與HC-06 配對,便需要輸入配對密碼完成與HC-06 模塊的配對,該配對密碼由HC-06 模塊設定,可人為修改。完成上述步驟后,便完成了手機同藍牙模塊的連接,可以完成藍牙數據的接收。

圖3 使用傳統方式藍牙配對完成數據傳輸

3 心音身份識別系統軟件實現

本文設計的心音身份識別系統基于Android 操作系統開發,可以完成心音數據的藍牙接收、波形顯示、注冊及識別。

1)數據藍牙接收處理。AD 轉換后的心音數據為12位AD數據,數據按照字節傳送,先傳低8位,后發高4位,一個AD 轉換結果為2 byte。Android 智能手機在接收藍牙模塊發送而來的數據的過程中,通過BluetoothSocket 對象的getInputStream()方法獲得InputStream輸入流對象。按照字節接收通過藍牙模組發送到手機的數據。

2)波形顯示。在自定義的SurfaceView 顯示控件中顯示心音信號波形。在應用的主Activity 中接收AD 轉換后的心音數據,接受到的數據不斷更新,在自定義SurfaceView 顯示控件中不斷處理更新后的數據,并顯示到屏幕中。

3)注冊模塊。心音信號的注冊模塊包括基本信息的注冊和心音信號的采集?;拘畔⒌淖园ㄐ彰?、年齡、聯系方式。將個人信息保存到SQLite數據庫中,然后采集一段心音信號,由藍牙傳輸至Android 手機。完成采集后,提取MFCC 特征參數,利用LBG算法生成碼本,以txt 文檔格式保存。在SQLite數據庫中保存對應碼本文件的文件路徑,方便辨識操作的調用。

4)辨識模塊。在用戶辨識模塊,首先采集一段待識別心音信號,提取其MFCC 特征參數,分別與系統中的每一個碼本計算平均量化誤差。平均量化誤差最小的便是識別結果。

4 實驗結果

試驗采集了40 人的心音信號,用于進行系統識別性能的測試。本次心音數據均采集于心臟的P區。主要從兩個方面進行試驗分析。

1)心音采集時間對系統識別性能的影響。不同的心音采集時間對系統識別性能有較大影響,不同采集時間對于本系統性能的影響如表1所示。選取FFT點數為512,Mel 濾波器的個數為64,橫排表示注冊時間,豎排表示辨識時間。

由表1可知,當辨識心音信號和注冊心音信號的采集時間分別6 s和40 s時,系統的正確識別率不會隨著采集時間的增加發生明顯的變化,此時的正確識別率為95%。

表1 不同心音信號采集時間對應的正確識別率

2)Mel 濾波器個數對識別性能的影響。Mel 頻率濾波器個數的增加會增加心音頻域的個性特征,但個數過多會導致算法的復雜度增加。本系統在注冊信號采集時間為40 s,辨識信號采集時間為6 s,FFT點數為512時,不同的Mel 濾波器個數對應的系統正確識別率CRR 如表2所示。

表2 不同Mel 濾波器個數對應的正確識別率

由表2可知,當濾波器個數達到一定值時,識別率固定在一定的值,不再發生變化,并不會隨著濾波器個數的增加而不斷上升。根據實驗結果,本文可以取48 64的濾波器個數。

5 結束語

本文基于Android 操作系統開發了心音身份識別系統,利用MFCC 提取特征參數,并基于VQ 實現了身份匹配。數據采集系統和數據傳輸系統自行研發,可完成心音信號的高質量采集。實驗表明,本文設計的心音身份識別系統可以準確高效地實現用戶的身份識別。

[1]陳洪京.幾種生物識別方法的比較研究[J].河北省科學院學報,2007,24(4):33-37.

[2]Jain A K,Ross A,Prabhakar S.An introduction to biometric recognition[J].IEEE Transactions on Circuits and Systems for Video Technology,2004,14(1):4-20.

[3]劉娟,趙治棟.基于心音信號譜分析的身份特征提取算法[J].杭州電子科技大學學報,2010,30(4):181-185.

[4]Phua K,Chen J,Dat T H,et al.Heart sound as a biometric[J].Pattern Recognition,2008,41(3):906-919.

[5]趙力.語音信號處理[M].北京:機械工業出版社,2009∶51-55.

猜你喜歡
碼本心音特征參數
免調度NOMA系統中擴頻碼優化設計
基于有限域上仿射空間構造新碼本
冕洞特征參數與地磁暴強度及發生時間統計
基于Zadoff-Chu 矩陣的最優碼本構造方法
幾類近似達到Welch界碼本的構造
基于雙閾值的心音快速分段算法及其應用研究
雙聲道心音能量熵比的提取與識別研究
基于PSO-VMD的齒輪特征參數提取方法研究
基于視頻的車輛特征參數算法研究
基于香農熵的心音信號檢測方法研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合