牛憲華1,曾柏森2,陳思利
(1.西華大學數學與計算機學院,四川 成都 610039;,2. 中國聯通成都市分公司網絡優化中心,四川 成都 610036;3.成都工業學院通信工程系,四川 成都 611730)
隨著互聯網的發展和音頻壓縮技術的進步,網絡上出現了海量的音頻信息。人工管理海量的數字音頻數據是一件幾乎無法完成的工作,這直接促使了音頻指紋(audio fingerprinting,AF)技術的快速發展。音頻指紋技術建立了一種用于比較2個音樂數據聽覺質量的有效機制,可以快速高效地識別和檢索出音頻內容,是數字音頻的內容識別、版權保護、內容完整性校驗等領域的關鍵技術之一。近年來,音頻指紋技術成為國內外學者研究的熱點[1-4]。采用短時傅里葉變換得到音頻信號的頻譜信息是提取音頻指紋時廣泛使用的一種方法。2002年,J.Haitsma等[5]提出Philips音頻指紋算法。Philips算法將頻譜子帶能量時頻濾波結果的正負值作為音頻特征,對多種信號畸變具有較好的魯棒性。2006年,A.Ramalingam等[6]將香農熵、子帶能量、頻譜子帶質心、頻譜帶寬和梅爾頻率倒譜系數等多種基于短時傅里葉變換的特征作為音頻特征分析其魯棒性,其實驗結果表明在一定的信號畸變下,頻譜子帶質心的魯棒性較好。J. S.Seo等[7]基于文獻[6]提出采用歸一化頻譜子帶質心(normalized spectral sub-band centroids, NSSC)作為音頻特征,并證明NSSC算法具有良好的魯棒性。本文對性能較好的Philips算法進行了仿真分析,并針對Philips算法在某些信號畸變情況下,魯棒性不理想的情況,引入功率譜差分的思想,給出了改進算法,并將改進算法與現有算法進行了比較分析。
Philips音頻指紋算法是在2002年提出的[5]。該算法將頻譜子帶能量時頻濾波結果的正負值作為音頻特征,其流程圖如圖1所示。

圖 1 Philips音頻指紋算法流程圖
重疊分幀模塊是按31/32的重疊率進行分幀;傅里葉變換模塊實現時頻轉換;頻帶濾波器模塊是使用濾波器組劃分頻譜子帶;二維濾波器模塊是使用濾波器組進行頻譜子帶差分;門限判別模塊是計算每幀信號的音頻指紋。
本文主要分析Philips算法中的2個關鍵模塊:頻帶濾波器模塊和二維濾波器模塊。通過分析發現,改進Philips算法在這2個模塊所采用的濾波器形式,就可以有效地提高音頻指紋的魯棒性。
1.2.1 頻帶濾波器模塊
頻帶濾波器模塊主要是使用濾波器組來劃分頻譜子帶。常用的功率譜子帶劃分方式有2種:一種是采用Bark刻度[8-9]的矩形濾波器組;另一種是采用Mel刻度的三角形濾波器組[10]。Philips算法采用Bark刻度的矩形濾波器組劃分頻譜子帶,各個濾波器之間沒有重疊。本文將Philips算法中的矩形濾波器組用三角形Mel刻度濾波器組來代替。采用這2種濾波器組的算法仿真對比分析結果如圖2所示。
從圖2可以看出,使用Mel刻度三角形濾波器組的音頻指紋,在時間刻度修改和線性速度改變時,誤碼率明顯減小,但在白噪聲干擾情況下誤碼率變化不大。通過計算可得出2種濾波器組功率譜子帶間的相關性,如圖3所示。可以看出,使用Mel刻度三角形濾波器組時功率譜子帶間的相關性較高。結合圖2的結果可知:增大功率譜子帶間的相關性可以有效提高音頻指紋針對線性速度改變和時間刻度修改的魯棒性;與之相反的是,可以提高音頻指紋對白噪聲的魯棒性[11]。






圖 2 矩形Bark刻度濾波器組與三角形Mel刻度濾波器組的音頻指紋誤碼率比較

圖 3 2種濾波器組的子帶相關性
1.2.2 二維濾波器模塊
設原始音頻信號s(n)被噪聲d(n)污染,形成帶噪音頻信號x(n)=s(n)+d(n)。帶噪音頻信號經過短時分幀處理后表示為
xn(m)=sn(m)+dn(m) (0≤m≤M-1,
0≤n≤N-1)。
(1)
式中:m為幀號;M為音頻信號的幀數;n為幀內序號;N為每幀信號的長度。
根據傅里葉級數性質,式(1)的離散傅里葉級數關系可以表示為
Xk(m)=Sk(m)+Nk(m)。
(2)
式中,Xk(m) 、Sk(m)和Nk(m)分別表示xn(m)、sn(m)和dn(m)的離散傅里葉級數,0≤k≤K-1,K表示離散傅里葉變換的長度。
設加性噪聲d(n)的均值為零,那么Nk(m)的均值也為零,記為Nk。有

(3)

(4)

(5)
再通過多項式近似的方法來求功率譜對時間t的導數[12],為

(6)

對功率譜進行子帶劃分即讓功率譜通過特定的濾波器組。每個濾波器的輸出為
(7)
式中:a和b分別表示帶通濾波器的頻帶寬度的上下限;αi表示濾波器組的系數。根據式(5)和式(6)可以得出

(8)
其中T值代表計算濾波器輸出的差分值時用到的前面幀和后面幀的個數。
由以上推導可知,濾波器輸出對時間求導的結果與噪聲無關,因此可以采用功率譜頻域和時域差分的方式給出改進算法。Philips算法相當于把功率譜子帶通過一個二維的濾波器,即在頻域和時域上都通過一個一階高通FIR濾波器,濾波器傳遞函數均為
U1(z) = 1-z-1。
(9)
仿真結果表明,時域差分可以消除直流分量和變化緩慢的噪聲干擾,頻域差分可以減小頻譜間的相關性。由前面的推導可知,功率譜子帶求導可以消除噪聲的影響,功率譜子帶對時間的導數即為濾波器輸出的差分值。當進行差分運算時只用到前后各1幀,即T=1時,濾波器組的輸出就可以認為經過了一個二階帶通FIR濾波器,濾波器傳遞函數為
U2(z) =z-z-1。
(10)
當使用前后各2幀進行差分運算,即T=2時,濾波器組的輸出即為一個四階帶通FIR濾波器,相應的濾波器傳遞函數為
U3(z) =3z3+2z2+z-z-1-2z-2-3z-3。
(11)
3種濾波器的傳遞函數U1、U2、U3的幅度特征如圖4所示。

圖 4 濾波器U1、U2、U3的幅度響應
可以看出:采用濾波器U1過濾白噪聲和變化緩慢的噪聲時,提升了高頻分量;但是由于高頻分量里的有效信息較少,這樣會造成大量頻譜信息的丟失。若選用既包含更多低頻分量同時又能抑制高頻分量的濾波器U2或U3來處理,則可以更好地消除白噪聲和變化緩慢的噪聲。
通過前面對功率譜子帶劃分和子帶間時頻差分的分析發現,改變功率譜子帶劃分方式和功率譜子帶間的時頻差分方式,可以有效提高音頻指紋在白噪聲和時間刻度修改等信號畸變下的魯棒性;因此,基于時頻差分的思想給出了改進的音頻指紋算法,其流程圖如圖5所示。

圖 5 音頻指紋改進算法流程圖
重疊分幀模塊是按15/16的重疊率進行分幀的,比Philips算法31/32的重疊率低,減少了數據的處理量;傅里葉變換模塊實現時頻轉換;頻帶濾波器模塊使用三角形Mel刻度濾波器組代替Bark刻度濾波器組進行頻譜子帶劃分;頻率差分和時域差分模塊使用濾波器組U3+U1進行功率譜子帶差分;門限判別模塊用于計算每幀信號的音頻指紋。
筆者在Philips音頻指紋算法的基礎上,主要修改了頻帶濾波器組模塊的功率譜子帶劃分方式和二維濾波器模塊的子帶間時頻差分方式,提出了2種改進算法,算法主要修改部分描述如下。
1)改進算法1:頻帶濾波器組使用矩形Bark刻度濾波器組,頻率和時域差分模塊改用濾波器組U3+U1。
2)改進算法2:頻帶濾波器組改用三角形Mel刻度濾波器組,頻率和時域差分模塊改用濾波器組U3+U1。
把實驗環境分為理論環境和真實環境來模擬常見的噪聲環境。在理論環境條件下,采用包括MP3編解碼、白噪聲、幅度壓縮的方法對音頻信號進行畸變;在真實環境條件下,采用在4個典型場景采集的音頻信號作為實驗樣本。
首先,對實驗樣本進行幾類常見的處理:幅度壓縮、白噪聲、MP3編解碼、時間刻度修改和線性速度改變。然后利用NoiseX-92[13]中的幾類噪聲(車內噪聲、公共場合噪聲和工廠噪聲)對實驗樣本加噪。在上述噪聲環境條件中,Philips算法和改進算法的誤碼率如圖6所示。
從圖6可以看出:在車內、公共場合和工廠環境下,改進算法一的誤碼率明顯低于其他2種算法,即在這些環境下改進算法1的噪聲魯棒性優于另外2種算法;在時間刻度修改和線性速度改變這2種信號畸變情況下,改進算法2的誤碼率較低,噪聲魯棒性優于另外2種算法;而針對一些對音頻指紋誤碼率影響較小的畸變,如幅度壓縮、MP3編解碼等,改進算法與Philips算法的誤碼率相差不大。



筆者又將改進算法1和Philips算法進行比較,其結果如圖7所示,改進算法1的魯棒性優于Philips算法。

圖 7 算法的正確識別率比較
將實驗樣本在4個不同的真實場景下進行錄音采集。為符合一般的采集條件,使用Samsung GT-I9305型號手機在4種典型環境下進行信號采集:1)室內,安靜,噪聲少;2)小區,安靜,噪聲相對較少;3)商場,喧鬧,存在說話聲、音樂等各種背景噪聲;4)公交車,喧鬧,嘈雜,存在發動機聲、說話聲等各種背景噪聲。
將以上4種典型環境下采集的音頻信號作為實驗樣本,分別采用改進算法和Philips算法提取音頻指紋,得到的誤碼率如圖8所示。
圖8的實驗結果表明:在比較喧鬧嘈雜的環境下,改進算法一相較Philips算法,其魯棒性明顯改善;在相對安靜的環境下,2種改進算法與Philips算法差別不大;本文提出的改進算法在真實環境下的噪聲魯棒性相較Philips算法有明顯提高。
本文通過對經典音頻指紋算法——Philips算法進行分析研究,發現Philips音頻指紋算法在低信噪比、線性速度改變等方面存在魯棒性較差的問題,通過仿真分析總結出功率譜差分能有效消除加性噪聲的特性。為此,提出了一種基于頻域和時域差分的音頻指紋提取算法。在實驗環境和真實環境條件下對改進算法和現有算法進行了對比分析。其實驗結果表明,改進算法的魯棒性優于Philips算法。




圖 8 真實環境下算法誤碼率比較
[1]Grosche P, Müller M, Serrà J. Audio Content-Based Music Retrieval[J]. Multimodal Music Processing, 2012, 3:157-174.
[2]Kamaladas M D , Dialin M M. Fingerprint Extraction of Audio signal using Wavelet Transform[C]//2013 International Conference on Signal Processing Image Processing & Pattern Recognition (ICSIPR). Coimbatore:IEEE, 2013: 308-312.
[3]Doets P J O , Lagendijk R L. Distortion Estimation in Compressed Music Using Only Audio Fingerprints[J].IEEE Transactions on Audio, Speech, and Language Processing, 2008, 16(2): 302-317.
[4]Lee S , Yook D , Chang S. An Efficient Audio Fingerprint Search Algorithm for Music Retrieval[J].IEEE Transactions on Consumer Electronics, 2013, 59(3): 652-656.
[5]Haitsma J , Kalker T. A Highly Robust Audio Fingerprinting System[J]. Proceedings of the International Symposium on Music Information Retrieval, 2002, 11: 107-115.
[6]Ramalingam A , Krishnan S. Gaussian Mixture Modeling of Short-Time Fourier Transform Features for Audio Fingerprinting[J].IEEE Transactions on Information and Forensics and Security, 2006, 1(4): 457-464.
[7]Seo J S , Jin M , Lee S , et.al. Audio Fingerprinting Based on Normalized Spectral Subband Centroids[J]. IEEE International Conference on Acoustics, Speech, and Signal Proceedings, 2005, 3(3): 213-216.
[8]Thomas F. Quatieri 離散時間語音信號處理:原理與應用[M].趙勝輝, 劉家康,譯.北京:電子工業出版社, 2004: 540-550.
[9]Shaughnessy D O. Speech Communication: Human and Machine[M].[s.n.]: Universities Press (India) Pvt Limited, 1987:23-45.
[10]Davies S B , Mermelstein P. Comparison of Parametric Representations for Monosyllabic Word Recognition in Continuously Spoken Sentences[J].IEEE Transactions on Acoustics, Speech, and Signal Processing, 1980, 28(4): 357-366.
[11]Nadeu C , Hemando J , Gorricho M. On the Decorrelation of Filter-Bank Energies in Speech Recognition[J].Proc Eurospeech, 1995: 1381-1384.
[12]Xu J F , Wei G. Noise-Robust Speech Recognition Based on Difference of Power Spectrum[J]. IEEE Electronics Letters, 2000, 36(14): 1247-1248.
[13]Varga A , Steeneken H J M. Assessment for Automatic Speech Recognition: II. NOISE-92: A Database. An Experiment to Study the Effect of Additive Noise on Speech Recognition Systems[J]. Speech Communication, 1993, 12: 247-251.