音频水印原型系统的设计
2019-07-16宋慧赵晨洁
宋慧 赵晨洁
摘要:为扼制盗版、保护音乐版权,提出了音频水印原型系统设计。本文在音频水印算法理论研究的基础上,采用UML的方法对音频水印原型系统进行了需求分析,并在此基础上完成了系统的设计。
关键词:音频水印;系统设计;水印嵌入;水印提取
中图分类号:TP309.7 文献标识码:A
文章编号:1009-3044(2019)15-0242-03
通过对音乐发行过程的调研发现非法复制和盗版问题日益突出,如何对音乐进行版权保护是目前亟须解决的问题。在对音频水印嵌入、提取、测试等相关技术的研究之后,为了解决音乐发行商的音乐产品的版权问题,本文设计了一个音频水印原型系统,该系统主要用于对音乐产品的版权进行保护。
1 系统需求描述
1.1 系统角色描述
音频水印原型系统的用户主要是音乐发行商,下面对音乐发行商的业务流程进行分析。音乐发行商进行音乐产品发行之前,首先对音乐产品进行统一处理,并给音乐产品加上版权信息,对含有版权信息的音乐产品进行性能测试,只能测试结果达到一定标准之后才可以对音乐产品实行发行。当遇到版权纠纷时,音乐发行商对发生纠纷的音乐产品进行水印提取并与原来的版权信息进行匹配,通过这种方式确认音乐产品的版权,以判定音乐产品的所有权归属。
1.2 系统功能描述
通过对音乐发行需求的调研和分析,本文对用户的需求进行描述。对于音乐发行商来說,他们需要一个快速准确、操作简单、可视化展现结果的系统来帮助音乐发行商进行音乐产品版权的保护。音频水印原型系统将目前常用的一些音频水印嵌入算法模块纳入系统中,通过系统的帮助,用户可以根据自身需要进行组合,实现水印嵌入及水印提取工作。系统还将给出该算法在常规音频攻击下的性能测试结果,用户根据测试结果进行算法的分析及调整。因此音频水印原型系统应该包括以下几个功能模块:水印嵌入模块、添加攻击模块、水印提取模块、结果分析模块。基于上述描述,系统的功能应包括以下几个方面:
(1)水印嵌入功能:选择被嵌入的音频、选择版权信息、生成水印序列、选择嵌入位置及嵌入方法;将水印嵌入到音频文件中,给出嵌入成功的提示,并生成含有水印的音频文件;
(2)添加攻击功能:完成对含有水印的音频文件添加常见音频攻击,生成攻击后的音频文件并进行保存;
(3)水印提取功能:将水印信息从含有水印的音频文件中提取出,将提取的水印保存到指定的文件夹下,并给出提取成功的提示;
(4)结果分析功能:选择原始水印和提取水印图像,将选择的图像显示在界面上,并给出原始水印和提取水印的NC、BER值[1]。
根据上面的用户功能需求描述,采用UML标准建模语言描述问题模型,则音频水印原型系统的用例如图1所示。音频水印原型系统中包含水印嵌入、添加攻击、水印提取、结果分析4个用例。
水印嵌入用例包含选择音频用例、选择版权信息用例、生成水印序列用例、选择嵌入位置用例、选择嵌入规则及水印序列嵌入用例6个子用例[2]。选择音频用例为选择系统要嵌入水印的音频文件,系统将保留其路径信息;选择版权信息用例,选择系代表版权信息的图标并获得版权信息图标的大小;生成水印序列用例包括Arnold变换、降维、选择水印序列是选择待嵌入的水印信息是否与音频内容无关等操作;选择嵌入位置用例是选择水印嵌入过程中使用到的一些变换操作;选择嵌入规则用例包含量化嵌入规则和零水印嵌入规则;水印序列嵌入用例为采用选择的嵌入规则将水印嵌入到选择的音乐文件当中,并生成带水印的音频文件并返回嵌入提示信息[3]。
添加攻击用例包含加噪用例、低通滤波用例、重采样用例、MP3压缩压缩、重量化用例5个子用例,分别为对含水印的音频文件添加相应的攻击操作,并生成攻击后的含水印音频文件。
水印提取用例为对含有水印的音频文件进行水印的提取,并对提取的水印进行保存操作。结果分析用例为选择原始水印和提取水印图像,选择的图像进行界面显示并给出原始水印和提取水印的BER、NC值,由计算BER用例及计算NC用例组成[4]。
2 系统设计
2.1 水印嵌入模块的设计
水印嵌入模块是音频水印原型系统的核心模块,该模块完成将水印嵌入到原始音频产品中的功能,图2为水印嵌入模块活动图。水印嵌入模块由含择音频、选择版权信息、生成水印序列、选择嵌入位置、选择嵌入规则和水印序列嵌入子模块组成。下面对其中主要的子功能模块进行介绍。
2.1.1选择音频
本系统中用到的音乐文件均为wav格式的无损音乐,选择音频文件以后,将返回音频文件的大小及采样率信息。
2.1.2选择版权信息
本系统使用的代表版权信息的水印图片都是bmp格式,选择版权信息后,进行数据的读入并将返回版权信息图片的大小并在界面上进行版权信息图片的显示。
2.1.3生成水印序列
进行水印序列的生成,先选择水印序列生成是否与内容有关,如果选择是,则提取音频特征MFCC并选择第一阶进行编码操作得到二值特征序列,然后将二值特征序列与经过Arnold变换、降维操作后的二值版权信息序列进行Xor操作,便获得含有音频特征的待嵌入的水印序列,如果选择否,则将经过Arnold变换、降维操作后的二值版权信息序列作为待嵌入的水印序列。
2.1.4选择嵌入位置
选择嵌入位置模块按照所选择的嵌入位置对原始音频进行相应的变换或者分解操作,该模块包含DWT模块、DCT模块、SVD三个子模块,它们在当前算法中被经常使用,用户可以根据自己的需要进行组合,如可以组合为DWT+DCT、DWT+SVD、DWT+DCT+SVD等,同时也可以不进行组合单独进行使用。
2.1.5选择嵌入规则
选择嵌入规则模块主要包括量化嵌入规则和零水印嵌入规则,也就是文献[5]和[6]采用的嵌入规则,在此不再赘述。若选择量化嵌入的规则,那么则采用奇偶量化的方式完成水印的嵌入过程;若选择零水印嵌入规则,那么就采用记录位置索引的方式完成水印嵌入操作。在完成选择过嵌入规则操作后,进行水印嵌入时,通过所选择的嵌入规则完成对水印嵌入的操作及一系列的逆變换过程,最终生成的含水印的音频文件并进行保存。
2.2 添加攻击模块的设计
添加攻击模块,主要实现的是对含水印的音频添加各种常见攻击的操作,主要包括加噪、低通滤波、重采样、Mp3压缩、重量化及各种攻击参数设置操作。当用户进行添加攻击的操作时,首先判断待攻击的音频文件是否存在、是否选择了攻击方式、对攻击参数是否进行了相应的参数设置,若全部存在则对含水印的音频进行添加攻击操作,否则弹出提示窗口并给出相应的提示信息。
2.3 水印提取模块的设计
水印提取模块主要是进行水印提取算法的实现过程,需要对含水印的音频文件进行和水印嵌入时相似的操作,其水印提取的活动图如图3所示。首先需要对选取的待提取的音频实行同嵌入水印时一样的操作,比如若在嵌入预操作中选择的是DWT+SVD的组合,那么在水印提取模块也要进行同样的操作,然后根据提取规则进行水印的提取,便得到一维的水印序列,如果水印序列与音频内容相关,则将其与音频特征序列实行Xor操作,获得一维版权水印数组,再对一维版权水印数组依次进行升维操作及Arnold反变换,最后便得到提取的版权水印图像。其中,采用文献[7]和[8]所描述的提取规则进行水印序列的提取,在此不再赘述。
2.4 结果分析模块的设计
结果分析模块既可以完成对算法性能的评价,又可以在发生版权纠纷时完成水印匹配、版权验证的任务。为了使分析结果客观公正,取在算法中多被采用的原始水印和提取水印的NC和BER作为评价指标。用户进入结果分析模块后,首先进行原始水印图片和提取水印图片的选择,如果没有进行选择,那么会向用户给出进行相应操作的提示信息,在完成原始水印图片和提取水印图片选择操作后,所选择的图像将在界面上进行显示,点击计算按钮将会给出相应结算结果。
3 结束语
针对音乐发行商如何对音乐产品版权进行保护的问题,在对音频水印嵌入、提取、测试等相关技术的研究之后,本文设计了一个音频水印原型系统,本系统系统纳入了常规水印算法,并可根据需求进行算法组合,主要用于对音乐产品版权保护方面,音乐发行商可以方便地对音乐产品的版权进行保护及认证。
参考文献:
[1] 王卿, 王汀, 胡贞. 基于cRIO的快速伺服控制原型系统设计[J]. 计算机测量与控制, 2018, 26(4).
[2] 张达, 承轶峰, 孙立群,等. 音频水印技术在融合互动播出系统中的应用[J]. 广播电视信息, 2017(8):32-33.
[3] 蔡倩, 唐向宏, 何雨亭,等. 一种基于DWT-SVD与SNR优化的数字音频盲水印算法[J]. 杭州电子科技大学学报, 2017, 37(2):28-33.
[4] 杨志疆. 基于MATLAB的半脆弱音频水印系统的设计与实现[J]. 宝鸡文理学院学报(自然科学版), 2018(1):44-47.
[5] 万旭光, 刘凡. 军事通信中基于DCT域直流分量的音频数字水印技术研究[J]. 现代电子技术, 2017, 40(13):14-16,20.
[6] 马超逸, 瞿连政. 基于SOA架构的战场态势服务原型系统设计与实现[J]. 指挥控制与仿真, 2017, 39(5):104-108.
[7] 宋慧,李晨,田丽华,张玉龙.基于音频特征MFCC的混合域脆弱水印算法[J].计算机工程与设计,2017,38(7):1885-1890.
[8] 宋慧,李晨,田丽华. 基于音频特征MFCC的零水印算法[J]. 计算机应用与软件,2016, 33(10):140-144.
[9] 李振举. 遥感云计算平台原型系统设计与实现[J]. 测绘与空间地理信息, 2018(1):1-5.
【通联编辑:张薇】