基于cfcc特征的鲁棒音频复制粘贴篡改检测方法及装置
技术领域
1.本发明涉及数字音频信号处理技术领域,具体涉及基于cfcc特征的鲁棒音频复制粘贴篡改检测方法及装置。
背景技术:
2.音频取证在音频真实性检测、9游会的版权保护、信息泄露跟踪等方面发挥着关键作用,因此通过检测音频信号的某种特征来检测音频信号是否经过人为篡改的技术十分关键,而现有的音频检测技术在应对可以隐藏篡改痕迹的经过后期处理攻击的情况下,如添加噪音,重压缩,中值滤波等,检测效果并不能达到预期。
3.现有技术中包括一种基于音频波形的复制粘贴伪造检测方法和一种使用一维局部二进制模式的复制粘贴伪造检测算法;其中一种基于音频波形的复制粘贴伪造检测方法首先将音频分割成等长的片段,然后用快速卷积算法来计算音频片段之间的相似度,进而确定被测音频中是否存在复制粘贴的篡改片段。但是,如果存在改变波形的混响,就会严重影响实验结果;一种使用一维局部二进制模式的复制粘贴伪造检测算法,该算法使用语音活动检测方法将音频分割成有声段和静音段,应用一维局部二进制模式获得这些有声段的直方图特征,然后使用均方误差(mse)计算任意两个直方图之间的相似度。这种方法的检测精度非常依赖于语音活动检测,由于边界点检测不准确,会导致精度下降。
4.目前基于同源音频复制粘贴篡改的方法主要包括以下两个问题:
5.(1)无法准确确定音频段复制粘贴篡改位置
6.(2)目前一些方法大多在检测未后处理的音频是效果较好,但是对于经过后期处理的复制移动音频信号,检测精度很低,鲁棒性不高。
技术实现要素:
7.为了解决上述现有技术中存在的问题,本发明拟提供了基于cfcc特征的鲁棒音频复制粘贴篡改检测方法及装置,拟解决现有技术在检测经过后处理的复制移动音频信号时,检测精度不高的问题。
8.基于cfcc特征的鲁棒音频复制粘贴篡改检测方法,包括以下步骤:
9.s1:通过语音检测活动区分语音信号中的有声段和无声段;
10.s2:提取每个有声段的耳蜗倒谱系数特征;
11.s3:利用皮尔逊相关系数比较每个有声段耳蜗倒谱系数特征之间的相似度。
12.优选的,所述s1中的语音检测活动包括:预处理、频谱音高跟踪、候选音高估计和最终音高估计。
13.优选的,所述预处理包括通过平方非线性处理语音信号进行转化,计算公式如下:
14.s(n)=x(n)215.所述频谱音高跟踪包括计算预处理后的语音信号每一帧的时域的局部谐波结构与频域的谐波结构之间的相关性,计算公式如下:
[0016][0017]
式中,s(i,f)表示第i帧信号在频率f处幅谱,w和n分别表示窗长和谐波数;
[0018]
选择shc(i,f)的最大值作为f0,nlfer(i)代表语音信号每一帧的归一化低频能量比,通过比较低频能量与全频能量的比值,并且设定一个阈值,比值大于阈值表示为有声段,反之则表示无声段,从而得到候选有声段,具体的,计算公式如下:
[0019][0020]
式中,t表示帧数,f0_max表示所有帧中频谱能量的的最大值,f0_min表示所有帧中频谱能量的的最小值;
[0021]
所述候选音高估计包括通过计算原始信号和预处理后的语音信号的nfcc得到候选音调序列,nfcc的计算公式如下:
[0022][0023][0024]
式中,ek表示语音信号s(n)在n=k到n=k l-k
max
范围内的能量,l表示帧长。
[0025][0026]
式中,e0表示语音信号s(n)在n=k到n=l-kmax范围内的能量。
[0027]kmin
≤k≤k
max
[0028]
式中,k
min
和k
max
是滞后值;
[0029]
所述最终音高估计包括通过动态规划算法在频谱音高跟踪得到的候选有声段和候选音高估计得到的候选音高序列中找到最佳序列,然后遍历最佳序列中的每个元素,如果数值不为0,则标记为有声段,否则为无声段,从而将原始音频信号x(n)分割成k个有声段{y1,y2,...,yk}。
[0030]
优选的,所述s1中的语音检测活动包括:预加重、听觉变换、毛细胞窗口、非线性响度变换和离散余弦变换。
[0031]
优选的,所述预加重包括用高通滤波器获得语音信号的高频成分,具体公式如下:
[0032]
h(z)=1-μz-1
[0033]
所述听觉变换包括实验耳蜗滤波器组作为小波基函数对预加重得到的高频成分进行处理,计算公式如下:
[0034]
[0035][0036][0037]
式中,f(t)为语音信号,t(a,b)为听觉变换输出,α和β决定时频域形状和宽度,θ为初始相位,u(x)为单位阶跃函数,f
l
为耳蜗滤波器组的最低中心频率,fc为耳蜗滤波器组的当前中心频率。
[0038]
所述毛细胞窗口包括利用小波变换对听觉变换处理过的信号进行过滤,模拟类似人耳中毛细胞的窗函数,模拟过程公式如下:
[0039]
h(a,b)=[t(a,b)]2[0040][0041][0042]
式中,s(i,j)为每个毛细胞输出,di为可变窗长度,l为帧移,τi为第i个滤波器中心频率周期。
[0043]
所述非线性响度变换包括采用立方根函数对毛细胞窗口的输出进行非线性响度变换,计算公式如下:
[0044][0045]
所述离散余弦变换计算公式如下:
[0046][0047]
式中,i表示帧数,n代表滤波器组数。
[0048]
优选的,所述步骤s3包括:先利用皮尔逊相关系数计算cfcc特征之间的相似度同时通过实验设定阈值,若两个cfcc特征的皮尔逊相关系数高于阈值,则判断两个cfcc特征对应的语音片段有复制粘贴关系,具体的,皮尔逊相关系数的计算公式如下:
[0049][0050]
式中,xi和yi为不同的cfcc特征。
[0051]
基于cfcc特征的鲁棒音频复制粘贴篡改检测装置,包括语音检测模块、特征提取模块和相似度比较模块,其中:
[0052]
语音检测模块用于通过语音检测活动区分语音信号中的有声段和无声段;
[0053]
特征提取模块用于提取每个有声段的耳蜗倒谱系数特征;
[0054]
相似度比较模块用于通过计算皮尔逊相关系数比较每个有声段耳蜗倒谱系数特征之间的相似度。
[0055]
本发明的有益效果包括:
[0056]
本发明能够在检测经过不同后处理攻击的音频时,先通过语音检测活动准确提取语音信号中的有声段,针对有声段提取具有更高的识别率的耳蜗倒谱系数特征从而提高在噪音状态下的鲁棒性,最后通过皮尔逊相关系数来比较耳蜗倒谱系数特征之间的相似度,利用本发明可实现在低信噪比的情况下具有更高的检测精度,进而具有更好的鲁棒性的技术效果。
附图说明
[0057]
图1为实施例1基于cfcc特征的鲁棒音频复制粘贴篡改检测方法流程图。
[0058]
图2为实施例2基于cfcc特征的鲁棒音频复制粘贴篡改检测装置的结构示意图。
[0059]
图3为实施例1涉及的语音检测活动中的音高序列和有声段检测图。
具体实施方式
[0060]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0061]
实施例1
[0062]
下面结合附图1对本发明的具体实施例做详细的说明;
[0063]
基于cfcc特征的鲁棒音频复制粘贴篡改检测方法,包括如下步骤:
[0064]
s1:通过语音检测活动区分语音信号中的有声段和无声段;
[0065]
本实施例采用一种基于音调跟踪算法的语音活动检测方法,该方法通过四个步骤实现语音活动检测:语音信号的预处理、频谱音高跟踪、音高候选估计和最终音高确定,具体地:
[0066]
1.预处理
[0067]
在音高跟踪算法中,经过非线性预处理后可以在后续步骤中用于提高音高估计的性能,例如用于部分恢复丢失的基频信息,从而提高音高跟踪的准确性和鲁棒性。可疑的语音信号x(n)通过平方非线性处理转化为s(n),计算公式如下:
[0068]
s(n)=x(n)2(1)
[0069]
2.频谱音高跟踪
[0070]
采用估计近似音高轨迹的技术shc计算经过预处理后的语音信号在时域的局部谐波结构与频域的谐波结构之间的相关性,计算公式如下:
[0071][0072]
式中,s(i,f)表示第i帧信号在频率f处幅谱;w和n分别表示窗长和谐波数。
[0073]
选择shc(i,f)的最大值作为f0,nlfer(i)代表语音信号每一帧的归一化低频能量比,通过比较低频能量与全频能量的比值,并且设定一个阈值,比值大于阈值表示为有声
段,反之则表示无声段,从而得到候选有声段,具体的,计算公式如下:
[0074][0075]
式中,t表示帧数,f0_max表示所有帧中频谱能量的的最大值,f0_min表示所有帧中频谱能量的的最小值。
[0076]
3.候选音高估计
[0077]
通过计算原始信号和预处理后的语音信号的nccf得到候选音调序列,计算公式如下:
[0078][0079][0080]
其中ek表示语音信号s(n)在n=k到n=k l-k
max
范围内的能量,l表示帧长。
[0081][0082]
其中e0表示语音信号s(n)在n=k到n=l-k
max
范围内的能量。
[0083]kmin
≤k≤k
max
ꢀꢀꢀ
(7)
[0084]
其中k
min
和k
max
是滞后值。
[0085]
4.最终音高估计
[0086]
通过前面三个步骤,得到了候选音高包括候选有声段和候选音调序列,而后利用动态规划算法进行下一步处理,从候选音高中找到最佳序列,最后,遍历最佳序列中的每个元素,如果数值不为0,则标记为有声段,否则为无声段,从而将原始音频信号x(n)分割成k个有声段{y1,y2,...,yk}。
[0087]
s2:提取每个有声段的耳蜗倒谱系数特征;
[0088]
耳蜗倒谱系数(cfcc)是基于听觉感知模拟人耳听觉过程所提取的。它与常见梅尔频率倒谱系数和伽马频率倒谱系数相比,cfcc特征具有更高的识别率,尤其是在噪音情况下具有更高的鲁棒性。cfcc的提取过程是基于听觉变换,之后通过毛细胞窗口,再进行非线性响度变换,最后进行离散余弦变换来提取的。具体地:
[0089]
1.预加重
[0090]
预加重使用一个高通滤波器来获得语音信号的高频成分,以便从语音信号中提取更多的信息。预加重增强了音频信号的高频成分,不仅使高频范围内的能量分布更加均匀,而且还提高了信噪比,从而更容易区分音频信号和噪声信号,预加重的传递函数计算公式如下:
[0091]
h(z)=1-μz-1
ꢀꢀꢀ
(8)
[0092]
式中,μ是一个常数,用音调跟踪算法提取的语音信号的语音段被表示为y(t),经过预加重后,成为f(t)。
[0093]
2.听觉变换
[0094]
听觉变换是一种信号处理方法,它将声音信号转换为与人耳听到的信号相类似的信号,同时抑制噪声和非语音成分。听觉变换使用耳蜗滤波器组作为小波基函数,假设语音信号f(t),经过听觉变换输出为t(a,b)。
[0095][0096][0097][0098]
式中,α和β决定时频域形状和宽度,本实施例中α设为3,β设为0.2,θ为初始相位,u(x)为单位阶跃函数,f
l
为耳蜗滤波器组的最低中心频率,fc为耳蜗滤波器组的当前中心频率。
[0099]
3.毛细胞窗口
[0100]
耳蜗窗是一个类似于人耳中毛细胞的窗函数,用小波变换对听觉变换后的信号进行过滤,可以用来进一步提高语音信号在时域的特征辨别能力,模拟过程如公式12所示:
[0101]
h(a,b)=[t(a,b)]2ꢀꢀꢀ
(12)
[0102][0103][0104]
式中,每个毛细胞输出为s(i,j),di为可变窗长度,l为帧移,τi为第i个滤波器中心频率周期。
[0105]
4.非线性响度变换
[0106]
经过毛细胞窗口后,采用立方根函数进行非线性响度变换。
[0107][0108]
5.离散余弦变换
[0109][0110]
其中i表示帧数,n代表滤波器组数。
[0111]
s3:利用皮尔逊相关系数比较每个有声段耳蜗倒谱系数特征之间的相似度。
[0112]
皮尔逊相关系数是一种用于量化两个变量之间的线性相关的统计量,通常表示为“r”。皮尔逊相关系数的范围是[-1,1],其中-1代表完全负相关,1代表完全正相关,皮尔逊相关系数计算公式如下:
[0113][0114]
式中,xi和yi为不同的cfcc特征。
[0115]
利用皮尔逊相关系数比较两个音频片段的cfcc特征之间的相似度。通过实验选择最佳阈值,如果两个音频片段之间的皮尔逊相关系数高于阈值,就可以确定这两个片段有
复制粘贴关系。
[0116]
本实施例中各个步骤相互协同作用,其中耳蜗滤波器组的设计直接影响非线性变换的结果;在对耳蜗倒谱系数进行提取时本实施例在滤波器组设计上进行优化,采取16维的滤波器组,中心频率分别为[250 350 450 570 700 840 1000 1170 1370 1600 1850 2150 2500 2900 34004000],进而提取16维的cfcc特征;在毛细胞窗函数设计方面,采取可变的窗函数,针对不同的滤波器所使用的窗长度不同;从而防止高频信号被过滤掉,导致丢失可以用的语音信息;这是其他传统特征所做不到的。
[0117]
采用本方法进行具体实验如下:
[0118]
1、首先利用本方法对音频进行简单的检测实验,具体的,用音高跟踪算法提取出音频有声段,如图3所示;图3左部分图为音高特征,取自音频的各个有声段的起始地址和终止地址,然后将其体现在图3右部分图的音频图上,具体的图3右部分图中实线表示每个语音段的起始位置,虚线表示每个语音段的结束位置;然后提取每个有声段的cfcc特征系数,并比较它们之间的相似度;在样本音频中提取了5个语音段,并使用pearson相关系数比较它们的相似度,如表1所示:
[0119]
表1有声段之间的皮尔逊相关系数
[0120][0121]
可见,第三和第四个声音片段之间的相似度非常高,皮尔逊相关系数为0.9923。因此,可以确定这两个声音片段之间存在复制粘贴关系,确定它们是被篡改的音频。
[0122]
2、而后利用本方法对各种后处理音频进行检测实验,实验数据如表2所示:
[0123]
表2该算法对各种后处理音频的鲁棒性实验
[0124][0125]
从timit语音数据库创建的复制-移动伪造数据库。timit数据库包含大约2到6秒的英语音频。音频采样率为8khz。我们选取250个音频,并对每一个音频文件随机选取1个或者2个有声段粘贴到同一音频的不同位置,进而生成copy-move伪造数据库。并对这些伪造语音进行常见的后处理操作:30db,20db,10db的高斯白噪音,中值滤波mp3压缩(32kbps和64kbps)。总计存在1750个伪造音频文件。
[0126]
可见,本方法在检测未经过任何后处理的音频时,检测精确率为97.99%,召回率为97.60%。当检测添加30db高斯白噪音的篡改音频时,精确率为96.36%,召回率为
95.20%。当检测添加20db的高斯白噪音的篡改音频时,精确率为94.72%,召回率为93.20%。当检测添加10db的高斯白噪音的篡改音频时,精确率为91.87%,召回率为90.40%。当检测进行中值滤波攻击的篡改音频时,精确率为96.76%,召回率为95.60%。当检测添加mp3压缩(32kbps)的篡改音频时,精确率为93.14%,召回率为92.40%。当检测添加mp3压缩(64kbps)的篡改音频时,精确率为96.79%,召回率为96.40%。因此可以看出,本算法在检测各种后处理的音频时,均具有较高的检测精度。
[0127]
3、为了验证本方法的有效性,将其与几种较为优秀的方法在同样的实验环境下进行了对比实验;表3显示了所提算法和对比算法对各种攻击的精确率和召回率:
[0128]
表3所提算法与文献yan和文献ustubioglu
[0129][0130]
注:proposed method是本发明提供的方法;yan【13】和ustubioglu【14】为现有技术,分别取自如下文献:
[0131]
yan q,yang r,huang j.robust copy
–
move detection of speech recording using similarities of pitch and formant[j].ieee transactions on information forensics and security,2019,14(9):2331-2341.
[0132]
ustubioglu b,b,ulutas g.robust copy-move detection in digital audio forensics based on pitch and modified discrete cosine transform[j].multimedia tools and applications,2022,81(19):27149-27185.
[0133]
可见,在检测未经过后处理的音频时,本方法的精确率和召回率分别为97.99%和97.60%。在检测后处理音频时,尤其是在低信噪比情况下,该算法的精确率和召回率都远远高于其他两种优秀的算法。
[0134]
实施例2
[0135]
参照附图2,基于cfcc特征的鲁棒音频复制粘贴篡改检测装置,应理解,该装置与上述附图1方法实施例对应,能够执行附图1方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。如附图2所示
[0136]
基于cfcc特征的鲁棒音频复制粘贴篡改检测装置,包括语音检测模块、特征提取模块和相似度比较模块,其中:
[0137]
语音检测模块用于通过语音检测活动区分语音信号中的有声段和无声段;
[0138]
特征提取模块用于提取每个有声段的耳蜗倒谱系数特征;
[0139]
相似度比较模块用于通过计算皮尔逊相关系数比较每个有声段耳蜗倒谱系数特征之间的相似度。
[0140]
以上所述实施例仅表达了本技术的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术保护范围的限制。应当指出的是,对于本领域的普通技术人员
来说,在不脱离本技术技术方案构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。