一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于MIDI和对抗生成网络的音频隐写方法和系统

2022-12-07 19:13:18 来源:中国专利 TAG:

基于midi和对抗生成网络的音频隐写方法和系统
技术领域
1.本发明涉及音频处理技术领域,具体涉及一种基于midi和对抗生成网络的音频隐写方法和系统。


背景技术:

2.音频隐写术是一种将秘密信息隐藏在普通的、非秘密的、可运行的音频文件中的技术。主要运用于军队情报的秘密通信和信息的加密领域。
3.以lsb隐写和量化指数调制为例,lsb隐写通过修改载体音频的最低有效位,并将这些最低有效位替换为想要隐藏的秘密信息。量化指数调制(qim)经常被部署在编解码器的矢量量化中以嵌入秘密信息,这种方法能够以很小的延迟同时实现编码和隐蔽,同时能够最大限度的减少失真,保证载密音频的质量。
4.然而,无论是lsb隐写,还是量化指数调制,均需考虑载体音频本身的特性,会有载密音频失真和秘密信息泄露的风险,导致隐写效果差。


技术实现要素:

5.(一)解决的技术问题针对现有技术的不足,本发明提供了一种基于midi和对抗生成网络的音频隐写方法和系统,解决了现有的有载体音频隐写术隐写效果差的技术问题。
6.(二)技术方案为实现以上目的,本发明通过以下技术方案予以实现:第一方面,本发明提供一种基于midi和对抗生成网络的音频隐写方法,预先构建带有索引的midi音符字典,采用对抗生成网络预先构建生成器网络、判决器网络以及提取器网络,该方法包括:s1、对秘密信息进行预处理,得到秘密信息所映射的浮点数;s2、通过生成器网络对所述浮点数进行处理,输出midi音符字典的索引的归一化值作为载密信息;s3、通过提取器网络对载密信息进行解密。
7.优选的,所述预先构建midi音符字典,包括:获取midi数据,建立midi的语音数据库;使用music21工具包分析midi的语音数据库中midi文件,构建包括索引及其代表的和弦或单音音符构成的midi音符字典。
8.优选的,所述midi音符字典包括:其中,j∈{1,2,

,q}代表和弦或单音的索引;q代表和弦或单音的总数;n
tj
表示一组在和弦j中同时出现的音符号;n
tq
表示一组在和弦q中同时出现的音符号。
9.优选的,所述采用对抗生成网络预先构建生成器网络、判决器网络以及提取器网络,包括:使用midi片段,基于对抗生成网络,对生成器网络、判决器网络以及提取器网络进行训练和测试;其中,判决器网络的训练过程中的目标函数为:其中:xg代表载体midi;xr代表载密midi;e[ ]代表期望;d()代表判决器网络的输出;e[d(.)]代表输入样本与真实样本之间的差距,其中.代表输入样本;生成器网络的训练过程中的目标函数为:其中:λ代表0~1之间的一个小数;提取器网络的训练过程中的目标函数为:其中:mse代表均方误差,fs代表真实的秘密信息,f
s'
代表恢复出的秘密信息。
[0010]
优选的,所述载密midi是指:将生成器网络输出的midi音符字典的索引的归一化值通过以下公式转化为代表midi音符索引的整数ρm;其中:gm是输出,n
tq
表示一组在和弦q中同时出现的音符号;通过ρm找到对应的单音或者和弦,使用music21中的python工具将多个ρm组合合成载密midi。
[0011]
优选的,所述对秘密信息进行预处理,得到秘密信息所映射的浮点数,包括:对于一个二进制秘密信息s={s1,s2,s3,

,sn},so∈{0,1},o=1,2,3,

,n,其中n代表二进制比特流秘密信息的长度,每一位用so表示,其只能为0或1,转化方式如下:s101、将秘密信息分段,得到p段分段秘密信息;s102、计算p段分段秘密信息的p个映射区间;s103、在每个分段秘密信息所对应的映射区间中随机采样一个数作为所映射的浮点数。
[0012]
优选的,所述计算p段分段秘密信息的p个映射区间,包括:对于第i段秘密信息si,其相关映射区间[xi,yi]的计算公式如下:
其中:σ代表上述的秘密信息分段后的比特数;δ代表秘密信息至浮点数映射区间的间距;sil表示秘密信息第i段秘密信息si中的第l个比特,|s|表示二进制秘密信息s的长度。
[0013]
第二方面,本发明提供一种基于midi和对抗生成网络的音频隐写系统,所述系统预先构建带有索引的midi音符字典,采用对抗生成网络预先构建生成器网络、判决器网络以及提取器网络,所述系统包括:预处理模块,用于对秘密信息进行预处理,得到秘密信息所映射的浮点数;加密模块,用于通过生成器网络对所述浮点数进行处理,输出midi音符字典的索引的归一化值作为载密信息;解密模块,用于通过提取器网络对载密信息进行解密。
[0014]
第三方面,本发明提供一种计算机可读存储介质,其特征在于,其存储用于基于midi和对抗生成网络的音频隐写的计算机程序,其中,所述计算机程序使得计算机执行如上述所述的基于midi和对抗生成网络的音频隐写方法。
[0015]
第四方面,本发明提供一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序包括用于执行如上述所述的基于midi和对抗生成网络的音频隐写方法。
[0016]
(三)有益效果本发明提供了一种基于midi和对抗生成网络的音频隐写方法和系统。与现有技术相比,具备以下有益效果:本发明预先构建带有索引的midi音符字典,采用对抗生成网络预先构建生成器网络和判决器网络,并根据生成器网络构建提取器网络,该方法包括:首先对秘密信息进行预处理,得到秘密信息所映射的浮点数;通过生成器网络对所述浮点数进行处理,输出midi音符字典的索引的归一化值作为载密信息;通过提取器网络对载密信息进行解密。本发明的生成式音频隐写方法,突破有载体隐写在不可感知性和抗隐写检测性的限制,将秘密信息转化为midi音频,从而提高载密音频的有效性安全性。
附图说明
[0017]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]
图1为本发明实施例中一种基于midi和对抗生成网络的音频隐写方法的框图;图2为本发明实施例中一种基于midi和对抗生成网络的音频隐写方法的总体结构图;图3为本发明实施例中秘密信息转化为生成器网络输入映射的方式示意图;图4为本发明实施例中生成器网络的结构示意图;图5为本发明实施例中判决器网络的结构示意图;图6为本发明实施例中提取器网络的结构示意图;图7为不同方法合成出的midi的mos值的示意图;图8为不同方法合成出的midi的tone span值的示意图;图9a为真实音频的midi的分布示意图,图9b为midigan方法合成出的midi的分布示意图,图9c为c_rnn_gan方法合成出的midi的分布示意图;图9d为lstmgan方法合成出的midi的分布示意图;图10为不同的隐写分析方法对不同参数下的抗隐写分析检测率的示意图;图11为同参数下的隐写恢复准确率的示意图。
具体实施方式
[0019]
为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0020]
本技术实施例通过提供一种基于midi和对抗生成网络的音频隐写方法和系统,解决了现有的有载体音频隐写术隐写效果差的技术问题,突破有载体隐写在不可感知性和抗隐写检测性的限制,将秘密信息转化为midi音频,从而提高载密音频的有效性和安全性。
[0021]
本技术实施例中的技术方案为解决上述技术问题,总体思路如下:现有的有载体的音频隐写术,由于考虑载体音频本身的特性,会有载密音频失真和秘密信息泄露的风险。同时,通过改变载体特性嵌入秘密信息,无法抵抗基于深度学习的隐写分析器。为解决上述问题,本发明实施例设计一种生成式音频隐写方法,突破有载体隐写在不可感知性和抗隐写检测性的限制,将秘密信息转化为midi音频,从而提高载密音频的有效性安全性。
[0022]
本发明实施例提供一种基于midi和对抗生成网络的音频隐写方法,预先构建带有索引的midi音符字典,采用对抗生成网络预先构建生成器网络、判决器网络以及提取器网络,如图1所示,该方法包括:s1、对秘密信息进行预处理,得到秘密信息所映射的浮点数;s2、通过生成器网络对所述浮点数进行处理,输出midi音符字典的索引的归一化
值作为载密信息;s3、通过提取器网络对载密信息进行解密。
[0023]
本发明实施例提出一种生成式音频隐写方法,突破有载体隐写在不可感知性和抗隐写检测性的限制,将秘密信息转化为midi音频,从而提高载密音频的有效性安全性。
[0024]
下面对各个步骤进行详细说明:需要说明的是,midi是一种乐器数字接口文件。与普通音频文件不同,midi文件是一个可编辑的事件列表,描述了播放设备将采取的具体步骤,以产生某些声音。
[0025]
一般来说,音乐有三种不同的表现形式:书面乐谱、录音表演和midi格式。数字格式的音乐大多以录音表演的形式出现(即mp3、flac或wave格式)。而midi格式是为电子乐器之间交换音乐数据而开发的。在本发明实施例中,由于midi文件很容易获得,并且其体积小,易于网络传输,使用广泛等,本发明实施例使用带有和弦的midi文件来隐藏秘密信息。由于音高是midi文件中最重要的因素。本发明实施例只对一个音轨中每个音符的音高进行建模,而不考虑起始和偏移时间。
[0026]
本发明实施例中的基于midi和对抗生成网络的音频隐写方法的总体结构图如2所示。
[0027]
在步骤s1中,对秘密信息进行预处理,得到秘密信息所映射的浮点数。具体实施过程如下:预处理要做的就是构建秘密信息至神经网络输入的映射,秘密消息为了通用性,一般会以01比特流的形式出现,但这样形式的秘密信息无法满足神经网络的输入要求,因此需要构建一种映射机制使得秘密信息映射至想要的输入形式上。映射参考区间映射的方式,将秘密信息s(01比特流)转化为对抗生成网络常见的输入形式z,对应方式如图3所示。
[0028]
对于一个二进制秘密信息s={s1,s2,s3,

,sn}(so∈{0,1},o=1,2,3,

,n),其中n代表二进制比特流秘密信息的长度,每一位用so表示,其只能为0或1,转化方式如下:s101、将秘密信息分段,得到p段分段秘密信息。具体为:将秘密信息s分为p段,s1,s1,

sp。
[0029]
s102、计算p段分段秘密信息的p个映射区间。具体为:对于第i段秘密信息si(i=1,2,

p),其相关映射区间[xi,yi]的计算公式如下:其中:σ代表上述的秘密信息分段后(即si(i=1,2,

p))的比特数;δ代表秘密信息至浮点数映射区间的间距;sil表示秘密信息第i段秘密信息si中的第l个比特(只能为0或
1)。
[0030]
s103、在每个分段秘密信息所对应的映射区间中随机采样一个数作为所映射的浮点数。
[0031]
在步骤s2中,通过生成器网络对所述浮点数进行处理,输出midi音符字典的索引的归一化值作为载密信息。具体实施过程如下:midi音符字典的构建过程如下:获取midi数据,建立midi的语音数据库。具体为:获取互联网上常见的一些midi数据,并进行处理,得到midi的语音数据库。在本发明实施例中,主要包括307首钢琴midi谱,在本发明实施例中,为了训练和测试生成器网络、判决器网络以及提取器网络,将这307首钢琴midi谱分割至大约16000条midi片段,其中12000条用于训练,剩余的4000条用于测试。
[0032]
使用music21工具包分析midi的语音数据库中midi文件,构建包括索引及其代表的和弦或单音音符构成的midi音符字典。具体为:使用music21工具包分析midi的语音数据库中midi文件,该工具可以方便的读写和创建修改一个midi信息。一个midi文件的内容主要包括演奏的音符、持续时间以及每个音符所需的响度。midi格式的数字音频文件包含按音调分出了的128种音符。另外,加上乐理知识中的和弦(即三种或以上的音符同时发声),在本数据库中一共有570种不同的和弦和单音音符,因此,为这些和弦或者音符构建一个索引midi音符字典以方便后续的音符组装和数据类型转化是很有必要的。该索引为1~570,每个数字代表数据集中出现的某个和弦或单音音符。以上,索引及其代表的和弦或单音音符就构成了midi音符字典。具体形式如下:其中,j∈{1,2,

,q}代表和弦或单音的索引;q代表和弦或单音的总数;n
tj
表示一组在和弦j中同时出现的音符号;n
tq
表示一组在和弦q中同时出现的音符号。在本发明实施例中,q=570。最终将这个midi音符字典保存为python numpy工具包可读写的npy二进制文件;有了这个midi音符字典,就可以通过music21工具根据和弦或单索引方便的合成出一个midi文件。
[0033]
如图4所示,本发明实施例中的生成器网络从输入到输出,依次包括一层线性层、一层批量归一化层、两个结构相同的卷积模块、一层卷积层和一层tanh激活函数,其中,卷积模块包括上一层采样层、一层卷积层、一层批量归一化层、一层leaky relu激活函数。
[0034]
从上述描述可知,本发明实施例中的生成器网络包括三层卷积层,三层批量归一化层,两层上采样层,两层leaky relu激活函数,一层线性层和一层tanh激活函数。
[0035]
其中,卷积层的参数设置为3*3的卷积核,该卷积核大小可以精确的提取出输入信息中的局部特征,而多层堆叠的卷积层则可以逐步扩大卷积的感受野,从整体序列的角度,提取合适的特征;并且为了加速的训练过程,使用了批量归一化技术。其中,上采样层的目的是为了扩展数据的维度。最终,tanh激活函数使得输出被归一化至-1~1。
[0036]
需要说明的是,归一化值-1~1即索引的缩放范围,在本发明实施例中,将1~570缩放到-1~1。
[0037]
例如,输入大小为100维的由秘密信息映射而来的随机小数,输出则是100维预先构建的midi音符中的索引的归一化值-1~1,因此接下来通过公式将这些索引的归一化值-1~1重新变为代表midi音符索引的整数ρm:其中:gm是输出,ρm是1~570的整数,n
tq
表示一组在和弦q中同时出现的音符号。
[0038]
接下来通过ρm就可以找到对应的单音或者和弦,最后使用music21这个python工具就可以轻松的将这些ρm组合合成出载密midi。
[0039]
需要说明的是,为了能使得生成的载密midi尽可能的逼近真实的载体midi,本发明实施例使用了判决器网络对生成器网络进行对抗训练。与生成器网络网路结构类似,这里也使用4层卷积模块提取特征,得到提取出的特征后,将此特征放入一个全连接层来得到载密midi和载体midi间的差异程度。
[0040]
如图5所示。卷积模块包括一层卷积层和一层leaky relu激活函数。
[0041]
对抗训练的要点就在于判决器网络的输入是载体midi和载密midi,计算出这两之间的样本的差异,当差距很小,说明此时的判决器网络无法判断出这两个哪个到底是载密midi哪个是载体midi,这时目标函数的设计就会加大判决器网络的惩罚,使得判决器网络参数能够被不断的更新直到能区分出两个样本间的区别。而当判决器网络能轻易区分出两者之间的区别时,目标函数的设计又使得生成器网络不断更新直到判决器网络无法将两者轻易区分。如此循环往复不断更新。直到生成与载体音频难分伯仲的载密音频。判决器网络的输入为100维的midi音符字典索引归一化至-1~1的值(可以是载体midi也可以是载密midi)。输出的值代表该载密midi与真实样本载体midi之间的差距。
[0042]
在提出的隐写框架中,生成器网络将一个秘密信息映射出的随机小数转化为前文提到的midi音符字典中的索引;提取其网络负责从载密信息中尽可能的恢复出原始的秘密信息。而判决器网络同时接收一个载密样本和载体样本,计算出它两之间的差距,以方便生成器网络生成出更加真实的秘密载密音频。
[0043]
其中,判决器网络的目标函数为:其中:xg代表载体midi,xr代表载密midi,e[ ]代表期望,d()代表判决器网络的输出。e[d(.)]代表输入样本与真实样本之间的差距,其中.代表输入样本,这里从公式上直观理解是对于判决器网络,希望其在输入为真样本时,输出的差距值尽可能小,而输入为假样本时,输出的差距值尽可能的大。
[0044]
其中,生成器网络的训练过程中的目标函数为:生成器网络的损失函数由一部分提取器网络的损失函数和一部分判决器网络的损失函数组成,其中,λ代表0~1的一个小数,e[d(xg)]是判决器网络损失函数ld一部分,代表
neural networks with adversarial training,
”ꢀ
arxiv preprint arxiv:1611.09904, 2016中的方法,lstmgan是指文献y. yu, a. srivastava, and s. canales,
ꢀ“
conditional lstm-gan for melody generation from lyrics,
”ꢀ
acm transactions on multimedia computing, communications and applications, vol. 17, no. 1, article no. 35, 2021中的方法。
[0051]
实验结果如下所示。
[0052]
由图7中可看出本发明实施例的除真实音频外mos值最高,说明本发明实施例的方法midi-gan相较于其他方法听起来更加逼真。
[0053]
由图8中可看出本发明实施例的除真实音频外tone span值最高,说明本发明实施例的方法与另外两个方法相比音程变化大,更加悦耳。
[0054]
由图9a~9d中可看出本发明实施例的分布与真实样本分布最接近,与真实样本的差异较小由图10中可看出本发明实施例的方法在两种隐写分析器下pe都接近0.5,意味着隐写分析器无法区分出载体和载密音频。
[0055]
由图11看出本发明实施例的秘密信息的恢复准确率能达到98%朝上,能够在多数情况下恢复出本发明实施例所要的秘密信息。
[0056]
综上,本发明实施例的方法是可行有效的。
[0057]
本发明实施例提供一种基于midi和对抗生成网络的音频隐写系统,该系统预先构建带有索引的midi音符字典,采用对抗生成网络预先构建生成器网络、判决器网络以及提取器网络,该系统包括:预处理模块,用于对秘密信息进行预处理,得到秘密信息所映射的浮点数;加密模块,用于通过生成器网络对所述浮点数进行处理,输出midi音符字典的索引的归一化值作为载密信息;解密模块,用于通过提取器网络对载密信息进行解密。
[0058]
可理解的是,本发明实施例提供的基于midi和对抗生成网络的音频隐写系统与上述基于midi和对抗生成网络的音频隐写方法相对应,其有关内容的解释、举例、有益效果等部分可以参考基于midi和对抗生成网络的音频隐写方法中的相应内容,此处不再赘述。
[0059]
本发明实施例还提供一种计算机可读存储介质,其存储用于基于midi和对抗生成网络的音频隐写的计算机程序,其中,所述计算机程序使得计算机执行如上述所述的基于midi和对抗生成网络的音频隐写方法。
[0060]
本发明实施例还提供一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序包括用于执行如上述所述的基于midi和对抗生成网络的音频隐写方法。
[0061]
综上所述,与现有技术相比,具备以下有益效果:1、本发明实施例提出一种生成式音频隐写方法,突破有载体隐写在不可感知性和抗隐写检测性的限制,将秘密信息转化为midi音频,从而提高载密音频的有效性安全性。
[0062]
2、数据库及字典的构建采用了midi信息,比其他音频格式相比更加相比体积更小易于传输,理论上相对一般的音频格式更加隐蔽安全。
[0063]
3、在预处理阶段,调节秘密信息至浮点数映射区间的间距可以使得的秘密信息至输入的映射机制使得同一个秘密信息可对应无数种不同的输入方式,从而对应不同的输出及载密midi,极大的提高了安全性。同时,在每个分段秘密信息所对应的映射区间中随机采样一个数作为所映射的浮点数,进一步提高安全性。
[0064]
4、预处理阶段的分段映射及映射方式使得载密midi中的每个音符或和弦可携带多个秘密信息比特,提高了隐写容量。
[0065]
5、对抗生成网络的使用使得本发明实施例生成的载体信息旨在学习midi数据库中的midi的分布而不是学习midi数据库中的midi本身,简言之,本发明实施例生成的载密midi具有一定的“创造性”,并不完全等同于已有midi,这也提高了隐写的安全性。
[0066]
6、损失函数设计时,生成器网络的损失函数设计同时融入了判决器网络和提取器网络的损失函数,旨在生成高不可感知性的载密midi的同时使得该载密midi中的秘密信息易于被提取器网络提取,在生成质量和恢复准确率中达到了平衡。
[0067]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0068]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献