一种音频信号的解混响方法和装置与流程

文档序号:18457951发布日期:2019-08-17 01:46阅读:321来源:国知局
一种音频信号的解混响方法和装置与流程

本发明涉及计算机技术领域,尤其涉及一种音频信号的解混响方法和装置。



背景技术:

在远场语音交互中,麦克风通常距离声源的位置较远,此时接收到的音频信号会受到混响的影响。混响极大的降低了音频信号的识别准确率,导致现有的语音识别的精度急剧下降。

为了降低混响对音频信号的影响,通常会对接收到的音频信号进行解混响。解混响能在一定程度上进行改善,提升语音交互的体验。在现有技术中,存在一些用于滤除音频信号中的混响的解混响算法。然而,这些解混响算法通常都存在如下的问题:在求解用于滤除混响的滤波器系数时,常会涉及大量的矩阵求逆、矩阵相乘的计算。矩阵间的运算量较大、算法复杂度较高,因此会造成解混响算法的实时性较差,影响了解混响的性能。



技术实现要素:

本发明实施例提供了一种音频信号的解混响方法和装置。用于降低解混响算法的复杂度,提高解混响性能。

为解决上述技术问题,本发明实施例提供以下技术方案:

第一方面,本发明实施例提供一种音频信号的解混响方法,包括:

获取从音频通道采集到的第一音频混响信号和第二音频混响信号,所述第一音频混响信号是在当前帧对m个频点采集得到,所述第二音频混响信号是在所述当前帧之前的历史帧对所述m个频点采集得到,所述m为正整数;

根据所述第一音频混响信号和所述第二音频混响信号对所述m个频点中的n个频点,在所述历史帧对应的房间回归系数的基础上进行更新,得到所述n个频点在所述当前帧对应的房间回归系数,所述n为小于所述m的正整数;

将已知的数值配置为所述m个频点中除所述n个频点以外的(m-n)个频点在所述当前帧对应的房间回归系数,所述已知的数值通过所述m个频点对应的已得到的房间回归系数确定;

按照所述m个频点在所述当前帧对应的房间回归系数,获取所述当前帧对应的纯净语音信号。

第二方面,本发明实施例还提供一种音频信号的解混响装置,包括:

混响信号获取模块,用于获取从音频通道采集到的第一音频混响信号和第二音频混响信号,所述第一音频混响信号是在当前帧对m个频点采集得到,所述第二音频混响信号是在所述当前帧之前的历史帧对所述m个频点采集得到,所述m为正整数;

系数更新模块,用于根据所述第一音频混响信号和所述第二音频混响信号对所述m个频点中的n个频点在所述历史帧对应的房间回归系数的基础上进行更新,得到所述n个频点在所述当前帧对应的房间回归系数,所述n为小于所述m的正整数;

系数配置模块,用于将已知的数值配置为所述m个频点中除所述n个频点以外的(m-n)个频点在所述当前帧对应的房间回归系数,所述已知的数值通过所述m个频点对应的已得到的房间回归系数确定;

语音信号获取模块,用于按照所述m个频点在所述当前帧对应的房间回归系数,获取所述当前帧对应的纯净语音信号。

在第二方面中,音频信号的解混响装置的组成模块还可以执行前述第一方面以及各种可能的实现方式中所描述的步骤,详见前述对第一方面以及各种可能的实现方式中的说明。

第三方面,本发明实施例提供一种音频信号的解混响装置,该音频信号的解混响装置包括:处理器、存储器;存储器用于存储指令;处理器用于执行存储器中的指令,使得音频信号的解混响装置执行如前述第一方面中任一项的方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

从以上技术方案可以看出,本发明实施例具有以下优点:

在本发明实施例中,首先获取从音频通道采集到的第一音频混响信号和第二音频混响信号,第一音频混响信号是在当前帧对m个频点采集得到,第二音频混响信号是在当前帧之前的历史帧对m个频点采集得到,然后根据第一音频混响信号和第二音频混响信号对m个频点中的n个频点,在历史帧对应的房间回归系数的基础上进行更新,得到n个频点在当前帧对应的房间回归系数,将已知的数值配置为m个频点中除n个频点以外的(m-n)个频点在当前帧对应的房间回归系数,得到(m-n)个频点在当前帧对应的房间回归系数。最后按照m个频点在当前帧对应的房间回归系数,获取当前帧对应的纯净语音信号。本发明实施例中对m个频点中只有n个频点在历史帧对应的房间回归系数的基础上进行更新,而其余的(m-n)个频点可通过已知的数值来配置(m-n)个频点在当前帧对应的房间回归系数,这(m-n)个频点不需要通过历史帧对应的房间回归系数更新,因此这(m-n)个频点不需要参与矩阵间的运算,在一定程度上缓解了解混响算法的工作量,降低解混响算法的复杂度,提高解混响性能。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种音频信号的解混响方法所应用的场景示意图;

图2为本发明实施例提供的音频信号的解混响方法所应用的系统架构示意图;

图3为本发明实施例提供的一种音频信号的解混响方法的流程方框示意图;

图4为本发明实施例提供的音频信号的处理算法的流程方框示意图;

图5-a为本发明实施例提供的原始语音信号的语音频谱图;

图5-b为本发明实施例提供的使用每帧更新房间回归系数的解混响算法处理后的纯净语音信号的语音频谱图;

图5-c为本发明实施例提供的使用跳帧更新房间回归系数的解混响算法处理后的纯净语音信号的语音频谱图;

图6-a为本发明实施例提供的一种音频信号的解混响装置的组成结构示意图;

图6-b为本发明实施例提供的一种系数更新模块的组成结构示意图;

图7为本发明实施例提供的一种音频信号的解混响方法应用于终端的组成结构示意图。

具体实施方式

本发明实施例提供了一种音频信号的解混响方法和装置。用于降低解混响算法的复杂度,提高解混响性能。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

以下分别进行详细说明。

本发明音频信号的解混响方法的一个实施例,具体可以应用于对音频混响信号的解混响算法中。请参阅图1所示,为本发明实施例提供的一种音频信号的解混响方法所应用的场景示意图。终端可以执行本发明实施例提供的音频信号的解混响方法,该终端内可以集成有麦克风,用户发出原始语音信号之后,该原始语音信号可以作为直达声被终端通过音频通道采集到,该原始语音信号也可以在房间内经过障碍物反射之后作为音频混响信号被终端通过音频通道采集到。当采集声音的终端和声源之间存在一定的距离时,采集声音的终端采集到的音频信号将受到混响的影响,混响会影响语音的清晰度,导致语音识别困难。本发明实施例采用解混响算法可以过滤掉混响,提高语音识别的准确率,同时本发明实施例提供的解混响算法的计算复杂度不高,对于终端的中央处理器(centralprocessingunit,cpu)占用率不高。

如图2所示,为本发明实施例提供的音频信号的解混响方法所应用的系统架构示意图。系统架构可以包括终端、云端服务器,其中,终端和云端服务器之间可以使用网络作为通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

本发明实施例中,用户可以使用终端与服务器交互,该终端设备可以是具有采集音频信号的能力的各种电子设备,包括但不限于智能手机、平板电脑、音频播放器等。终端从用户采集到音频混响信号之后,按照本发明实施例提供的音频信号的解混响方法获取到纯净语音信号之后,终端通过网络将纯净语音信号发送给云端服务器,从而云端服务器可以使用该纯净语音信号进行语音识别,并通过网络向终端发送语音识别结果。该云端服务器可以是提供各种服务的服务器,例如对终端采集的音频信号进行处理的音频处理服务器。

接下来从终端一侧介绍本发明实施例提供的音频信号的解混响方法,该终端中可以设置音频信号的解混响装置,由该音频信号的解混响装置来执行音频信号的解混响方法,请参阅图3所示,本发明一个实施例提供的音频信号的解混响方法,可以包括如下步骤:

301、获取从音频通道采集到的第一音频混响信号和第二音频混响信号,第一音频混响信号是在当前帧对m个频点采集得到,第二音频混响信号是在当前帧之前的历史帧对m个频点采集得到,m为正整数。

在本发明实施例中,音频信号的解混响装置可以通过音频通道采集用户发出的音频混响信号,例如音频信号的解混响装置从单通道的时域上采集到音频混响信号之后,通过傅里叶变换将音频混响信号转换到频域上。本发明实施例中在不同的时间可以分别采集到音频混响信号,经过时频转换后,音频信号的解混响装置可以得到对应于多个帧的音频混响信号,为便于表述,将在当前帧对m个频点采集得到的音频混响信号表示为第一音频混响信号,例如当前帧可以是第t帧。将在当前帧之前的历史帧对m个频点采集得到的音频混响信号表示为第二音频混响信号,若当前帧是第t帧,则该历史帧可以是(t-1)帧、(t-2)帧等,具体结合应用场景确定所需要选取的历史帧个数。

302、根据第一音频混响信号和第二音频混响信号对m个频点中的n个频点,在历史帧对应的房间回归系数的基础上进行更新,得到n个频点在当前帧对应的房间回归系数,n为小于m的正整数。

在本发明实施例中,音频信号的解混响装置使用解混响算法来获取当前帧的纯净语音信号,对于不同的解混响算法可以使用不同的算法模型来实现,例如本发明实施例提供的解混响算法可以是加权递归最小二乘法,解混响算法也可以是基于房间声学原理确定的单通道语音倒谱域方法等等,此处不做限定。在不同的解混响算法中都会使用迭代更新房间回归系数的方式来得到最新的房间回归系数,该房间回归系数的迭代更新会涉及到大量的矩阵间运算,本发明实施例中首先对m个频点中的n个频点在历史帧对应的房间回归系数的基础上进行更新,能够获取到最新的房间回归系数,以保证能够基于最新的房间回归系数来计算纯净语音信号,提高解混响的精确度。

在本申请实施例中,接下来对声音传递过程进行举例,以解释房间回归系数。举例说明,用户在一间房间里面说话,采集声音的终端距离用户比较远,例如距离3米远,然后用户说话到终端录制到说话的声音,会经过房间进行传播,这个过程中有直达声,也有可能通过房间各种反射,因此可以把从用户嘴发出的声音到终端的麦克风录到声音经过的所有路径称之为房间回归系数,该房间回归系数也可以称为房间传函系数。该房间回归系数在确定出初始值之后,需要根据终端不断采集到的音频混响信号进行迭代更新,以使得更新的房间回归系数能够表示声音经过的真实路径。

需要说明的是,本发明实施例中,需要m个频点中的n个频点在历史帧对应的房间回归系数的基础上来更新房间回归系数,以得到n个频点在当前帧对应的房间回归系数,由于n小于m,因此只需要m个频点中的部分频点在历史帧对应的房间回归系数的基础上进行更新,而不需要全部的m个频点在历史帧对应的房间回归系数的基础上进行更新。另外房间回归系数的更新是迭代计算的过程,涉及到矩阵的求逆、相乘等运算,因此房间回归系数的更新需要大量计算,若m个频点中只有部分频点进行矩阵运算,就可以极大的减少计算量,提高解混响的性能。举例说明如下,本发明实施例中音频信号的解混响装置所使用的解混响算法可以在频域中的加权递归最小二乘算法,加权递归最小二乘算法能自适应环境的改变,捕捉瞬间的变化,该加权递归最小二乘算法涉及较多的矩阵乘法,复杂度较高。本发明实施例中,通过m个频点中的部分频点更新,在不损失解混响性能的情况下,降低了解混响算法的复杂度。

在本发明实施例中,对于m和n的取值可以根据具体场景来确定,m可以表示时域音频混响信号变换为频域音频混响信号后的频点个数,例如对512点的时域音频混响信号进行傅里叶变换,变换到频域以后有效的频点数是257点,m的取值可以是257。n的取值要小于m,例如n的取值可以是m的二分之一,或者n的取值可以是m的三分之一,具体取决于实现场景,若n的取值越大,n个频点在历史帧对应的房间回归系数的基础上进行更新的计算量就越大,同时解混响算法的精确度就越高,若n的取值越小,n个频点在历史帧对应的房间回归系数的基础上进行更新的计算量就越小,计算效率就越高,同时解混响算法的精确度就会下降。

在本发明的一些实施例中,步骤302根据第一音频混响信号和第二音频混响信号对m个频点中的n个频点在历史帧对应的房间回归系数的基础上进行更新,包括:

根据第一音频混响信号、第二音频混响信号和n个频点在历史帧对应的房间回归系数计算出纯净语音信号估计值;

根据纯净语音信号估计值计算出纯净语音信号的能量谱;

根据第二音频混响信号、n个频点在历史帧对应的房间回归系数和纯净语音信号的能量谱计算出n个频点在当前帧对应的房间回归系数。

其中,房间回归系数是随机变量,首先获取到n个频点在历史帧对应的房间回归系数,例如该房间回归系数服从复数高斯分布。在确定房间回归系数的初始权重之后,可以通过系数迭代更新的方式确定出在当前帧之前的历史帧对应的房间回归系数,对于具体的解混响算法可以根据第一音频混响信号、第二音频混响信号和n个频点在历史帧对应的房间回归系数计算出纯净语音信号估计值,该纯净信号估计值是通过n个频点在历史帧对应的房间回归系数估计出的,接下来可以根据纯净语音信号估计值计算出纯净语音信号的能量谱,该能量谱用于表示频带内的信号能量。计算出纯净语音信号的能量谱之后,可以使用第二音频混响信号、n个频点在历史帧对应的房间回归系数和纯净语音信号的能量谱重新计算n个频点在当前帧对应的房间回归系数,即该n个频点在当前帧对应的房间回归系数可以在n个频点在历史帧对应的房间回归系数的基础上进行迭代更新,从而确定出n个频点在当前帧对应的房间回归系数。对于房间回归系数满足的分布形式不同,该房间回归系数的迭代更新过程也会有所不同,具体可以结合应用场景来确定。

303、将已知的数值配置为m个频点中除n个频点以外的(m-n)个频点在当前帧对应的房间回归系数,已知的数值通过m个频点对应的已得到的房间回归系数确定。

在本发明实施例中,前述步骤302中对于m个频点中的其中n个频点在历史帧对应的房间回归系数进行了更新,可以得到这n个频点在当前帧对应的房间回归系数。将m个频点中没有按照步骤302的方式进行系数迭代更新的频点称为m个频点中除n个频点以外的(m-n)个频点,后续实施例中简称为“(m-n)个频点”。本发明实施例中m个频点是解混响算法的一个处理周期内需要获取的频点个数,这m个频点可以认为是一个集合,其中的n个频点和其余的(m-n)个频点可以认为是该集合的两个子集。举例说明如下,m个频点为频点0、频点1、频点2、频点3、频点4、频点5、频点6、频点7、频点8和频点9,其中,n个频点可以是频点0、频点1、频点2、频点3、频点4,则m个频点中除n个频点以外的(m-n)个频点可以是频点5、频点6、频点7、频点8和频点9。又如,n个频点可以是频点0、频点2、频点4、频点6、频点8,m个频点中除n个频点以外的(m-n)个频点可以是频点1、频点3、频点5、频点7、频点9。

在本发明实施例中,前述步骤通过系数迭代更新的方式可以获取到n个频点在当前帧对应的房间回归系数,而对于(m-n)个频点在当前帧对应的房间回归系数,可以不使用系数迭代更新的方式来确定,以减少系数迭代更新时所需要的复杂计算量,本发明实施例中(m-n)个频点在当前帧对应的房间回归系数可以使用已知的数值配置得到。由于已知的数值可以作为(m-n)个频点在当前帧对应的房间回归系数,因此省去了系数迭代更新时产生的复杂计算量,因此可以适用于对功耗要求高的终端硬件。例如,在实际产品中,终端可以是音箱,电视等,这类终端对cpu占用率很敏感,本发明实施例中可以降低解混响算法的复杂度,以减少对这类终端的cpu占用率。

在本发明实施例中,已知的数值可以通过m个频点对应的已得到的房间回归系数确定,也就是说,步骤303中配置(m-n)个频点在当前帧对应的房间回归系数时只需要使用该已知的数值就可以实现,不需要使用复杂计算的方式来确定(m-n)个频点在当前帧对应的房间回归系数,以减少解混响算法中的计算量。该已知的数值是由m个频点对应的已得到的房间回归系数确定,其中已得到的房间回归系数是指在步骤303执行之前就可以得到的房间回归系数,已知的数值的实现方式可以有多种,例如该已知的数值可以通过m个频点在历史帧对应的房间回归系数来确定,也可以通过前述步骤302中得到的n个频点在当前帧对应的房间回归系数来确定。

在本发明的一些实施例中,解混响算法在一个处理周期内需要获取的频点个数记为m个,m个频点可以作为一个集合,m个频点可以按照每个频点是否满足频点分类条件来划分出两个子集,针对划分得到的两个子集各自执行步骤302和步骤303中的一个步骤。例如n个频点为m个频点中满足频点分类条件的频点,(m-n)个频点为m个频点中不满足频点分类条件的频点。其中频点分类条件是指将m个频点划分的依据,对于频点分类的方式可以有多种,后续实施例中举例说明。在实际应用频点分类条件可以预先配置在终端中,也可以由终端从频点分类策略中主动获取,该频点分类策略可以存储在策略服务器中。

进一步的,在本发明的一些实施例中,频点分类条件可以包括:从m个频点中按照每间隔s个频点选择出一个频点,选择出的所有频点构成n个频点,s为大于0的正整数;或,从m个频点中按照每间隔t个频点选择出连续的p个频点,选择出的所有频点构成n个频点,t和p为正整数。

其中,该频点分类条件可以是选择出不连续的单个频点,也可以是选择出一段段连续的频点。s和t是选择频点时所间隔的频点个数,例如可以是间隔1个频点挑出一个频点,或者间隔1个频点挑出连续的两个频点,或者间隔两个频点挑出一个频点,或者间隔两个频点挑出连续的三个频点等。具体s、t、p的取值以及设置频点分类条件的方式取决于应用场景,此处不做限定。

进一步的,在本发明的一些实施例中,当s的取值为1时,m个频点中的奇数频点属于n个频点,或者m个频点中的偶数频点属于n个频点;或者,

当t的取值为0、且p的取值等于m的二分之一时,m个频点中的低频段频点属于n个频点。

其中,频点分类条件可以是每间隔1个频点选择出1个频点,例如m个频点中的奇数频点属于n个频点,则对于这n个频点可以执行步骤302,即奇数频点在历史帧对应的房间回归系数进行迭代更新,得到m个频点中的奇数频点在当前帧对应的房间回归系数。又如m个频点中的偶数频点属于n个频点,则对于这n个频点可以再次执行步骤302,即偶数频点在当前帧对应的房间回归系数进行迭代更新,得到m个频点中的偶数频点在下一帧对应的房间回归系数,因此本发明实施例中可以根据第一音频混响信号、第二音频混响信号对m个频点中的奇数频点或偶数频点,进行每帧交替更新房间回归系数,相比于每帧都更新房间回归系数,本发明实施例中采用跳帧的方式更新房间回归系数可以减少一半的计算量,在实际环境中,房间周围环境并不是每帧都发生变化,因此一定程度减缓每个频点的房间回归系数更新,既能减小计算量,也能更加稳定的消除混响,对实际系统有很大的意义。

其中,解混响算法在一个处理周期内需要获取的频点个数记为m个,这m个频点可以按照频点取值的大小划分为低频段频点和高频段频点,举例说明,m个频点表示0-8k的频段,当p的取值等于m的二分之一时,0-8k的频段可以划分为0-4k的低频段频点和4-8k的高频段频点,则n个频点可以是低频段频点,在这种情况下,对于这n个频点可以执行步骤302,即低频段频点在历史帧对应的房间回归系数进行迭代更新,得到m个频点中的低频段频点在当前帧对应的房间回归系数。因此本发明实施例中可以根据第一音频混响信号、第二音频混响信号对m个频点中的低频段频点,进行每帧交替更新房间回归系数,相比于每帧都更新房间回归系数,本发明实施例中采用跳帧的方式更新房间回归系数可以减少一半的计算量,在实际环境中,房间周围环境并不是每帧都发生变化,因此一定程度减缓每个频点的房间回归系数更新,既能减小计算量,也能更加稳定的消除混响,对实际系统有很大的意义。

进一步的,在本申请的一些实施例中,当n个频点为奇数频点时,(m-n)个频点为m个频点中的偶数频点;或,

当n个频点为偶数频点时,(m-n)频点为m个频点中的奇数频点;或,

当n个频点为低频段频点时,(m-n)频点为m个频点中的高频段频点。

举例说明如下,n个频点可以是奇数频点,(m-n)个频点为m个频点中的偶数频点,在这种情况下,对于这n个频点可以执行步骤302,即低频段频点在历史帧对应的房间回归系数进行迭代更新,得到m个频点中的低频段频点在当前帧对应的房间回归系数。对于(m-n)个频点不需要进行系数迭代更新,可以使用已知的数值配置(m-n)个频点在当前帧对应的房间回归系数,因此本发明实施例中对m个频点中的一半频点都不需要进行系数迭代更新,相比于每帧都更新房间回归系数,本发明实施例中采用跳帧的方式更新房间回归系数可以减少一半的计算量,在实际环境中,房间周围环境并不是每帧都发生变化,因此一定程度减缓每个频点的房间回归系数更新,既能减小计算量,也能更加稳定的消除混响,对实际系统有很大的意义。

在本发明的一些实施例中,将已知的数值配置为m个频点中除n个频点以外的(m-n)个频点在当前帧对应的房间回归系数,包括:

将(m-n)个频点在历史帧对应的房间回归系数配置为(m-n)个频点在当前帧对应的房间回归系数;或,

将n个频点在历史帧对应的房间回归系数配置为(m-n)个频点在当前帧对应的房间回归系数;或,

将n个频点在当前帧对应的房间回归系数配置为(m-n)个频点在当前帧对应的房间回归系数。

其中,(m-n)个频点在当前帧对应的房间回归系数可以沿用相同频点在历史帧对应的房间回归系数,因此不需要使用系数迭代更新的方式来计算(m-n)个频点在当前帧对应的房间回归系数,降低了终端的计算量。另外,(m-n)个频点在当前帧对应的房间回归系数还可以使用n个频点在历史帧对应的房间回归系数,或者使用n个频点在当前帧对应的房间回归系数。因此(m-n)个频点在当前帧对应的房间回归系数可以沿用相同频点或者相邻频点的房间回归系数来确定,进一步的,可以沿用相同频点或者相邻频点在历史帧或者当前帧对应的房间回归系数来确定,这些方式都可以减少系统迭代更新的计算量,在实际环境中,房间周围环境并不是每帧都发生变化,因此一定程度减缓每个频点的房间回归系数更新,既能够减小计算量,也能混响消除,保证解混响的性能。

304、按照m个频点在当前帧对应的房间回归系数,获取当前帧对应的纯净语音信号。

在本发明实施例中,通过步骤302可以得到n个频点在当前帧对应的房间回归系数,通过步骤303可以得到(m-n)个频点在当前帧对应的房间回归系数,因此可以得到m个频点在当前帧对应的房间回归系数,使用完整的m个频点在当前针对对应的房间回归系数可以获取到当前帧对应的纯净语音信号,例如可以通过第一音频混响信号和第二音频混响信号获取当前帧对应的纯净语音信号。该纯净语音信号是解混响算法对混响滤除后得到的语音信号,该纯净语音信号可用于语音识别,从而提高语音识别的准确率。例如终端可以通过网络和云端服务器进行交互,由云端服务器使用该纯净语音信号来生成语音识别结果。

在本发明的一些实施例中,通过步骤302和步骤303可知,当前帧对应的m个频点中的n个频点在历史帧对应的房间回归系数的基础上进行了更新,当前帧对应的m个频点中的(m-n)个频点与n个频点的房间回归系数的更新方式不相同,直接使用已知的数值来更新,从而减少房间回归系数迭代更新的计算量。接下来描述在当前帧的下一帧如何获取到纯净语音信号。例如步骤304按照m个频点在当前帧对应的房间回归系数,获取当前帧对应的纯净语音信号之后,本发明实施例提供的方法还包括:

获取所述当前帧之后的下一帧音频混响信号;

将所述当前帧更新后的房间回归系数配置为所述下一帧音频混响信号的(m-n)个频点的房间回归系数,以及将已知的数值配置为所述下一帧音频混响信号的n个频点的房间回归系数;以及

对于所述下一帧音频混响信号之后的每两个音频混响信号,根据所述更新后的房间回归系数和已知的数值,交替配置其中n个频点和(m-n)个频点的房间回归系数。

其中,当前帧对应的m个频点中的n个频点在当前帧对应的历史帧对应的房间回归系数的基础上进行了更新,但是在当前帧的下一帧对应的这n个频点不再使用在下一帧对应的历史帧对应的房间回归系数的基础上进行更新,而是通过已知数值直接更新从而减少房间回归系数迭代更新的计算量。当前帧对应的m个频点中的(m-n)个频点直接使用已知的数值来更新,但是在当前帧的下一帧对这n个频点在下一帧对应的历史帧对应的房间回归系数的基础上进行了更新,实现了当前帧和下一帧交替采用不同方式进行更新。从而保证每个帧的部分频点在当前帧进行迭代更新,在下一帧的同样部分频点采用已知的数值来更新,这种不同帧交替更新的方式可以减少房间回归系数迭代更新的计算量。

通过以上实施例对本发明实施例的描述可知,首先获取从音频通道采集到的第一音频混响信号和第二音频混响信号,第一音频混响信号是在当前帧对m个频点采集得到,第二音频混响信号是在当前帧之前的历史帧对m个频点采集得到,然后根据第一音频混响信号和第二音频混响信号对m个频点中的n个频点,在历史帧对应的房间回归系数的基础上进行更新,得到n个频点在当前帧对应的房间回归系数,将已知的数值配置为m个频点中除n个频点以外的(m-n)个频点在当前帧对应的房间回归系数,得到(m-n)个频点在当前帧对应的房间回归系数。最后按照m个频点在当前帧对应的房间回归系数,获取当前帧对应的纯净语音信号。本发明实施例中对m个频点中只有n个频点在历史帧对应的房间回归系数的基础上进行更新,而其余的(m-n)个频点可通过已知的数值来配置(m-n)个频点在当前帧对应的房间回归系数,这(m-n)个频点不需要通过历史帧对应的房间回归系数更新,因此这(m-n)个频点不需要参与矩阵间的运算,在一定程度上缓解了解混响算法的工作量,降低解混响算法的复杂度,提高解混响性能。

为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。

本发明实施例提供的音频信号的解混响方法可以适用于用户与终端的远场语音交互场景中,在远场语音交互场景中,混响极大的影响语音识别的准确率,本发明实施例可以使用解混响算法在一定程度上进行改善,提升语音交互的体验。本发明实施例提供的解混响方法可用于智能家居,如电视,音箱等。实际的远场应用场景中,一般是家庭环境中的客厅或者卧室,这些场景都有混响,混响严重影响了识别的性能,因此解混响在远场语音交互中就显得极为重要,比如终端可以是音箱,人对音箱发出指令,音箱中的前端处理需要包含解混响功能,提高语音识别率,但是不希望解混响对音箱的cpu占用率过高,这样对于带电池的音箱功耗过大,因此会需要音箱的电池容量增大,不便于携带,本发明实施例提供的解混响方法具有计算量小、复杂度低的优点。

如图4所示,为本发明实施例提供的音频信号的处理算法的流程方框示意图,主要包括如下流程:

s01、音频录音。

其中,以终端为音箱为例,音箱首先对用户发出的原始语音信号进行录音,例如音箱中设置音频采集板进行音频录音。

s02、回声消除。

其中,音箱录音完成之后,首先进行回声消除,以消除掉采集到的音频信号中的回声。

s03、解混响。

其中,解混响算法集成在整个音箱的前端信号处理算法中。本发明实施例中解混响算法主要在频域中采用加权递归最小二乘法,加权递归最小二乘法能自适应环境的改变,捕捉瞬间的变化,但是该算法涉及较多的矩阵乘法,复杂度较高。在不损失解混响性能的情况下本发明实施例可以降低解混响算法的复杂度。本发明实施例中使用的加权递归最小二乘法,对语音失真小,自适应跟踪,并且是线性滤波器,本发明实施例中采用跳帧的方式降低算法复杂度,在不损失解混响性能的前提下极大的降低了计算量。具体的,本发明实施例中在加权递归最小二乘法中使用跳帧的方法,每帧只有一半频点的系数进行迭代更新,比如第n帧对奇数频点的房间回归系数进行更新,第n+1帧对偶数频点的房间回归系数进行更新。加权递归最小二乘法的主要计算量来自于房间回归系数更新,每帧只对一半频点数进行更新,计算量可降低一半,最后对所有频点进行滤波。

在实际场景中,假设房间回归系数服从高斯分布,该房间回归系数的阶数用于k表示,矩阵运算的阶数和设置的房间回归系数阶数k有关,阶数k越大,混响消除越多,计算量越大,阶数k越小,混响消除少,计算量会降低,但是对于功耗要求高的场景,计算复杂度仍然需要降低,本发明实施例可以适用于功耗要求高的终端硬件,每帧不需要更新全部频点的房间回归系数,只需根据需要对某些频点进行更新,不更新的频点可用之前的房间回归系数求取纯净语音信号,该方法主要基于实际环境中房间回归系数并不会变化很快,因此隔几帧更新不会影响解混响算法的性能,反而能让最终计算得到的纯净信号语音更加稳定。

本发明实施例中采用的解混响算法主要包括如下过程:

s031、使用上一帧的房间回归系数计算纯净语音信号。

对单通道时域信号进行时域分帧后,再对音频时域信号进行傅里叶变换变换到频域,其中,音频混响信号和语音纯净信号之间的关系可用如下公式表达:

其中,st,l是未知信号,就是无混响的纯净语音信号,也是解混响的目标,尽量朝无混响靠近,并不失真本来的语音信号。t表示时间,l表示频点,0≤l≤l-1,l表示变换到频域的点数,比如做512点的傅里叶变换,变换到频域以后有效的频点数是257点,l的取值为257。xt,l是音频混响信号,gl是k阶的房间回归系数,xt-1,l是t之前的混响信号矢量,长度为k。gl=[g1,l,...,gk,l]t,xt-1,l=[xt-1,l,...,xt-k,l]t。估计出gt,l即可得到纯净语音信号。

假设gl是服从均值为μl,方差为φl的复数高斯分布,在频域对每个频点使用加权递归最小二乘法,算法如下:

设置房间回归系数的初始值μl(0)为k阶零向量,初始方差矩阵φl(0)为k阶单位矩阵,t=1,2,...,0≤l≤l-1。

接下来通过如下方式计算出全频带的纯净语音信号:

其中t=1,2,...,0≤l≤l-1。

其中,表示纯净语音信号估计值,μl(t-1)表示t-1帧到t-k帧的房间回归系数,xt,l是t帧的音频混响信号,xt-1,l是t-1帧到t-k帧的音频混响信号。

s032、根据计算的纯净语音信号对奇数频点或偶数频点,使用加权递归最小二乘法每帧交替更新房间回归系数。

其中,本发明实施例中只更新奇数频点l=1,3,5...l-1或者偶数频点l=0,2,4,...l对应的房间回归系数,即本帧进行奇数点对应的房间回归系数更新,偶数点沿用上一次估计出的房间回归系数,则下一帧就进行偶数点对应的房间回归系数更新,奇数点沿用上一次估计出的房间回归系数。奇数点和偶数点对应的房间回归系数交替更新。计算纯净语音信号能量谱按如下公式更新μl(t-1)和φl(t-1):

μl(t)=μt(t-1),l=0,2,4,...l。

或者,

μl(t)=μt(t-1),l=1,3,5...l-1。

接下来进行如下计算:

需要说明的是,本发明实施例可以减小解混响的计算量,奇数点或者偶数点交替跳帧更新,这样两帧能完成一次全部频点的房间回归系数更新,也可以每帧更新更少的频点,这样需要更多帧才能完成全部频点的房间回归系数更新。为了减少房间回归系数的改变而来不及更新系数在一定程度上导致解混响性能的损失,可以根据实际使用场景,做一些前期预测,对房间回归系数进行测量,提前计算出房间回归系数,比如实际使用场景一般家具陈设基本不动,房间人比较少,一到两个,人来回走动的可能性较小,或者走动的范围并不大因此对房间回归系数的改变基本可以认为是非常缓慢的。除此以外也可以使用某些频点更新的房间回归系数用在其他频点上,这样每帧也可能减少更新的频点的点数,举例说明如下,更新低频段频点的房间回归系数,直接用于高频段频点的房间回归系数,这样也能减少每次更新房间回归系数的计算量。

s033、由新计算的房间回归系数重新计算纯净语音信号,并输出纯净语音信号用于语音识别。

其中,可以通过如下方式使用最新估计的房间回归系数重新计算出纯净语音信号:st.l=xt,l-μl(t)hxt-1,l。

本发明实施例中采用跳帧的方式更新房间回归系数,能够降低一半计算量,在实际环境中,周围环境并不是每帧都发生变化,因此一定程度减缓每个频点的房间回归系数更新既能减小计算量,也能混响消除更加稳定,对实际系统有很大的意义。

接下来本发明实施例提供的解混响方法的性能进行举例说明,图5-a为本发明实施例提供的原始语音信号的语音频谱图,图5-b为本发明实施例提供的使用每帧更新房间回归系数的解混响算法处理后的纯净语音信号的语音频谱图,图5-c为本发明实施例提供的使用跳帧更新房间回归系数的解混响算法处理后的纯净语音信号的语音频谱图。本发明实施例采用的解混响算法的语音采样率为16000每秒,语音进行分帧处理,每帧512点,50%的叠接,每512点进行傅里叶变换到频域,根据傅里叶变换的共轭对称性,需要处理257个频点。图5-a是原始语音的语音频谱图,房屋混响时间大概700ms左右,语音有较长拖尾,图5-b是经过每帧都更新房间回归系数的解混响算法处理后的语音频谱图,语音拖尾现象减少,图5-c是本发明实施例中使用跳帧更新房间回归系数的解混响算法处理后的语音频谱图,可见图5-c和图5-b的语音频谱非常接近。

s04、降噪。

s05、自动增益控制。

其中,降噪、自适应增益控制都属于前端信号处理算法,在经过回声消除、解混响、降噪、自动增益控制这四个步骤对音频信号的处理以后,语音信号得到增强,接下来再将语音信号送入唤醒和识别。

s06、唤醒以及识别。

其中,前端信号处理和唤醒都是在音箱的核心处理器中进行处理,因此前端算法和唤醒算法在影响着音箱的功耗,识别是音箱将语音信号发往云端服务器进行语音识别。

本发明实施例中使用的加权递归最小二乘法进行解混响,能有效消除混响,同时引入跳帧交替更新不同频带的房间回归系数能减少矩阵运算的计算量,并且没有引起解混响性能的损失。本发明实施例提供的解混响方法能提升远场识别率,改善远场交互体验。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。

请参阅图6-a所示,本发明实施例提供的一种音频信号的解混响装置600,可以包括:混响信号获取模块601、系数更新模块602、系数配置模块603、语音信号获取模块604,其中,

混响信号获取模块601,用于获取从音频通道采集到的第一音频混响信号和第二音频混响信号,所述第一音频混响信号是在当前帧对m个频点采集得到,所述第二音频混响信号是在所述当前帧之前的历史帧对所述m个频点采集得到,所述m为正整数;

系数更新模块602,用于根据所述第一音频混响信号和所述第二音频混响信号对所述m个频点中的n个频点,在所述历史帧对应的房间回归系数的基础上进行更新,得到所述n个频点在所述当前帧对应的房间回归系数,所述n为小于所述m的正整数;

系数配置模块603,用于将已知的数值配置为所述m个频点中除所述n个频点以外的(m-n)个频点在所述当前帧对应的房间回归系数,所述已知的数值通过所述m个频点对应的已得到的房间回归系数确定;

语音信号获取模块604,用于按照所述m个频点在所述当前帧对应的房间回归系数,获取所述当前帧对应的纯净语音信号。

在本发明的一些实施例中,所述系数配置模块603,具体用于将所述(m-n)个频点在所述历史帧对应的房间回归系数配置为所述(m-n)个频点在所述当前帧对应的房间回归系数;或,将所述n个频点在所述历史帧对应的房间回归系数配置为所述(m-n)个频点在所述当前帧对应的房间回归系数;或,将所述n个频点在所述当前帧对应的房间回归系数配置为所述(m-n)个频点在所述当前帧对应的房间回归系数。

在本发明的一些实施例中,所述n个频点为所述m个频点中满足频点分类条件的频点,所述(m-n)个频点为所述m个频点中不满足所述频点分类条件的频点。

在本发明的一些实施例中,所述频点分类条件包括:从所述m个频点中按照每间隔s个频点选择出一个频点,选择出的所有频点构成所述n个频点,所述s为大于0的正整数;或,从所述m个频点中按照每间隔t个频点选择出连续的p个频点,选择出的所有频点构成所述n个频点,所述t和所述p为正整数。

在本发明的一些实施例中,当所述s的取值为1时,所述m个频点中的奇数频点属于所述n个频点,或者所述m个频点中的偶数频点属于所述n个频点;或者,

当所述t的取值为0、且所述p的取值等于所述m的二分之一时,所述m个频点中的低频段频点属于所述n个频点。

在本发明的一些实施例中,当所述n个频点为所述奇数频点时,所述(m-n)个频点为所述m个频点中的偶数频点;或,

当所述n个频点为所述偶数频点时,所述(m-n)频点为所述m个频点中的奇数频点;或,

当所述n个频点为所述低频段频点时,所述(m-n)频点为所述m个频点中的高频段频点。

在本发明的一些实施例中,请参阅图6-b所示,所述系数更新模块602,包括:

语音信号估计模块6021,用于根据所述第一音频混响信号、所述第二音频混响信号和所述n个频点在所述历史帧对应的房间回归系数计算出纯净语音信号估计值;

能量谱计算模块6022,用于根据所述纯净语音信号估计值计算出纯净语音信号的能量谱;

系数计算模块6023,用于根据所述第二音频混响信号、所述n个频点在所述历史帧对应的房间回归系数和所述纯净语音信号的能量谱计算出所述n个频点在所述当前帧对应的房间回归系数。

在本发明的一些实施例中,所述混响信号获取模块601,还用于获取所述当前帧之后的下一帧音频混响信号;

所述系数更新模块602,还用于将所述当前帧更新后的房间回归系数配置为所述下一帧音频混响信号的(m-n)个频点的房间回归系数;

所述系数配置模块603,还用于将已知的数值配置为所述下一帧音频混响信号的n个频点的房间回归系数;对于所述下一帧音频混响信号之后的每两个音频混响信号,根据所述更新后的房间回归系数和已知的数值,交替配置其中n个频点和(m-n)个频点的房间回归系数系数和已知的数值。

通过以上对本发明实施例的描述可知,首先获取从音频通道采集到的第一音频混响信号和第二音频混响信号,第一音频混响信号是在当前帧对m个频点采集得到,第二音频混响信号是在当前帧之前的历史帧对m个频点采集得到,然后根据第一音频混响信号和第二音频混响信号对m个频点中的n个频点,在历史帧对应的房间回归系数的基础上进行更新,得到n个频点在当前帧对应的房间回归系数,将已知的数值配置为m个频点中除n个频点以外的(m-n)个频点在当前帧对应的房间回归系数,得到(m-n)个频点在当前帧对应的房间回归系数。最后按照m个频点在当前帧对应的房间回归系数,获取当前帧对应的纯净语音信号。本发明实施例中对m个频点中只有n个频点在历史帧对应的房间回归系数的基础上进行更新,而其余的(m-n)个频点可通过已知的数值来配置(m-n)个频点在当前帧对应的房间回归系数,这(m-n)个频点不需要通过历史帧对应的房间回归系数更新,因此这(m-n)个频点不需要参与矩阵间的运算,在一定程度上缓解了解混响算法的工作量,降低解混响算法的复杂度,提高解混响性能。

本发明实施例还提供了另一种终端,如图7所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、pda(personaldigitalassistant,个人数字助理)、pos(pointofsales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:

图7示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图7,手机包括:射频(radiofrequency,rf)电路1010、存储器1020、输入单元1030、显示单元1040、传感器1050、音频电路1060、无线保真(wirelessfidelity,wifi)模块1070、处理器1080、以及电源1090等部件。本领域技术人员可以理解,图7中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图7对手机的各个构成部件进行具体的介绍:

rf电路1010可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1080处理;另外,将设计上行的数据发送给基站。通常,rf电路1010包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路1010还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte)、电子邮件、短消息服务(shortmessagingservice,sms)等。

存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在存储器1020的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元1030可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1030可包括触控面板1031以及其他输入设备1032。触控面板1031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1031上或在触控面板1031附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1080,并能接收处理器1080发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1031。除了触控面板1031,输入单元1030还可以包括其他输入设备1032。具体地,其他输入设备1032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1040可包括显示面板1041,可选的,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1041。进一步的,触控面板1031可覆盖显示面板1041,当触控面板1031检测到在其上或附近的触摸操作后,传送给处理器1080以确定触摸事件的类型,随后处理器1080根据触摸事件的类型在显示面板1041上提供相应的视觉输出。虽然在图7中,触控面板1031与显示面板1041是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1031与显示面板1041集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器1050,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1041的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1041和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路1060、扬声器1061,传声器1062可提供用户与手机之间的音频接口。音频电路1060可将接收到的音频数据转换后的电信号,传输到扬声器1061,由扬声器1061转换为声音信号输出;另一方面,传声器1062将收集的声音信号转换为电信号,由音频电路1060接收后转换为音频数据,再将音频数据输出处理器1080处理后,经rf电路1010以发送给比如另一手机,或者将音频数据输出至存储器1020以便进一步处理。

wifi属于短距离无线传输技术,手机通过wifi模块1070可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了wifi模块1070,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器1080是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1080可包括一个或多个处理单元;优选的,处理器1080可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。

手机还包括给各个部件供电的电源1090(比如电池),优选的,电源可以通过电源管理系统与处理器1080逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本发明实施例中,该终端所包括的处理器1080还具有控制执行以上由终端执行的音频信号的解混响方法流程。

另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1