CN111613238B - 信号之间延时的确定方法、装置、设备以及存储介质 - Google Patents
信号之间延时的确定方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN111613238B CN111613238B CN202010437931.3A CN202010437931A CN111613238B CN 111613238 B CN111613238 B CN 111613238B CN 202010437931 A CN202010437931 A CN 202010437931A CN 111613238 B CN111613238 B CN 111613238B
- Authority
- CN
- China
- Prior art keywords
- current
- signal
- determining
- delay
- sampling rate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000005070 sampling Methods 0.000 claims abstract description 233
- 238000012545 processing Methods 0.000 claims abstract description 67
- 230000015654 memory Effects 0.000 claims description 19
- 230000001351 cycling effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 19
- 238000004364 calculation method Methods 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 15
- 230000005236 sound signal Effects 0.000 description 14
- 238000004590 computer program Methods 0.000 description 10
- 125000004122 cyclic group Chemical group 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0224—Processing in the time domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0264—Noise filtering characterised by the type of parameter measurement, e.g. correlation techniques, zero crossing techniques or predictive techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/04—Time compression or expansion
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L2021/02161—Number of inputs available containing the signal or the noise to be suppressed
- G10L2021/02163—Only one microphone
Landscapes
- Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Measurement Of Current Or Voltage (AREA)
- Circuit For Audible Band Transducer (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
本申请公开了信号之间延时的确定方法、装置、设备以及存储介质,涉及语音技术。本公开提供的方法、装置、设备以及存储介质中,通过对信号进行降采样处理,能够降低确定延时的计算量,从而提高确定效率。而且,通过当前确定的延时能够在信号中估计出包括两个信号对齐位置的信号段,进而可以对该信号段再次执行上述处理过程,这种方式可以逐渐缩小确定范围,即可以对较短的信号进行处理,就能够得到准确的延时,从而既保证了确定的准确率,又能够降低数据处理量。
Description
技术领域
本公开涉及数据处理技术,尤其涉及语音技术。
背景技术
目前,电子设备通过麦克风录制到的信号中可能包括参考信号。比如,电子设备播放音频时,麦克风也在录制音频,这种情况下,麦克风会录制电子设备播放的音频。
因此,电子设备对语音信号进行处理时,需要进行回声抵消处理。具体可以利用麦克风录到的信号减去参考信号,得到干净的信号。参考信号是指电子设备正在播放的音频信号。
在有些场景下,麦克风录制的信号与参考信号之间会有长延时,因此,需要先估计出录制信号与参考信号之间的延时,再进行回声抵消处理。而如何高效的确定信号间的延时,是本领域技术人员亟需解决的技术问题。
发明内容
本公开提供了一种信号之间延时的确定方法、装置、设备以及存储介质,以解决现有技术中确定信号间延时的效率低的问题。
根据第一方面,提供了一种信号之间延时的确定方法,包括:
重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:
在预设采样率中确定当前采样率,根据所述当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号;将所述第一目标信号确定为所述第一当前信号,并将所述第二目标信号确定为所述第二当前信号;
根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时。
根据第二方面,提供了一种信号之间延时的确定装置,包括:
循环模块,用于重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:
在预设采样率中确定当前采样率,根据所述当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号;将所述第一目标信号确定为所述第一当前信号,并将所述第二目标信号确定为所述第二当前信号;
确定模块,用于根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时。
根据第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的信号之间延时的确定方法。
根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如第一方面所述的信号之间延时的确定方法。
根据第五方面,提供了另一种信号之间延时的确定方法,包括:
重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:
在预设采样率中确定当前采样率,并根据所述当前采样率确定所述第一当前信号、所述第二当前信号之间的当前延时;根据所述当前延时确定与所述第一当前信号对应的新的第一当前信号,确定与所述第二当前信号对应的新的第二当前信号;
根据与每个所述当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时。
根据本申请的第六方面,提供了一种计算机程序产品,所述程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面所述的方法。
本公开提供的信号之间延时的确定方法、装置、设备以及存储介质,包括:重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:在预设采样率中确定当前采样率,根据当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据当前延时在第一当前信号、第二当前信号中分别确定第一目标信号、第二目标信号;将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号;根据与每个当前采样率对应的当前延时,确定录制信号与参考信号之间的目标延时。本公开提供的方法、装置、设备以及存储介质中,通过对信号进行降采样处理,能够降低确定延时的计算量,从而提高确定效率。而且,通过当前确定的延时能够在信号中估计出包括两个信号对齐位置的信号段,进而可以对该信号段再次执行上述处理过程,这种方式可以逐渐缩小确定范围,即可以对较短的信号进行处理,就能够得到准确的延时,从而既保证了确定的准确率,又能够降低数据处理量。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1A为本申请一示例性实施例示出的应用场景图;
图1B为本申请一示例性实施例示出的录制信号和参考信号的示意图;
图2为本申请一示例性实施例示出的信号之间延时的确定方法的流程图;
图3为本申请一示例性实施例示出的对当前信号进行处理的示意图;
图4为本申请一示例性实施例示出的第一当前信号、第二当前信号的示意图;
图5为本申请另一示例性实施例示出的信号之间延时的确定方法的流程图;
图6为本申请一示例性实施例示出的确定第一目标信号、第二目标信号的示意图;
图7为本申请另一示例性实施例示出的确定第一目标信号、第二目标信号的示意图;
图8为本申请一示例性实施例示出的信号之间延时的确定装置的结构图;
图9为本申请另一示例性实施例示出的信号之间延时的确定装置的结构图;
图10为本申请一示例性实施例示出的电子设备的结构图;
图11为本申请第三示例性实施例示出的信号之间延时的确定方法的流程图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1A为本申请一示例性实施例示出的应用场景图。
如图1A所示,电子设备11具有音频播放功能和音频信号采集功能。比如,电子设备设置有有麦克风,可以录制音频信号。
电子设备11播放的音频信号为信号12,电子设备录制的音频信号例如可以是用户说出的语音信号13。若电子设备11在播放音频信号12时录制音频信号13,则会同时录制音频信号12。为了使电子设备录制的信号更加纯净,需要在录制的信号中剔除掉信号12。
由于电子设备11从接收到需要播放的音频信号12,到对其进行播放需要一定的时间,从而导致电子设备播放的音频信号12与录制的音频信号13之间具有一定的延迟,不能直接利用录制的信号减去需要播放的信号得到干净的信号。
图1B为本申请一示例性实施例示出的录制信号和参考信号的示意图。
如图1B所示,录制信号为21,参考信号为22,电子设备接收参考信号的起始时刻为t0,开始录制信号的起始时刻也为t0。电子设备需要对参考信号22经过一系列的处理,才能够对其进行播放,这一过程中,耗费的时长为(t1-t0),那么实际播放的参考信号为23。
若直接使用录制信号21减去参考信号22,由于参考信号的播放时刻与录制信号的录制起始时刻不一致,会导致无法有效的剔除录制信号中的回声。因此,需要确定出录制信号21与参考信号22之间的延时(t1-t0)。可以根据延时在时序上将参考信号22调整为实际播放的参考信号23的样态,再进行回声消除的处理。
若希望得到录制的干净的音频信号,需要先确定录制的信号与播放的信号之间的延时,再进行回声消除处理。目前的一种方案中,可以对录制的信号与播放的音频信号进行逐帧比对,以确定二者时延,但是,这种方式计算量过大,导致确定时延的效率低。
本申请提供的信号之间延时的确定方法中,对原始的录制信号和参考信号进行降采样,并基于降采样初步估计两个信号的时延,再基于该时延,估计两个信号中包括对齐位置的目标信号,并对目标信号重复执行上述步骤,从而经过多次降采样,逐级估计,直到得到较为准确的延时结果。
由于本申请提供的方法对信号进行了降采样处理,使得计算量能够大幅降低,且基于当前情况能够估计出两个信号中包括对齐位置的目标信号,从而可以仅对目标信号进行处理,能够在保证精度的情况下,进一步的降低数据处理量,进而提高延时确定的效率。
确定出录制信号和参考信号之间的时延后,电子设备可以根据确定的时延进行回音消除处理,由于确定延时的过程中,可以高效、准确的确定延时,进而能够对录制的声音进行高效、准确的处理。
图2为本申请一示例性实施例示出的信号之间延时的确定方法的流程图。
如图2所示,本申请实施例提供的信号之间延时的确定方法,包括:
步骤201,在预设采样率中确定当前采样率。
其中,本申请提供的方法可以由具备计算能力的电子设备来执行,例如可以是图1中所示出的电子设备11。
具体的,电子设备11具备音频播放功能和录音功能,比如电子设备11可以同时设置有扬声器和麦克风,用来分别实现音频播放和录音功能。电子设备具体可以是移动电话、用于进行视频会议或电话会议的设备、智能音箱等设备,本实施例不对此进行限制。
进一步的,可以预先设置多个级别的预设采样率,这些预设采样率的值不相同,比如,可以设置一组预设采样率,分别为“1/2,1/4…1/2^n”,n可以根据需求进行设置。
实际应用时,采样率是指采样频率,具体是指单位时间内采样的个数。采样率的倒数即为采样周期。例如,采样率为1/2,则表示每个单位时间内采样数量为1/2,采样周期为2,即每隔2个采样周期采集一个样本。
其中,可以预先设置在预设采样率中确定当前采样率的规则。比如,先将采样率最小的值作为当前采样率,再将较大的采样率作为当前采样率。
具体的,比如先将1/2^n作为当前采样率执行下述步骤。再将1/2^(n-1)作为当前采样率执行下述步骤,以此类推,直到遍历完所有的预设采样率为止。
步骤202,根据当前采样率对第一当前信号、第二当前信号进行处理。其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号。
进一步的,为了能够清楚的说明,本实施例中定义了第一当前信号、第二当前信号。其中,在第一次执行步骤202时,第一当前信号为录制信号,第二当前信号为参考信号。再次执行步骤202时,是基于下述步骤确定的第一当前信号和第二当前信号。
实际应用时,可以根据确定的当前采样率分别对第一当前信号、第二当前信号进行处理。具体可以对这两个信号进行采样处理。
其中,在第一次执行本步骤时,实质是根据当前采样率对录制信号、参考信号分别进行处理。再次执行步骤202时,则是根据当前采样率,对确定的第一当前信号和第二当前信号进行处理。
具体的,可以利用当前采样率分别对第一当前信号、第二当前信号进行采样处理。具体可以根据采样率确定采样周期,并每隔一采样周期在信号中采集一个样本,从而得到采样后的信号。
图3为本申请一示例性实施例示出的对当前信号进行处理的示意图。
进一步的,利用当前采样率对第一当前信号和第二当前信号的方式类似,本实施例通过图3示意性的说明这一过程。
如图3所示,31为当前信号(第一当前信号或者第二当前信号),该信号可以是一关于时间的函数,即横轴为时间,纵轴为信号的幅值。
实际应用时,可以根据采样率在当前信号31中进行采样,得到多个样本32。这些样本32的集合,即为利用当前采样率对当前信号31处理后的信号。
其中,分别对第一当前信号、第二当前信号进行处理,从而得到处理后的第一当前信号、第二当前信号。由于对第一当前信号和第二当前信号进行了采样处理,使得处理后的信号中包括的数据量显著降低。比如,原始当前信号中可能包括10000个数据,处理后的当前信号中仅包括100个采样数据。
步骤203,根据处理后的第一当前信号、处理后的第二当前信号确定当前延时。
具体的,对第一当前信号、第二当前信号采样处理完毕后,可以根据处理后的第一当前信号、处理后的第二当前信号确定当前延时。由于处理后的第一当前信号、处理后的第二当前信号中包括的数据均少于处理前的信号,因此,根据处理后的信号确定延时产生的计算量低于根据处理前的信号确定延时产生的计算量。
进一步的,处理后的信号是对原始信号进行采样处理得到的,因此,处理后的第一当前信号能够体现第一当前信号的特征,处理后的第二当前信号能够体现第二当前信号的特征。可以根据处理后的第一当前信号、处理后的第二当前信号确定当前延时。
实际应用时,第一次循环时,确定的当前延时可能精准度较低,但是随着循环次数的增多,确定出的延时结果会越来越准确。此外,确定的延时准确性也与采样率的大小相关,本实施例提供的方法中,在第一次循环时可以采样较小的采样率,随着循环次数的增多逐渐提高采样率,从而即能够降低数据运算量,又能够保证确定结果的精准度。
其中,在确定当前延时时,可以比对处理后的第一当前信号和处理后的第二当前信号,由于这两个信号是采样处理后的信号,其包含的数据量不会很大,因此能够降低数据处理量,提高确定延时的效率。
具体的,可以逐帧比对处理后的第一当前信号和处理后的第二当前信号,从而确定二者延时。比如,在处理后的第一当前信号中确定包括处理后的第二当前信号的起始位置,从而确定出二者延时。还可以计算处理后的第一当前信号和处理后的第二当前信号的互相关能量值,并根据互相关能量值最大的位置,确定出两个信号的延时。
步骤204,根据当前延时在第一当前信号、第二当前信号中分别确定第一目标信号、第二目标信号。
进一步的,若预设采样率中还有未被当作当前采样率的值,则可以执行步骤204。若预设采样率中的每个值都被当作当前采样率,且根据每个当前采样率都确定出了对应的当前延时,则可以不再执行步骤204-205。而是直接执行步骤206。
实际应用时,若没有应用到所有的预设采样率,则可以认为还可以继续根据预设采样率确定当前延时,从而使结果更加精确。
其中,可以根据当前确定的延时分别在第一当前信号和第二当前信号中确定第一目标信号、第二目标信号。可以认为,第一目标信号与第二目标信号中包括对齐位置。
具体的,一般情况下,是由于对参考信号进行处理导致的录制信号与参考信号之间存在时延。假设从t0时刻开始录制信号,且在t0时刻电子设备接收到参考信号并对其进行播放,由于需要对参考信号进行一系列的处理才能够对其进行播放,就会导致实质的播放的信号的开始时间从t0错后为t1。
这种情况下,就需要将参考信号在时序上后移(t1-t0),使得录制信号与实际播放的参考信号在时序上对齐,才能够进行回声消除处理。这种情况下,可以认为由于对参考信号进行处理需要消耗时间,导致在录制信号中,包括的参考信号起始位置滞后于录制信号的起始位置,需要在录制信号中找到二者的时间差,也就是二者延时。
这种情况下,可以根据时延,在第一当前信号中确定对齐位置,比如,当前时延为5ms,则可以将第一当前信号中第5ms的位置作为对齐位置,再根据该对齐位置确定第一目标信号。例如,可以根据当前采样率确定延时误差,从而将对齐位置前后的信号作为第一目标信号。比如,误差为±1ms,则第一目标信号可以是第一当前信号中的第4ms-6ms这一段信号。对于第二当前信号,则可以从起始位置开始,将与第一目标信号时长相同的一段信号作为第二目标信号。
若在一些情况下,在时序上录制信号的起始位置滞后于实际录制的参考信号的起始位置。则可以根据延时,在第二当前信号中确定对齐位置,再根据该对齐位置确定第二目标信号。对于第一当前信号,则可以从起始位置开始,将与第二目标信号时长相同的一段信号作为第一目标信号。
进一步的,根据本实施例可以估计出在第一目标信号与第二目标信号中包括录制信号和参考信号的对齐位置,从而可以对这两段信号进行处理,以确定更加准确的延时。这种方式能够剔除不包括对齐位置的信号,从而大幅度的降低数据处理量。
图4为本申请一示例性实施例示出的第一当前信号、第二当前信号的示意图。
如图4所示,41为第一当前信号,42为第二当前信号,确定出的当前延时为Δt。
则可以根据该当前延时Δt,在第一当前信号41中估计出可能的对齐位置43,并将包括该对齐位置43的一段信号作为第一目标信号44,可以认为该第一目标信号中一定包括与第二当前信号42对应的对齐位置。还可以将第二当前信号42的起始位置开始,与第一目标信号44长度相同的信号作为第二目标信号45。可以对这两段目标信号44和45进行处理,确定更加准确的延时。
由于第一目标信号44和第二目标信号45均是在当前信号中确定的,因此其中的数据是原始的录制信号、参考信号中的一部分,具体来说,第一目标信号是录制信号的一部分,第二目标信号是参考信号的一部分,因此,继续对这两段目标信号进行处理确定当前延时,相当于对原始的录制信号、参考信号进行处理确定延时,当采样率越来越高时,确定的结果会越来越准确,不会损失精度。
步骤205,将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号。
可以将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号,继续执行步骤201。
重复执行上述步骤,直至将每个预设采样率都确定为当前采样率为止。通过这样的方式,可以逐渐缩短第一当前信号、第二当前信号的长度,从而逐渐缩小延时的确定范围,使得结果越来越精确。
比如,初始的第一当前信号为录制信号,第二当前信号为参考信号,这两个信号较长,但是可以利用低采样率对其进行处理,从而降低数据处理量。
此后,可以确定出一当前时延,并得到第一目标信号和第二目标信号,这两段信号的长度相较于录制信号、参考信号更短,可以采用高一级别的采样率对其进行处理,并确定出另一精度更高的当前时延,得到另一第一目标信号和第二目标信号。
这两段信号相较于此前的信号更短,可以使用更高一级别的采样率对其进行处理,并确定出又一精度更高的当前时延,得到又一第一目标信号和第二目标信号。以此类推,通过这样的方式,能够逐渐缩短需要处理的第一当前信号和第二当前信号的长度,同时提高确定结果的精度。
步骤206,根据与每个当前采样率对应的当前延时,确定录制信号与参考信号之间的目标延时。
其中,通过重复上述步骤,将每个预设采样率作为当前采样率时,都能够确定出对应的当前延时。最终,可以根据每次确定的最终延时得到一准确的目标延时。
具体的,可以对这些当前延时进行累加,得到目标延时。例如,共执行三次循环过程,第一次确定的当前延时为5ms,第二次确定的延时为-1ms,第三次确定的延时为0.5ms,则可以将这三个值相加,得到目标延时为4.5ms。可以认为是参考信号滞后于录制信号4.5ms。
在确定了录制信号与参考信号之间的目标延时之后,可以对两个信号进行对齐处理,再使用录制信号减去参考信号,进而得到录制的干净的信号,实现回声消除的目的。本实施例提供的方法中,由于确定延时的过程中,可以高效、准确的确定延时,进而能够对录制的声音进行高效、准确的处理。
本实施例提供的方法用于确定信号之间的延时,该方法由设置有本实施例提供的方法的设备执行,该设备通常以硬件和/或软件的方式来实现。
本实施例提供的信号之间延时的确定方法,包括:重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:在预设采样率中确定当前采样率,根据当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据当前延时在第一当前信号、第二当前信号中分别确定第一目标信号、第二目标信号;将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号;根据与每个当前采样率对应的当前延时,确定录制信号与参考信号之间的目标延时。本申请提供的方法中,通过对信号进行降采样处理,能够降低确定延时的计算量,从而提高确定效率。而且,通过当前确定的延时能够在信号中估计出包括两个信号对齐位置的信号段,进而可以对该信号段再次执行上述处理过程,这种方式可以逐渐缩小确定范围,即可以对较短的信号进行处理,就能够得到准确的延时,从而既保证了确定的准确率,又能够降低数据处理量。
图5为本申请另一示例性实施例示出的信号之间延时的确定方法的流程图。
如图5所示,本申请提供的信号之间延时的确定方法,包括:
步骤501,在预设采样率中,将未作为当前采样率的最小预设采样率作为当前采样率。
其中,本申请提供的方法可以由具备计算能力的电子设备来执行,例如可以是图1中所示出的电子设备11。
具体的,电子设备11具备音频播放功能和录音功能,比如电子设备11可以同时设置有扬声器和麦克风,用来分别实现音频播放和录音功能。电子设备具体可以是移动电话、用于进行视频会议或电话会议的设备、智能音箱等设备,本实施例不对此进行限制。
进一步的,可以预先设置多个级别的预设采样率,这些预设采样率的值不相同,比如,可以设置一组预设采样率,分别为“1/2,1/4…1/2^n”,n可以根据需求进行设置。
实际应用时,可以在预设采样率中确定还没有被当作当前采样率的采样率,再在这些预设采样率中将最小的值确定为当前采样率。
电子设备执行本实施例提供的方法时,会基于每个预设采样率依次对第一当前信号、第二当前信号进行处理。在第一次对第一当前信号、第二当前信号进行处理时,可以使用最小的预设采样率,在第二次对第一当前信号、第二当前信号进行处理时,可以使用次小的预设采样率,以此类推,直到使用每个预设采样率都对第一当前信号、第二当前信号进行处理为止。
比如,预设采样率中包括3个数值,从小到大依次为n1、n2、n3,那么在循环过程中,第一次循环使用的采样率为n1,第二次循环使用的采样率为n2,第三次循环使用的采样率为n3。从而在整个处理过程中,逐级提高采样率,进而提高确定结果的精度。
步骤502,利用当前采样率对第一当前信号进行降采样处理;利用当前采样率对第一当前信号进行降采样处理。其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号。
其中,为了便于说明,本申请实施例中定义有第一当前信号和第二当前信号。在循环过程中,以第一当前信号和第二当前信号作为处理的对象。
具体的,在第一次循环中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号,即在第一次循环中,实质的处理对象是录制信号、参考信号。
进一步的,在后续循环过程中,第一次当前信号和第二次当前信号是基于处理结果确定的。
实际应用时,利用确定的当前采样率分别对第一当前信号、第二当前信号进行降采样处理,从而缩短第一当前信号和第二当前信号的长度,使得处理数据变小,进而提高确定延时的处理速度。
例如,第一当前信号中包括10000个采样点,即包括10000个数据,对其进行降采样处理,使得降采样后的第一当前信号仅包括100个数据,那么对这100个数据进行处理,与对10000个数据进行处理相比能够大幅度的降低计算量。
步骤503,逐帧比对处理后的第一当前信号、第二当前信号,并根据比对结果确定当前延时。
其中,处理后的第一当前信号、第二当前信号中包括的数据量显著减小,此时,可以逐帧比对处理后的第一当前信号、第二当前信号,并根据比对结果确定当前延时。该当前延时是指基于当前采样率,确定出的第一当前信号与第二当前信号之间的延时。
例如,当第一次循环时,第一当前信号为录制信号,第二当前信号为参考信号,那么基于最小的预设采样率确定出的当前延时,即为粗略估计出的录制信号与参考信号之间的延时。
在本实施例提供的方案中,第一当前信号和第二当前信号中包括的数据量较大时,采用较低的采样率对其进行处理,随着第一当前信号和第二当前信号的数据量减小,采样率也随之提高,通过这样的方式既能够降低数据处理量,又能够保证确定结果的精度。
具体的,可以通过逐帧比对第一当前信号和第二当前信号,在第一当前信号中找到其包括的第二当前信号的起始位置,比如,在第一当前信号的50ms位置处,包含了第二当前信号的起始内容,则可以将50ms作为当前延时。
进一步的,可以对两个信号中连续的几帧数据进行比对,从而估计出二者延时。
可选的,在步骤503之后,还可以判断是否将每个预设采样率都确定为当前采样率执行了上述步骤,若是,则可以执行步骤506,否则,继续执行步骤504A或者504B。这种方式能够在基于最后一个预设采样率确定出当前延时后,直接确定目标延时,从而省去确定目标信号的步骤,从而进一步的提高数据处理速度。
步骤504A,根据当前延时、当前采样率对应的误差,在第一当前信号中确定第一目标信号,在第二当前信号中确定第二目标信号。
一种实施方式中,基于当前采样率确定出对应的当前延时后,可以分别在第一当前信号中确定第一目标信号,在第二当前信号中确定第二目标信号。
其中,采样率不同,那么确定出的延时的误差也会不同。比如,采样率越低,那么从当前信号中采集的样本数据也更少,确定的当前延时的误差也会更大;采样率越高,那么从当前信号中采集的样本数据也更多,确定的当前延时的误差也会更小。可以根据当前延时、当前采样率对应的误差,在当前信号中确定延时范围,从而降低信号的处理范围。
具体的,可以设置每个预设采样率对应的误差,也即每个当前采样率的误差。需要确定第一目标信号和第二目标信号时,可以直接读取当前采样率对应的误差。
进一步的,可以根据当前延时在第一当前信号中确定第一位置,根据第一位置、当前采样率对应的误差确定第一目标信号。
图6为本申请一示例性实施例示出的确定第一目标信号、第二目标信号的示意图。
如图6所示,假设在录制信号中,实际录制的参考信号的起始位置滞后于录制信号的起始位置。那么可以根据当前延时在第一当前信号61中确定第一位置62。再根据当前采样率对应的误差,确定包括该第一位置62的第一目标信号。比如,当前延时为50ms,则将第一当前信号61的50ms的位置确定为第一位置62,比如误差为±2ms,则可以将48ms-52ms这段信号,作为第一目标信号63。
这种实施方式中,由于当前采样率对应有误差值,尤其是在当前采样率较小的情况下,误差值较大,因此,可以根据粗略估计出的当前延时和误差值,确定具体的延时范围,从而缩小处理信号的范围。比如上述实施例中,可以认为延时在48ms-52ms这个范围内,那么后续处理时,可以只处理这段信号,进而能够显著的降低数据处理量。
还可以根据采样率对应的误差确定目标时长,从第二当前信号的起始位置开始,将长度为目标时长的信号确定为第二目标信号。
请继续参考图6,假设在录制信号中,实际录制的参考信号的起始位置滞后于录制信号的起始位置,那么可以根据采样率对应的误差确定目标时长,比如误差为±2ms,则目标时长可以是4ms,可以将第二当前信号64最前端的4ms信号作为第二目标信号65。
其中,若认为在录制信号的某一位置开始,包含了参考信号。只要确定出录制信号包括参考信号的位置,就能够确定出二者延时。因此,本申请实施例中,可以在第一当前信号中估计第一目标信号的范围,将第二当前信号的起始信号段作为第二目标信号,再对二者进行处理,从而在第一目标信号中确定第二目标信号的起始位置,从而确定出更精确的当前延时。
假设录制信号的起始位置滞后于实际播放的参考信号的起始位置,那么可以根据当前延时在第二当前信号中确定第二位置。再根据当前采样率对应的误差,确定包括该第二位置的第二目标信号。还可以根据采样率对应的误差确定目标时长,可以将第一当前信号最前端的目标时长信号段作为第一目标信号。
步骤504B,根据当前延时对第一当前信号、第二当前信号进行对齐处理;根据当前采样率对应的误差,在对齐后的第一当前信号中确定第一目标信号,在对齐后的第二当前信号中确定第二目标信号。
另一种实施方式中,确定出当前延时之后,还可以基于该当前延时先对第一当前信号、第二当前信号进行对齐处理。
与上述实施方式类似,本实施方式中,也预先设置有预设采样率对应的误差。
将信号对其后,可以根据当前采样率对应的误差,在对齐后的第一当前信号中确定第一目标信号,在对齐后的第二当前信号中确定第二目标信号。
图7为本申请另一示例性实施例示出的确定第一目标信号、第二目标信号的示意图。
如图7所示,假设在录制信号中,录制到的参考信号的起始位置滞后于录制信号本身的起始位置,那么可以基于当前延时,对第一当前信号或者第二当前信号进行调整,使二者对齐。比如,当前延时为50ms,则可以将第二当前信号向后移50ms,使得第二当前信号的起始位置,与第一当前信号中包括的第二当前信号的起始位置对齐。或者可以将第一当前信号前移50ms,使得第二当前信号的起始位置,与第一当前信号中包括的第二当前信号的起始位置对齐。
请参考图7,假设将第二当前信号向后移,则可以得到对齐后的第一当前信号71和第二当前信号72。
由于确定的当前延时还具有一定的误差,因此,第一当前信号起始数据中不一定包括第二当前信号的起始数据,可以根据误差确定出一信号范围,从而缩小需要处理的数据长度。
请参考图7,可以根据当前采样率对应的误差,在对齐后的第一当前信号中确定第一目标信号73,在对齐后的第二当前信号中确定第二目标信号74。
其中,可以在对齐后的第一当前信号中确定起点对齐位置75,根据起点对齐位置、采样率对应的误差确定第一目标信号73。比如,当前延时为50ms,那么起点对齐位置75可以是第一当前信号的第50ms的位置,比如,误差是±2ms,则可以将50±2ms的信号段作为第一目标信号73。
具体的,还可以根据采样率对应的误差确定目标时长,比如,误差是±2ms,则目标时长为4ms,可以从第二当前信号的起始位置开始,将长度为目标时长的信号确定为第二目标信号74。
进一步的,确定的目标信号相较于原当前信号来说,长度显著缩短,且目标信号中包括两个信号的对齐位置,因此,可以仅根据缩短后的目标信号进行处理,从而能够确定出越来越精确的延时,并且能够降低数据处理量。
步骤505,将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号。
可以根据新的第一当前信号、第二当前信号继续执行步骤501。
可选的,还可以判断是否将每个预设采样率都作为当前采样率,若是,则可以执行步骤506,否则,可以继续执行步骤501。
本实施例提供的方法中,可以在步骤505之后,也可以在步骤503之后执行步骤506,具体可以根据需求进行设置。
步骤506,对与每个当前采样率对应的当前延时进行累加处理,得到录制信号与参考信号之间的目标延时。
具体的,基于上述实施方式,针对每个当前采样率都可以确定出对应的当前延时,可以将当前延时进行累加,得到目标延时。
进一步的,随着循环次数的增加,需要处理的信号长度原来越短,采样率越来越高,能够也就是精准度越来越高,通过结合多次确定的当前延时,既能够降低数据处理量,又能够保证确定结果的精准度。
确定出目标延时后,可以根据目标延时对录制信号继续回声消除的处理。
实际应用时,在一种可选的实施方式中,每次确定出当前延时后,还可以确定当前延时是否准确,若准确,则执行确定第一目标信号、第二目标信号的步骤。若不准确,则可以继续确定当前延时,从而避免确定的当前延时不准确,导致确定的目标延时不准确的问题。
其中,具体确定延时是否准确的方式,可以采用已有的技术方案。
图8为本申请一示例性实施例示出的信号之间延时的确定装置的结构图。
如图8所示,本申请提供的信号之间延时的确定装置,包括:
循环模块81,用于重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:
在预设采样率中确定当前采样率,根据当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据当前延时在第一当前信号、第二当前信号中分别确定第一目标信号、第二目标信号;将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号;
确定模块82,用于根据与每个当前采样率对应的当前延时,确定录制信号与参考信号之间的目标延时。
本实施例提供的信号之间延时的确定装置,包括:循环模块,用于重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:在预设采样率中确定当前采样率,根据当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据当前延时在第一当前信号、第二当前信号中分别确定第一目标信号、第二目标信号;将第一目标信号确定为第一当前信号,并将第二目标信号确定为第二当前信号;确定模块,用于根据与每个当前采样率对应的当前延时,确定录制信号与参考信号之间的目标延时。本申请提供的装置中,通过对信号进行降采样处理,能够降低确定延时的计算量,从而提高确定效率。而且,通过当前确定的延时能够在信号中估计出包括两个信号对齐位置的信号段,进而可以对该信号段再次执行上述处理过程,这种方式可以逐渐缩小确定范围,即可以对较短的信号进行处理,就能够得到准确的延时,从而既保证了确定的准确率,又能够降低数据处理量。
图9为本申请另一示例性实施例示出的信号之间延时的确定装置的结构图。
如图9所示,在上述实施例的基础上,本实施例提供的信号之间延时的确定装置,包括:
所述循环模块81包括采样率确定单元811,用于:
在所述预设采样率中,将未作为所述当前采样率的最小预设采样率作为所述当前采样率。
可选的,所述循环模块81包括降采样单元812,用于:
利用所述当前采样率对所述第一当前信号进行降采样处理;
利用所述当前采样率对所述第一当前信号进行降采样处理。
所述循环模块81包括当前延时确定单元813,用于:
逐帧比对处理后的所述第一当前信号、所述第二当前信号,并根据比对结果确定所述当前延时。
可选的,所述循环模块81还用于:
在所述当前延时准确时,执行所述根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号的步骤。
所述循环模块81还用于:
在所述当前延时不准确时,继续执行所述逐帧比对处理后的所述第一当前信号、所述第二当前信号,并根据比对结果确定所述当前延时的步骤。
所述循环模块81包括:
第一确定单元814,用于根据所述当前延时、所述当前采样率对应的误差,在所述第一当前信号中确定第一目标信号,在所述第二当前信号中确定第二目标信号。
可选的,所述第一确定单元814具体用于:
根据所述当前延时在所述第一当前信号中确定第一位置,根据所述第一位置、所述当前采样率对应的误差确定第一目标信号;
根据所述采样率对应的误差确定目标时长,从所述第二当前信号的起始位置开始,将长度为所述目标时长的信号确定为所述第二目标信号。
所述循环模块81包括第二确定单元815,用于:
根据所述当前延时对所述第一当前信号、所述第二当前信号进行对齐处理;
根据所述当前采样率对应的误差,在对齐后的所述第一当前信号中确定第一目标信号,在对齐后的所述第二当前信号中确定第二目标信号。
可选的,所述第二确定单元815具体用于:
在对齐后的所述第一当前信号中确定起点对齐位置,根据所述起点对齐位置、所述采样率对应的误差确定第一目标信号;
根据所述采样率对应的误差确定目标时长,从所述第二当前信号的起始位置开始,将长度为所述目标时长的信号确定为所述第二目标信号。
可选的,所述确定模块82具体用于:
对与每个当前采样率对应的所述当前延时进行累加处理,得到所述录制信号与所述参考信号之间的目标延时。
所述循环模块81在根据处理后的第一当前信号、处理后的第二当前信号确定当前延时之后,还用于:
若将每个所述预设采样率都确定为所述当前采样率,则执行所述根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时的步骤;
若未将每个所述预设采样率都确定为所述当前采样率,则执行所述根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号的步骤。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
根据本申请的实施例,本申请还提供了一种计算机程序产品,程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
如图10所示,是根据本申请实施例的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图10所示,该电子设备包括:一个或多个处理器1001、存储器1002,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图10中以一个处理器1001为例。
存储器1002即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的信号之间延时的确定方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的信号之间延时的确定方法。
存储器1002作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的信号之间延时的确定方法对应的程序指令/模块(例如,附图8所示的循环模块81、确定模块82)。处理器1001通过运行存储在存储器1002中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的信号之间延时的确定方法。
存储器1002可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1002可选包括相对于处理器1001远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
电子设备还可以包括:输入装置1003和输出装置1004。处理器1001、存储器1002、输入装置1003和输出装置1004可以通过总线或者其他方式连接,图10中以通过总线连接为例。
输入装置1003可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置1004可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
图11为本申请第三示例性实施例示出的信号之间延时的确定方法的流程图。
如图11所示,本申请提供的信号之间延时的确定方法,包括:
步骤1101,在预设采样率中确定当前采样率,并根据当前采样率确定第一当前信号、第二当前信号之间的当前延时;其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号。
其中,本申请提供的方法可以由具备计算能力的电子设备来执行,例如可以是图1中所示出的电子设备11。
具体的,电子设备11具备音频播放功能和录音功能,比如电子设备11可以同时设置有扬声器和麦克风,用来分别实现音频播放和录音功能。电子设备具体可以是移动电话、用于进行视频会议或电话会议的设备、智能音箱等设备,本实施例不对此进行限制。
进一步的,可以预先设置多个级别的预设采样率,这些预设采样率的值不相同。其中,可以预先设置在预设采样率中确定当前采样率的规则。比如,先将采样率最小的值作为当前采样率,再将较大的采样率作为当前采样率。
比如,第一次执行步骤1101时,将最小的预设采样率作为当前采样率,在第二次执行步骤1101时,将次小的预设采样率作为当前采样率,以此类推。
可以根据当前采样率对当前的信号进行处理,从而缩短信号的长度,在执行步骤1102时,可以有效的降低数据处理量。
实际应用时,在第一次执行步骤1101时,第一当前信号为录制信号,第二当前信号为参考信号。再次执行步骤1101时,是基于下述步骤确定第一当前信号和第二当前信号。
步骤1102,根据当前延时确定与第一当前信号对应的新的第一当前信号,确定与第二当前信号对应的新的第二当前信号。
实际应用时,可以根据当前延时确定与第一当前信号对应的新的第一当前信号,确定与第二当前信号对应的新的第二当前信号。
其中,确定出的新的第一当前信号,是第一当前信号中的一部分,新的第二当前信号,是第二当前信号中的一部分。在新的第一当前信号以及新的第二当前信号中,包括录制信号与参考信号的对齐位置,通过这样的方式能够剔除掉原始数据中不包括对齐位置的部分,从而能够有效的降低数据处理量。
一种实施方式中,可以根据当前延时在第一当前信号、第二当前信号中分别确定第一目标信号、第二目标信号,再将第一目标信号作为新的第一当前信号,将第二目标信号作为新的第二当前信号。并继续执行步骤1101。
步骤1102之后,可以根据新的第一当前信号,新的第二当前信号继续执行步骤1101,直到直至将每个预设采样率都确定为当前采样率为止。
步骤1103,根据与每个当前采样率对应的当前延时,确定录制信号与参考信号之间的目标延时。
其中,通过重复上述步骤,将每个预设采样率作为当前采样率时,都能够确定出对应的当前延时。最终,可以根据每次确定的最终延时得到一准确的目标延时。
具体的,可以对这些当前延时进行累加,得到目标延时。例如,共执行三次循环过程,第一次确定的当前延时为5ms,第二次确定的延时为-1ms,第三次确定的延时为0.5ms,则可以将这三个值相加,得到目标延时为4.5ms。可以认为是参考信号滞后于录制信号4.5ms。
在确定了录制信号与参考信号之间的目标延时之后,可以对两个信号进行对齐处理,再使用录制信号减去参考信号,进而得到录制的干净的信号,实现回声消除的目的。本实施例提供的方法中,由于确定延时的过程中,可以高效、准确的确定延时,进而能够对录制的声音进行高效、准确的处理。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (17)
1.一种信号之间延时的确定方法,其特征在于,包括:
重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:
在预设采样率中确定当前采样率,根据所述当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号;将所述第一目标信号确定为所述第一当前信号,并将所述第二目标信号确定为所述第二当前信号;
根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时;
所述根据所述当前延时在所述第一当前信号、所述第二当前信号分别确定第一目标信号、第二目标信号,包括:
根据所述当前延时在所述第一当前信号中确定第一位置,根据所述第一位置、所述当前采样率对应的误差确定第一目标信号;
根据所述采样率对应的误差确定目标时长,从所述第二当前信号的起始位置开始,将长度为所述目标时长的信号确定为所述第二目标信号。
2.根据权利要求1所述的方法,其特征在于,所述在预设采样率中确定当前采样率,包括:
在所述预设采样率中,将未作为所述当前采样率的最小预设采样率作为所述当前采样率。
3.根据权利要求1所述的方法,其特征在于,所述根据所述当前采样率对第一当前信号、第二当前信号进行处理,包括:
利用所述当前采样率对所述第一当前信号进行降采样处理;
利用所述当前采样率对所述第一当前信号进行降采样处理。
4.根据权利要求1所述的方法,其特征在于,所述根据处理后的第一当前信号、处理后的第二当前信号确定当前延时,包括:
逐帧比对处理后的所述第一当前信号、所述第二当前信号,并根据比对结果确定所述当前延时。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述当前延时准确时,执行所述根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号的步骤。
6.根据权利要求4所述的方法,其特征在于,还包括
在所述当前延时不准确时,继续执行所述逐帧比对处理后的所述第一当前信号、所述第二当前信号,并根据比对结果确定所述当前延时的步骤。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述根据所述当前延时在所述第一当前信号、所述第二当前信号分别确定第一目标信号、第二目标信号,包括:
根据所述当前延时对所述第一当前信号、所述第二当前信号进行对齐处理;
根据所述当前采样率对应的误差,在对齐后的所述第一当前信号中确定第一目标信号,在对齐后的所述第二当前信号中确定第二目标信号。
8.根据权利要求7所述的方法,其特征在于,所述在对齐后的所述第一当前信号中确定第一目标信号,包括:
在对齐后的所述第一当前信号中确定起点对齐位置,根据所述起点对齐位置、所述采样率对应的误差确定第一目标信号;
所述在对齐后的所述第二当前信号中确定第二目标信号,包括:
根据所述采样率对应的误差确定目标时长,从所述第二当前信号的起始位置开始,将长度为所述目标时长的信号确定为所述第二目标信号。
9.根据权利要求1-6任一项所述的方法,其特征在于,所述根据与每个当前采样率对应的所述当前延时确定所述录制信号与所述参考信号之间的目标延时,包括:
对与每个当前采样率对应的所述当前延时进行累加处理,得到所述录制信号与所述参考信号之间的目标延时。
10.根据权利要求1-6任一项所述的方法,其特征在于,所述根据处理后的第一当前信号、处理后的第二当前信号确定当前延时之后,还包括:
若将每个所述预设采样率都确定为所述当前采样率,则执行所述根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时的步骤;
若未将每个所述预设采样率都确定为所述当前采样率,则执行所述根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号的步骤。
11.一种信号之间延时的确定装置,其特征在于,包括:
循环模块,用于重复执行以下步骤,直至将每个预设采样率都确定为当前采样率,其中,初始的第一当前信号为录制信号,初始的第二当前信号为参考信号:
在预设采样率中确定当前采样率,根据所述当前采样率对第一当前信号、第二当前信号进行处理;根据处理后的第一当前信号、处理后的第二当前信号确定当前延时;根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号;将所述第一目标信号确定为所述第一当前信号,并将所述第二目标信号确定为所述第二当前信号;
确定模块,用于根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时;
所述循环模块包括:
第一确定单元,用于根据所述当前延时在所述第一当前信号中确定第一位置,根据所述第一位置、所述当前采样率对应的误差确定第一目标信号;
所述第一确定单元,还用于根据所述采样率对应的误差确定目标时长,从所述第二当前信号的起始位置开始,将长度为所述目标时长的信号确定为所述第二目标信号。
12.根据权利要求11所述的装置,其特征在于,所述循环模块包括采样率确定单元,用于:
在所述预设采样率中,将未作为所述当前采样率的最小预设采样率作为所述当前采样率。
13.根据权利要求11所述的装置,其特征在于,所述循环模块包括当前延时确定单元,用于:
逐帧比对处理后的所述第一当前信号、所述第二当前信号,并根据比对结果确定所述当前延时。
14.根据权利要求11-13任一项所述的装置,其特征在于,所述循环模块包括第二确定单元,用于:
根据所述当前延时对所述第一当前信号、所述第二当前信号进行对齐处理;
根据所述当前采样率对应的误差,在对齐后的所述第一当前信号中确定第一目标信号,在对齐后的所述第二当前信号中确定第二目标信号。
15.根据权利要求11-13任一项所述的装置,其特征在于,所述循环模块在根据处理后的第一当前信号、处理后的第二当前信号确定当前延时之后,还用于:
若将每个所述预设采样率都确定为所述当前采样率,则执行所述根据与每个当前采样率对应的所述当前延时,确定所述录制信号与所述参考信号之间的目标延时的步骤;
若未将每个所述预设采样率都确定为所述当前采样率,则执行所述根据所述当前延时在所述第一当前信号、所述第二当前信号中分别确定第一目标信号、第二目标信号的步骤。
16.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的方法。
17.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010437931.3A CN111613238B (zh) | 2020-05-21 | 2020-05-21 | 信号之间延时的确定方法、装置、设备以及存储介质 |
EP20216586.6A EP3839948A1 (en) | 2020-05-21 | 2020-12-22 | Method for determining delay between signals, apparatus, device and storage medium |
US17/137,577 US11462227B2 (en) | 2020-05-21 | 2020-12-30 | Method for determining delay between signals, apparatus, device and storage medium |
JP2021029967A JP7261250B2 (ja) | 2020-05-21 | 2021-02-26 | 信号間レイテンシの決定方法、装置、機器、及び記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010437931.3A CN111613238B (zh) | 2020-05-21 | 2020-05-21 | 信号之间延时的确定方法、装置、设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111613238A CN111613238A (zh) | 2020-09-01 |
CN111613238B true CN111613238B (zh) | 2023-09-19 |
Family
ID=72203545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010437931.3A Active CN111613238B (zh) | 2020-05-21 | 2020-05-21 | 信号之间延时的确定方法、装置、设备以及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11462227B2 (zh) |
EP (1) | EP3839948A1 (zh) |
JP (1) | JP7261250B2 (zh) |
CN (1) | CN111613238B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115426067A (zh) * | 2022-09-01 | 2022-12-02 | 安徽聆思智能科技有限公司 | 一种音频信号同步方法和相关装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04100424A (ja) * | 1990-08-20 | 1992-04-02 | Nippon Telegr & Teleph Corp <Ntt> | 遅延時間測定装置および遅延時間測定方法 |
JP2007214976A (ja) * | 2006-02-10 | 2007-08-23 | Sharp Corp | エコーキャンセル装置、テレビ電話端末、及びエコーキャンセル方法 |
GB201322926D0 (en) * | 2013-12-23 | 2014-02-12 | Hellosoft Inc | Acoustic echo suppression |
CN109102821A (zh) * | 2018-09-10 | 2018-12-28 | 苏州思必驰信息科技有限公司 | 时延估计方法、系统、存储介质及电子设备 |
CN110265048A (zh) * | 2019-03-18 | 2019-09-20 | 百度在线网络技术(北京)有限公司 | 回声消除方法、装置、设备及存储介质 |
CN111009254A (zh) * | 2019-12-13 | 2020-04-14 | 恒玄科技(上海)股份有限公司 | 音频回声滤波系统及主动降噪系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6542611B1 (en) * | 1998-07-31 | 2003-04-01 | Circuit Research Labs, Inc. | Multi-state echo suppressor |
US9142221B2 (en) * | 2008-04-07 | 2015-09-22 | Cambridge Silicon Radio Limited | Noise reduction |
-
2020
- 2020-05-21 CN CN202010437931.3A patent/CN111613238B/zh active Active
- 2020-12-22 EP EP20216586.6A patent/EP3839948A1/en active Pending
- 2020-12-30 US US17/137,577 patent/US11462227B2/en active Active
-
2021
- 2021-02-26 JP JP2021029967A patent/JP7261250B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04100424A (ja) * | 1990-08-20 | 1992-04-02 | Nippon Telegr & Teleph Corp <Ntt> | 遅延時間測定装置および遅延時間測定方法 |
JP2007214976A (ja) * | 2006-02-10 | 2007-08-23 | Sharp Corp | エコーキャンセル装置、テレビ電話端末、及びエコーキャンセル方法 |
GB201322926D0 (en) * | 2013-12-23 | 2014-02-12 | Hellosoft Inc | Acoustic echo suppression |
CN109102821A (zh) * | 2018-09-10 | 2018-12-28 | 苏州思必驰信息科技有限公司 | 时延估计方法、系统、存储介质及电子设备 |
CN110265048A (zh) * | 2019-03-18 | 2019-09-20 | 百度在线网络技术(北京)有限公司 | 回声消除方法、装置、设备及存储介质 |
CN111009254A (zh) * | 2019-12-13 | 2020-04-14 | 恒玄科技(上海)股份有限公司 | 音频回声滤波系统及主动降噪系统 |
Non-Patent Citations (2)
Title |
---|
Youhong Lu 等.Enhancing echo cancellation via estimation of delay.IEEE Transactions on Signal Processing.2005,全文. * |
王宏江 ; 郭会军 ; 李军怀 ; .超声回波信号包络相关时延估计优化算法.计算机工程与应用.2012,(20),全文. * |
Also Published As
Publication number | Publication date |
---|---|
JP2021100261A (ja) | 2021-07-01 |
CN111613238A (zh) | 2020-09-01 |
US20210366503A1 (en) | 2021-11-25 |
EP3839948A1 (en) | 2021-06-23 |
JP7261250B2 (ja) | 2023-04-19 |
US11462227B2 (en) | 2022-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112382285B (zh) | 语音控制方法、装置、电子设备和存储介质 | |
CN111582375A (zh) | 数据增强策略搜索方法、装置、设备以及存储介质 | |
CN113168268B (zh) | 触控检测方法、触控检测电路、触控芯片以及电子设备 | |
JP7427627B2 (ja) | ビデオセグメント抽出方法、ビデオセグメント抽出装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム | |
KR102607536B1 (ko) | 옵티마이저 학습 방법, 장치, 전자 기기 및 판독 가능 기록 매체 | |
CN110647617B (zh) | 对话引导模型的训练样本构建方法和生成模型的方法 | |
CN110569969A (zh) | 网络模型结构的采样方法、装置以及电子设备 | |
JP2021128327A (ja) | 口形特徴予測方法、装置及び電子機器 | |
JP2022006159A (ja) | 情報を処理するための方法及び装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム | |
CN111613238B (zh) | 信号之间延时的确定方法、装置、设备以及存储介质 | |
JP2022006167A (ja) | ビデオ再生開始の最適化方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム | |
CN111175810B (zh) | 微震信号到时拾取方法、装置、设备及存储介质 | |
CN111680599B (zh) | 人脸识别模型处理方法、装置、设备和存储介质 | |
CN115665319B (zh) | 基于无线耳机的应用控制方法、装置、设备以及存储介质 | |
CN111736797B (zh) | 负延时时间的检测方法、装置、电子设备及存储介质 | |
CN115660957A (zh) | 一种波形数据的重采样方法、装置、设备及介质 | |
CN112466292B (zh) | 语言模型的训练方法、装置和电子设备 | |
US10614797B2 (en) | Prefix methods for diarization in streaming mode | |
CN114125324A (zh) | 一种视频拼接方法、装置、电子设备及存储介质 | |
JP7162040B2 (ja) | エコー遅延検出方法、装置、プログラム及び非一時的コンピュータ読み取り可能な記憶媒体 | |
CN111354348A (zh) | 一种数据处理方法、装置和用于数据处理的装置 | |
CN112614486B (zh) | 应用于扫地机的语音控制执行功能方法、装置、电子设备 | |
CN111611768B (zh) | 用于监控时钟信号的方法和装置 | |
CN115035911B (zh) | 噪声生成模型训练方法、装置、设备及介质 | |
CN117891344A (zh) | 数据截取方法、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20211022 Address after: 100176 101, floor 1, building 1, yard 7, Ruihe West 2nd Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing Applicant after: Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. Address before: 2 / F, baidu building, 10 Shangdi 10th Street, Haidian District, Beijing 100085 Applicant before: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |