大容量MP3音频数字水印算法研究
发布时间:2008/6/5 0:00:00 访问次数:798
摘 要 本文针对mp3音频的压缩原理和特点,提出了基于修改mdct量化后系数的大容量音频盲水印算法。利用心理声学模型介入水印嵌入过程等方法提高水印的隐形性,使用哈希函数确保水印信息完整性,通过与mp3编/解码过程相结合,实现了水印信息实时提取。通过实验分析验证了水印的隐形性、水印容量、实时性等方面的特点。
关键词 音频数字水印,mdct,水印容量,哈希函数。
0 引言
音频资源在互连网络、电子商务中扮演着重要的角色,随着internet网络数量和带宽不断增长,在线音乐日益流行,对网络上音频资源版权的保护亦变的非常重要。数字水印技术作为版权保护的一种手段,近来得到广泛的研究和探讨。数字水印技术是信息隐藏技术的衍生和拓展,其基本特点是鲁棒性、隐蔽性和完整性等。人类听觉系统(has)比人类视觉系统(hvs)具有更高的敏感性,在音频信号中隐藏水印信息,对水印的隐蔽性有更高的要求,水印的隐藏也相应更加困难。1996年文献[1]提出了音频数字水印技术,阐述了音频数字水印的基本特点,提出使用pn序列作为水印发生器,并根据人类听觉系统(has)的特点将pn序列嵌入到原始音频信号中。文献[2]在2001年提出了使用扩频技术和has掩蔽效应将水印嵌入到非压缩的原始音频时域信号中的盲水印算法,并指出其算法具有抗mp3压缩的能力。文献[3]的作者提出了基于时域空间的鲁棒音频数字水印算法,作者通过将原始信号进行分段处理,计算每段的能量,利用调节各段之间能量关系的方式嵌入和提取水印信息,论证了算法的鲁棒性。[1][2][3]中描述的算法在水印的嵌入和提取过程中要求较大的计算量,不太能够满足网络上音频资源的实际需求。[4]阐述了音频数字水印的基本特点,分析总结了当前一些音频数字水印算法,提出利用mp3编/解码过程进行水印嵌入和提取的算法。在文献[4]中作者通过分析mdct系数,对mdct系数进行修改,从而实现水印嵌入和提取操作。[4]的算法不能完全有效地检测嵌入的水印信息,水印嵌入比例小。文献[5]的作者提出利用snr控制音频水印嵌入放大因子的自适应数字水印算法,在文中,作者通过使用小波变换技术、混沌序列生成技术等方法,实现了在音频数据中嵌入图片信息;在水印提取过程中,通过利用snr改善提取的水印数据。文章中没有具体针对mp3音频资源进行水印嵌入,且水印信息的嵌入量不大,水印检测效率不高。
目前提出的音频数字水印算法,不能很好的满足嵌入容量、实时性等需求,同时,水印的隐形性不高,水印添加量扩大时音质下降严重,故上述文献中提出的水印算法,难以应用到实际系统中。本文提出的算法主要针对以上提出的三个问题。即大容量、实时性、音质与水印容量的制衡关系。我们将水印信息分成两个部分:水印信号和水印的hash值。根据二者各自的特性添加到不同的频段的mdct非均匀量化系数上,其中水印hash值作为水印完整性检查的依据,用于确保水印信息不曾遭受篡改。水印嵌入/提取算法根据心理声学模型的结果计算并修正mdct系数中非均匀量化值,可以在mp3编/解码过程中实时操作。算法中对添加水印后的信号计算最大噪声值,再与心理模型得出的可容忍最大噪声量进行比较,若超出范围则改进量化因子后再重新添加水印,直到满足要求。这个过程将水印信息引入的噪声限制在合理的范围之内,同时保障了嵌入水印的信息量。水印添加位置的选择遵循在失真度和水印信息量上制衡的原则,选取了mdct系数的中频部分,引入水印嵌入密度控制因子α,以便人为干预水印信息在mp3流中嵌入量和水印信息添加得分散度。实验表明,算法具有容量大、实时性、隐蔽性强等特点。
1 mp3音频流编码过程
mp3的编码以帧为单位进行的。一帧一般有576个数据,pcm码首先通过滤波器组,被分成等宽的32个频率线。每根频线再通过mdct变换进一步被细分成18根频率线,得到32×18=576个系数。 mdct公式如下:
(式 1-1)
mdct变换具有某些与dct变换不同的特性[6]:
⑴ mdct不是正交变换;
⑵ 当信号出现本地对称的时候mdct系数全为零;即说明时域能量有不等于频域能量的时候;
⑶ 时域能量只有在出现本地对称的情况下才不等于频域能量;
⑷ mdct没有dct直流分量和交流分量的概念。
从特性4来分析,对mdct系数的修改可以不用避开类似dct系数的直流分量部分。但根据特性2,3,对mdct系数的修改,最好避开系数0值部分。
每个粒度的信号在经过mdct变换后就进入量化和位分配阶段,通过两个嵌套循环使得mp3数据位分配最少即压缩比最大与量化噪声在smr控制的范围内两个目标之间取得平衡。编码器会根据心理听觉模型的计算结果将567个mdct系数分成多个sfb(比例因子带),由于sfb很接近人耳听觉特性的临界带,可以近似地看作临界
摘 要 本文针对mp3音频的压缩原理和特点,提出了基于修改mdct量化后系数的大容量音频盲水印算法。利用心理声学模型介入水印嵌入过程等方法提高水印的隐形性,使用哈希函数确保水印信息完整性,通过与mp3编/解码过程相结合,实现了水印信息实时提取。通过实验分析验证了水印的隐形性、水印容量、实时性等方面的特点。
关键词 音频数字水印,mdct,水印容量,哈希函数。
0 引言
音频资源在互连网络、电子商务中扮演着重要的角色,随着internet网络数量和带宽不断增长,在线音乐日益流行,对网络上音频资源版权的保护亦变的非常重要。数字水印技术作为版权保护的一种手段,近来得到广泛的研究和探讨。数字水印技术是信息隐藏技术的衍生和拓展,其基本特点是鲁棒性、隐蔽性和完整性等。人类听觉系统(has)比人类视觉系统(hvs)具有更高的敏感性,在音频信号中隐藏水印信息,对水印的隐蔽性有更高的要求,水印的隐藏也相应更加困难。1996年文献[1]提出了音频数字水印技术,阐述了音频数字水印的基本特点,提出使用pn序列作为水印发生器,并根据人类听觉系统(has)的特点将pn序列嵌入到原始音频信号中。文献[2]在2001年提出了使用扩频技术和has掩蔽效应将水印嵌入到非压缩的原始音频时域信号中的盲水印算法,并指出其算法具有抗mp3压缩的能力。文献[3]的作者提出了基于时域空间的鲁棒音频数字水印算法,作者通过将原始信号进行分段处理,计算每段的能量,利用调节各段之间能量关系的方式嵌入和提取水印信息,论证了算法的鲁棒性。[1][2][3]中描述的算法在水印的嵌入和提取过程中要求较大的计算量,不太能够满足网络上音频资源的实际需求。[4]阐述了音频数字水印的基本特点,分析总结了当前一些音频数字水印算法,提出利用mp3编/解码过程进行水印嵌入和提取的算法。在文献[4]中作者通过分析mdct系数,对mdct系数进行修改,从而实现水印嵌入和提取操作。[4]的算法不能完全有效地检测嵌入的水印信息,水印嵌入比例小。文献[5]的作者提出利用snr控制音频水印嵌入放大因子的自适应数字水印算法,在文中,作者通过使用小波变换技术、混沌序列生成技术等方法,实现了在音频数据中嵌入图片信息;在水印提取过程中,通过利用snr改善提取的水印数据。文章中没有具体针对mp3音频资源进行水印嵌入,且水印信息的嵌入量不大,水印检测效率不高。
目前提出的音频数字水印算法,不能很好的满足嵌入容量、实时性等需求,同时,水印的隐形性不高,水印添加量扩大时音质下降严重,故上述文献中提出的水印算法,难以应用到实际系统中。本文提出的算法主要针对以上提出的三个问题。即大容量、实时性、音质与水印容量的制衡关系。我们将水印信息分成两个部分:水印信号和水印的hash值。根据二者各自的特性添加到不同的频段的mdct非均匀量化系数上,其中水印hash值作为水印完整性检查的依据,用于确保水印信息不曾遭受篡改。水印嵌入/提取算法根据心理声学模型的结果计算并修正mdct系数中非均匀量化值,可以在mp3编/解码过程中实时操作。算法中对添加水印后的信号计算最大噪声值,再与心理模型得出的可容忍最大噪声量进行比较,若超出范围则改进量化因子后再重新添加水印,直到满足要求。这个过程将水印信息引入的噪声限制在合理的范围之内,同时保障了嵌入水印的信息量。水印添加位置的选择遵循在失真度和水印信息量上制衡的原则,选取了mdct系数的中频部分,引入水印嵌入密度控制因子α,以便人为干预水印信息在mp3流中嵌入量和水印信息添加得分散度。实验表明,算法具有容量大、实时性、隐蔽性强等特点。
1 mp3音频流编码过程
mp3的编码以帧为单位进行的。一帧一般有576个数据,pcm码首先通过滤波器组,被分成等宽的32个频率线。每根频线再通过mdct变换进一步被细分成18根频率线,得到32×18=576个系数。 mdct公式如下:
(式 1-1)
mdct变换具有某些与dct变换不同的特性[6]:
⑴ mdct不是正交变换;
⑵ 当信号出现本地对称的时候mdct系数全为零;即说明时域能量有不等于频域能量的时候;
⑶ 时域能量只有在出现本地对称的情况下才不等于频域能量;
⑷ mdct没有dct直流分量和交流分量的概念。
从特性4来分析,对mdct系数的修改可以不用避开类似dct系数的直流分量部分。但根据特性2,3,对mdct系数的修改,最好避开系数0值部分。
每个粒度的信号在经过mdct变换后就进入量化和位分配阶段,通过两个嵌套循环使得mp3数据位分配最少即压缩比最大与量化噪声在smr控制的范围内两个目标之间取得平衡。编码器会根据心理听觉模型的计算结果将567个mdct系数分成多个sfb(比例因子带),由于sfb很接近人耳听觉特性的临界带,可以近似地看作临界