首页 > 乐器声学 专利正文
一种语音提取方法、装置及设备与流程

时间:2022-02-18 阅读: 作者:专利查询

一种语音提取方法、装置及设备与流程

1.本说明书实施例涉及语音信号处理技术领域,特别涉及一种语音提取方法、装置及设备。


背景技术:

2.随着计算机以及人工智能等技术的发展,基于智能设备的自动语音识别也获得了广泛的应用。而在实际应用中,智能设备在采集目标对象的语音的同时,往往也同时收纳了其他对象的语音、环境中的噪声等干扰信号。因此,在进行语音识别之前,首先要从所获取的语音信号中提取出对应于目标对象的语音信号。
3.目前在处理多通道语音信号时,可以通过比对不同通道的语音信号来进行语音提取。但在处理单通道语音信号时,由于单通道语音分离主要利用单个麦克风采集的信号,借助目标语音和干扰信号之间的时频域声学和统计特性的差异进行建模,使得直接从嘈杂和混响的环境中提取出相应的声源具有更大的难度。目前主流的处理多通道语音信号的方式若直接应用至处理单通道语音信号,但在实际应用场景中,由于背景噪声、混响等因素的干扰,使得对于单通道语音信号进行分离的准确性大大降低,进而严重影响用户的使用体验。因此,目前亟需一种能够准确有效地针对单通道语音进行提取的技术方案。


技术实现要素:

4.本说明书实施例的目的是提供一种语音提取方法、装置及设备,以解决如何准确有效地针对单通道语音进行提取的问题。
5.为解决上述技术问题,本说明书实施例提供一种语音提取方法,包括:获取混合语音样本数据;所述混合语音样本数据为单通道语音信号;所述混合语音样本数据中包括噪声信号、干扰语音信号、混响信号中的至少一种和向导语音;所述向导语音包括对应于目标对象的语音;构建语音分离网络;所述语音分离网络包括编码器、全局编码器、向导模块、分离模块和解码器;所述编码器和全局编码器用于输出语音信号的特征;所述向导模块用于根据向导语音和混合语音样本数据的比对结果输出权重值;所述分离模块用于获取目标语音的高维映射;所述解码器用于对数据进行解码得到目标语音;将所述混合语音样本数据输入语音分离网络得到预测目标语音;基于预设损失函数和所述预测目标语音更新所述语音分离网络得到语音提取模型;利用所述语音提取模型从待处理语音数据中提取目标对象语音信号;所述待处理语音数据包括单通道语音信号。
6.本说明书实施例还提出一种语音提取装置,包括:混合语音样本数据获取模块,用于获取混合语音样本数据;所述混合语音样本数据为单通道语音信号;所述混合语音样本数据中包括噪声信号、干扰语音信号、混响信号中的至少一种和向导语音;所述向导语音包括对应于目标对象的语音;语音分离网络构建模块,用于构建语音分离网络;所述语音分离网络包括编码器、全局编码器、向导模块、分离模块和解码器;所述编码器和全局编码器用于输出语音信号的特征;所述向导模块用于根据向导语音和混合语音样本数据的比对结果
输出权重值;所述分离模块用于获取目标语音的高维映射;所述解码器用于对数据进行解码得到目标语音;混合语音样本数据输入模块,用于将所述混合语音样本数据输入语音分离网络得到预测目标语音;语音分离网络更新模块,用于基于预设损失函数和所述预测目标语音更新所述语音分离网络得到语音提取模型;目标对象语音信号提取模块,用于利用所述语音提取模型从待处理语音数据中提取目标对象语音信号;所述待处理语音数据包括单通道语音信号。
7.本说明书实施例还提出一种语音提取设备,包括存储器和处理器;所述存储器,用于存储计算机程序指令;所述处理器,用于执行所述计算机程序指令以实现以下步骤:获取混合语音样本数据;所述混合语音样本数据为单通道语音信号;所述混合语音样本数据中包括噪声信号、干扰语音信号、混响信号中的至少一种和向导语音;所述向导语音包括对应于目标对象的语音;构建语音分离网络;所述语音分离网络包括编码器、全局编码器、向导模块、分离模块和解码器;所述编码器和全局编码器用于输出语音信号的特征;所述向导模块用于根据向导语音和混合语音样本数据的比对结果输出权重值;所述分离模块用于获取目标语音的高维映射;所述解码器用于对数据进行解码得到目标语音;将所述混合语音样本数据输入语音分离网络得到预测目标语音;基于预设损失函数和所述预测目标语音更新所述语音分离网络得到语音提取模型;利用所述语音提取模型从待处理语音数据中提取目标对象语音信号;所述待处理语音数据包括单通道语音信号。
8.由以上本说明书实施例提供的技术方案可见,本说明书实施例通过构建包含编码器、全局编码器、向导模块、分离模块和解码器的语音分离网络,通过上述结构的语音分离网络获取对应于混合语音样本数据的预测目标语音,再利用预设损失函数,结合所述预测目标语音对语音分离网络进行更新,进而得到语音提取模型,从而能够实现从待处理语音数据中提取出对应的目标对象语音信号。上述方法保证了准确有效地对单通道语音信号进行提取,进而能够在后续过程中对提取到的语音进行语音识别等利用,改善了用户的使用体验。
附图说明
9.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
10.图1为本说明书实施例一种语音提取方法的流程图;
11.图2为本说明书实施例一种语音分离网络的结构示意图;
12.图3为本说明书实施例一种编码器的结构示意图;
13.图4为本说明书实施例一种向导模块的结构示意图;
14.图5为本说明书实施例一种分离模块的结构示意图;
15.图6为本说明书实施例一种语音提取装置的模块图;
16.图7为本说明书实施例一种语音提取设备的结构图。
具体实施方式
17.下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
18.为了解决上述技术问题,介绍本说明书实施例一种语音提取方法。所述语音提取方法的执行主体为语音提取设备,所述语音提取设备包括但不限于服务器、工控机、pc机等。如图1所示,所述语音提取方法可以包括以下具体实施步骤。
19.s110:获取混合语音样本数据;所述混合语音样本数据为单通道语音信号;所述混合语音样本数据中包括噪声信号、干扰语音信号、混响信号中的至少一种和向导语音;所述向导语音包括对应于目标对象的语音。
20.在本实施例中,为了达到从单通道语音中提取一个或多个对象的语音的目的,需要构建并训练相应的模型,最终能够利用该模型实现语音提取的目的。
21.混合语音样本数据即为训练所述模型时所利用到的数据。为了达到从语音信号中分离到目标对象的语音的目的,所述混合语音样本数据中可以包括噪声信号、干扰语音信号、混响信号中的至少一种和目标语音信号。
22.噪声信号可以语音采集过程中由于麦克风采集语音信号的不完整、信号传输过程中的损失等原因,对原语音造成干扰的信号。干扰语音信号可以是区别于目标对象外的其他对象所产生的语音,例如,在语音采集区域中包含有多个发出声响的对象,而其中只有一个对象是本次提取语音所需要的目标对象,则采集到的对应于其他对象的语音信号即为所述干扰语音信号。混响信号可以是目标对象自身所发出的声音基于周围的障碍物、屏障等物体反射后被声音采集设备接收到的信号。由于这些声音相较于目标对象直接发出的声音在采集时存在一定的延迟,则也对语音提取造成了一定的干扰。
23.向导语音可以是对应于目标对象所产生的语音的信号。所述目标对象的数量可以是一个或多个。为了在后续过程针对所述向导语音进行语音识别等处理,需要从所述混合语音样本数据中分离出所述向导语音。
24.具体的,为了契合本说明书实施例针对单通道语音进行语音提取的目的,所述混合语音样本数据还可以是单通道语音信号。所述单通道语音信号可以是只通过一个麦克风所采集到的声音信号。
25.具体的,在训练模型的过程是基于有监督学习而实现的情况下,所述混合语音样本数据还可以对应有相应的标记,用于对其中的向导语音进行标识,以使得在利用语音分离网络对数据进行处理时,能够直接利用其中的向导语音进行具体的训练。具体的标识方式可以基于实际应用的需求进行设置,对此不做限制。
26.在一些实施方式中,所述混合语音样本数据可以通过以下方式制备得到:首先,将至少两个人声语音信号在第一信噪比范围内混合得到人声混合语音信号,人声语音信号可以是预先采集或分离得到的独立的对应于人声的语音信号,第一信噪比范围用于限定混合上述人声语音信号的信噪比区间,例如,可以是0db至5db之间。其次,将所述人声混合语音信号与噪声信号在第二信噪比范围内混合得到综合语音信号,噪声信号可以是额外产生的对上述语音信号造成干扰的信号,第二信噪比范围用于限定混合上述两种信号的信噪比区
间,例如,可以是

6db至3db之间。最终,利用语音信号生成函数处理所述综合语音信号得到混合语音样本数据,语音信号生成函数可以基于相应的数据生成对应的语音信号,以达到模拟实际应用的语音的效果,具体的可以是pyroomacoustics函数,所述pyroomacoustics函数能够在2d/3d房间中快速构建单/多个声源以及麦克风的模拟场景,从而帮助构建模拟的语音样本数据。
27.利用具体的示例对上述过程进行详细说明,在制备混合语音样本数据时,首先,将wsj0语音信号样本和wham噪声样本的时域信号在8khz下重采样,并将两个不同的说话人语音在信噪比0db至5db之间进行任意混合,再将混合后的语音与随机抽取的噪声样本在

6db至3db的信噪比范围内做混合,将最终混合得到的语音基于表1中的房间配置参数,基于pyroomacoustics函数得到房间脉冲相应,即得到最终的含有噪声、混响以及其他说话人干扰的混合语音样本数据y。
28.表1
[0029][0030]
基于上述实施方式,在制备得到一定数量的混合语音样本数据之后,还可以对所述混合语音样本数据进行划分。具体的,可以将所述混合语音样本数据划分为训练样本数据、验证样本数据和测试样本数据。其中,所述训练样本数据用于在后续步骤中针对模型进行训练;所述测试样本数据和验证样本数据可以在模型训练完毕后分别对模型进行测试和验证,以保证模型的效果。
[0031]
利用一个具体的示例进行说明,假设基于上述步骤生成的样本数据的总数为28000个,可以将其中的20000个划分为训练样本数据,3000个划分为测试样本数据,5000个划分为验证样本数据,进而分别用于后续的模型训练和模型验证过程。实际应用中可以根据样本总数和应用需求设置为其他比例,并不限制于上述示例。
[0032]
s120:构建语音分离网络;所述语音分离网络包括编码器、全局编码器、向导模块、分离模块和解码器;所述编码器和全局编码器用于输出语音信号的特征;所述向导模块用于根据向导语音和混合语音样本数据的比对结果输出权重值;所述分离模块用于获取目标语音的高维映射;所述解码器用于对数据进行解码得到目标语音。
[0033]
语音分离网络是用于对包含有噪声、混响和目标对象语音在内的语音信号进行分离的网络。所述语音分离网络可以是深度神经网络,具体的,可以是单向导和图卷积语音分离网络。
[0034]
所述语音分离网络中包含有编码器、全局编码器、向导模块、分离模块和解码器,这些部分基于对应的数据处理方式和数据传输顺序对语音信号进行处理。具体的,结合图2对所述语音分离网络的结构进行介绍。如图2所示,所述语音分离网络在训练阶段分别接受混合语音和向导语音。其中,混合语音可以是包含有噪声、混响以及其他干扰信号在内,且包含有对应于目标对象的目标语音信号的语音,而向导语音可以是标识出的对应于目标对象的语音。具体对于上述两种语音的介绍可以参照步骤s110中的描述,在此不再赘述。
[0035]
其中,混合语音被传输至编码器,经由编码器处理后将数据传递至全局编码器,向导模块综合全局编码器和向导语音,生成对应的权重值;分离模块对全局编码器所输出的语音数据进行处理后,结合向导模块所生成的权重值,结合后的结果输入至解码器中,经由处理得到估计的目标语音。
[0036]
利用具体的示例对所述语音分离网络的结构进行细化介绍。如图3所示,为编码器的结构示意图,其中,编码器由两层卷积网络构成;全局编码器由一层图卷积网络构成;如图4所示,为向导模块的结构示意图,其中向导模块包括向导编码部分和注意力机制部分,包括两个卷积层和一个全连接层,其中,全局特征可以是由全局编码器所产生的特征,而向导编码部分用于接收向导语音,结合图中所示出的数据流关系对数据进行处理后输出相应的数据;如图5所示,为分离模块的结构示意图,其中分离模块包括四层卷积层和一层池化层;解码器包括两层解卷积网络。
[0037]
需要说明的是,上述结构只是本说明书实施例中所提出的一种具体的实施方式,实际应用中可以在上述基础上结合应用需求进行适应性调整,所得到的模型结构依然在本技术保护范围内,对此不做限制。
[0038]
在一些实施方式中,所述语音分离网中的神经元节点之间可以设置有激活函数。所述激活函数用于在神经网络前向传播的过程中,通过激活函数来增加网络之间的非线性关系,最后能够生成输入与输出结果间的非线性映射。具体的激活函数的类型可以根据应用需求进行设置,例如可以是prelu等激活函数,对此不做限制。
[0039]
在一些实施方式中,在构建所述语音分离网后,可以对所述语音分离网中的网络参数进行初始化。网络参数主要可以包括神经元节点之间的权重值和偏重值,则具体的初始化过程可以是对所述语音分离网络中的神经元节点之间的权重和偏置进行初始化。
[0040]
s130:将所述混合语音样本数据输入语音分离网络得到预测目标语音。
[0041]
在将混合语音样本数据输入所述语音分离网络后,基于所述语音分离网络中各模块的结构以及不同结构之间的数据流关系即可对数据进行相应处理以得到最终的预测目标语音。
[0042]
结合所述语音分离网络的具体结构对获取预测目标语音的过程进行进一步的描
述,首先,利用编码器对混合语音样本数据进行编码得到编码语音信号,再通过全局编码器获取所述编码语音信号的编码信号特征,之后基于向导模块获取对应于向导语音信号的向导信号特征,并根据所述编码信号特征和向导信号特征的比对结果确定注意力权重,然后通过分离模块获取对应于所述注意力权重、向导信号特征和编码信号特征的高维映射特征,最终利用解码器对所述高维映射特征进行解码得到预测目标语音。
[0043]
利用一个实施方式对上述过程进行具体的介绍,其中,对于编码器部分,将混合音频y输入到网络输入端,然后经两层延时卷积网络对信号进行编码,得到g={g0,

,g
n
‑1},其中,n为此编码器第二层网络对应的输出长度。
[0044]
对于全局解码器部分,将编码器的输出g输入到此模块作为特征输入,然后建立所有特征点的全连接边界关系作为一张图来进行图卷积网络的特征提取,得到g
g

[0045]
对于向导模块,其中,利用向导编码部分,将每个混合音频目标语音对应的向导语音p输入到此模块的输入端,然后经两层卷积网络编码,提取高维特征得到h={h0,

,h
m
‑1},其中,m为此编码器第二层网络对应的输出长度;利用注意力机制部分,同时接收向导编码器和向导编码的输出g
g
和h,通过内部的打分机制对所有的h
m
和g
gn
进行计算,得到注意力权重α
n,m

[0046]
对于分离模块部分,将α
n,m
和h相乘的结果与g
g
输入到分离模块中,得到目标的高维映射特征s
m

[0047]
对于解码器部分,将s
m
输入到解码器的输入端,经两层解卷积网络层后得到估计的目标语音
[0048]
上述获取预测目标语音的过程是基于步骤s120中的实施例中的语音分离网络所进行的描述,实际应用中根据语音分离网络的具体结构可以对计算过程进行适应性调整,在此不再赘述。
[0049]
s140:基于预设损失函数和所述预测目标语音更新所述语音分离网络得到语音提取模型。
[0050]
在获取到预测目标语音后,可以根据所述预测目标语音,利用损失函数对语音分离网络进行优化。所述损失函数可以是预先设置的对应于所述语音分离网络的损失函数,用于根据预测结果对语音分离网络的损失进行评估,进而结合计算结果对语音分离网络进行修正以使其具备更为准确的预测结果。
[0051]
具体的,所述预设损失函数可以为式中,l为预设损失函数,用于表示语音信号中的有效信号,其中,s为理想目标语音,具体的,可以通过预先在混合语音样本数据中进行标注进行体现,为预测目标语音,为预测目标语音,用于表示语音信号中的噪声信号,<
·
,
·
>表示两个向量之间的点积,而||
·
||2表示欧式距离。其中,snr为信噪比。
[0052]
在一些实施方式中,可以利用梯度下降法,结合所述预设损失函数对语音分离网络进行优化。优化过程可以是,先计算对应于所述语音分离网络的输出层的损失函数的第一梯度,再基于所述第一梯度,依次计算所述语音分离网络中各层所对应的梯度,最终结合各层的梯度更新初始语音提取模型的权重和偏置。
[0053]
具体的,利用梯度下降法更新多比例提取深度神经网络的参数可以是在一定时间内,固定所述语音分离网络的参数,并利用上述公式计算输出层损失函数的梯度,之后,将初始的网络层级作为第l层,再依次计算网络层数为l

1,l

2,

,2时每一层所对应的梯度,其中,l为神经网络的层数。在计算得到所有的梯度后,根据计算得到的梯度更新整个网络的权重和偏置,从而完成模型的优化,得到预训练语音分离模型。
[0054]
相应的,由于语音分离网络的差异性主要是由其中的网络参数进行体现,因此,针对语音分离网络的优化过程可以主要是针对网络参数进行优化。具体的优化过程可以基于实际应用的需求进行调整,在此不再赘述。
[0055]
s150:利用所述语音提取模型从待处理语音数据中提取目标对象语音信号;所述待处理语音数据包括单通道语音信号。
[0056]
在获取到语音提取模型后,通过将待处理语音数据输入到量化微调后的网络模型中,经过模型的计算即可得到目标语音的分离结果,从而保证了后续语音识别等需求。在一些实施方式中,在训练得到语音提取模型后,还可以对模型进行测试与验证,以保证模型的训练效果。具体的,基于步骤s110中的实施方式,在获取到混合语音样本数据后,可以从中获取测试样本数据和验证样本数据。
[0057]
利用训练得到的语音提取模型,对所述测试样本数据中的测试目标语音信号进行提取,再将提取得到的测试目标语音信号与所述验证样本数据进行比对,根据比对结果对所述语音提取模型进行优化。通过分析预测结果与原本结果的一致性,能够有效判断模型的预测准确率,从而确定是否可以直接应用模型或是再次对模型进行训练,进而有效保证模型的训练效果。
[0058]
在获取得到所述语音提取模型后,可以准确有效地对单通道语音中的目标对象的语音进行提取,从而有效保证后续的应用过程。具体的提取语音的过程可以基于实际应用的需求进行设置,在此不再赘述。
[0059]
基于上述实施例的介绍,可以看出,上述方法通过构建包含编码器、全局编码器、向导模块、分离模块和解码器的语音分离网络,通过上述结构的语音分离网络获取对应于混合语音样本数据的预测目标语音,再利用预设损失函数,结合所述预测目标语音对语音分离网络进行更新,进而得到语音提取模型,从而能够实现从待处理语音数据中提取出对应的目标对象语音信号。上述方法保证了准确有效地对单通道语音信号进行提取,进而能够在后续过程中对提取到的语音进行语音识别等利用,改善了用户的使用体验。
[0060]
基于图1所对应的语音提取方法,介绍本说明书实施例一种语音提取装置。所述语音提取装置设置于语音提取设备。如图6所示,所述语音提取装置包括以下模块。
[0061]
混合语音样本数据获取模块610,用于获取混合语音样本数据;所述混合语音样本数据为单通道语音信号;所述混合语音样本数据中包括噪声信号、干扰语音信号、混响信号中的至少一种和向导语音;所述向导语音包括对应于目标对象的语音。
[0062]
语音分离网络构建模块620,用于构建语音分离网络;所述语音分离网络包括编码器、全局编码器、向导模块、分离模块和解码器;所述编码器和全局编码器用于输出语音信号的特征;所述向导模块用于根据向导语音和混合语音样本数据的比对结果输出权重值;所述分离模块用于获取目标语音的高维映射;所述解码器用于对数据进行解码得到目标语音。
[0063]
混合语音样本数据输入模块630,用于将所述混合语音样本数据输入语音分离网络得到预测目标语音。
[0064]
语音分离网络更新模块640,用于基于预设损失函数和所述预测目标语音更新所述语音分离网络得到语音提取模型。
[0065]
目标对象语音信号提取模块650,用于利用所述语音提取模型从待处理语音数据中提取目标对象语音信号;所述待处理语音数据包括单通道语音信号。
[0066]
基于图1所对应的语音提取方法,本说明书实施例提供一种语音提取设备。如图7所示,所述语音提取设备可以包括存储器和处理器。
[0067]
在本实施例中,所述存储器可以按任何适当的方式实现。例如,所述存储器可以为只读存储器、机械硬盘、固态硬盘、或u盘等。所述存储器可以用于存储计算机程序指令。
[0068]
在本实施例中,所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式等等。所述处理器可以执行所述计算机程序指令实现以下步骤:获取混合语音样本数据;所述混合语音样本数据为单通道语音信号;所述混合语音样本数据中包括噪声信号、干扰语音信号、混响信号中的至少一种和向导语音;所述向导语音包括对应于目标对象的语音;构建语音分离网络;所述语音分离网络包括编码器、全局编码器、向导模块、分离模块和解码器;所述编码器和全局编码器用于输出语音信号的特征;所述向导模块用于根据向导语音和混合语音样本数据的比对结果输出权重值;所述分离模块用于获取目标语音的高维映射;所述解码器用于对数据进行解码得到目标语音;将所述混合语音样本数据输入语音分离网络得到预测目标语音;基于预设损失函数和所述预测目标语音更新所述语音分离网络得到语音提取模型;利用所述语音提取模型从待处理语音数据中提取目标对象语音信号;所述待处理语音数据包括单通道语音信号。
[0069]
虽然上文描述的过程流程包括以特定顺序出现的多个操作,但是,应当清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。
[0070]
虽然上文描述的过程流程包括以特定顺序出现的多个操作,但是,应当清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。
[0071]
本技术是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0072]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0073]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0074]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0075]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0076]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0077]
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0078]
本说明书实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0079]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0080]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。