本发明数据处理领域,尤其涉及一种音频信号相似度检测方法。
背景技术:
音频信号处理是一个复杂的交叉技术领域。近年来,音频处理技术得到了广泛的应用。
音频处理的基础是语音检测,音频检测的目的是检测语音信号是否存在。
现有技术中,音频检测的过程通常是:获取各音频信号,从各音频信号中提取特征参数进行语义分析,再根据语义分析的结果获知该音频信号是否为语音。
但是,语义分析需要进行大量的计算和模板的匹配,影响了音频检测的效率。
因此,现有技术有待于进一步的改进。
技术实现要素:
鉴于上述现有技术中的不足之处,本发明的目的在于为用户提供一种音频信号相似度检测方法,克服现有技术中音频检测效率低缺陷。
本发明提供的实施例为:一种音频信号相似度检测方法,其中,所述方法包括:
获取待检测相似度的第一音频信号和第二音频信号;
分别对所述第一音频信号和第二音频信号进行快速傅里叶变换得到对应的第一频域信号和第二频域信号;
根据所述第一频域信号计算第一谱幅度值和根据所述第二频域信号计算第二谱幅度值;
分别计算所述第一谱幅度值和所述第二谱幅度值的概率密度,根据所述概率密度计算所述音频信号的谱熵,以及根据所述谱熵确定所述第一音频信号和第二音频信号是否均为语音信号;
若均为语音信号则识别出第一音频信号中含有的第一语言信息和识别出第二音频信号中含有的第二语音信息;
计算出所述第一语音信息和第二语音信息的相似度,并将所述相似度认定为所述第一音频信号和第二音频信号的相似度。
可选的,所述根据所述第一频域信号计算第一谱幅度值和根据所述第二频域信号计算第二谱幅度值的步骤中,采用以下公式进行计算:
其中,x(k,y)表示第y个音频信号所在帧的第k个频段的谱幅度值,z(n,y)表示第y个音频信号所在帧的音频中的第n个点的幅度,n表示快速傅里叶变换的变化长度,k小于或等于n,exp(-j2πkn/n)表示幅角为2π的kn/n倍的复数。
具有的,所述计算所述第一谱幅度值和所述第二谱幅度值的概率密度的步骤包括:
根据所述谱幅度值计算第y个音频信号所在帧的带噪语音功率谱总能量;
根据所述总能量以及所述谱幅度值计算概率密度。
可选的,所述带噪语音功率谱总能量的计算公式为:
较佳的,esum(y)表示第y个音频信号所在帧的带噪语音功率谱总能量,x(k,y)表示第y个音频信号所在帧的第k个频段的谱幅度值,n表示快速傅里叶变换的变化长度。
较佳的,所述根据所述总能量以及所述谱幅度值计算概率密度的步骤中,采用以下公式进行计算:
d(k,y)=|x(k,y)|2/esum(y);
其中,d(k,y)表示第y个音频信号所在帧的第k个频段所对应的概率密度,x(k,y)表示第y个音频信号所在帧的第k个频段的谱幅度值。
具体的,根据所述概率密度计算所述音频信号的谱熵的具体过程:
其中,h(y)表示第y个音频信号的谱熵,d(k,y)表示第y个音频信号所在帧的第k个频段所对应的概率密度。
具体的,所述根据所述谱熵确定所述音频信号是否为语音信号的步骤包括:
计算所述音频信号的能量;
根据所述音频信号的能量以及所述谱熵确定所述音频信号是否为语音信号;
所述计算所述音频信号的能量的公式为:
其中,e(y)表示第y个音频信号的能量,m表示音频信号所在帧的帧长,z(n,y)表示第y个音频信号所在帧的音频中的第n个点的幅度;
根据所述音频信号的能量以及所述谱熵确定所述音频信号是否为语音信号的步骤包括:
判断p(y)是否大于预置门限值,若是,则确定音频信号是语音信号,若否,则确定音频信号不是语音信号,其中,
具体的,所述若均为语音信号则识别出第一音频信号中含有的第一语言信息和识别出第二音频信号中含有的第二语音信息的步骤包括:
将音频信号与数据库中存储的数据进行比对,或者将所述音频信号发送至云端服务器,并获取云端服务器返回的与第一音频信号和第二音频信号相对应的第一语音信息和第二语音信息。
具体的,所述计算出所述第一语音信息和第二语音信息的相似度的步骤包括:
对识别出的第一语音信息和第二语音信息中包含字符进行逐一比对;
计算相同字符所占全部字符的比例,将所述比例判定为相似度。
可选的,所述计算出所述第一语音信息和第二语音信息的相似度的步骤包括:
将第一语音信息和第二语音信平均分成不同的语音片段;
逐条相对应的语音片段进行其中含有字符的比对,计算每个相对应语音片段的相似度;
对得到的各个语音片段的相似度进行加权计算,得到平均相似度,将所述平均相似度判定为第一语音信息和第二语音信息的相似度。
本发明中,可以根据音频信号的谱熵来进行音频信号检测,谱熵的计算过程主要涉及时频变换、幅度计算和能量计算等,这些计算过程所针对的都是语音信号本身的属性,而不必进行语义分析这种需要涉及到人工智能和神经网络的计算方式,从而减少了计算量,提高了音频信息检测的效率。
附图说明
图1为本发明所述一种音频信号相似度检测方法的步骤流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的实施例为一种音频信号相似度检测方法,如图1所示,所述方法包括:
步骤s101、获取待检测相似度的第一音频信号和第二音频信号。
在具体实施时,例如当需要对新音响设备进行声道音效检测时,则获取标准音频信号与该音响设备播放出的音频信号,本步骤中将标准音频信号作为第一音频信号,将待检测与第一音频信号相似度的音响播放音频信号作为第二音频信号。可以想到的是,本发明所提供的方法还可以用于其他需要进行音频信号相似度匹配的情况。
步骤s102、分别对所述第一音频信号和第二音频信号进行快速傅里叶变换得到对应的第一频域信号和第二频域信号。
分别对第一音频信号和第二音频信号进行快速傅里叶变换,得到第一音频信号的第一频域信号和得到第二音频信号的第二频域信号。
步骤s103、根据所述第一频域信号计算第一谱幅度值和根据所述第二频域信号计算第二谱幅度值。
利用上述步骤s102中获取到第一频域信号和第二频域信号,则根据获取到的第一频域信号和第二频域信号分别计算其对应的第一谱幅度值和第二谱幅度值。
具体的,所述根据所述第一频域信号计算第一谱幅度值和根据所述第二频域信号计算第二谱幅度值的步骤中,采用以下公式进行计算:
其中,x(k,y)表示第y个音频信号所在帧的第k个频段的谱幅度值,z(n,y)表示第y个音频信号所在帧的音频中的第n个点的幅度,n表示快速傅里叶变换的变化长度,k小于或等于n,exp(-j2πkn/n)表示幅角为2π的kn/n倍的复数。
步骤s104、分别计算所述第一谱幅度值和所述第二谱幅度值的概率密度,根据所述概率密度计算所述音频信号的谱熵,以及根据所述谱熵确定所述第一音频信号和第二音频信号是否均为语音信号。
本步骤中进行以下计算:
首先、需要根据谱幅度值计算概率密度;
其次,再根据概率密度计算出音频信号的谱熵;
再次,根据所述谱熵确定所述第一音频信号和第二音频信号是否均为语音信号;
具体的,所述计算所述第一谱幅度值和所述第二谱幅度值的概率密度的步骤包括:
根据所述谱幅度值计算第y个音频信号所在帧的带噪语音功率谱总能量;
根据所述总能量以及所述谱幅度值计算概率密度。
所述带噪语音功率谱总能量的计算公式为:
其中,esum(y)表示第y个音频信号所在帧的带噪语音功率谱总能量,x(k,y)表示第y个音频信号所在帧的第k个频段的谱幅度值,n表示快速傅里叶变换的变化长度。
其次,所述根据所述总能量以及所述谱幅度值计算概率密度的步骤中,采用以下公式进行计算:
d(k,y)=|x(k,y)|2/esum(y);
其中,d(k,y)表示第y个音频信号所在帧的第k个频段所对应的概率密度,x(k,y)表示第y个音频信号所在帧的第k个频段的谱幅度值。
再次,根据所述概率密度计算所述音频信号的谱熵的具体过程:
其中,h(y)表示第y个音频信号的谱熵,d(k,y)表示第y个音频信号所在帧的第k个频段所对应的概率密度。
根据计算出的与第一音频信号相对应的谱熵确定所述第一音频信号是否为语音信号,根据计算出的与第二音频信号相对应的谱熵确定所述第二音频信号是否为语音信号。
或者,通过以下方法实现音频信号是否为语音信号的识别:
所述根据所述谱熵确定所述音频信号是否为语音信号的步骤包括:
计算所述音频信号的能量;
根据所述音频信号的能量以及所述谱熵确定所述音频信号是否为语音信号;
所述计算所述音频信号的能量的公式为:
其中,e(y)表示第y个音频信号的能量,m表示音频信号所在帧的帧长,z(n,y)表示第y个音频信号所在帧的音频中的第n个点的幅度;
根据所述音频信号的能量以及所述谱熵确定所述音频信号是否为语音信号的步骤包括:
判断p(y)是否大于预置门限值,若是,则确定音频信号是语音信号,若否,则确定音频信号不是语音信号,其中,
步骤s105、若均为语音信号则识别出第一音频信号中含有的第一语言信息和识别出第二音频信号中含有的第二语音信息。
若均为语音信号则通过语音识别,识别出所述第一音频信号和第二音频信号所包含的语音信息。
具体的所述语音识别可以通过语音识别算法将音频信号与数据库中存储的语音特征比对和计算得到。通过将音频信号与数据库中存储的数据进行比对,或者将所述音频信号发送至云端服务器,并获取云端服务器返回的与第一音频信号和第二音频信号相对应的第一语音信息和第二语音信息。
步骤s106、计算出所述第一语音信息和第二语音信息的相似度,并将所述相似度认定为所述第一音频信号和第二音频信号的相似度。
根据识别出的语音信息,进行相似度的计算,可以有以下两种不同的计算方法:
第一种方法如下:
所述计算出所述第一语音信息和第二语音信息的相似度的步骤包括:
对识别出的第一语音信息和第二语音信息中包含字符进行逐一比对;
计算相同字符所占全部字符的比例,将所述比例判定为相似度。
第二种方法如下:
所述计算出所述第一语音信息和第二语音信息的相似度的步骤包括:
将第一语音信息和第二语音信平均分成不同的语音片段;
逐条相对应的语音片段进行其中含有字符的比对,计算每个相对应语音片段的相似度;
对得到的各个语音片段的相似度进行加权计算,得到平均相似度,将所述平均相似度判定为第一语音信息和第二语音信息的相似度。
本发明所提的音频信号检测方法,通过计算音频信号的谱熵来识别是否为语音信号,并当均识别为语音信号后,进行语音识别,从而得到两个音频信号的相似度,由于本发明中仅仅涉及到对音频信号本身属性的计算,不涉及到人工智能的语义分析,仅仅通过语音识别,得到音频信号的相似度,因次为音频信号的检测提供了便利。
本发明中,可以根据音频信号的谱熵来进行音频信号检测,谱熵的计算过程主要涉及时频变换、幅度计算和能量计算等,这些计算过程所针对的都是语音信号本身的属性,而不必进行语义分析这种需要涉及到人工智能和神经网络的计算方式,从而减少了计算量,提高了音频信息检测的效率。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。