一种实时音频信号一致性对比检测方法与流程

文档序号:20154320发布日期:2020-03-24 20:24阅读:882来源:国知局
一种实时音频信号一致性对比检测方法与流程

本发明涉及音频信号分析技术领域,尤其是涉及一种实时音频信号一致性对比检测方法。



背景技术:

广播电台经常会需要对两路音频信号进行对比来检测播放是否正常,其中一路为源信号,另一路为空收或网络等音频信号,记为对比信号。此前的音频信号对比系统在对比分析过程中,当比对信号的信噪比(snr)不高时,会有很高的概率发生误判,使系统的可用性降低。



技术实现要素:

本发明主要是解决现有技术所存在的当对比信号信噪比较低容易发生误判的技术问题,提供一种可以对较低信噪比信号进行对比检测的实时音频信号一致性对比检测方法。

本发明针对上述技术问题主要是通过下述技术方案得以解决的:一种实时音频信号一致性对比检测方法,包括以下步骤:

s01、对源音频信号和对比音频信号进行预处理;

s02、对预处理后的源音频信号和对比音频信号进行指纹提取;

s03、依据提取的指纹计算源音频信号和对比音频信号的一致性;

步骤s02中,提取指纹具体为:

s201、对输入信号做stft(短时傅里叶变换)处理,使用汉宁窗(hann),滑动窗大小为4096,块间重叠50%(overlap=2048),计算psd(功率谱密度),输出频谱数据(离散线性表),公式如下:

式中,x(n)为时间点为n时的输入信号,w(n)为长度为m(4096)的滑动窗窗函数,mr为下一窗口中心时间点,r为步长(4096×50%=2048),j为虚数单位,ω为角频率;

s202、用带通滤波器过滤掉人耳范围之外的波段频率,同时用局部最大值算法找出振幅峰值(幅值>10),生成峰值的频率索引/时间索引对(即此峰值的频率和此峰值所在时间节点)集合,按照时间索引正序排列;

s203、设定n和m的初始值为1;

s204、选取第n个峰值,计算第n个峰值和第n+m个峰值间的时间差,如果时间差大于等于20秒,则进入步骤s205,如果时间差小于20秒,则进入步骤s206;

s205、计算指纹,得到指纹/时间偏移对(即此峰值的指纹和此峰值所在时间节点,所在时间节点也就是相对输入信号初始时间点的偏移量),然后进入步骤s206;

s206、判断m是否大于等于15,如果是则进入步骤s207,如果m小于15则m增大1然后跳转到步骤s204;

s207、判断n是否大于等于峰值总数,如果是进入步骤s208,如果n小于峰值总数则将n增大1并将m置为1然后跳转到步骤s204;

s208、如果输入信号为源信号,则源信号指纹集为每个声道指纹数据间取并集(去除重复项);如果输入信号为对比信号,则对比信号指纹集为每个声道指纹数据的集合(未去除重复项)。

作为优选,所步骤s01中的预处理过程如下:

s101、判断接入信号为数字信号还是模拟信号,如果是数字信号则进入步骤s103,如果是模拟信号则进入步骤s102;

s102、将模拟信号转换为数字信号,输出采样率、位深和声道数为标准值的pcm数据,进入步骤s105;

s103、判断数字信号是否为采样率、位深和声道数为标准值的pcm数据,如果是则进入步骤s105,否则进入步骤s104;

s104、将数字信号转码为采样率、位深和声道数为标准值的pcm数据,进入步骤s105;

s105、预处理过程结束,输出pcm数据。

预处理后的信号均为pcm数据,两路信号具备统一的参数:采样率、位深、声道数。

作为优选,步骤s201中,对输入信号进行stft处理之前,先进行转换,转换公式为:

x(n)=10×lg[x0(n)]

x0(n)为原始的输入信号,x(n)为转换后的信号。

此步骤可以降低计算复杂度。

作为优选,所述步骤s03具体为:

s301、用倒排索引法处理源信号和对比信号的指纹/时间对集合,并取二者交集;

s302、若交集为空,则判定源信号和对比信号不一致;若交集不为空,则计算源信号和对比信号的匹配度,计算公式为:

匹配度=100%×交集按时间偏移点分组的指纹数/源信号指纹数

匹配度越高,则两路信号的一致性越高,匹配度为100%时表示两路信号完全一致。

作为优选,所述步骤s205中,计算指纹具体为:

对第n个峰值的振幅、第n+m个峰值的振幅以及这两个峰值间的时间差作字符串拼接,对拼接结果用sha1(哈希)算法计算特征,取所得特征的前20位作为指纹。

本发明带来的实质性效果是,对较低信噪比信号进行对比检测的实时音频信号一致性对比检测,准确度高,计算量小,速度快。

附图说明

图1是本发明的一种流程图。

具体实施方式

下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。

实施例:本实施例的一种实时音频信号一致性对比检测方法,如图1所示,包括以下步骤:

s01、对源音频信号和对比音频信号进行预处理;

s02、对预处理后的源音频信号和对比音频信号进行指纹提取;

s03、依据提取的指纹计算源音频信号和对比音频信号的一致性。

步骤s01中的预处理过程如下:

s101、判断接入信号为数字信号还是模拟信号,如果是数字信号则进入步骤s103,如果是模拟信号则进入步骤s102;

s102、将模拟信号转换为数字信号,输出采样率、位深和声道数为标准值的pcm数据,进入步骤s105;

s103、判断数字信号是否为采样率、位深和声道数为标准值的pcm数据,如果是则进入步骤s105,否则进入步骤s104;

s104、将数字信号转码为采样率、位深和声道数为标准值的pcm数据,进入步骤s105;

s105、预处理过程结束,输出pcm数据。

预处理后的信号均为pcm数据,两路信号具备统一的参数:采样率、位深、声道数。

步骤s02中,提取指纹具体为:

s201、对输入信号进行转换,转换公式为:

x(n)=10×lg[x0(n)]

x0(n)为原始的输入信号,x(n)为转换后的信号;

对转换后的信号做stft(短时傅里叶变换)处理,使用汉宁窗(hann),滑动窗大小为4096,块间重叠50%(overlap=2048),计算psd(功率谱密度),输出频谱数据(离散线性表),公式如下:

式中,x(n)为时间点为n时的输入信号,w(n)为长度为m(4096)的滑动窗窗函数,mr为下一窗口中心时间点,r为步长(4096×50%=2048),j为虚数单位,ω为角频率;

s202、用带通滤波器过滤掉人耳范围(一般为20hz-20000hz)之外的波段频率,同时用局部最大值算法找出振幅峰值(幅值>10),生成峰值的频率索引/时间索引对(即此峰值的频率和此峰值所在时间节点)集合,按照时间索引正序排列;

s203、设定n和m的初始值为1;

s204、选取第n个峰值,计算第n个峰值和第n+m个峰值间的时间差,如果时间差大于等于20秒,则进入步骤s205,如果时间差小于20秒,则进入步骤s206;

s205、计算指纹,得到指纹/时间偏移对(即此峰值的指纹和此峰值所在时间节点,所在时间节点也就是相对输入信号初始时间点的偏移量),然后进入步骤s206;

s206、判断m是否大于等于15,如果是则进入步骤s207,如果m小于15则m增大1然后跳转到步骤s204;

s207、判断n是否大于等于峰值总数,如果是进入步骤s208,如果n小于峰值总数则将n增大1并将m置为1然后跳转到步骤s204;

s208、如果输入信号为源信号,则源信号指纹集为每个声道指纹数据间取并集(去除重复项);如果输入信号为对比信号,则对比信号指纹集为每个声道指纹数据的集合(未去除重复项)。

步骤s205中,计算指纹具体为:

对第n个峰值的振幅、第n+m个峰值的振幅以及这两个峰值间的时间差作字符串拼接,对拼接结果用sha1(哈希)算法计算特征,取所得特征的前20位作为指纹。

步骤s03具体为:

s301、用倒排索引法处理源信号和对比信号的指纹/时间对集合,并取二者交集;

s302、若交集为空,则判定源信号和对比信号不一致;若交集不为空,则计算源信号和对比信号的匹配度,计算公式为:

匹配度=100%×交集按时间偏移点分组的指纹数/源信号指纹数

匹配度越高,则两路信号的一致性越高,匹配度为100%时表示两路信号完全一致。

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

尽管本文较多地使用了指纹、时间差、交集等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。

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