本發(fā)明涉及數(shù)字音頻信號處理技術(shù)領(lǐng)域,特別涉及一種基于特征融合的數(shù)字音頻篡改自動檢測方法。
背景技術(shù):
數(shù)字音頻信號相較于模擬音頻信號有著易于傳播、復(fù)制、存儲等優(yōu)點,但是這些優(yōu)點在帶給人們各種便利的同時也帶來了不容忽視的問題。那就是篡改數(shù)字音頻信號變得同樣簡單和快捷。數(shù)字音頻的真實性和完整性受到來自各方面的威脅,且大多數(shù)的篡改操作是很難靠人的感官進行判別。數(shù)字音頻取證技術(shù)就是用來驗證數(shù)字音頻信號的真實性和完整性的技術(shù)。數(shù)字音頻被動取證是數(shù)字音頻取證的一個重要分支,在司法取證、新聞公正和科學(xué)發(fā)現(xiàn)等領(lǐng)域有著廣泛應(yīng)用。
某一地區(qū)的電網(wǎng)頻率(electricnetworkfrequency,enf)的波動在相當(dāng)一段時間內(nèi)具有穩(wěn)定性和唯一性。電網(wǎng)頻率的非周期性波動,對于接入同一電網(wǎng)的所有設(shè)備的影響是相同的,這就使得enf信號可以作為時間戳來使用。當(dāng)錄音設(shè)備采用電網(wǎng)供電時,錄制的音頻文件中就會殘留有enf成分(enfcomponent,enfc),經(jīng)過帶通濾波可以提取出enfc。利用enfc的穩(wěn)定性和唯一性進行數(shù)字音頻被動取證一般有兩個研究思路,第一是將提取出的enfc與供電部門的電網(wǎng)頻率數(shù)據(jù)庫中的數(shù)據(jù)進行比對,確定音頻錄制時間與所宣稱的是否一致,建立和保存大范圍的enf信號數(shù)據(jù)庫難度高、代價高,目前還沒有實用價值比較高的enf數(shù)據(jù)庫;第二是提取enf信號中的某些特征,進行一致性或者規(guī)律性分析。
grigoras最早提出基于enf的音頻篡改檢測算法,主要通過待檢測音頻中enf的波動和參考年份的數(shù)據(jù)進行比對,從而判斷音頻是否被篡改過。接著grigoras驗證對音頻信號加短時窗進行分析,可以與數(shù)據(jù)庫進行更細(xì)致、精確的對比。提出建立一個enf準(zhǔn)則,以期可以顯示不同信號的供電類型,建議將該準(zhǔn)則和傳統(tǒng)的檢測方法共用,為研究者建立標(biāo)準(zhǔn)化的研究分析方法。liu等提出一系列方法對enf數(shù)據(jù)庫中的信號進行進一步處理以方便在語音取證中的使用。rodríguez等在grigoras的研究基礎(chǔ)上,提出不需要使用enf標(biāo)準(zhǔn)數(shù)據(jù)庫的方法,使用數(shù)字信號處理的方法估計enf信號相位,將enf相位變化的一致性作為特征來檢測音頻篡改,當(dāng)特征值大小超過某一邊界值即判斷待測音頻信號為篡改信號。esquef等根據(jù)篡改操作會引起篡改點enf瞬時頻率突變,使用hilbert變換計算瞬時頻率,提出tpsw(two-passsplit-window)方法估計enf背景變化水平,實際瞬時頻率變化范圍超過背景變化水平的部分的峰值點即為篡改點。
可以看出目前基于enf進行數(shù)字音頻被動篡改檢測的研究存在一些問題:1)沒有權(quán)威的enf對比數(shù)據(jù)庫。使用待測信號中的enf成分與enf數(shù)據(jù)庫中進行對比來判斷語音信號是否經(jīng)過篡改沒有可靠的結(jié)果2)部分檢測方法是人從直觀視覺上判斷語音信號是否經(jīng)過篡改,不能實現(xiàn)自動化。3)目前大多數(shù)的檢測方法比較簡略,沒有囊括更多實際檢測情況,不能達到數(shù)字音頻被動檢測的要求。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提出一種基于特征融合的數(shù)字音頻篡改自動檢測方法。該方法通過融合信號中的enf成分基于dft0的相位特征、基于dft1的相位特征和基于hilbert變換的瞬時頻率特征,來分辨原始信號和編輯信號,實現(xiàn)了數(shù)字音頻插入、刪除操作的自動檢測。該方法通過融合enf成分中具有代表性的相位和瞬時頻率特征,并使用支持向量機進行分類,得到可以進行自動檢測模型,提高了檢測效率,實現(xiàn)了數(shù)字音頻篡改檢測的自動化。
本發(fā)明所采用的技術(shù)方案是:一種基于特征融合的數(shù)字音頻篡改自動檢測方法,包括以下步驟:
步驟1,對待測信號進行預(yù)處理,獲得待測信號中的enf成分;
步驟2,對待測信號中的enf成分進行特征提取,包括以下子步驟,
步驟2.1,對enf成分進行基于dft0的相位估計,提取相位波動特征f1;
步驟2.2,對enf成分進行基于dft1的相位估計,提取相位波動特征f2;
步驟2.3,對enf成分進行基于hilbert的瞬時頻率估計,提取相位波動特征f3;
步驟3,對提取出的特征進行特征融合,得到特征集,將特征集進行歸一化處理;
步驟4,利用優(yōu)化的支持向量機對特征集進行分類,得到分類準(zhǔn)確率。
進一步的所述步驟1的實現(xiàn)方式如下,
步驟1.1,將待測音頻信號讀入計算機得到離散的時間序列x[n],其中
步驟1.2,將步驟1.1中得到的xd[n]進行零填充,通過中心頻率在enf標(biāo)準(zhǔn)頻率處的帶通濾波器,得到待測信號中的enf成分xenfg[n]。
進一步的,所述步驟2.1的實現(xiàn)方式如下,
首先,對xenfg[n]進行相位估計:對xenfg[n]信號進行分幀、加窗,分幀的長度是nc個標(biāo)準(zhǔn)enf頻率周期,幀移為一個標(biāo)準(zhǔn)enf周期長度;應(yīng)用一個平滑窗w(n),得到加窗后的信號為xn[n]=xenfg[n]w(n);對xn[n]每幀進行n點的dft變換,得到xenfg[n]每幀加窗后的頻域分布x(k);對每幀信號進行dft變換后,令kpeak作為每幀的|x(k)|最大值的整數(shù)索引,則每幀enf信號的估計頻率為
然后,使用特征量f1對基于dft0得到的enfc相位變化進行描述:設(shè)
其中,2≤nb≤nblock,
進一步的,所述步驟2.2的實現(xiàn)方式如下,
首先,對xenfg[n]進行相位估計:計算enf信號xenfc[n]在點n處的近似一階導(dǎo)數(shù),
x′enfc[n]=fd(xenfc[n]-xenfc[n-1]);
對一階導(dǎo)數(shù)信號加窗,x′n[n]=x′enfc[n]w(n);對每幀x′n[n]進行n點的dft變換,得到每幀加窗后的頻域分布x′(k),找到|x′(k)|的峰值所在點k'peak,將|x′(k)|乘以一個尺度系數(shù)f(k),其中
dft0[k]=|x(k)|和dft1[k]=f(k)|x′(k)|;
則每幀enf信號的估計頻率值為
其中
然后,使用特征量f2對基于dft1得到的enfc相位變化進行描述:設(shè)
其中,2≤nb≤nblock,
進一步的,所述步驟2.3的實現(xiàn)方式如下,
首先,對信號xenfc[n]進行離散hilbert變換,估計enf信號的瞬時頻率f[n]:先利用離散hilbert變換得到xenfc[n]的解析函數(shù)x(a)enfc[x]=xenfc[x]+i*h{xenfc[x]},其中
然后,使用特征量f3對enfc的瞬時頻率波動進行描述:令len為xenfc[n]的長度,len=length(xenfc[n]),
其中,
進一步的,步驟4中通過交叉驗證和網(wǎng)格搜索法選擇優(yōu)化的支持向量機參數(shù),包括懲罰因子c和徑向基函數(shù)參數(shù)g;
其中交叉驗證和網(wǎng)格搜索法結(jié)合獲得支持向量機參數(shù)的基本步驟是:首先輸入c值的可能區(qū)間[cmin,cmax]和步進cstep,g值的可能區(qū)間[gmin,gmax]和步進gstep,并令最優(yōu)的c值等于cmin,最優(yōu)的g值等于gmin,最好預(yù)測準(zhǔn)確率為零;接著使c值在[cmin,cmax]區(qū)間內(nèi)以cstep為步進進行循環(huán);在c值的循環(huán)內(nèi)部,使g值在區(qū)間[gmin,gmax]內(nèi)以gstep為步進進行循環(huán);在g值循環(huán)內(nèi)部,對每一組(c,g)進行支持向量機十折交叉驗證,若所得最優(yōu)分類準(zhǔn)確率大于預(yù)測準(zhǔn)確率則更新最優(yōu)c值、g值和最優(yōu)分類準(zhǔn)確率;直到c值收斂,算法結(jié)束。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點和有益效果:
(1)本發(fā)明融合了enf信號中對信號截斷敏感的相位和瞬時頻率特征,提高了數(shù)字音頻被動篡改檢測的準(zhǔn)確率;
(2)本發(fā)明提出基于enf成分一致性的數(shù)字音頻被動篡改檢測的一般框架和enfc特征提取的一般框架,可以應(yīng)用到其他基于enf信號的篡改檢測方法中;
(3)本發(fā)明針對復(fù)雜環(huán)境錄音和含噪語音穩(wěn)定性高,具有很強的魯棒性。
(4)本發(fā)明為數(shù)字音頻被動篡改檢測的準(zhǔn)確性和自動化提出了一種廣泛性的算法。
附圖說明
圖1是本發(fā)明實施例的流程圖;
圖2是本發(fā)明實施例的dft0相位特征提取流程圖;
圖3是本發(fā)明實施例的dft1相位特征提取流程圖;
圖4是本發(fā)明實施例的hilbert變換瞬時頻率特征提取流程圖;
圖5是本發(fā)明實施例的svm參數(shù)優(yōu)化流程圖。
具體實施方式
為了便于本領(lǐng)域普通技術(shù)人員理解和實施本發(fā)明,下面結(jié)合附圖及實施例對本發(fā)明作進一步的詳細(xì)描述,應(yīng)當(dāng)理解,此處所描述的實施示例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
請見圖1,本發(fā)明提供的一種基于特征融合的數(shù)字音頻篡改自動檢測方法,包括以下步驟:
步驟1:對待測信號進行預(yù)處理,獲得待測信號中的enf成分;
具體實施包括以下子步驟:
步驟1.1:將待測音頻信號讀入計算機得到離散的時間序列x[n](
本實施例中考慮到頻率混疊效應(yīng)、信號信息損失和信號的信噪比(過采樣可以提高信號的信噪比)的平衡,將信號的下采樣頻率fd定為1000hz或者1200hz,將標(biāo)準(zhǔn)的enf頻率放在ω0=π/10rad/sample。
步驟1.2:將步驟1.1中經(jīng)過下采樣的信號xd[n]進行零填充,通過中心頻率在enf標(biāo)準(zhǔn)頻率處的帶通濾波器,得到信號中的enf成分xenfg[n];
使用10000階的線性零相位fir濾波器進行窄帶濾波防止相位延時。中心頻率在enf標(biāo)準(zhǔn)頻率處,帶寬為0.6hz,通帶波紋為0.5db,阻帶衰減為100db。使用高階濾波器是為了得到理想的窄帶信號。零填充(zeropadding)是指在時域信號的末端加上零點以增加信號長度的做法,在dft之前使用零填充可以提高頻率分辨率,幫助更加準(zhǔn)確地找到頻譜上的峰值點。
步驟2:對待測信號中的enf成分進行特征提?。?/p>
具體實現(xiàn)包括以下子步驟:
步驟a1:對xenfg[n]進行基于dft0的相位估計,提取相位波動特征f1;
如圖2,本實施例中基于dft0對xenfg[n]相位進行估計。對濾波后的xenfg[n]進行相位估計,首先對xenfg[n]信號進行分幀、加窗,分幀的長度是nc個標(biāo)準(zhǔn)enf頻率周期,幀移為一個標(biāo)準(zhǔn)enf周期長度。應(yīng)用一個平滑窗w(n),得到加窗后的信號為xn[n]=xenfg[n]w(n),對xn[n]每幀進行n點的dft變換(ndft,dft點數(shù)大于enf信號的長度),得到xenfg[n]每幀加窗后的頻域分布x(k)。對每幀信號進行dft變換后,令kpeak作為每幀|x(k)|最大值的整數(shù)索引。所以每幀enf信號的估計頻率為
使用特征量f1對基于dft0得到的enfc相位變化進行描述。令
步驟a2:對xenfc[n]進行基于dft1的相位估計,提取相位波動特征f2;
如圖3,本實施例中基于dft1對xenfc[n]相位進行估計。計算enf信號xenfc[n]在點n處的近似一階導(dǎo)數(shù):
x′enfc[n]=fd(xenfc[n]-xenfc[n-1])
對一階導(dǎo)數(shù)信號加窗:x′n[n]=x′enfc[n]w(n)。對每幀x′n[n]進行n點的dft變換,得到每幀加窗后的頻域分布x′(k)。同樣找到|x′(k)|的峰值所在點k'peak(此處的k'peak與前面的kpeak不一定相同)。將|x′(k)|乘以一個尺度系數(shù)f(k),
這樣可以得到,
dft0[k]=|x(k)|和dft1[k]=f(k)|x′(k)|
估計頻率值為
如果定義
下面使用dft1方法來估計enf信號的相位??紤]一個單頻信號的模型stone(n)=a(n)cos(ω0n+φ0),n指離散時間變量,ω0是信號的角頻率。信號的相位等于φ(n)=ω0n+φ0,φ0是信號的初相。對于這個值的估計將限制在-π到π之間,φ(n)×n的圖形將是一個鋸齒狀曲線(包裹相位wrappedphase)。這個模型是一個窄帶信號,如果a(n)是一個常數(shù),stone(n)將是一個窄帶信號。在實踐中,假定a(n)隨著時間緩慢發(fā)展,因此可以認(rèn)為a(n)在短時間或一幀內(nèi)是個近似常量a。這個模型不包含任何隨機部分或者寬帶成分,因此可以應(yīng)用到本發(fā)明的目標(biāo)問題上。下采樣信號經(jīng)過帶通濾波留下一個窄帶信號,大部分在enf標(biāo)準(zhǔn)值以外的頻率成分被過濾掉。因此每幀enf信號可以寫成:xenfc[n]=acos(ω0n+φ0),其中ω0=2πfenfc/fd,而fenfc是enf是實際頻率。依據(jù)前面計算一階導(dǎo)數(shù)的公式x′enfc[n]=fs(xenfc[n]-xenfc[n-1])可得:
另外一個余弦信號的一階導(dǎo)數(shù)實際上是另一個具有相同頻率的正弦信號,上述公式可以表示為:
c是一個常數(shù),θ是x′enfc的相位。比較上述兩個式子可以得出:
ccos(θ)=cos(φ0)-cos(φ0-ω)
csin(θ)=sin(φ0)-sin(φ0-ω)
由上等式可以推導(dǎo)出:
上下同除以cos(φ0),可以得到:
φ0代表xenfc的初始相位,可以使用dft1方法估計出相位序列,即為:
其中
由
對于上述
同樣使用步驟a1中的方法計算出基于dft1估計相位的波動特征。
使用特征量f2對基于dft1得到的enfc相位變化進行描述。令
步驟a3:對xenfc[n]進行基于hilbert的瞬時頻率估計,提取相位波動特征f3;
對信號xenfc[n]進行離散hilbert變換。首先得到xenfc[n]的解析函數(shù):x(a)enfc[x]=xenfc[x]+i*h{xenfc[x]},其中
計算特征量f3對enfc的瞬時頻率波動進行描述。令len為xenfc[n]的長度,len=length(xenfc[n])。
步驟3:對提取出的特征進行特征融合,得到特征集,將特征集進行歸一化處理;
將步驟2中得到的3個特征進行特征融合,得到特征集。將特征集進行歸一化處理,對特征集中的特征向量進行標(biāo)記,分為原始信號和編輯信號。
步驟4:使用本發(fā)明優(yōu)化支持向量機方法對特征集進行分類,得到分類準(zhǔn)確率。
本發(fā)明實施例使用交叉驗證和網(wǎng)格搜索法選擇最佳支持向量機參數(shù),包括懲罰因子c和徑向基函數(shù)參數(shù)g,使用優(yōu)化的支持向量機對特征集進行分類;
交叉驗證是指將數(shù)據(jù)集平均分為k份,每次將其中k-1份數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),而另外一份數(shù)據(jù)作為測試數(shù)據(jù)。這樣重復(fù)k次,根據(jù)k次迭代的平均值估計分類準(zhǔn)確度。網(wǎng)格搜索是來確定兩個參數(shù)即懲罰因子c與徑向基函數(shù)參數(shù)g,基于網(wǎng)格法將c∈[cmin,cmax],變化步長為cstep,而g∈[gmin,gmax],變化步長為gstep。這樣,針對每對參數(shù)(c,g)進行訓(xùn)練,取效果最好的一對參數(shù)作為模型參數(shù)。
交叉驗證和網(wǎng)格搜索法結(jié)合獲得支持向量機參數(shù)的基本步驟是:首先輸入c值的可能區(qū)間[cmin,cmax]和步進cstep,g值的可能區(qū)間[cmin,cmax]和步進gstep。并令最優(yōu)的c值等于cmin,最優(yōu)的g值等于gmin,預(yù)測準(zhǔn)確率為零;接著使c值在[cmin,cmax]區(qū)間內(nèi)以cstep為步進進行循環(huán);在c值的循環(huán)內(nèi)部,使g值在區(qū)間[gmin,gmax]內(nèi)以gstep為步進進行循環(huán);在g值循環(huán)內(nèi)部,對每一組(c,g)進行支持向量機十折交叉驗證,若所得最優(yōu)分類準(zhǔn)確率大預(yù)測準(zhǔn)確率則更新最優(yōu)c值、g值和最優(yōu)分類準(zhǔn)確率;算法直到c值收斂循環(huán)結(jié)束,算法結(jié)束。算法流程圖如圖5所示,其中bestc是最優(yōu)的c值,bestg是最優(yōu)的g值,acc是預(yù)測準(zhǔn)確率,bestacc是最優(yōu)分類準(zhǔn)確率。
本發(fā)明的實驗結(jié)果,與進行特征融合之前的單個特征得到的實驗結(jié)果進行對比,所得到的結(jié)果如下表1所示:
表1本發(fā)明實施例的融合特征與單個特征或者組合特征的檢測結(jié)果對比表
本發(fā)明的實驗結(jié)果,使用多個分類器與本發(fā)明所使用的優(yōu)化svm進行對比,所得實驗結(jié)果如下表2所示:
表2本發(fā)明實施例的優(yōu)化svm分類器與其他分類器檢測結(jié)果對比表
本發(fā)明的實驗結(jié)果,從表1、2中可以看出,本方法所選用的特征和優(yōu)化分類器可以達到更好的識別率。且本方法的實驗數(shù)據(jù)來自于三個不同的數(shù)據(jù)庫,因此可以認(rèn)為本方法在大多數(shù)錄音條件下都具有較好的檢測效果。
應(yīng)當(dāng)理解的是,本說明書未詳細(xì)闡述的部分均屬于現(xiàn)有技術(shù)。
應(yīng)當(dāng)理解的是,上述針對較佳實施例的描述較為詳細(xì),并不能因此而認(rèn)為是對本發(fā)明專利保護范圍的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的啟示下,在不脫離本發(fā)明權(quán)利要求所保護的范圍情況下,還可以做出替換或變形,均落入本發(fā)明的保護范圍之內(nèi),本發(fā)明的請求保護范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。