一种延时估计方法、装置、设备及存储介质与流程

阅读: 评论:0



1.本技术实施例涉及通信技术领域,尤其涉及一种延时估计方法、装置、设备及存储介质。


背景技术:



2.随着通信技术的发展,越来越多应用场景涉及通话过程,在通话过程中,如果麦克风采集到的声音信号除了近端语音信号(通话过程中用户说话产生),还包括远端语音信号,将使得通话过程中受到回声干扰,进而直接影响通话质量。为此,可以通过使用一些声学回声消除以及某些啸叫抑制等应用来消除回声。
3.但是,回声抑制或者啸叫抑制算法要成功运行的前提是要对回声延时进行准确估计,然而,传统的延迟估计技术通常是通过将参考点(例如扬声器)和接收点(如麦克风)处信号能量量化为二进制序列,以获取到分频带的能量二元量化值,并基于分频带的能量二元量化值作为特征进行延时确定。传统的延迟估计技术虽然降低了延时估计的计算量,但是,由于信号能量的稳定性较差,容易出现波动,从而导致延时估计的准确率降低。


技术实现要素:



4.本技术实施例提供了一种延时估计方法、装置、设备及存储介质,用于通过组合使用两个计算速率不同即可靠性不同的第一延时估计算法和第二延时估计算法,来计算出的第一延时和第二延时,以增强延时估计的稳定性和可靠性,进而能够结合延时估计组合逻辑,来进一步从第一延时、第二延时以及历史延时中确定出目标延时,从而能够提高延时估计的准确率。
5.本技术实施例一方面提供了一种延时估计方法,包括:
6.获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;
7.基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时;
8.基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,其中,计算第二延时的时长大于计算第一延时的时长;
9.若第一延时以及第二延时均为非空有效数值,则将第二延时作为候选延时;
10.基于候选延时与上一时刻的历史延时,确定目标延时。
11.本技术另一方面提供了一种延时估计装置,包括:
12.获取单元,用于获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;
13.获取单元,还用于基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时;
14.获取单元,还用于基于第二延时估计算法,对参考点信号以及接收点信号进行延
时计算,获取第二延时,其中,计算第二延时的时长大于计算第一延时的时长;
15.处理单元,用于若第一延时以及第二延时均为非空有效数值,则将第二延时作为候选延时;
16.确定单元,用于基于候选延时与上一时刻的历史延时,确定目标延时。
17.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,
18.处理单元,还用于若第一延时为非空有效数值且第二延时为空数值或无效数值,则将第一延时作为候选延时。
19.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,确定单元具体可以用于:
20.计算候选延时与第一时间阈值之间的第一差值;
21.若候选延时大于或等于第一时间阈值,则将第一差值作为中间候选延时;
22.若历史延时为非空有效数值,则基于历史延时以及中间候选延时,确定目标延时;
23.若历史延时为空数值或无效数值,则将中间候选延时作为目标延时。
24.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,确定单元具体可以用于:
25.计算历史延时以及中间候选延时之间的差值绝对值;
26.若差值绝对值小于或等于第一时间阈值,则将历史延时作为目标延时;
27.若差值绝对值大于第一时间阈值,则将历史延时与中间候选延时进行对比,得到比对结果;
28.根据比对结果,确定目标延时。
29.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,确定单元具体可以用于:
30.若比对结果为历史延时大于中间候选延时,则计算中间候选延时与第二时间阈值的和值;
31.将和值作为目标延时;
32.若比对结果为历史延时小于中间候选延时,则将中间候选延时作为目标延时。
33.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
34.对参考点信号进行下采样处理,得到第一参考点采样信号;
35.对第一参考点采样信号进行特征提取,得到参考音频特征;
36.将参考音频特征作为历史音频特征,存储至历史特征存储器中,其中,历史特征存储器用于存储k个历史音频特征,k为大于1的整数;
37.对接收点信号进行下采样处理,得到第一接收点采样信号;
38.对第一接收点采样信号进行特征提取,得到接收音频特征;
39.将接收音频特征分别与历史特征存储器中的k个历史音频特征进行匹配,得到k个匹配得分,其中,一个匹配得分对应一个历史音频特征;
40.基于k个匹配得分,确定第一延时。
41.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
42.按照历史音频特征在历史特征存储器中的存储位置,将k个匹配得分对应存储至匹配结果存储器;
43.分别对k个匹配得分进行平滑统计,得到k个平滑得分;
44.按照k个匹配得分在匹配结果存储器中的存储位置,将k个平滑得分存储至匹配结果平滑存储器中;
45.基于k个平滑得分以及k个平滑得分在匹配结果平滑存储器中的位置,确定第一延时。
46.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
47.从k个平滑得分中选取数值最小的第一平滑得分和第二平滑得分;
48.计算第一平滑得分和第二平滑得分之间的第二差值;
49.若第二差值大于或等于得分阈值,则基于第一平滑得分确定第一延时;
50.若第二差值小于得分阈值,则将第一延时设置为空数值或无效数值。
51.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
52.获取当前时刻和上一时刻的时间间隔;
53.获取第一平滑得分与匹配结果平滑存储器中的最后一个平滑得分的位置间隔;
54.基于位置间隔和时间间隔计算第一延时。
55.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
56.对参考点信号进行下采样处理,得到第二参考点采样信号;
57.对接收点信号进行下采样处理,得到第二接收点采样信号;
58.对第二参考点采样信号以及第二接收点采样信号进行滤波处理,得到滤波器系数的幅度值分布;
59.基于滤波器系数的幅度值分布,确定第二延时。
60.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
61.获取滤波器系数的幅度值分布中的最大幅度值对应的分布位置;
62.基于分布位置确定第二延时。
63.在一种可能的设计中,本技术实施例另一方面的一种实现方式中,获取单元具体可以用于:
64.计算滤波器系数的幅度值分布中的最新幅度值与最大幅度值之间的所有幅度值的平均值;
65.计算最大幅度值与平均值之间的第三差值;
66.若第三差值大于幅度阈值,则基于分布位置以及下采样率计算第二延时;
67.若第三差值小于幅度阈值,则将第二延时设置为空数值或无效数值。
68.本技术另一方面提供了一种计算机设备,包括:存储器、处理器以及总线系统;
69.其中,存储器用于存储程序;
70.处理器用于执行存储器中的程序时实现如上述各方面的方法;
71.总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
72.本技术的另一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
73.从以上技术方案可以看出,本技术实施例具有以下有益效果:
74.通过获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号,基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,以获取到第一延时,并基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,以获取到计算时长大于第一延时的第二延时,当第一延时以及第二延时均为非空有效数值时,将第二延时作为候选延时,并基于候选延时与上一时刻的历史延时,确定目标延时。通过上述方式,能够通过组合使用两个计算速率不同且可靠性不同的第一延时估计算法和第二延时估计算法,来计算出的第一延时和第二延时,以增强延时估计的稳定性和可靠性,进而能够结合延时估计组合逻辑,来进一步从第一延时、第二延时以及历史延时中确定出目标延时,从而能够提高延时估计的准确率。
附图说明
75.图1是本技术实施例中延时数据控制系统的一个架构示意图;
76.图2是本技术实施例中延时估计方法的一个实施例流程图;
77.图3是本技术实施例中延时估计方法的另一个实施例流程图;
78.图4是本技术实施例中延时估计方法的另一个实施例流程图;
79.图5是本技术实施例中延时估计方法的另一个实施例流程图;
80.图6是本技术实施例中延时估计方法的另一个实施例流程图;
81.图7是本技术实施例中延时估计方法的另一个实施例流程图;
82.图8是本技术实施例中延时估计方法的另一个实施例流程图;
83.图9是本技术实施例中延时估计方法的另一个实施例流程图;
84.图10是本技术实施例中延时估计方法的另一个实施例流程图;
85.图11是本技术实施例中延时估计方法的另一个实施例流程图;
86.图12是本技术实施例中延时估计方法的另一个实施例流程图;
87.图13是本技术实施例中延时估计方法的另一个实施例流程图;
88.图14是本技术实施例中延时估计方法的一个原理流程图示意图;
89.图15是本技术实施例中延时估计方法的一个回声消除的原理流程示意图;
90.图16是本技术实施例中延时估计方法的一个延时估计组合逻辑的原理流程示意图;
91.图17是本技术实施例中延时估计方法的一个第一延时估计算法的原理流程示意图;
92.图18是本技术实施例中延时估计方法的一个历史特征匹配模块示意图;
93.图19是本技术实施例中延时估计方法的一个匹配结果存储器示意图;
94.图20是本技术实施例中延时估计方法的一个匹配结果平滑存储器示意图;
95.图21是本技术实施例中延时估计方法的一个第二延时估计算法的原理流程示意图;
96.图22是本技术实施例中延时估计方法的一个幅度值分布示意图;
97.图23是本技术实施例中延时估计装置的一个实施例示意图;
98.图24是本技术实施例中计算机设备的一个实施例示意图。
具体实施方式
99.本技术实施例提供了一种延时估计方法、装置、设备及存储介质,用于通过组合使用两个计算速率不同即可靠性不同的第一延时估计算法和第二延时估计算法,来计算出的第一延时和第二延时,以增强延时估计的稳定性和可靠性,进而能够结合延时估计组合逻辑,来进一步从第一延时、第二延时以及历史延时中确定出目标延时,从而能够提高延时估计的准确率。
100.本技术的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
101.可以理解的是,在本技术的具体实施方式中,涉及到延时估计、参考点信号以及接收点信号等相关的数据,当本技术以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
102.可以理解的是,如本技术所公开的延时估计方法,具体涉及智能车路协同系统(intelligent vehicle infrastructure cooperative systems,ivics),下面进一步地对智能车路协同系统进行介绍。智能车路协同系统简称车路协同系统,是智能交通系统(its)的一个发展方向。车路协同系统是采用先进的无线通信和新一代互联网等技术,全方位实施车车、车路动态实时信息交互,并在全时空动态交通信息采集与融合的基础上开展车辆主动安全控制和道路协同管理,充分实现人车路的有效协同,保证交通安全,提高通行效率,从而形成的安全、高效和环保的道路交通系统。
103.可以理解的是,如本技术所公开的延时估计方法,还涉及人工智能(artificial intelligence,ai)技术,下面进一步地对人工智能技术进行介绍。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
104.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
105.其次,自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
106.其次,机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
107.随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
108.应理解的是,本技术提供的延时估计方法可应用于各种场景,包括但不限于人工智能、地图、智慧交通、云技术等,用于通过延时估计完成回声消除或回声抑制等,以应用于如智能语音通信、电话通信、视频通信、智能语音交互、智能地图导航等场景。
109.为了解决上述问题,本技术提出了一种延时估计方法,该方法应用于图1所示的延时数据控制系统,请参阅图1,图1为本技术实施例中延时数据控制系统的一个架构示意图,如图1所示,服务器通过获取与终端设备提供的获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号,基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,以获取到第一延时,并基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,以获取到计算时长大于第一延时的第二延时,当第一延时以及第二延时均为非空有效数值时,将第二延时作为候选延时,并基于候选延时与上一时刻的历史延时,确定目标延时。通过上述方式,能够通过组合使用两个计算速率不同且可靠性不同的第一延时估计算法和第二延时估计算法,来计算出的第一延时和第二延时,以增强延时估计的稳定性和可靠性,进而能够结合延时估计组合逻辑,来进一步从第一延时、第二延时以及历史延时中确定出目标延时,从而能够提高延时估计的准确率。
110.可以理解的是,图1中仅示出了一种终端设备,在实际场景中可以由更多种类的终端设备参与到数据处理的过程中,终端设备包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等,具体数量和种类因实际场景而定,具体此处不做限定。另外,图1中示出了一个服务器,但在实际场景中,也可以有多个服务器的参与,特别是在多模型训练交互的场景中,服务器的数量因实际场景而定,具体此处不做限定。
111.需要注意的是,本实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端
设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,终端设备以及服务器可以连接组成区块链网络,本技术在此不做限制。
112.结合上述介绍,下面将对本技术中延时估计方法进行介绍,请参阅图2,本技术实施例中延时估计方法一个实施例包括:
113.在步骤s101中,获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;
114.可以理解的是,由于通话过程中产生的各类信号均属于音频信号,因此,为了便于区分,本实施例可以将声音播放装置(如扬声器或喇叭等)输出的音频信号定义为参考点信号(或远端语音信号),将收音装置(如麦克风等)采集得到的音频信号定义为接收点信号(或声音信号),该接收点信号不仅包含了与实际通话内容相关的音频信号,例如,语音通话时由目标对象直接说的,还可能包含远端语音信号或者其他噪声等等。
115.其中,在通话过程中,接收点信号将在通话双方所在客户端之间传输,如果接收点信号包含有参考点信号,则可能使得通话过程中受到回声干扰而影响通话质量。因此,为了避免通话过程中受到回声干扰,需要对接收点信号实施回声消除技术,以此消除接收点信号中的回声成分,即参考点信号。
116.例如,如图15所示,以声学回声消除为例,音频信号在送到声音播放装置(如扬声器或喇叭等)播放之前需要经过位置a,在位置a(参考点)的音频信号一般称为参考点信号。参考点信号经过软硬件播放逻辑送到声音播放装置(如扬声器或喇叭等)播放,经过空气等介质传播进入到收音装置(如麦克风等)之后,经过软硬件采集逻辑到达位置b,位置b(接收点)的信号,可以称之为接收点信号。信号从参考点传输到声音播放装置(如扬声器或喇叭等)经过的时间称为软硬件播放延时,从喇叭经过空气等传输介质达到麦克风经过的延时称为声学路径延时,从收音装置(如麦克风等)经过软硬件采集逻辑到达接收点的延时称为软硬件采集延时。
117.例如,当目标对象x和目标对象y进行语音通话时,首先产生目标对象x说话内容对应的音频信号,即近端语音信号c0,目标对象x所在客户端通过麦克风x1进行声音信号的采集,得到包含有该近端语音信号c0的接收点信号,并输出至目标对象y所在客户端。
118.对于目标对象y而言,其所在客户端接收到该声音信号,并通过扬声器y1输出形成参考点信号c1,当目标对象y收听到该参考点信号c1,将相应地产生与目标对象y说话内容对应的音频信号,即近端语音信号c2,进而由麦克风y2采集得到包含有近端语音信号c2的接收点信号,并输出至目标对象x所在客户端。
119.在上述通话过程中,可以理解的是,参考点信号c1实际上是由目标对象x说话内容所产生的近端语音信号c0输出形成的,如果麦克风y2采集的接收点信号除了近端语音信号c2,还包括参考点信号c1,当接收点信号被输出至目标对象x所在客户端,则会让目标对象x觉得自己说过的话(即近端语音信号c0)又回来了,即通话过程中产生了回声。
120.由此,为了后续消除声音信号中的回声成分(即参考点信号),将首先通过收音装置(如麦克风)进行对当前时刻的接收点信号的采集,并获取声音播放装置(如扬声器)输出的当前时刻的参考点信号。
121.在步骤s102中,基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时;
122.在本实施例中,如图14所示,通过组合使用两个计算速率不同即可靠性不同的第一延时估计算法(如图14所示意的延时估计算法1)和第二延时估计算法(如图14所示意的延时估计算法2),在获取到参考点信号以及接收点信号之后,可以将参考点信号以及接收点信号同时输入至第一延时估计算法和第二延时估计算法,以分别计算得到第一延时(如图14所示意的tde1)以及第一延时(如图14所示意的tde2)。
123.需要说明的是,第一延时估计算法以及第二延时估计算法可以是基于滤波器系数、音频指纹、特征谱相关性计算等算法。可以理解的是,第二延时估计算法的可靠性大于第一延时估计算法的可靠性,具体可以表现为第二延时估计算法计算第二延时的时长大于第一延时估计算法计算第一延时的时长,以及第二延时估计算法计算第二延时的准确率大于第一延时估计算法计算第一延时的准确率等。
124.可以理解的是,第一延时估计算法可以采用如图17所示的算法框架,还可以基于不同于第二延时估计算法的其他延时估计算法,并采用如图21所示的算法框架,或是采用其他算法,此处不作具体限制。
125.具体地,如图17所示,基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时,具体可以是先通过如图17上边所示意的下采样模块,对参考点信号进行下采样处理,以获取到第一参考点采样信号,再通过如图17上边所示意的特征提取模块,对第一参考点采样信号进行特征提取,以获取到参考音频特征,然后,可以通过如图17所示意的历史特征存储器将参考音频特征作为历史音频特征,存储至历史特征存储器中。
126.同时,可以如图17下边所示意的下采样模块对接收点信号进行下采样处理,得到第一接收点采样信号,再通过如图17下边所示意的特征提取模块,对第一接收点采样信号进行特征提取,得到接收音频特征,然后,通过如图17所示意的历史特征匹配模块,将接收音频特征分别与历史特征存储器中的k个历史音频特征进行匹配,以获取到k个匹配得分,并基于k个匹配得分,确定第一延时。
127.在步骤s103中,基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,其中,计算第二延时的时长大于计算第一延时的时长;
128.在本实施例中,如图14所示,通过组合使用两个计算速率不同即可靠性不同的第一延时估计算法(如图14所示意的延时估计算法1)和第二延时估计算法(如图14所示意的延时估计算法2),在获取到参考点信号以及接收点信号之后,可以将参考点信号以及接收点信号同时输入至第一延时估计算法和第二延时估计算法,以分别计算得到第一延时(如图14所示意的tde1)以及第一延时(如图14所示意的tde2)。
129.具体地,如图21所示,基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,具体可以是通过如图21上边所示意的下采样模块,对参考点信号进行下采样处理,以获取到第二参考点采样信号,同时,通过如图21下边所示意的下采样模块,对接收点信号进行下采样处理,以获取到第二接收点采样信号,然后,可以通过如图21所示意的自适应系统辨识滤波器,对第二参考点采样信号以及第二接收点采样信号进行滤波处理,以获取到滤波器系数的幅度值分布,并基于滤波器系数的幅度值分布,确定第二延时,可以理解的是,对第二参考点采样信号以及第二接收点采样信号进行滤波处理不仅可以使用如图21所示意的自适应系统辨识滤波器,还可以使用其他滤波器,或者,音频指纹、
特征谱相关性计算等算法,此处不作具体限制。
130.在步骤s104中,若第一延时以及第二延时均为非空有效数值,则将第二延时作为候选延时;
131.在本实施例中,如图14所示,通过组合使用两个计算速率不同即可靠性不同的第一延时估计算法(如图14所示意的延时估计算法1)和第二延时估计算法(如图14所示意的延时估计算法2),在获取到参考点信号以及接收点信号之后,可以将参考点信号以及接收点信号同时输入至第一延时估计算法和第二延时估计算法,以分别计算得到第一延时(如图14所示意的tde1)以及第一延时(如图14所示意的tde2),并将第一延时(如图14所示意的tde1)以及第一延时(如图14所示意的tde2)输入至如图14所示意的延时估计组合逻辑中进行延时确定。
132.具体地,如图16所示,基于延时估计组合逻辑,判断第一延时以及第二延时之间的优先级,假设第二延时估计算法的可靠性高于第一延时估计算法,但是第一延时估计算法能够较快的计算出一个有效的tde1值即第一延时,可以理解为,第二延时估计算法还未计算出有效的第二延时,即第二延时为空数值或无效数值,则可以先默认采用tde1值即第一延时,作为候选延时,如图16从上至下所示意的第一个目标框“newdelay=tde1”,即将newdelay采用tde1,能够通过快速获取一个有效延时,以帮助后续及时进行回声消除或回声抑制的操作,减少回声对语音通话的干扰。
133.进一步地,当第二延时估计算法能够较准确地计算出一个有效的tde2值即第二延时,可以理解为第一延时以及第二延时均为非空有效数值,则可以将第二延时作为候选延时,如图16从上至下所示意的第二个目标框“如果tde2为有效值,则newdelay=tde2”,即将newdelay采用tde2,能够基于第二延时估计算法的可靠性高于第一延迟估计算法,使得当第一延时估计算法计算得到的第一延时tde1,无论为非空有效数值,还是为空数值或无效数值时,只要第二延迟估计算法计算得到第二延时tde2,当前newdelay都会被赋值为tde2,以维持延时估计的准确性。
134.在步骤s105中,基于候选延时与上一时刻的历史延时,确定目标延时。
135.具体地,在获取到候选延时之后,如图16从上至下所示意的第三个目标框“如果newdelay》=t1 ms,则newdelay=newdelay-t1”,即当候选延时newdelay大于等于t1毫秒即第一时间阈值,例如大于等于20ms的时候,可以将newdelay减少t1,即计算候选延时与第一时间阈值之间的第一差值。这是因为一般情况下图15所示意的回声消除模块,宁愿过小的估计延迟,也不愿过高的估计延迟,一旦过高的估计延迟,则回声不能被消除掉,因此,在本实施例中可以通过减少估计的延时的方式,以便对估计偏差留一些余量,来作为中间候选延时,从而更好地估计到一个更恰当的延时,以在一定程度上维持延时估计的准确性。
136.进一步地,如图16从上至下所示意的第一个菱形目标框“olddelay有效?”,可以用于判断之前的延迟估计是否已经存在有效值,可以理解为,当历史延时为空数值或无效数值,即olddelay为无效,表示之前还没有一个有效的延时估计,则如图16所示意的第一个菱形目标框左侧的第一个目标方框“输出tde即为newdelay,olddelay=tde”,即可以将中间候选延时newdelay作为最终的估计值tde即目标延时输出,并使用目标延时更新历史延时olddelay,能够在之前还没有一个有效的延时估计的情形下,及时将当前获取到的中间候选延时作为目标延时,以帮助后续及时基于目标延时进行回声消除或回声抑制的操作,从
而减少回声对语音通话的干扰。反之,当历史延时为非空有效数值时,可以理解为,olddelay已存在有效值,基于历史延时以及中间候选延时,进一步确定目标延时。
137.进一步地,在获取到目标延时之后,可以使用目标延时对声音播放装置(如扬声器或喇叭等)输出的参考点信号进行延迟,以使经过延迟的参考点信号和收音装置(如麦克风等)采集的接收点对齐,进而将相互对齐的接收点信号和参考点信号相互抵消,从而实现声音信号中回声成分的消除。待回声消除处理完成,便可将消除了回声成分的声音信号输出,即传输至对方用户所在客户端,由此避免了通话过程中的回声干扰。
138.例如,由于如图15所示意的延时估计模块的作用是通过对比参考点信号和接收点信号,估计出信号从参考点到接收点之间的延时,即确定目标延时,因此,在获取到目标延时之后,可以计算目标延时tde与真实的延时td之间的误差是否在一个可接受范围,例如,80毫秒以内。
139.进一步地,可以通过如图15所示意的延时对齐模块,利用延时估计模块计算得到的目标延时tde,将参考点信号x经过延时之后的信号x_align送入如图15所示意的回声消除模块,然后,如图15所示意的回声消除模块可以利用接收点信号d以及在时间上对齐之后的参考点信号x_align进行回声消除。
140.在本技术实施例中,提供了一种延时估计方法,通过上述方式,能够通过组合使用两个计算速率不同且可靠性不同的第一延时估计算法和第二延时估计算法,来计算出的第一延时和第二延时,以增强延时估计的稳定性和可靠性,进而能够结合延时估计组合逻辑,来进一步从第一延时、第二延时以及历史延时中确定出目标延时,从而能够提高延时估计的准确率。
141.可选地,在上述图2对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图3所示,在步骤s105基于候选延时与上一时刻的历史延时,确定目标延时之前,该方法还包括:
142.在步骤s301中,若第一延时为非空有效数值且第二延时为空数值或无效数值,则将第一延时作为候选延时。
143.具体地,如图16所示,基于延时估计组合逻辑,判断第一延时以及第二延时之间的优先级,假设第二延时估计算法的可靠性高于第一延时估计算法,但是第一延时估计算法能够较快的计算出一个有效的tde1值即第一延时,可以理解为,第二延时估计算法还未计算出有效的第二延时,即第二延时为空数值或无效数值,则可以先默认采用tde1值即第一延时,作为候选延时,如图16从上至下所示意的第一个目标框“newdelay=tde1”,即将newdelay采用tde1,能够通过快速获取一个有效延时,以帮助后续及时进行回声消除或回声抑制的操作,减少回声对语音通话的干扰。
144.可选地,在上述图2或图3对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图4所示,步骤s105基于候选延时与上一时刻的历史延时,确定目标延时,包括:
145.在步骤s401中,计算候选延时与第一时间阈值之间的第一差值;
146.在步骤s402中,若候选延时大于或等于第一时间阈值,则将第一差值作为中间候选延时;
147.在步骤s403中,若历史延时为非空有效数值,则基于历史延时以及中间候选延时,
确定目标延时;
148.在步骤s404中,若历史延时为空数值或无效数值,则将中间候选延时作为目标延时。
149.具体地,在获取到候选延时之后,如图16从上至下所示意的第三个目标框“如果newdelay》=t1 ms,则newdelay=newdelay-t1”,即当候选延时newdelay大于等于t1毫秒即第一时间阈值,例如大于等于20ms的时候,可以将newdelay减少t1,即计算候选延时与第一时间阈值之间的第一差值。这是因为一般情况下图15所示意的回声消除模块,宁愿过小的估计延迟,也不愿过高的估计延迟,一旦过高的估计延迟,则回声不能被消除掉,因此,在本实施例中可以通过减少估计的延时的方式,以便对估计偏差留一些余量,来作为中间候选延时,从而更好地估计到一个更恰当的延时,以在一定程度上维持延时估计的准确性。
150.如图16从上至下所示意的第一个菱形目标框“olddelay有效?”,可以用于判断之前的延迟估计是否已经存在有效值,可以理解为,当历史延时为空数值或无效数值,即olddelay为无效,表示之前还没有一个有效的延时估计,则如图16所示意的第一个菱形目标框左侧的第一个目标方框“输出tde即为newdelay,olddelay=tde”,即可以将中间候选延时newdelay作为最终的估计值tde即目标延时输出,并使用目标延时更新历史延时olddelay,能够在之前还没有一个有效的延时估计的情形下,及时将当前获取到的中间候选延时作为目标延时,以帮助后续及时基于目标延时进行回声消除或回声抑制的操作,从而减少回声对语音通话的干扰。
151.反之,如图16所示,当历史延时为非空有效数值时,可以理解为,olddelay已存在有效值,则可以基于历史延时以及中间候选延时,采用如图16所示意的第一个菱形目标框右侧的第一个目标方框“delaydiff=abs(olddelay-newdelay)”中的公式,计算历史延时以及中间候选延时之间的差值绝对值delaydiff,可以用于确定基于差值绝对值delaydiff来更好地确定中间候选延时与历史延时之间的延时值差距,且该差距是否处于回声消除滤波器可以容忍的范围内,从而进一确定是否需要对当前的newdelay进行变更,以维护延时估计的稳定性。
152.进一步地,基于如图16从上至下所示意的第二个菱形目标框“delaydiff》t1 ms?”,可以用于判断该差值绝对值delaydiff是否大于t1毫秒即第一时间阈值,当差值绝对值小于或等于第一时间阈值时,可用于表示中间候选延时与历史延时之间的延时值差距不大,处于回声消除滤波器可以容忍的范围内,因此,为了减少更改延时输出的次数(估计算法常常会有小的估计偏差,每一次更改可能导致短时间的回声消除不干净),减少估计偏差,从而维护延时估计的稳定性以及准确性,基于如图16从上至下所示意的第二个菱形目标框左侧连接的目标框中“继续输出tde等于olddelay”,可以理解为,本实施例继续将历史延时作为目标延时,保持输出tde等于前一次的历史延时的估计值olddelay。反之,当差值绝对值大于第一时间阈值时,例如,大于40ms,基于如图16从上至下所示意的第二个菱形目标框右侧连接的目标框中“olddelay》newdelay?”,用于进一步判断将历史延时与中间候选延时之间的大小,并根据判断结果,进一步确定目标延时。
153.可选地,在上述图4对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图5所示,步骤s403基于历史延时以及中间候选延时,确定目标延时,包括:
154.在步骤s501中,计算历史延时以及中间候选延时之间的差值绝对值;
155.在步骤s502中,若差值绝对值小于或等于第一时间阈值,则将历史延时作为目标延时;
156.在步骤s503中,若差值绝对值大于第一时间阈值,则将历史延时与中间候选延时进行对比,得到比对结果;
157.在步骤s504中,根据比对结果,确定目标延时。
158.具体地,如图16所示,当历史延时为非空有效数值时,可以理解为,olddelay已存在有效值,则可以基于历史延时以及中间候选延时,采用如图16所示意的第一个菱形目标框右侧的第一个目标方框“delaydiff=abs(olddelay-newdelay)”中的公式,计算历史延时以及中间候选延时之间的差值绝对值delaydiff,可以用于确定基于差值绝对值delaydiff来更好地确定中间候选延时与历史延时之间的延时值差距,且该差距是否处于回声消除滤波器可以容忍的范围内,从而进一确定是否需要对当前的newdelay进行变更,以维护延时估计的稳定性。
159.进一步地,基于如图16从上至下所示意的第二个菱形目标框“delaydiff》t1 ms?”,可以用于判断该差值绝对值delaydiff是否大于t1毫秒即第一时间阈值,当差值绝对值小于或等于第一时间阈值时,可用于表示中间候选延时与历史延时之间的延时值差距不大,处于回声消除滤波器可以容忍的范围内,因此,为了减少更改延时输出的次数(估计算法常常会有小的估计偏差,每一次更改可能导致短时间的回声消除不干净),减少估计偏差,从而维护延时估计的稳定性以及准确性,基于如图16从上至下所示意的第二个菱形目标框左侧连接的目标框中“继续输出tde等于olddelay”,可以理解为,本实施例继续将历史延时作为目标延时,保持输出tde等于前一次的历史延时的估计值olddelay。反之,当差值绝对值大于第一时间阈值时,例如,大于40ms,基于如图16从上至下所示意的第三个菱形目标框“olddelay》newdelay?”,用于进一步判断将历史延时与中间候选延时之间的大小,即进一步确定历史延时是否大于中间候选延时,具体可以是将历史延时与中间候选延时进行对比,如图16从上至下所示意的第三个菱形目标框左侧连接的目标框“输出tde即为newdelay,olddelay=tde”,可以理解为,如果比对结果为历史延时大于中间候选延时,即中间候选延时newdelay更小,则最后的输出的目标延时可以采用公式:tde=newdelay+t2,计算历史延时与中间候选延时之间的一个中间值,从而更好地估计到一个更恰当的延时,以在一定程度上维持延时估计的准确性。
160.反之,如果比对结果为历史延时大于中间候选延时,则将中间候选延时作为目标延时即输出目标延时tde等于中间候选延时newdelay。最后,将最新的得到目标tde存储到olddelay以供下一次判断使用。
161.可选地,在上述图5对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图6所示,步骤s504根据比对结果,确定目标延时,包括:
162.在步骤s601中,若比对结果为历史延时大于中间候选延时,则计算中间候选延时与第二时间阈值的和值;
163.在步骤s602中,将和值作为目标延时;
164.在步骤s603中,若比对结果为历史延时小于中间候选延时,则将中间候选延时作为目标延时。
165.具体地,如图16所示,当差值绝对值大于第一时间阈值时,例如,大于40ms,基于如图16从上至下所示意的第二个菱形目标框右侧连接的目标框中“olddelay》newdelay?”,用于进一步判断将历史延时是否大于中间候选延时,具体可以是将历史延时与中间候选延时进行对比,如图16从上至下所示意的第三个菱形目标框左侧连接的目标框“输出tde即为newdelay,olddelay=tde”,可以理解为,如果比对结果为历史延时大于中间候选延时,即中间候选延时newdelay更小,如图16从上至下所示意的第三个菱形目标框右侧连接的目标框“输出tde即为newdelay+t2,olddelay=tde”,可以理解为,最后的输出的目标延时可以采用公式:tde=newdelay+t2,计算中间候选延时与第二时间阈值t2之间的和值,即计算历史延时与中间候选延时之间的一个中间值,从而更好地估计到一个更恰当的延时,以在一定程度上维持延时估计的准确性。
166.其中,第二时间阈值t2小于第一时间阈值t1,例如,第二时间阈值t2等于10ms,当在两个延时估计算法的输出第一延时tde1与第二延时tde2之间切换的时候,新获取到的目标延时tde介于tde1和tde2之间,并且有可能目标延时tde与第一延时tde1,以及目标延时tde与第二延时tde2的差值的绝对值都小于第一时间阈值t1,这样的话可以减少目标时延tde的更新次数,维持延时估计的稳定性和准确性,进而能够帮助后续及时进行回声消除或回声抑制的操作,减少回声对语音通话的干扰,减少漏回声的几率。
167.进一步地,如果比对结果为历史延时大于中间候选延时,则将中间候选延时作为目标延时即输出目标延时tde等于中间候选延时newdelay。最后,将最新的得到目标tde存储到olddelay以供下一次判断使用。
168.可选地,在上述图2对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图7所示,步骤s102基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时,包括:
169.在步骤s701中,对参考点信号进行下采样处理,得到第一参考点采样信号;
170.在步骤s702中,对第一参考点采样信号进行特征提取,得到参考音频特征;
171.在步骤s703中,将参考音频特征作为历史音频特征,存储至历史特征存储器中,其中,历史特征存储器用于存储k个历史音频特征,k为大于1的整数;
172.在步骤s704中,对接收点信号进行下采样处理,得到第一接收点采样信号;
173.在步骤s705中,对第一接收点采样信号进行特征提取,得到接收音频特征;
174.在步骤s706中,将接收音频特征分别与历史特征存储器中的k个历史音频特征进行匹配,得到k个匹配得分,其中,一个匹配得分对应一个历史音频特征;
175.在步骤s707中,基于k个匹配得分,确定第一延时。
176.可以理解的是,由于参考点信号和接收点信号均为数字语音帧,通常是每一帧为8ms,也可以是10ms、16ms或20ms等,在此不做限定。其中,相邻两帧可以有重叠的部分,比如,如果是8ms一帧且有50%重叠的话,即每4ms得到一个8ms的语音帧,第一帧就是从0~8ms的语音样本,第二帧是4~12ms,第三帧是8~16ms,以此类推。
177.需要说明的是,在一般语音通讯中,参考点和接收点的数字语音信号通常采样率为16khz或者32khz等,以32khz为例,可以根据奈奎斯特采样定理,使用32khz采样率采集到的语音的有效带宽为16khz。又由于提取音频指纹所需要的语音带宽不需要那么高,因为在实际语音通讯系统中,能够比较有效表征语音的频率范围在300hz~2khz左右,所以所需实
际带宽只要略大于2khz即可。
178.因此,为了减少计算量,本实施例采用如图17所示意的下采样模块将参考点信号或者接收点信号的高采样率的语音帧下采样到5khz左右,其中,5khz采样率对应的有效音频带宽为2.5khz。
179.进一步地,可以采用如图17所示意的特征提取模块,负责提取代表语音特点的音频特征。参考点信号提取的参考音频特征会被存储到如图17所示意的历史特征存储器。如图18所示,参考点信号的语音帧经过特征提取之后每一帧的特征值f(n)存放到历史特征存储器的尾部(tail)。
180.其中,历史特征存储器预设最大存储数量用于存储k个历史音频特征,例如,最大存储75帧的特征,即k=75。如果当前时刻的历史特征存储器中存储的特征是f(23),f(24),

,f(97)共75帧,那么下一时刻新提取的特征f(98)被放入到历史特征存储器的尾部,则历史特征存储器中存储的特征更新为f(24),f(25),

,f(98)。
181.例如,如图18所示,在参考点得到的某一帧语音信号q,经过传输延时td之后,到达接收点得到语音帧信号q’,由于经过传输信道的失真以及噪声等影响,q和q’是不同的但是相近的信号。然后,通过接收点的信号帧q’提取得到特征f,假设在参考点的语音帧q是第80帧,因此提取特征得到的特征为f(80),在经过传输延时td之后,参考点新获取到比如31帧语音帧,并将计算得到31个特征向量依次放入历史特征存储器。所以当接收点得到语音帧q’的特征f的时候,如图18所示意的历史特征存储器中又新增加了从f(81)到f(111)的31个特征。假设历史特征存储器最大存储为75帧特征时,则目前历史特征存储器中的特征为f(37)到f(111)。
182.进一步地,使用如图17所示意的历史特征匹配模块将来自接收点的当前时刻的接收音频特征与来自参考点的k个历史音频特征依次进行匹配,以获取到与各个历史音频特征的匹配得分。然后,通过如图17所示意的延时确定策略模块对k个匹配得分进行平滑统计并存放在匹配结果平滑存储器中,进而根据最匹配的特征在匹配结果平滑存储器中的位置来确定第一延时。
183.可以理解的是,如图17所示意的特征提取模块所提取的音频特征可以是某一种音频能量变化指标,例如,判断语音帧的某个频带的能量是否比前一帧增加超过3db(也可以是其他值),例如,对于频带8,如果前一帧该频带的能量表示为epre db,当前帧该频带的能量表示为ecur db,如果满足ecur-epre》3,则该频带特征标记为1,否则为0。如果总共需要比较32个频带,则可以将每个频带的0或者1值存储到一个32位整数的其中一位,因此,每一帧所提取的特征值正好是一个32位整数。
184.可选地,在上述图7对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图8所示,步骤s707基于k个匹配得分,确定第一延时,包括:
185.在步骤s801中,按照历史音频特征在历史特征存储器中的存储位置,将k个匹配得分对应存储至匹配结果存储器;
186.在步骤s802中,分别对k个匹配得分进行平滑统计,得到k个平滑得分;
187.在步骤s803中,按照k个匹配得分在匹配结果存储器中的存储位置,将k个平滑得分存储至匹配结果平滑存储器中;
188.在步骤s804中,基于k个平滑得分以及k个平滑得分在匹配结果平滑存储器中的位
置,确定第一延时。
189.具体地,继续沿用上述接收点的信号帧q’提取得到特征f以及历史特征存储器最大存储的75帧特征的示例,可以如图17所示意的历史特征匹配模块将特征f分别与这个75个特征进行匹配,其中,采用的匹配算法可以是进行异或运算,也可以是其他匹配算法如正则表达式,此处不作具体限制,可以获取到75个匹配得分,例如,s(1),s(2),

,s(75)。可以理解的是,如果采用的匹配算法为异或运算,则有两个特征越相似,则得分越低。
190.进一步,可以将经过如图17所示意的历史特征匹配模块计算得到的k个匹配得分存放在如图19所示意的匹配结果存储器中,即s(1),s(2),

,s(75)。进而,分别对k个匹配得分进行平滑统计,可以得到平滑得分sm(1),sm(2),

,sm(75)。其中,平滑统计方式可以是常用的指数平滑,也可以采用其他平滑算法,此处不作具体限制。然后,按照k个匹配得分在匹配结果存储器中的存储位置,将k个平滑得分存储至如图20所示意的匹配结果平滑存储器中,即sm(1),sm(2),

,sm(75),并可以基于k个平滑得分以及k个平滑得分在匹配结果平滑存储器中的位置,进一步确定第一延时。
191.可选地,在上述图8对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图9所示,基于k个平滑得分以及k个平滑得分在匹配结果平滑存储器中的位置,确定第一延时,包括:
192.在步骤s901中,从k个平滑得分中选取数值最小的第一平滑得分和第二平滑得分;
193.在步骤s902中,计算第一平滑得分和第二平滑得分之间的第二差值;
194.在步骤s903中,若第二差值大于或等于得分阈值,则基于第一平滑得分确定第一延时;
195.在步骤s904中,若第二差值小于得分阈值,则将第一延时设置为空数值或无效数值。
196.具体地,由于平滑得分sm(1),sm(2),

,sm(75)值越小,则两个特征越匹配,如继续沿用上述经过延时td之后历史特征存储器中会新增加31个特征值的示例,那么如图18所示,可知与特征f最匹配的特征是f(80),匹配得分对应于如图19所示意的匹配结果存储器中的s(44),平滑得分对应于如图20所示意的匹配结果平滑存储器中的sm(44)。
197.进一步地,由于在sm(1),sm(2),

,sm(75)中的最小值,例如,sm(44)并不明显小于其他值的时候,则可以从k个平滑得分中选取数值最小的第一平滑得分和第二平滑得分例如,第一小值为第一平滑得分sm(44)和第二小值为第二平滑得分sm(40),然后,可以计算第一平滑得分和第二平滑得分之间的第二差值sm(40)-sm(44),如果第二差值小于得分阈值threshold1,即sm(40)-sm(44)《threshold1,则表示sm(44)并非明显的小,因此,如图17所示意的延时确定策略可以输出一个无效数值,例如,
“‑
1001”,或者,输出一个空数值“null”。反之,如果第二差值大于得分阈值threshold1,则可以进一步基于第一平滑得分确定第一延时。
198.可选地,在上述图9对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图10所示,基于第一平滑得分确定第一延时,包括:
199.在步骤s1001中,获取当前时刻和上一时刻的时间间隔;
200.在步骤s1002中,获取第一平滑得分与匹配结果平滑存储器中的最后一个平滑得分的位置间隔;
201.在步骤s1003中,基于位置间隔和时间间隔计算第一延时。
202.具体地,如果第二差值大于得分阈值threshold1,可以得到此时sm(44)应该具有最小值,则可以获取第一平滑得分与匹配结果平滑存储器中的最后一个平滑得分的位置间隔,例如,如图20所示,sm(44)距离存储器末尾,即sm(75)的位置,正好有31帧的位置。
203.进一步地,可以通过如图20所示意的匹配结果平滑存储器中最小值平滑得分的位置,可以得到第一延时tde1。例如,假设第一延时估计算法计算得到第一延时为31个语音帧,同时,可以获取当前时刻和上一时刻的时间间隔,例如,每个语音帧经过4ms达到下一个语音帧,则基于位置间隔和时间间隔计算第一延时,如第一延时tde1等于31*4ms即124ms。
204.可选地,在上述图2对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图11所示,步骤s103基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,包括:
205.在步骤s1101中,对参考点信号进行下采样处理,得到第二参考点采样信号;
206.在步骤s1102中,对接收点信号进行下采样处理,得到第二接收点采样信号;
207.在步骤s1103中,对第二参考点采样信号以及第二接收点采样信号进行滤波处理,得到滤波器系数的幅度值分布;
208.在步骤s1104中,基于滤波器系数的幅度值分布,确定第二延时。
209.具体地,如图21所示,基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,具体可以是通过如图21上边所示意的下采样模块,对参考点信号进行下采样处理,以获取到第二参考点采样信号,同时,通过如图21下边所示意的下采样模块,对接收点信号进行下采样处理,以获取到第二接收点采样信号,然后,可以通过如图21所示意的自适应系统辨识滤波器,对第二参考点采样信号以及第二接收点采样信号进行滤波处理,以获取到滤波器系数的幅度值分布。
210.例如,如图21所示,本实施例可以采用一个标准的系统辨识自适应lms滤波器,通过下采样模块降低采样率,只保留语音信号能量较多的低频带,例如,2khz以下,以便节省计算量。
211.进一步地,如图22所示,当不停的有参考点信号和接收点信号送进来之后,滤波器通过lms算法逐渐收敛以便得到从参考点到接收点之间的声学频率响应,可以通过滤波器系数的幅度值在延迟点上出现峰值,以获取到滤波器系数的幅度值分布,然后,可以基于滤波器系数的幅度值分布,进一步确定第二延时。
212.可选地,在上述图11对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图12所示,步骤s1104基于滤波器系数的幅度值分布,确定第二延时,包括:
213.在步骤s1201中,获取滤波器系数的幅度值分布中的最大幅度值对应的分布位置;
214.在步骤s1202中,基于分布位置确定第二延时。
215.具体地,如图22所示,在获取到滤波器系数的幅度值分布,可以直接从滤波器系数的幅度值分布中获取到最大幅度值对应的分布位置,例如,最大幅度值对应的分布位置为第300个滤波器系数。
216.进一步地,可以通过计算滤波器系数的幅度值分布中的最新幅度值与最大幅度值之间的所有幅度值的平均值,以及计算最大幅度值与平均值之间的第三差值,然后,如果当
第三差值大于幅度阈值,可以表示最大幅度值所在分布位置即代表第二延时,则可以基于分布位置以及下采样率计算第二延时;反之,当第三差值小于幅度阈值,表示当前不存在第二延时,则可以将第二延时设置为空数值或无效数值。
217.可选地,在上述图12对应的实施例的基础上,本技术实施例提供的延时估计方法另一个可选实施例中,如图13所示,步骤s1202基于分布位置确定第二延时,包括:
218.在步骤s1301中,计算滤波器系数的幅度值分布中的最新幅度值与最大幅度值之间的所有幅度值的平均值;
219.在步骤s1302中,计算最大幅度值与平均值之间的第三差值;
220.在步骤s1303中,若第三差值大于幅度阈值,则基于分布位置以及下采样率计算第二延时;
221.在步骤s1304中,若第三差值小于幅度阈值,则将第二延时设置为空数值或无效数值。
222.具体地,在获取滤波器系数的幅度值分布中的最大幅度值对应的分布位置之后,此时如图22所示意的延时确定策略即为检测滤波器系数幅度的最大值点。例如,如图22所示,计算最大幅度值与平均值之间的第三差值,如果当第三差值大于幅度阈值时,即最大值点的幅度值比左边所有值的平均值大threshold2个db即幅度阈值时,可以认为最大值所在位置即代表延时值。
223.例如,如果最大幅度值为第300个系数,且音频信号经过下采样之后的采样率为4khz(对应于2khz带宽),则有每个采样点对应于1/4000hz秒即0.25ms,故基于分布位置以及下采样率计算第二延时,可以表示为300*0.25=75ms。
224.反之,如果当第三差值小于幅度阈值时,即最大值点的幅度值比左边所有值的平均值大不到threshold2个db即幅度阈值时,则可以将第二延时设置为空数值或无效数值,即此时如图22所示意的延时确定策略输出第二延时为无效数值,例如,
“‑
1001”,或者输出第二延时为空数值,例如,“null”。
225.下面对本技术中的延时估计装置进行详细描述,请参阅图23,图23为本技术实施例中延时估计装置的一个实施例示意图,延时估计装置20包括:
226.获取单元201,用于获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;
227.获取单元201,还用于基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时;
228.获取单元201,还用于基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,其中,计算第二延时的时长大于计算第一延时的时长;
229.处理单元202,用于若第一延时以及第二延时均为非空有效数值,则将第二延时作为候选延时;
230.确定单元203,用于基于候选延时与上一时刻的历史延时,确定目标延时。
231.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,
232.处理单元202,还用于若第一延时为非空有效数值且第二延时为空数值或无效数值,则将第一延时作为候选延时。
233.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,确定单元203具体可以用于:
234.计算候选延时与第一时间阈值之间的第一差值;
235.若候选延时大于或等于第一时间阈值,则将第一差值作为中间候选延时;
236.若历史延时为非空有效数值,则基于历史延时以及中间候选延时,确定目标延时;
237.若历史延时为空数值或无效数值,则将中间候选延时作为目标延时。
238.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,确定单元203具体可以用于:
239.计算历史延时以及中间候选延时之间的差值绝对值;
240.若差值绝对值小于或等于第一时间阈值,则将历史延时作为目标延时;
241.若差值绝对值大于第一时间阈值,则将历史延时与中间候选延时进行对比,得到比对结果;
242.根据比对结果,确定目标延时。
243.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,确定单元203具体可以用于:
244.若比对结果为历史延时大于中间候选延时,则计算中间候选延时与第二时间阈值的和值;
245.将和值作为目标延时;
246.若比对结果为历史延时小于中间候选延时,则将中间候选延时作为目标延时。
247.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
248.对参考点信号进行下采样处理,得到第一参考点采样信号;
249.对第一参考点采样信号进行特征提取,得到参考音频特征;
250.将参考音频特征作为历史音频特征,存储至历史特征存储器中,其中,历史特征存储器用于存储k个历史音频特征,k为大于1的整数;
251.对接收点信号进行下采样处理,得到第一接收点采样信号;
252.对第一接收点采样信号进行特征提取,得到接收音频特征;
253.将接收音频特征分别与历史特征存储器中的k个历史音频特征进行匹配,得到k个匹配得分,其中,一个匹配得分对应一个历史音频特征;
254.基于k个匹配得分,确定第一延时。
255.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
256.按照历史音频特征在历史特征存储器中的存储位置,将k个匹配得分对应存储至匹配结果存储器;
257.分别对k个匹配得分进行平滑统计,得到k个平滑得分;
258.按照k个匹配得分在匹配结果存储器中的存储位置,将k个平滑得分存储至匹配结果平滑存储器中;
259.基于k个平滑得分以及k个平滑得分在匹配结果平滑存储器中的位置,确定第一延时。
260.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
261.从k个平滑得分中选取数值最小的第一平滑得分和第二平滑得分;
262.计算第一平滑得分和第二平滑得分之间的第二差值;
263.若第二差值大于或等于得分阈值,则基于第一平滑得分确定第一延时;
264.若第二差值小于得分阈值,则将第一延时设置为空数值或无效数值。
265.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
266.获取当前时刻和上一时刻的时间间隔;
267.获取第一平滑得分与匹配结果平滑存储器中的最后一个平滑得分的位置间隔;
268.基于位置间隔和时间间隔计算第一延时。
269.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
270.对参考点信号进行下采样处理,得到第二参考点采样信号;
271.对接收点信号进行下采样处理,得到第二接收点采样信号;
272.对第二参考点采样信号以及第二接收点采样信号进行滤波处理,得到滤波器系数的幅度值分布;
273.基于滤波器系数的幅度值分布,确定第二延时。
274.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
275.获取滤波器系数的幅度值分布中的最大幅度值对应的分布位置;
276.基于分布位置确定第二延时。
277.可选地,在上述图23对应的实施例的基础上,本技术实施例提供的延时估计装置的另一实施例中,获取单元201具体可以用于:
278.计算滤波器系数的幅度值分布中的最新幅度值与最大幅度值之间的所有幅度值的平均值;
279.计算最大幅度值与平均值之间的第三差值;
280.若第三差值大于幅度阈值,则基于分布位置以及下采样率计算第二延时;
281.若第三差值小于幅度阈值,则将第二延时设置为空数值或无效数值。
282.本技术另一方面提供了另一种计算机设备示意图,如图24所示,图24是本技术实施例提供的一种计算机设备结构示意图,该计算机设备300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)310(例如,一个或一个以上处理器)和存储器320,一个或一个以上存储应用程序331或数据332的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器320和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对计算机设备300中的一系列指令操作。更进一步地,中央处理器310可以设置为与存储介质330通信,在计算机设备300上执行存储介质330中的一系列指令操作。
283.计算机设备300还可以包括一个或一个以上电源340,一个或一个以上有线或无线
网络接口350,一个或一个以上输入输出接口360,和/或,一个或一个以上操作系统333,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
,freebsd
tm
等等。
284.上述计算机设备300还用于执行如图2至图13对应的实施例中的步骤。
285.本技术的另一方面提供了一种计算机可读存储介质,其上存储有计算机程序,当计算机程序被处理器执行时实现如图2至图13所示实施例描述的方法中的步骤。
286.本技术的另一方面提供了一种包含计算机程序的计算机程序产品,当计算机程序被处理器执行时实现如图2至图13所示实施例描述的方法中的步骤。
287.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
288.在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
289.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
290.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
291.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

技术特征:


1.一种延时估计方法,其特征在于,包括:获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;基于第一延时估计算法,对所述参考点信号以及所述接收点信号进行延时计算,获取第一延时;基于第二延时估计算法,对所述参考点信号以及所述接收点信号进行延时计算,获取第二延时,其中,计算所述第二延时的时长大于计算所述第一延时的时长;若所述第一延时以及所述第二延时均为非空有效数值,则将所述第二延时作为候选延时;基于所述候选延时与上一时刻的历史延时,确定目标延时。2.根据权利要求1所述的方法,其特征在于,所述基于所述候选延时与上一时刻的历史延时,确定目标延时之前,所述方法还包括:若所述第一延时为非空有效数值且所述第二延时为空数值或无效数值,则将所述第一延时作为所述候选延时。3.根据权利要求1或2中任一项所述的方法,其特征在于,所述基于所述候选延时与上一时刻的历史延时,确定目标延时,包括:计算所述候选延时与所述第一时间阈值之间的第一差值;若所述候选延时大于或等于第一时间阈值,则将所述第一差值作为中间候选延时;若所述历史延时为非空有效数值,则基于所述历史延时以及所述中间候选延时,确定所述目标延时;若所述历史延时为空数值或无效数值,则将所述中间候选延时作为所述目标延时。4.根据权利要求3所述的方法,其特征在于,所述基于所述历史延时以及所述中间候选延时,确定所述目标延时,包括:计算所述历史延时以及所述中间候选延时之间的差值绝对值;若所述差值绝对值小于或等于所述第一时间阈值,则将所述历史延时作为所述目标延时;若所述差值绝对值大于所述第一时间阈值,则将所述历史延时与所述中间候选延时进行对比,得到比对结果;根据所述比对结果,确定所述目标延时。5.根据权利要求4所述的方法,其特征在于,所述根据所述比对结果,确定所述目标延时,包括:若所述比对结果为所述历史延时大于所述中间候选延时,则计算所述中间候选延时与第二时间阈值的和值;将所述和值作为所述目标延时;若所述比对结果为所述历史延时小于所述中间候选延时,则将所述中间候选延时作为所述目标延时。6.根据权利要求1所述的方法,其特征在于,所述基于第一延时估计算法,对所述参考点信号以及所述接收点信号进行延时计算,获取第一延时,包括:对所述参考点信号进行下采样处理,得到第一参考点采样信号;
对所述第一参考点采样信号进行特征提取,得到参考音频特征;将所述参考音频特征作为历史音频特征,存储至历史特征存储器中,其中,所述历史特征存储器用于存储k个历史音频特征,所述k为大于1的整数;对所述接收点信号进行下采样处理,得到第一接收点采样信号;对所述第一接收点采样信号进行特征提取,得到接收音频特征;将所述接收音频特征分别与所述历史特征存储器中的所述k个历史音频特征进行匹配,得到k个匹配得分,其中,一个匹配得分对应一个所述历史音频特征;基于所述k个匹配得分,确定所述第一延时。7.根据权利要求6所述的方法,其特征在于,所述基于所述k个匹配得分,确定所述第一延时,包括:按照所述历史音频特征在所述历史特征存储器中的存储位置,将所述k个匹配得分对应存储至匹配结果存储器;分别对所述k个匹配得分进行平滑统计,得到k个平滑得分;按照所述k个匹配得分在所述匹配结果存储器中的存储位置,将所述k个平滑得分存储至匹配结果平滑存储器中;基于所述k个平滑得分以及所述k个平滑得分在匹配结果平滑存储器中的位置,确定所述第一延时。8.根据权利要求7所述的方法,其特征在于,所述基于所述k个平滑得分以及所述k个平滑得分在匹配结果平滑存储器中的位置,确定所述第一延时,包括:从所述k个平滑得分中选取数值最小的第一平滑得分和第二平滑得分;计算所述第一平滑得分和第二平滑得分之间的第二差值;若所述第二差值大于或等于得分阈值,则基于所述第一平滑得分确定所述第一延时;若所述第二差值小于所述得分阈值,则将所述第一延时设置为空数值或无效数值。9.根据权利要求8所述的方法,其特征在于,所述基于所述第一平滑得分确定所述第一延时,包括:获取所述当前时刻和所述上一时刻的时间间隔;获取所述第一平滑得分与匹配结果平滑存储器中的最后一个平滑得分的位置间隔;基于所述位置间隔和所述时间间隔计算所述第一延时。10.根据权利要求1所述的方法,其特征在于,所述基于第二延时估计算法,对所述参考点信号以及所述接收点信号进行延时计算,获取第二延时,包括:对所述参考点信号进行下采样处理,得到第二参考点采样信号;对所述接收点信号进行下采样处理,得到第二接收点采样信号;对所述第二参考点采样信号以及第二接收点采样信号进行滤波处理,得到滤波器系数的幅度值分布;基于所述滤波器系数的幅度值分布,确定所述第二延时。11.根据权利要求10所述的方法,其特征在于,所述基于所述滤波器系数的幅度值分布,确定所述第二延时,包括:获取所述滤波器系数的幅度值分布中的最大幅度值对应的分布位置;基于所述分布位置确定所述第二延时。
12.根据权利要求11所述的方法,其特征在于,所述基于所述分布位置确定所述第二延时,包括:计算所述滤波器系数的幅度值分布中的最新幅度值与所述最大幅度值之间的所有幅度值的平均值;计算所述最大幅度值与所述平均值之间的第三差值;若所述第三差值大于幅度阈值,则基于所述分布位置以及下采样率计算所述第二延时;若所述第三差值小于幅度阈值,则将所述第二延时设置为空数值或无效数值。13.一种延时估计装置,其特征在于,包括:获取单元,用于获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;所述获取单元,还用于基于第一延时估计算法,对所述参考点信号以及所述接收点信号进行延时计算,获取第一延时;所述获取单元,还用于基于第二延时估计算法,对所述参考点信号以及所述接收点信号进行延时计算,获取第二延时,其中,计算所述第二延时的时长大于计算所述第一延时的时长;处理单元,用于若所述第一延时以及所述第二延时均为非空有效数值,则将所述第二延时作为候选延时;确定单元,用于基于所述候选延时与上一时刻的历史延时,确定目标延时。14.一种计算机设备,包括存储器、处理器以及总线系统,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤;所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。16.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。

技术总结


本申请实施例公开了一种延时估计方法、装置、设备及存储介质,相关实施例可应用于人工智能、地图、智能交通等各种场景,用于提高延时估计的准确率。本申请实施例方法包括:获取当前时刻收音装置采集到的接收点信号,以及获取当前时刻声音播放装置输出的参考点信号;基于第一延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第一延时;基于第二延时估计算法,对参考点信号以及接收点信号进行延时计算,获取第二延时,其中,计算第二延时的时长大于计算第一延时的时长;若第一延时以及第二延时均为非空有效数值,则将第二延时作为候选延时;基于候选延时与上一时刻的历史延时,确定目标延时。确定目标延时。确定目标延时。


技术研发人员:

高毅

受保护的技术使用者:

腾讯科技(深圳)有限公司

技术研发日:

2022.06.14

技术公布日:

2022/9/30

本文发布于:2023-03-30 16:49:18,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/82073.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:信号   所述   如图   平滑
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图