杜仲平,李一博,葉 霆
(1.天津大學(xué) 精密儀器與光電子工程學(xué)院,天津 300072; 2.天津九安醫(yī)療電子股份有限公司,天津 300190)
基于音頻監(jiān)控的嬰兒智能監(jiān)護系統(tǒng)設(shè)計
杜仲平1,李一博1,葉 霆2
(1.天津大學(xué) 精密儀器與光電子工程學(xué)院,天津 300072; 2.天津九安醫(yī)療電子股份有限公司,天津 300190)
為解決目前嬰兒智能監(jiān)護產(chǎn)品對嬰兒哭聲識別不準確的問題,設(shè)計了能準確識別嬰兒哭聲的嬰兒智能監(jiān)護系統(tǒng);使用RT5350芯片作為處理器,使用PAP7501芯片實現(xiàn)對視頻信號和音頻信號的采集;對系統(tǒng)移植了Linux內(nèi)核,使用多線程編程技術(shù)編寫了應(yīng)用程序;通過提取梅爾頻率倒譜系數(shù)作為特征參數(shù),使用動態(tài)時間規(guī)整算法作為識別算法,實現(xiàn)了對嬰兒哭聲的準確識別;該系統(tǒng)可以與云服務(wù)器通信,實現(xiàn)嬰兒哭聲報警功能;該系統(tǒng)可以與用戶的終端設(shè)備通信,實現(xiàn)視頻數(shù)據(jù)和音頻數(shù)據(jù)的傳輸;該智能監(jiān)護系統(tǒng)極大地方便了用戶對嬰兒的監(jiān)護。
智能監(jiān)護; 嬰兒哭聲; 梅爾頻率倒譜系數(shù); 動態(tài)時間規(guī)整算法
嬰兒的哭聲中包含了嬰兒大量的生理的和心理的信息,反映了嬰兒的某種需要,是嬰兒與外界交流的重要手段,是嬰兒對外界發(fā)出的一種警報,對嬰兒哭聲進行監(jiān)控有重要的意義。目前的嬰兒智能監(jiān)護產(chǎn)品有的不能對嬰兒哭聲進行識別,有的通過計算音頻信號頻譜的能量分布實現(xiàn)對嬰兒哭聲的識別,不能取得很好的識別效果[1-4]。為了解決嬰兒智能監(jiān)護產(chǎn)品對嬰兒哭聲識別不準確的問題,本文提取了在語音識別中被廣泛使用的Mel頻率倒譜系數(shù)作為特征參數(shù),使用動態(tài)時間規(guī)整算法作為分類算法,實現(xiàn)了對嬰兒哭聲的準確識別。
為了實現(xiàn)對嬰兒的有效監(jiān)護,本文設(shè)計了以音頻監(jiān)測功能為主要功能的嬰兒智能監(jiān)護系統(tǒng),該系統(tǒng)還具有視頻監(jiān)控和網(wǎng)絡(luò)通信的功能。當系統(tǒng)監(jiān)測到嬰兒哭聲后,會向遠端的云服務(wù)器發(fā)送消息,云服務(wù)器收到消息后,會向指定的用戶推送消息,實現(xiàn)對嬰兒哭聲的報警。用戶可以使用手機或平板電腦等終端設(shè)備通過網(wǎng)絡(luò)與本智能監(jiān)護系統(tǒng)通信,實時的對嬰兒的狀態(tài)進行監(jiān)控。
由于嬰兒的發(fā)音原理與成年人發(fā)音原理相似,本文使用在孤立詞語音識別中取得很好效果的動態(tài)時間規(guī)整算法對嬰兒哭聲進行識別[5]。使用動態(tài)時間規(guī)整算法對嬰兒哭聲進行識別的過程分為兩個階段,第一階段為訓(xùn)練階段,通過對訓(xùn)練集的樣本提取特征參數(shù)建立參考模板庫,第二個階段為識別階段,提取輸入信號的特征參數(shù)得到測試模板與參考模板庫里的參考模板進行匹配,得到識別結(jié)果[6]。嬰兒哭聲識別原理圖如圖1。
圖1 嬰兒哭聲識別原理圖
1.1 Mel頻率倒譜系數(shù)的提取
Mel頻率倒譜系數(shù)是目前使用最廣泛的語音特征參數(shù)之一,它是著眼于人耳的聽覺特性的特征參數(shù)[7]。人耳對不同頻率的聲音具有不同的感知能力,實驗發(fā)現(xiàn),在1 000 Hz以下,感知能力與頻率成線性關(guān)系;在1 000 Hz以上,感知能力與頻率成對數(shù)關(guān)系[8]。在頻域里,有一種Mel頻率尺度,Mel頻率尺度與人耳的感知特性成線性的關(guān)系。頻率f與Mel頻率B之間的轉(zhuǎn)換公式如公式(1)。
(1)
Mel頻率倒譜系數(shù)是基于上述Mel頻率概念而提出的,提取計算過程如圖2。
圖2 Mel頻率倒譜系數(shù)提取過程
Mel頻率倒譜系數(shù)的提取過程如下:
(1)原始語音信號s(n)經(jīng)過歸一化、預(yù)加重、分幀、加窗、端點檢測處理,得到每個語音幀的時域信號x(n)。歸一化是為了減小音量大小不同對識別結(jié)果的影響。預(yù)加重的目的是提升高頻部分,使信號頻譜變得平坦,對信號的預(yù)加重通過使用傳遞函數(shù)為H(z)=1-az-1的預(yù)加重濾波器實現(xiàn)的,a為預(yù)加重系數(shù),本文中a的值為0.975。由于語音信號具有短時穩(wěn)定性,可以將10 ms~30 ms左右的語音信號看成是穩(wěn)定的信號,本文的AD轉(zhuǎn)換器的采樣率為8 kHz,將32 ms的信號分為一幀,一幀信號有256個采樣點,相鄰幀的幀移設(shè)置為64點。為了降低由于截斷產(chǎn)生的頻譜泄漏,對每一幀信號加漢明窗。使用雙門限法對信號進行端點檢測,找出語音段的起始點與終止點。
(2)將時域信號x(n)經(jīng)過快速傅里葉變換(FFT)后得到線性頻譜x(k)。
(3)將上述線性頻譜通過Mel頻率濾波器組得到Mel頻率。
Mel濾波器組為在語音的頻譜范圍內(nèi)設(shè)置的若干個的帶通三角形濾波器,每個濾波器的傳遞函數(shù)Hm(k)計算公式如公式(2)。
(2)
M為濾波器組中濾波器的個數(shù),通常取值在24~40之間,本文取24。
(4)計算Mel頻率的對數(shù)能量S(m)。
(5)將上述頻譜的對數(shù)能量S(m)做離散余弦變換(DCT)就得到了Mel頻率倒譜系數(shù)C(n)。
(3)
式中,l表示Mel頻率倒譜系數(shù)的階數(shù)。實際應(yīng)用中,通常取12~16階的Mel頻率倒譜系數(shù),本文使用12階的Mel頻率倒譜系數(shù)進行實驗。分別對判定為語音段的每一幀信號提取特征參數(shù),同一語音段的不同幀信號的特征參數(shù)構(gòu)成一個特征參數(shù)矢量序列。
1.2 動態(tài)時間規(guī)整算法及改進
1.2.1 動態(tài)時間規(guī)整算法
動態(tài)時間規(guī)整算法是把時間規(guī)整和距離測度計算結(jié)合起來的一種非線性規(guī)正技術(shù)[6]。DTW原理圖如圖3。由訓(xùn)練集樣本提取出來的特征參數(shù)矢量序列叫參考模板,由測試信號提取出的特征參數(shù)矢量序列叫做測試模板,參考模板用R= {R(1),R(2),……,R(m),……R(M)}表示,測試模板用T= {T(1),T(2),……,T(n),……,T(N)}表示。其中,m、n分別是參考模板和測試模板的幀號,M、N分別為參考模板和測試模板的幀數(shù)。R(m)為參考模板的第m幀特征矢量,T(n)為測試模板的第n幀特征矢量。分別取參考模板和測試模板的第m幀和第n幀,用d(R(m),T(n))表示這兩幀之間的矢量失真度,本文使用歐式距離測度計算失真度,用D(R(m),T(n))表示到當前點的最優(yōu)路徑的累計失真度。本文中對搜索路徑作如下限制:可以到達坐標為(m,n)的點的前一節(jié)點只能是(m-1,n),(m-1,n-1),(m-1,n-2)中的一點,此時,最優(yōu)路徑的累積失真度的遞推公式如下:
(4)
從(1,1)點出發(fā),反復(fù)遞推到(M,N)點,就可以得到最優(yōu)路徑的累計失真度D(R(M),T(N))。累計失真度表明測試模板與參考模板的相似程度,累計失真度越小,兩段信號的相似程度越高。
圖3 動態(tài)時間規(guī)整算法原理圖
1.2.2 動態(tài)時間規(guī)整算法的改進
上述算法需要對參考模板和測試模板的每一個特征矢量都進行歐式距離計算,需要進行M*N次歐式距離計算。為了減少不必要的計算,對算法的搜索范圍進行限制,刪去在任意一個軸的方向上過分傾斜的路徑,把搜索路徑限制在一個平行四邊形里,相鄰邊的斜率設(shè)定為0.5和2。動態(tài)時間規(guī)整算法是一種模板匹配算法,它的識別效果依賴于端點檢測的效果,為了降低算法對端點檢測的依賴,放松算法對搜索路徑的起始點和結(jié)束點的限制,不嚴格的要求測試模板和參考模板的端點對齊,即搜索路徑的起點在橫縱兩個方向上放寬2幀,起點可以在(1,1),(1,2),(1,3),(2,1),(3,1)中選擇,搜索路徑終點的約束也做類似的放松[9]。改進的動態(tài)時間規(guī)整算法原理圖如圖4。
圖4 改進的動態(tài)時間規(guī)整算法原理圖
本實驗的硬件原理圖如圖5所示。本文設(shè)計的智能監(jiān)護系統(tǒng)由視頻采集模塊,音頻采集模塊,電機控制模塊和網(wǎng)絡(luò)通信模塊等功能模塊組成。本文使用Ralink公司的RT5350芯片作為處理器,它集成了MIPS 24Kc 360 MHz處理器;支持16-bit SDRAM,最高可擴展64 MB的SDRAM;具有USB 2.0 Host/Device接口;集成五端口百兆以太網(wǎng)交換機;具有GPIO,SPI,I2C,I2S,PCM,UART及JTAG接口;集成2.4 GHz 射頻單元,集成802.11n 1×1 MAC/基帶處理器,支持150 Mbps無線數(shù)據(jù)帶寬,能滿足數(shù)據(jù)傳輸?shù)囊蟆?/p>
圖5 系統(tǒng)硬件原理圖
通過使用PAP7501芯片實現(xiàn)對視頻信號和音頻信號的采集。PAP7501是一款高速USB2.0攝像頭控制器,支持USB視頻類1.1和USB音頻類1.0 標準,內(nèi)部集成了MJPEG編碼器和ADC轉(zhuǎn)換器,可以將采集到的視頻信號編碼成MJPEG格式,將音頻信號編碼成PCM格式,并通過USB接口將視頻信號和音頻信號傳輸?shù)絉T5350進行處理。本實驗中,AD轉(zhuǎn)換器的采樣率設(shè)置為8 kHz,為了防止對音頻信號采樣時發(fā)生混疊,需要在采樣前使用防混疊濾波器對信號進行濾波,本文使用的是4階巴特沃斯低通濾波器,截止頻率為4 kHz。防混疊濾波器原理圖如圖6。
圖6 防混疊濾波器原理圖
為了提高系統(tǒng)的性能,通過SPI接口擴展了8 Mb的Flash用于存放程序代碼,還擴展了16 M x 16位的SDRAM用于存放數(shù)據(jù)。RT5350內(nèi)部集成2.4 GHz射頻單元,增加天線可以起到增強發(fā)射信號的作用。RT5350內(nèi)部集成了百兆以太網(wǎng)交換機,需要為它添加一個以太網(wǎng)接口,為了實現(xiàn)電壓的匹配,使用變壓芯片VP8901實現(xiàn)電壓轉(zhuǎn)換。為了控制云臺轉(zhuǎn)動,使用78F9222單片機控制步進電機轉(zhuǎn)動,RT5350通過串口與單片機通信。
本文使用Ralink公司提供的RT288x_SDK編譯uboot、系統(tǒng)內(nèi)核以及根文件系統(tǒng),搭建好嵌入式Linux 開發(fā)環(huán)境。
系統(tǒng)軟件采用多線程編程技術(shù)實現(xiàn),系統(tǒng)軟件原理圖如圖7。由主進程分別創(chuàng)建音頻采集線程、視頻采集線程、音頻處理線程、用戶消息處理線程、串口通信線程、與云服務(wù)器通信線程、音頻發(fā)送線程和視頻發(fā)送線程。
圖7 系統(tǒng)軟件原理圖
音頻線程實現(xiàn)對音頻數(shù)據(jù)的采集,使用ALSA框架實現(xiàn)。視頻采集線程實現(xiàn)對視頻數(shù)據(jù)的采集,使用V4L2框架實現(xiàn)。用戶消息處理線程用來接收用戶的命令,并把命令通過消息隊列的方式傳遞給其它線程,其它線程根據(jù)收到的消息,完成相對應(yīng)的動作,用戶的命令主要有開啟/關(guān)閉音頻報警功能,接收視頻、音頻數(shù)據(jù),控制云臺轉(zhuǎn)動。串口通信線程接收用戶消息處理線程發(fā)過來的指令,通過串口通信,發(fā)送消息給單片機,由單片機驅(qū)動步進電機控制云臺轉(zhuǎn)動,方便用戶對嬰兒的狀態(tài)進行監(jiān)控。與云服務(wù)器通信線程使用HTTP協(xié)議實現(xiàn)智能監(jiān)護系統(tǒng)與云服務(wù)器的通信,當智能監(jiān)護系統(tǒng)監(jiān)聽到嬰兒哭聲后,與云服務(wù)器通信線程會向遠端的云服務(wù)器發(fā)送消息,云服務(wù)器收到消息后會向指定的用戶推送報警信息,完成一次報警。音頻發(fā)送線程和視頻發(fā)送線程分別用來實現(xiàn)視頻信號和音頻信號的發(fā)送,這里通過使用物聯(lián)智慧公司的P2P解決方案,實現(xiàn)智能監(jiān)護系統(tǒng)與用戶的終端(如手機、平板等)在廣域網(wǎng)內(nèi)的視頻、音頻數(shù)據(jù)的傳輸,而不需要復(fù)雜的網(wǎng)絡(luò)配置[10]。
音頻處理線程是本智能監(jiān)護系統(tǒng)的核心,音頻處理線程的流程圖如圖8。音頻處理線程首先查看消息隊列里是否有開啟或關(guān)閉音頻監(jiān)控功能的命令,根據(jù)收到的命令,開啟或關(guān)閉音頻監(jiān)控功能。音頻監(jiān)控模塊開啟后,首先檢查音頻采集模塊是否開啟,如果音頻采集模塊沒有開啟,則通過消息隊列向音頻采集線程發(fā)送消息,開啟音頻采集模塊。在音頻處理線程中設(shè)置了30秒鐘不報警模塊,避免連續(xù)的觸發(fā)報警。在30秒鐘不報警模塊沒有被使能的情況下,進入聲音處理模塊,判斷輸入的信號是不是嬰兒哭聲信號,如果輸入的信號被判定為嬰兒哭聲信號,則觸發(fā)報警,音頻處理線程會向與云服務(wù)器通信線程發(fā)送消息,并使能30秒鐘不報警模塊。
聲音處理模塊流程圖如圖9,音頻處理線程使用音頻采集線程采集到的數(shù)據(jù),對信號進行預(yù)處理并進行端點檢測,對判定為聲音段的信號提取Mel頻率倒譜系數(shù)得到測試模板,使用動態(tài)時間規(guī)整算法對測試模板與參考模板進行匹配的到識別結(jié)果,如果信號被判定為嬰兒哭聲信號則觸發(fā)報警。
圖8 音頻處理線程流程圖
圖9 聲音處理模塊流程圖
為了測試算法對嬰兒哭聲的識別率,選擇嬰兒哭聲和日常生活中常見的聲音信號,關(guān)門聲,咳嗽聲和人的說話聲進行實驗。本實驗中錄制了50段嬰兒哭聲樣本,嬰兒哭聲樣本來自5名1歲以下的嬰兒各10段;錄制了50段關(guān)門聲,來自于鐵門和木質(zhì)門各25段;錄制了50段咳嗽聲,來自于25名成年男性和25名成年女性的模擬發(fā)聲;錄制了25名成年男性和25名成年女性對阿拉伯數(shù)字1,2,3,4,5的發(fā)音各50段。分別將這些樣本分為兩組,第一組5個樣本,用來提取特征參數(shù),組成參考模板庫,這組樣本要由來自于不同來源的樣本組成;第二組45個樣本,用來測試算法的識別率。
本實驗的AD轉(zhuǎn)換器的采樣率設(shè)置為8 kHz,采樣精度為16位,預(yù)加重系數(shù)為0.975,幀長為256點,幀移96點,對每一幀信號加漢明窗,Mel濾波器組取24個Mel濾波器,提取12階Mel頻率倒譜系數(shù)作為特征參數(shù)。
第一組實驗提取12階Mel頻率倒譜系數(shù)作為特征參數(shù),使用動態(tài)時間規(guī)整算法作為識別算法,實驗結(jié)果如表1。
表1 動態(tài)時間規(guī)整算法識別率
實驗表明,該系統(tǒng)可以對嬰兒哭聲進行有效的識別,對關(guān)門聲、咳嗽聲和人的說話聲有較低的誤報率。
第二組實驗提取12階MFCC作為特征參數(shù),使用改進動態(tài)時間規(guī)整算法作為識別算法,實驗結(jié)果如表2。
表2 改進的動態(tài)時間規(guī)整算法識別率
實驗表明,使用改進的動態(tài)時間規(guī)整算法,放寬對搜索路徑的起點和終點約束,提高了測試模板與參考模板的對準精度。對嬰兒哭聲的識別率由88.9%提高到93.3%,有效的提高了算法對嬰兒哭聲的識別率;對關(guān)門聲,咳嗽聲,和阿拉伯數(shù)字2、3、4的發(fā)音的誤報率都有所降低,有效的降低了算法的誤報率。該系統(tǒng)對嬰兒哭聲有較高識別率。
本文通過使用RT5350芯片作為處理器,設(shè)計了一種能對嬰兒哭聲進行識別的嬰兒智能監(jiān)護系統(tǒng)。通過提取Mel頻率倒譜系數(shù)作為特征參數(shù),使用動態(tài)時間規(guī)整算法作為識別方法,實現(xiàn)了對嬰兒哭聲的準確識別。該系統(tǒng)可以與云服務(wù)器以及用戶的終端設(shè)備通信,將報警消息及時的推送給用戶,并能將視頻數(shù)據(jù)和音頻數(shù)據(jù)通過互聯(lián)網(wǎng)實時的傳送給用戶,極大的方便了用戶對嬰兒的監(jiān)護,有較高的實用價值。
[1] 袁 勇. 多功能嬰兒監(jiān)護系統(tǒng)設(shè)計[J]. 電子世界, 2014 (9): 121-122.
[2] 楊振雷. 智能嬰兒監(jiān)護系統(tǒng)設(shè)計[J]. 電子世界, 2012 (22): 127-128.
[3] 李國城,陳佳明,李偉林,等. 基于物聯(lián)網(wǎng)的嬰兒實時監(jiān)控系統(tǒng)的設(shè)計[J]. 電子設(shè)計工程,2015,18:186-189.
[4] 李艷雄.一種能識別嬰兒哭聲的嬰兒監(jiān)護器及嬰兒哭聲識別方法:中國,103489282A[P].2014-01-01.
[5] 魏麗娜. 嬰兒情緒信息的模式識別技術(shù)研究與實現(xiàn)[D]. 上海:復(fù)旦大學(xué), 2012.
[6] 韓紀慶,張 磊,鄭鐵然.語音信號處理[M].北京:清華大學(xué)出版社,2004.
[7] 周璐璐, 鄧江洪. 一種機器人智能語音識別算法研究[J]. 計算機測量與控制, 2014, 22(10): 3267-3269.
[8] 周 萍, 李曉盼, 李 杰, 等. 混合 MFCC 特征參數(shù)應(yīng)用于語音情感識別[J]. 計算機測量與控制, 2013, 21(7): 1966-1968.
[9] 徐利軍.基于DTW的孤立詞語音識別研究[J]. 軟件導(dǎo)刊, 2012. 11(2): 137-139.
[10] 高 進. TUTK 開啟云連線新時代[J]. 計算機與網(wǎng)絡(luò), 2014, 40(3): 47.
Design of Infants’ Intelligence Monitoring System Based on Audio Monitoring
Du Zhongping1,Li Yibo1,Ye Ting2
(1.School of Precision Instrument and Opto-Electronics Engineering, Tianjin University, Tianjin 300072, China;2.ANDON Health Co.,Ltd., Tianjin 300190, China)
To solve the problem of the current infants’ intelligent monitoring products’ low recognition rates for the infants’ crying,an infants’ intelligent monitoring system which can recognize the infants’ crying accurately was designed.The RT5350 chip was used as processor,the PAP7501 chip was used to capture the video signal and audio signal.A Linux kernel was ported to the system,the multi-threaded programming techniques was used to program the application programs.The Mel frequency cepstrum coefficient (MFCC) was extracted as the characteristic parameters, the dynamic time warping (DTW) algorithm was used as the recognition algorithm.The system can communicate with the cloud server to realize the infants’ crying alarm function,and it can also communicate with the user's terminal device to realize the transmission of video data and audio data.The users can monitor the infants effectively with the help of the system.
intelligent monitor;infants’ cry; MFCC; DTW algorithm
2015-12-30;
2016-02-24。
天津科技支撐計劃項目(14ZCZDGX00003);天津市海洋經(jīng)濟創(chuàng)新發(fā)展區(qū)域示范項目 (2015120024000473);天津市自然科學(xué)基金一般項目 (13JCYBJC18000)。
杜仲平(1990-),男,吉林通化人,碩士研究生,主要從事嵌入式系統(tǒng)方向的研究。
1671-4598(2016)07-0105-04
:10.16526/j.cnki.11-4762/tp
TP391.4 文獻標識碼:A