Echo cancellation device
The echo suppression device uses a combination of adaptive filters, down-sampling, and controlled delays to efficiently cancel echoes, addressing the limitations of conventional methods by reducing calculation and delay, suitable for systems with low delay constraints.
Patent Information
- Application Number
- DE112013007077
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2013-05-14
- Publication Date
- 2025-01-23
- Estimated Expiration
- 2033-05-14
AI Technical Summary
Conventional echo cancellation technologies face challenges with increased calculation quantities and potential delays due to the use of two-stage adaptive filters, which limits their application in systems requiring low delay and results in perceived residual echoes.
The proposed echo suppression device employs a first adaptive filter to generate a pseudo echo signal, followed by down-sampling and delay units to extract deep-band components, a second adaptive filter to process these components, and an up-sampling process to create a final pseudo echo signal, all while controlling delays and reducing calculation complexity.
This approach effectively suppresses echoes without increasing calculation load and delaying the signal, making it suitable for systems with low delay requirements.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical area
[0001] The invention relates to an echo cancellation device used for audio communication. State of the art
[0002] In a system where output from a loudspeaker can be fed into a microphone, such as in a telephone hands-free system or a telephone conference system, it is necessary to ensure the voice quality of the system, in particular to cancel an echo caused by acoustic coupling in a two-way conversation.
[0003] For a conventional technique for canceling such an echo, there is an acoustic echo canceller which cancels an echo from the loudspeaker to the microphone by identifying an echo path using an adaptive filter, the adaptive filter identifying a transfer function between a loudspeaker and a microphone, and subtracting a generated pseudo-echo signal from an input signal to the microphone using the identified echo path.
[0004] A general acoustic echo canceller cancels an echo using a single adaptive filter. In cases where the impulse response of an echo path is longer, the adaptive filter must have a longer tap.
[0005] However, the adaptive filter has the disadvantage that the adaptive speed decreases when the tap is longer.
[0006] As a conventional technique for overcoming the above-described disadvantage, there is Patent Literature 1, which discloses an echo canceller with a two-stage adaptive filter. In this echo canceller, a direct component of an echo is canceled in a pre-stage, and a reverberation component is removed in a subsequent stage to improve the speed of the adaptive operation. The adaptive filter provided in the pre-stage is shortened in tap length to remove the direct component of an echo. On the other hand, the adaptive filter provided in the subsequent stage is lengthened in tap length to remove the reverberation component that cannot be removed by the adaptive filter at the pre-stage.Since the direct component, which has a large proportion in an echo component, is thus canceled in the pre-stage, an excellent degree of echo cancellation can be expected from the early stage of the operation.
[0007] Patent Literature 2 discloses a sub-band echo canceller that divides an acoustic signal band into a plurality of frequency bands and performs echo cancellation of the corresponding bands. The sub-band echo canceller divides an acoustic signal band and thins out an acoustic signal in each frequency band at a predetermined thinning rate to generate sub-band signals, which can reduce the sampling frequency, thereby enabling a reduction in the amount of calculation. This is because when the sampling frequency is 1 / 2, the amount of calculation by the adaptive filter is reduced to 1 / 4 for the same reverberation time.
[0008] JP 2006 262 098 A discloses a noise cancellation device equipped with an adaptive filter that deals with a long echo noise and is updated in a short period of time.
[0009] US 5,889,857 A relates to an acoustic echo cancellation device with subband filtering. This device is provided between an acoustic hands-free interface and a communications network.
[0010] DE 696 36 361 T2 relates to an acoustic echo canceller arrangement comprising first echo canceller means and at least second echo canceller means. The first echo canceller means are connected between a receive path and a transmit path and have a first impulse response synthesis capability for generating a first error signal for cancelling echoes in the transmit path. The second echo canceller means, with a second impulse response synthesis capability, are connected in parallel with the first echo canceller means between the receive path and the transmit path.
[0011] DE 698 01 083 T2 discloses an adaptive filter for synthesizing an approximation of a system with an incoming path and an outgoing path.
[0012] EP 1817 847 B1 relates to a system for canceling an echo, the system comprising a transmitter, a first path, a second path and an echo canceller. Citation list Patent Literature 1: JP 6-13938 A Patent Literature 2: JP 2006-203358 A Summary of the invention
[0013] In the conventional technique represented by patent literature, since adaptive filters are configured in two stages, the computation amounts regarding the adaptive filters increase, and thus there is a problem that it is difficult to implement.
[0014] In the conventional technique represented by Patent Literature 2, a delay in a signal may occur due to the influence of an anti-aliasing filter during band division, band combination, and sampling frequency conversion. Thus, this technique cannot be applied to systems requiring low delay, and thus poses a problem with a limited application range. Furthermore, there is another problem that as the delay amount increases, residual echo is more likely to be perceived.
[0015] The present invention was conceived to solve problems such as those described above. An object of the invention is to provide an echo canceller capable of canceling an echo while suppressing an increase in the amount of computation and suppressing the occurrence of a delay.
[0016] An echo cancellation device according to the invention comprises: a first adaptive filter that generates a first pseudo-echo signal based on a received signal; a first downsample processor that performs a downsampling process of delaying the received signal and extracting a low-band component; a delay controller that inserts a delay into the low-band component extracted by the first downsample processor and outputs the low-band component delayed by a delay amount equal to a tap length indicating a response time of the first adaptive filter or by a delay amount smaller than the tap length; a second adaptive filter that generates a second low-band pseudo-echo signal from the low-band component extracted by the first downsample processor; a second adaptive filter changer that determines an adaptive filter coefficient of the second adaptive filter based on an output signal of the delay control unit; and an upsample processor that performs an upsampling process on the second pseudo-echo signal and generates a third pseudo-echo signal.
[0017] According to the present invention, there is an advantageous effect that an echo can be canceled while suppressing an increase in the amount of calculation and suppressing the occurrence of a delay. Short description of the characters Fig. 1 is a block diagram showing a configuration of an echo canceling apparatus according to Embodiment 1 of the present invention. Fig. 2 is a diagram showing an example of a characteristic of an anti-aliasing filter used for a downsampling process of Embodiment 1. Fig. 3 is a diagram showing an example of an adaptive range of a subband adaptive filter changer of Embodiment 1. Fig. 4 is a diagram showing an example of an adaptive range of a pseudo-echo generated by a sub-band pseudo-echo generator of Embodiment 1. Fig. 5 is a block diagram showing a configuration of an echo canceling apparatus according to Embodiment 2 of the present invention. Description of the embodiments
[0018] In order to describe the present invention in more detail, modes for implementing the invention are described below with reference to the accompanying figures. (Embodiment 1)
[0019] Fig. 1 is a block diagram showing a configuration of an echo canceller according to Embodiment 1 of the present invention. Fig. The echo cancellation device shown in FIG. 1 is an echo cancellation device that generates a pseudo-echo signal by estimating an echo path based on a received signal toward the speaker 10 and subtracts the generated pseudo-echo signal from a transmission signal input through a microphone 20, thereby performing echo cancellation. The echo cancellation device is configured to include a full-band echo canceller 100a, a low-band echo canceller 100b, subtractors 103a and 103b, downsample processors 104a and 104b, delay control units 105a and 105b, and an upsample processor 108.
[0020] The full-band echo canceller 100a is a first echo canceller that generates a pseudo-echo signal from a received signal and a full-band adaptive filter coefficient. The full-band echo canceller 100a includes a pseudo-echo generator 101 and an adaptive filter changing unit 102. In the following description, an NLMS (Normalized Least Mean Squares Filter) is used as the adaptive filter. Note that other adaptive filters, such as an LMS (Least Mean Squares), an RLS (Recursive Least Squares), and an affine projection filter, may be used instead in the present invention.
[0021] The pseudo-echo generator 101 is a pseudo-echo generator that generates a full-band pseudo-echo signal from a received signal toward the loudspeaker 10 and a full-band adaptive filter coefficient to cancel an echo. Here, a tap length, which indicates the response time of an adaptive filter in the pseudo-echo generator 101, is denoted by L. A designated.
[0022] The adaptive filter changing unit 102 is a first adaptive filter changing unit that varies the adaptive filter coefficient of the adaptive filter in the pseudo echo generator 101 based on an output signal of the subtractor 103a and the received signal.
[0023] The subtractor 103a is a first subtractor that subtracts the pseudo echo signal generated by the full-band echo canceller 100a from a transmission signal.
[0024] The subtractor 103b is a second subtractor that subtracts a pseudo-echo signal generated by the upsample processor 108 from the output signal of the subtractor 103a.
[0025] The downsample processor 104a is a first downsample processor that performs a downsampling process of delaying the received signal by the delay amount D1, thereby extracting a low-band component delayed by the delay amount D1.
[0026] The downsample processor 104b is a second downsample processor that performs a downsampling process of delaying an output signal of the subtractor 103b by the delay amount D1, thereby extracting a low-band component delayed by the delay amount D1.
[0027] The delay control unit 105a is a first delay control unit that inserts a delay of a delay amount D2 into the low-band component extracted by the downsample processor 104a and delayed by the delay amount D1, and that outputs a low-band component delayed by the delay amount D1+D2.
[0028] The delay control unit 105b is a second delay control unit that inserts a delay of a delay amount D3 into a signal output from the delay control unit 105a and delayed by a delay amount D1+D2, and that outputs a low-band component delayed by the delay amount D1+D2+D3.
[0029] The low-band echo canceller 100b is a second echo canceller configured to include an adaptive filter that generates a pseudo echo signal of a low-band component delayed by the delay amount D1+D2 from output signals of the delay control units 105a and 105b and a low-band adaptive filter coefficient.
[0030] As with the full-band echo canceller 100a, the NLMS is used as the adaptive filter in the low-band echo canceller 100b in the following description. However, it should be noted that other adaptive filters, such as an LMS, an RLS, and an affine projection filter, may be used instead.
[0031] In addition, the low-band echo canceller comprises a sub-band pseudo-echo generator 106 and a sub-band adaptive filter changing unit 107.
[0032] The subband pseudo-echo generator 106 is configured to include an adaptive filter that generates a low-band subband pseudo-echo signal delayed by the delay amount D1+D2 from the output signal of the delay control unit 105a and a low-band adaptive filter coefficient.
[0033] Here, a tap length, which indicates the response time of an adaptive filter in the pseudo-echo generator 106, is denoted by L B designated.
[0034] The subband adaptive filter varying unit 107 is a subband adaptive filter varying unit that varies the adaptive filter coefficient of the adaptive filter in the subband pseudo-echo generator 106 based on an output signal of the delay control unit 105b and an output signal of the downsample processor 104b.
[0035] The upsample processor 108 performs an upsampling process in which the pseudo-echo signal generated by the low-band echo canceller 100b is delayed by the delay amount D1, thereby generating a full-band pseudo-echo signal which is delayed by the delay amount 201+D2.
[0036] The delay control units 105a and 105b according to Embodiment 1 control the delay amounts O2 and D3 such that a bleed length L A a condition L A ≥201+D2=D2+D3, where the tap length L A indicates the response time of the adaptive filter in the full-band echo canceller 100a.
[0037] In this way, the echo cancellation device is capable of performing an echo cancellation process without causing a delay in the received signal, and thus it can be applied to a system requiring a low delay.
[0038] In addition, the amount of computation can be suppressed by reducing the sampling frequency using downsampling.
[0039] By means of a microcomputer of an information processing device connected thereto, the loudspeaker 10 and the microphone 20 execute a program for processes specific to the invention, the echo cancellers 100a and 100b, the subtractors 103a and 103b, the downsample processors 104a and 104b, the delay control units 105a and 105b, and the upsample processor 108 are implemented as specific means, with hardware and software cooperating with each other.
[0040] Next, the operation is described. In the full-band echo canceller 100a, the pseudo-echo generator 101 generates a pseudo-echo signal by estimating an echo path from the received signal toward the loudspeaker 10 and an adaptive filter coefficient generated by the adaptive filter changing unit 102. The pseudo-echo generator 101 and the adaptive filter changing unit 102 function as a full-band echo canceller.
[0041] The adaptive filter variation unit 102 varies the adaptive filter coefficient of the adaptive filter of the pseudo-echo generator 101 by performing an adaptive process based on the output signal of the subtractor 103a and the received signal. The subtractor 103a subtracts the pseudo-echo signal generated by the pseudo-echo generator 101 from the transmission signal input through the microphone 20. Therefore, the output signal of the subtractor 103a is a full-band signal in which an echo is canceled.
[0042] The downsample processor 104a receives the above-described received signal in the same manner as the pseudo-echo generator 101 and performs a downsampling process on the received signal to extract a low-band component from the received signal. Fig. 2 is a diagram showing an example of a characteristic of an anti-aliasing filter used for a downsampling process of Embodiment 1. In Fig. 2, "FS" represents the sampling frequency obtained after downsampling, and the filter is an FIR filter with a cutoff frequency set to a frequency lower than FS / 2 (the Nyquist frequency obtained after downsampling). Therefore, even if a 1 / 2 downsampling process is performed, aliasing does not occur in the output signal. At this time, a delay occurs in the received signal due to the influence of filtering. The amount of this delay is denoted by D1.
[0043] The downsample processor 104b performs a downsampling process on an output signal of the subtractor 103b, extracting a low-band component from the output signal of the subtractor 103b. As with the downsample processor 104a, the downsample processor 103b performs 1 / 2 downsampling using the Fig. 2. Thus, a delay of a delay amount D1 also occurs in this downsampling process, and a low-band component delayed by the delay amount D1 is extracted.
[0044] The delay control unit 105a is provided to control a response range covered by a pseudo-echo signal, the pseudo-echo signal being generated by the sub-band pseudo-echo generator 106 in the subsequent stage.
[0045] When the delay control unit 105a receives the low-band component extracted by the downsample processor 104a and delayed by the delay amount D1, the delay control unit 105a applies a delay of a delay amount D2 to this signal and outputs the resulting signal. Consequently, the output signal of the delay control unit 105a is delayed by the delay amount D1+D2.
[0046] The delay control unit 105b is provided to control a response range covered by the adaptive filter, and the subband adaptive filter changing unit 107 performs an adaptive process with the adaptive filter in a subsequent stage.
[0047] When the delay control unit 105b receives the signal output from the delay control unit 105a, which has been delayed by the delay amount D1+D2, the delay control unit 105b applies a delay of a delay amount D3 to the signal and outputs the resulting signal. Consequently, the output signal of the delay control unit 105b is delayed by the delay amount D1+D2+D3.
[0048] In the low-band echo canceller 100b, the sub-band echo generator 106 generates a low-band pseudo-echo signal from the signal output by the delay control unit 105a and delayed by the delay amount D1+D2, and an adaptive filter coefficient obtained from the sub-band adaptive filter changing unit 107. Consequently, the pseudo-echo signal generated by the sub-band pseudo-echo generator 106 is delayed by the delay amount D1+D2.
[0049] The subband adaptive filter changing unit 107 performs an adaptive process based on the signal output from the delay control unit 105b and delayed by the delay amount D1+D2+D3, and the transmission signal output from the downsample processor 104b and delayed by the delay amount D1. The tap length of the adaptive filter in the low-band echo canceller 100b is designated L. B As such, the subband pseudo-echo generator 106 and the subband adaptive filter changing unit 107 function as a low-band echo canceller.
[0050] Fig. 3 is a diagram showing an example of an adaptive range of the subband adaptive filter changing unit of the embodiment 1. As in Fig. 3, the adaptive range for an echo path impulse response is a range corresponding to the length of the tap length L B(a response time) after the time is delayed by D1+D2, which is the difference in delay between an output signal of the delay control unit 105b and an output signal of the downsample processor 104b, each of which is input to the subband adaptive filter changing unit 107.
[0051] Consequently, if the tapping length L A of the adaptive filter of the pseudo-echo generator 101, which is a full-band echo canceller, is equal to D2+D3, an adaptive range can be covered without excess or deficiency where the adaptive filter changing unit 102 and the sub-band adaptive filter changing unit 107 are synthesized together. In this case, the adaptive time thereof is L A +L B .
[0052] On the other hand, the upsample processor 108 upsamples the pseudo echo signal generated by the subband pseudo echo generator 106 and the subband adaptive filter changing unit 107. As with the downsample processor 104a, double upsampling is performed using the Fig. 2 shown anti-aliasing filter.
[0053] Namely, as in the downsample processor 104a, because a delay amount D1 occurs due to upsampling, a full-band sub-band pseudo-echo signal generated by the upsample processor 108 is delayed by the delay amount 2D1+D2.
[0054] Fig. Fig. 4 is a diagram showing an example of an adaptive range for a pseudo-echo generated by the sub-band pseudo-echo generator of Embodiment 1. As in the Fig. 3, the adaptive range of the adaptive filter of the low-band echo canceller 100b is delayed by the delay amount D2+D3.
[0055] The delay control units 105a and 105b control the delay amounts D2 and D3 such that D1+D2 equals D2+D3, that is, D3=2D1. By this control, as shown in the Fig. As shown in Figure 4, a subband pseudo-echo signal generated by the subband pseudo-echo generator 106 becomes a signal that only estimates an echo in the adaptive range. Therefore, an echo cancellation process is possible without introducing a delay in the system as a whole.
[0056] In Fig. 4 becomes L A =2D1+D2 is used to cover the adaptive range without excess or deficiency. The occurrence of a delay where adaptive ranges to be covered overlap each other can be suppressed by controlling the delay amount D2 to meet a condition L A≥2D1+D2 using the delay control unit 105a.
[0057] It should be noted that if a condition L A <2D1+D2 is used, although no delay occurs, the adaptive sections of the full-band adaptive filter and the sub-band adaptive filter are interrupted, which may cause a residual echo, and this is thus undesirable.
[0058] Although the case is shown in which the downsample processors 104a and 104b form a filter with the characteristic of Fig. 2, any filter can be used as long as the filter has a characteristic where aliasing does not occur during downsampling, and thus the filter is not limited to the one with the Fig. 2 shown characteristic curve.
[0059] Furthermore, although the above description shows the case where the downsampling rate is 1 / 2, any rate can be selected as long as the filter is one with a characteristic where aliasing does not occur during downsampling.
[0060] Furthermore, although the case is shown where the downsample processors 104a and 104b use the same type of filter, downsampling may be performed using filters with different characteristics.
[0061] Although the case is shown in which the upsample processor 105 is a filter with the characteristic of Fig. 2, any filter can be used as long as the filter has a characteristic where aliasing does not occur during upsampling, and thus the filter is not limited to the one with the Fig. 2 shown characteristic curve.
[0062] Furthermore, although in the above description the upsampling rate is 2x, any rate can be selected in accordance with the downsampling rate, under the condition that the filter is one with a characteristic where aliasing does not occur in upsampling.
[0063] In addition, although the case is shown where the upsample processor 108 uses the same filter type as the filter type used by the downsampling processors 104a and 104b, the upsampling may be performed using a filter with a different characteristic.
[0064] As described above, the echo canceling device according to Embodiment 1 comprises: the full-band echo canceller 100a, configured to include an adaptive filter that generates a pseudo-echo signal from a received signal and a full-band adaptive filter coefficient; a downsample processor 104a that performs a downsampling process of delaying the received signal by the delay amount D1 and extracting a low-band component delayed by the delay amount D1; the delay control unit 105a which inserts a delay of a delay amount D2 into the low-band component extracted by the downsample processor 104a and outputs a low-band component delayed by a delay amount D1+D2; the delay control unit 105b which inserts a delay of a delay amount D3 into an output signal of the delay control unit 105a and outputs a low-band component delayed by the delay amount D1+D2+D3; the low-band echo canceller 100b, which is configured to include an adaptive filter that generates a low-band pseudo-echo signal delayed by the delay amount D1+D2 from the output signal of the delay control unit 105a and a low-band adaptive filter coefficient; and the upsample processor 108 which performs an upsampling process of delaying the pseudo-echo signal generated by the low-band echo canceller 100b by the delay amount D1 and generates a full-band pseudo-echo signal delayed by the delay amount 2D1+D2.
[0065] The delay control units 105a and 105b control the delay amounts D2 and D3 such that the tapping length L A the condition L A ≥201+D2=D2+D3, where the tap length L A is the response time of the adaptive filter of the full-band echo canceller 100a.
[0066] By using such a configuration, the echo cancellation device can perform echo cancellation without causing a delay in a received signal toward the speaker 10, and thus can be applied to a system requiring a low delay. Furthermore, an increase in the amount of computation can be suppressed by reducing the sampling frequency through downsampling.
[0067] In addition, the echo cancellation device according to Embodiment 1 comprises: the subtractor 103a which subtracts the pseudo-echo signal generated by the full-band echo canceller 100a from a transmission signal; the subtractor 103b, which subtracts the pseudo-echo signal generated by the upsample processor 108 from an output signal of the subtractor 103a; and the downsample processor 104b which performs a downsampling process of delaying an output signal of the subtractor 103b by the delay amount D1 and outputs a low-band component delayed by the delay amount D1. The full-band echo canceller 100a includes the pseudo-echo generator 101 configured to include an adaptive filter that generates a pseudo-echo signal from the received signal and a full-band adaptive filter coefficient; and the adaptive filter changing unit 102, which varies the adaptive filter coefficient of the adaptive filter of the pseudo-echo generator 101, based on the output signal of the subtractor 103a and the received signal. The low-band echo canceller 100b includes the subband pseudo-echo generator 106, which is configured to contain an adaptive filter that generates a low-band subband pseudo-echo signal delayed by the delay amount D1+D2 from the output signal of the delay control unit 105a and a low-band adaptive filter coefficient; and the subband adaptive filter variation unit 107, which varies the adaptive filter coefficient of the adaptive filter in the subband pseudo-echo generator 106 based on the output signal of the delay control unit 105b and the output signal of the downsample processor 104b. With such a configuration, an echo can be canceled, while suppressing an increase in the amount of calculation and suppressing the occurrence of a delay. (Embodiment 2)
[0068] Embodiment 1 described above illustrates the case where the downsample processor 104a extracts only a low-band component in a subsequent stage, and the sub-band pseudo-echo generator 106 and the sub-band adaptive filter changing unit 107 generate a low-band pseudo-echo. On the other hand, Embodiment 2 describes the case where pseudo-echo signals are generated using signals divided into a plurality of frequency bands, for example, divided into two bands, a low band and a high band.
[0069] Fig. 5 is a block diagram describing a configuration of an echo canceller according to Embodiment 2 of the present invention. Fig. The echo canceller shown in FIG. 5 is, as in Embodiment 1, an echo canceller that performs echo cancellation by generating a pseudo-echo signal by estimating an echo path based on a received signal toward a speaker 10, and subtracting the pseudo-echo signal from a transmission signal input through a microphone 20. The echo canceller is configured to include a full-band echo canceller 200a, a divided-band echo canceller 200b, subtractors 203a to 203d, subband division processors 204a and 204b, delay controllers 205a to 205d, and a subband synthesis processor 208.
[0070] The full-band echo canceller 200a is, as in Embodiment 1, a first echo canceller that generates a pseudo-echo signal from a received signal and a full-band adaptive filter coefficient, and includes a pseudo-echo generator 201 and an adaptive filter changer 202.
[0071] In the following description, an NLMS is used as the adaptive filter. However, it should be noted that other adaptive filters, such as an LMS, an RLS, and an affine projection filter, can be used in the invention.
[0072] The pseudo-echo generator 201 is a pseudo-echo generator that generates a full-band pseudo-echo signal from a received signal toward the loudspeaker 10 and a full-band adaptive filter coefficient to cancel an echo. A tap length, which indicates the response time of an adaptive filter in the pseudo-echo generator 201, is denoted by L. A designated.
[0073] The adaptive filter varying unit 202 is a first adaptive filter varying unit that varies the adaptive filter coefficient of the adaptive filter in the pseudo-echo generator 201 based on an output signal of the subtractor 203a and the received signal.
[0074] The subtractor 203a is a first subtractor that subtracts the pseudo-echo signal generated by the full-band echo canceller from a transmission signal.
[0075] The subtractor 203b is a second subtractor that subtracts a pseudo-echo signal generated by the subband synthesis processor 208 from the output signal of the subtractor 203a.
[0076] The subband division processor 204a is a first subband division processor that divides the received signal into subband signals of a plurality of frequency bands. A QMF (Quadrature Mirror Filter) is used as a means for the subband division process.
[0077] Alternatively, other means for subdivision can be used. Note that a delay occurs in the received signal due to the QMF filtering process. The amount of this delay is denoted by D1.
[0078] In the following, the signal is divided into a low-band subband signal and a high-band subband signal.
[0079] The subband division processor 204b is a second subband division processor that divides an output signal of the subtractor 203b into subband signals of a plurality of frequency bands. The subband division processor 204b also utilizes the QMF. Alternatively, other means for division may be used.
[0080] Note that, as with subband subdivision processor 204b, a delay occurs in the signal input from subtractor 203b due to the QMF filtering process. The magnitude of this delay is denoted by D1.
[0081] In the following, the signal is divided into a low-band subband signal and a high-band subband signal.
[0082] The delay control unit 205a is a first delay control unit that inserts a delay of a delay amount D2 into the low-band sub-band signal divided by the sub-band division processor 204a and outputs a low-band sub-band signal delayed by the delay amount D1+D2.
[0083] Similarly, the delay control unit 205c is a first delay control unit that inserts a delay of a delay amount D2 into the high-band sub-band signal divided by the sub-band division processor 204a and outputs a high-band sub-band signal delayed by the delay amount D1+D2.
[0084] The delay control unit 205b is a second delay control unit that inserts a delay of a delay amount D3 into the output signal of the delay control unit 205a and outputs a low-band sub-band signal delayed by the delay amount D1+D2+D3.
[0085] The delay control unit 205d is a second delay control unit that inserts a delay of a delay amount D3 into the output signal of the delay control unit 205c and outputs a high-band sub-band signal delayed by the delay amount D1+D2+D3.
[0086] The divided-band echo canceller 200b is a second echo canceller configured to include adaptive filters that generate pseudo-echo signals in the respective frequency bands delayed by the delay amount D1+D2 from the output signals of the delay control units 205a and 205c and corresponding frequency band adaptive filter coefficients.
[0087] As in the case of the full-band echo canceller 200a, NLMS are used as the adaptive filters in the subband echo canceller 200b in the following description. Alternatively, other adaptive filters, such as LMS, RLS, and affine projection filters, may be used.
[0088] The subband echo canceller 200b includes a low-band echo canceller 200b-1 and a high-band echo canceller 200b-2.
[0089] The low-band echo canceller 200b-1 generates a low-band pseudo-echo signal delayed by the delay amount D1+D2 from the low-band sub-band signal output from the delay control unit 205a and a corresponding low-band adaptive filter coefficient.
[0090] The high-band echo canceller 200b-2 generates a high-band pseudo-echo signal delayed by the delay amount D1+D2 from the high-band sub-band signal output from the delay control unit 205c and a corresponding high-band adaptive filter coefficient.
[0091] The low-band echo canceller 200b-1 includes a sub-band pseudo-echo generator 206a and a sub-band adaptive filter changing unit 207a.
[0092] The subband pseudo-echo generator 206a is configured to include an adaptive filter that generates a low-band subband pseudo-echo signal delayed by the delay amount D1+D2 from the output signal of the delay control unit 205a and a low-band adaptive filter coefficient.
[0093] A tap length, which indicates the response time of the adaptive filter in the subband pseudo-echo generator 206a, is denoted by L B designated.
[0094] The subband adaptive filter varying unit 207a is a subband adaptive filter varying unit that varies the adaptive filter coefficient of the adaptive filter of the subband pseudo-echo generator 206a based on the output signal of the delay control unit 205b and an output signal of the subband division processor 204b.
[0095] The high-band echo canceller 200b-2 includes a sub-band pseudo-echo generator 206b and a sub-band adaptive filter changing unit 207b.
[0096] The subband pseudo-echo generator 206b is configured to include an adaptive filter that generates a high-band pseudo-echo signal delayed by the delay amount D1+D2 from the output signal of the delay control unit 205c and a high-band adaptive filter coefficient. A tap length, which indicates the response time of the adaptive filter in the subband pseudo-echo generator 206b, is denoted by L. B designated.
[0097] The subband adaptive filter varying unit 207b is a subband adaptive filter varying unit that varies the adaptive filter coefficient of the adaptive filter of the subband pseudo-echo generator 206b based on the output signal of the delay control unit 205d and the output signal of the subband division processor 204b.
[0098] The subband synthesis processor 208 synthesizes the pseudo-echo signals in the respective frequency bands generated by the subband echo canceller 200b into a full band using the delay amount D1 to generate a full band pseudo-echo signal delayed by the delay amount 201+D2.
[0099] The delay control units 205a to 205d according to Embodiment 2 control the delay amounts D2 and D3 such that the tap length L A a condition L A ≥201+D2=D2+D3, where the tap length indicates the response time of the adaptive filter of the full-band echo canceller 200a.
[0100] In this way, the echo cancellation device can perform an echo cancellation process without causing a delay in the received signal and thus can be applied to a system that requires little delay.
[0101] Furthermore, the amount of computation can be suppressed by reducing the sampling frequency through subband division.
[0102] It should be noted that, by a microcomputer of an information processing apparatus connected thereto, the speaker 10 and the microphone 20 execute a program for processes specific to the invention, the full-band echo canceller 200a, the sub-band echo canceller 200b, the subtractors 203a and 203b, the sub-band division processors 204a and 204b, the delay control units 205a to 205d, and the sub-band synthesis processor 208 are implemented as specific means, with hardware and software cooperating with each other.
[0103] The operation is described below.
[0104] In the full-band echo canceller 200a, the pseudo-echo generator 201 generates a pseudo-echo signal by estimating an echo path from a received signal toward the loudspeaker 10 and an adaptive filter coefficient generated by the adaptive filter changing unit 202. The pseudo-echo generator 201 and the adaptive filter changing unit 202 function as a full-band echo canceller.
[0105] The adaptive filter variation unit 202 varies the adaptive filter coefficients of the adaptive filter of the pseudo-echo generator 201 by performing an adaptive process based on the output signal of the subtractor 203a and the received signal. The subtractor 203a subtracts the pseudo-echo signal generated by the pseudo-echo generator 201 from the transmission signal input through the microphone 20. That is, the output signal of the subtractor 203a is a full-band signal where the echo is canceled.
[0106] The subband division processor 204a receives the above-described signal in the same manner as the pseudo-echo generator 201 and divides the received signal into low-band and high-band subband signals.
[0107] The low-band subband signal divided by the subband division processor 204a is processed by the delay control units 205a and 205b and the low-band echo canceller 200b-1.
[0108] The high-band sub-band signal is processed by the delay control units 205c and 205d and the high-band echo canceller 200b-2.
[0109] Since the delay control units 205a and 205b and the low-band echo canceller 200b-1 differ from the delay control units 205c and 205d and the high-band echo canceller 200b-2 only in that the signals to be processed therein are low-band and high-band sub-band signals, processes (processings) for the low-band sub-band signal will be described below.
[0110] The delay control unit 205a is provided to control a response range covered by the pseudo-echo signal, the pseudo-echo signal being generated by the sub-band pseudo-echo generator 206a in a subsequent stage.
[0111] When the delay control unit 205a receives the low-band subband signal divided by the subband division processor 204a and delayed by the delay amount D1, the delay control unit 205a applies a delay of a delay amount D2 to the signal and outputs the resulting signal. Consequently, the output signal of the delay control unit 205a is delayed by the delay amount D1+D2.
[0112] The delay control unit 205b is provided to control a response range covered by the adaptive filter, and the subband adaptive filter changing unit 207a performs an adaptive process with the adaptive filter in a subsequent stage.
[0113] When the delay control unit 205b receives the sub-band signal output from the delay control unit 205a and delayed by the delay amount D1+D2, the delay control unit 205b inserts a delay of a delay amount D3 into the sub-band signal and outputs the resulting sub-band signal. Consequently, the output signal of the delay control unit 205b is delayed by the delay amount D1+D2+D3.
[0114] In the low-band echo canceller 200b-1, the sub-band pseudo-echo generator 206a generates a low-band pseudo-echo signal from the sub-band signal output by the delay control unit 205a and delayed by the delay amount D1+D2, and an adaptive filter coefficient generated by the sub-band adaptive filter changing unit 207a. Consequently, the pseudo-echo signal generated by the sub-band pseudo-echo generator 206a is delayed by the delay amount D1+D2.
[0115] Furthermore, the sub-band adaptive filter changing unit 207a performs an adaptive process based on the sub-band signal output from the delay control unit 205b and delayed by the delay amount D1+D2+D3 and a transmission signal output from the sub-band division processor 204b and delayed by the delay amount D1.
[0116] The tap length of the adaptive filter of the low-band echo canceller 200b-1 is defined as L B designated.
[0117] As in the Fig. 3, the adaptive range for an echo path impulse response is a range corresponding to the length of the tap length L B (a response time) from the time delayed by D2+D3, which is the difference in delay between the output signal of the delay control unit 205b and the output signal of the subband division processor 204b, which are input to the subband adaptive filter changing unit 207a.
[0118] That is, if the tapping length L A of the adaptive filter of the pseudo-echo generator 201, which is a full-band echo canceller, is equal to D2+D3, an adaptive range where the adaptive filter changing unit 202 and the sub-band adaptive filter changing unit are synthesized can be covered without excess or deficiency, and the adaptive time thereof is L A +L B .
[0119] By performing processes on a high-band component in the same manner as the processes described above performed on the low-band component, their adaptive regions can be made identical.
[0120] The subband synthesis processor 208 synthesizes the low-band and high-band pseudo-echo signals generated by the subband pseudo-echo generators 206a and 206b into a full-band signal. The delay amount D1 occurs in the signal due to the QMF filtering process.
[0121] Consequently, the pseudo-echo signal synthesized by the subband synthesis processor 208 is delayed by the delay amount 201+D2.
[0122] The adaptive range of the adaptive filter of the low-band echo canceller 200b-1 is delayed by the delay amount D2+D3 as shown in the Fig. 3 shown.
[0123] Thus, the delay control units 205a and 205b control the delay amounts D2 and D3 such that the delay amount 2D1+D2 is equal to the delay amount D2+D3, that is, D3=2D1. As a result, as shown in the Fig. 4, the subband pseudo-echo signal generated by the subband pseudo-echo generator 206a is a signal that estimates only an echo in the adaptive range.
[0124] In this way, an echo cancellation process is possible without any delay occurring in the system as a whole.
[0125] In Fig. 4 becomes L A=2D1+D2 is used to cover the adaptive range without excess or deficiency. Where areas to be covered overlap, the occurrence of a delay can be suppressed by controlling the delay amount D2 to ensure a condition L A ≥2D1+D2 by using the delay control unit 205a.
[0126] It should be noted that if a condition L A <2D1+D2 is used, although delay does not occur, the adaptive sections of the full-band adaptive filter and the sub-band adaptive filter are interrupted, which may cause residual echo, and so this is not desirable.
[0127] As described above, according to Embodiment 2, the echo canceling device comprises: the full-band echo canceller 200a configured to include an adaptive filter that generates a pseudo-echo signal from a received signal and a full-band adaptive filter coefficient; the subband division processor 204a which divides the received signal into low-band and high-band subband signals using the delay amount D1; the delay control units 205a and 205c that insert a delay of a delay amount D2 into the low-band and high-band sub-band signals divided by the sub-band division processor 204a; the delay control units 205b and 205d that insert a delay of a delay amount D3 into output signals of the delay control units 205a and 205c; the subband echo canceller 200b configured to include adaptive filters that generate low-band and high-band pseudo-echo signals delayed by the delay amount D1+D2 from the output signals of the delay control units 205a and 205c and corresponding low-band and high-band adaptive filter coefficients; and the subband synthesis processor 208, which synthesizes the low-band and high-band pseudo-echo signals generated by the subband echo canceller 200b into a full band (full band) using the delay amount D1 to generate a full-band pseudo-echo signal delayed by the delay amount 2D1+D2. The delay control units 205a and 205b and the delay control units 205c and 205d control the delay amounts D2 and D3 such that the tapping length L A a condition L A ≥201+D2=D2+D3 is sufficient, where the tap length L A indicates the response time of the adaptive filter of the full-band echo canceller 200a. By such a configuration, the echo cancellation device can perform echo cancellation without causing a delay in a received signal toward the speaker 10 and thus can be applied to a system requiring little delay. Furthermore, by reducing the sampling frequency through a subband division process, an increase in the amount of computation can be suppressed.
[0128] According to Embodiment 2, the echo cancellation device may comprise: the subtractor 203a which subtracts the pseudo-echo signal generated by the full-band echo canceller 200a from a transmission signal; the subtractor 203b which subtracts the pseudo-echo signal generated by the subband synthesis processor 208 from an output signal of the subtractor 203a; and the subband division processor 204b which divides an output signal of the subtractor 203b into low-band and high-band subband signals using the delay amount D1.
[0129] The full-band echo canceller 200a includes a pseudo-echo generator 201 configured to include: an adaptive filter that generates a pseudo-echo signal from the received signal and a full-band adaptive filter coefficient; and the adaptive filter varying unit 202 that varies the adaptive filter coefficient of the adaptive filter of the pseudo-echo generator 201 based on the output signal of the subtractor 203a and the received signal.
[0130] The subband echo canceller 200b includes subband pseudo-echo generators 206a and 205b, which are provided for a low band and a high band and which are configured to include adaptive filters that generate low-band and high-band pseudo-echo signals delayed by the delay amount D1+D2 from the low-band and high-band subband signals output from the delay units 205a and 205c and corresponding low-band and high-band adaptive filter coefficients; and the subband adaptive filter varying units 207a and 207b, which are provided for a low band and a high band and which respectively vary the adaptive filter coefficients of the adaptive filters of the subband pseudo-echo generators 206a and 206b based on the output signals of the delay control units 205b and 205d and the low band and high band subband signals divided by the subband division processor 204b.
[0131] By such a configuration, an echo can be canceled while suppressing an increase in the amount of calculation and suppressing the occurrence of a delay.
[0132] It should be noted that with the present invention, free combinations of the embodiments, modifications of any component of the embodiments, or omission of any component of the embodiments can be made within the scope of the claimed invention.
[0133] The echo cancellation device according to the invention is capable of canceling an echo while suppressing an increase in the amount of calculation and suppressing occurrence of a delay, and thus it is desirable for, for example, a hands-free device mounted in a vehicle. List of reference symbols 10 speakers 20 microphones 100a and 200a full-band echo cancellers 100b and 200b-1 low-band echo cancellers 101 and 201 Pseudo-Echo Generator 102 and 202 Adaptive Filter Change Unit 103a, 203a, subtractor 103b, 203b 104a and 104b downsample processor 105a, 105b and 205a to 205d Delay control unit 106, 206a and 206b subband pseudo-echo generator 107, 207a and 207b Subband Adaptive Filter Modification Unit 108 Upsample processor 208 Subband Synthesis Processor
Claims
[1] Echo cancellation device comprising: a first adaptive filter (101) generating a first pseudo-echo signal based on a full band of a received signal; a first downsample processor (104a) that performs a downsampling process on the received signal and extracts a low-band component delayed by a first delay amount (D1); a delay control unit (105a, 105b) that inserts a delay of a second delay amount (D2) into the low-band component extracted by the first downsample processor (104a) and outputs the delayed low-band component; a second adaptive filter (106) generating a second low-band pseudo-echo signal from the low-band component delayed by the second delay amount (D2) and a low-band adaptive filter coefficient; a second adaptive filter varying unit (107) that varies the adaptive filter coefficient of the second adaptive filter (106) based on an output signal of the delay control unit (105b), the output signal being obtained by inserting a delay of a third delay amount (D3) into the low-band component that has been delayed by the second delay amount (D2); and an upsample processor (108) which performs an upsampling process on the second pseudo-echo signal and generates a third pseudo-echo signal delayed by the first delay amount (D1), wherein the delay control unit (105a, 105b) is designed to control the second and third delay amounts (D2, D3) to satisfy both criteria (i) and (ii), wherein (i) a delay amount accumulated on the third pseudo-echo signal (2D1 + D2) equal to or less than a tap duration (LA ) indicating a response time of the first adaptive filter (101), and (ii) a total amount of the second and third delay amounts (D2 + D3) is equal to the accumulated delay amount of the third pseudo-echo signal (2D1 + D2). [2] An echo cancellation device according to claim 1, further comprising: a first subtractor (103a) which subtracts the first pseudo-echo signal from a transmission signal and outputs a resultant subtraction signal; a second subtractor (103b) that subtracts the third pseudo-echo signal generated by the upsample processor (108) from the resultant signal output by the first subtractor (103a) and outputs a resultant subtraction signal; a second downsample processor (104b) that performs a downsampling process of the resultant signal output by the second subtractor (103b) and extracts a low-band component delayed by the first delay amount (D1); and a first adaptive filter varying unit (102) that varies an adaptive filter coefficient of the first adaptive filter (101) based on the resultant signal output by the first subtractor (103a) and the full band of the received signal; wherein the first adaptive filter (101) generates the first pseudo-echo signal based on the received signal and a full-band adaptive filter coefficient generated by the first adaptive filter changing unit (102), and wherein the second adaptive filter changing unit (107) generates the adaptive filter coefficient of the second adaptive filter (106) based on the output signal of the delay control unit (105b) and the low-band component extracted by the second downsample processor (104b). [3] Echo cancellation device comprising: a first adaptive filter (201) generating a first pseudo-echo signal based on a full band of a received signal; a first subband division processor (204a) that divides the received signal into subband signals of a plurality of frequency bands, each of the subband signals being delayed by a first delay amount (D1); a delay control unit (205a / 205b, 205c / 205d) that inserts a delay by a second delay amount (D2) into the subband signals divided by the first subband division processor (204a) and outputs the delayed subband signals of the respective frequency bands; a plurality of second adaptive filters (206a, 206b) generating second pseudo-echo signals of the respective frequency bands based on the sub-band signals delayed by the second delay amount (D2) and adaptive filter coefficients; a plurality of second adaptive filter varying units (207a, 207b) that vary the adaptive filter coefficients of the second adaptive filters of the respective frequency bands based on an output signal of the delay control unit (205b, 205d), the output signal being obtained by inserting a delay by a third delay amount (D3) into each of the low-band components delayed by the second delay amount (D2); and a subband synthesis processor (208) which synthesizes the second pseudo-echo signals of the respective frequency bands into a full band and generates a third pseudo-echo signal delayed by the first delay amount (D1), wherein the delay control units (205a / 205b, 205c / 205d) are designed to control the second and third delay amounts (D2, D3) to satisfy both criteria (i) and (ii), wherein (i) a delay amount accumulated on the third pseudo-echo signal (2D1 + D2) equal to or less than a tap duration (L A ) indicating a response time of the first adaptive filter (101), and (ii) a total amount of the second and third delay amounts (D2 + D3) is equal to the accumulated delay amount of the third pseudo-echo signal (2D1 + D2). [4] An echo cancellation device according to claim 3, further comprising: a first subtractor (203a) which subtracts the pseudo-echo signal from a transmission signal and outputs a resultant subtraction signal; a second subtractor (203b) which subtracts the third pseudo-echo signal generated by the subband synthesis processor (208) from the resultant signal output by the first subtractor (203a) and outputs a resultant subtraction signal; and a second subband division processor (204b) that divides the resultant signal output by the second subtractor (203b) into subband signals of the plurality of frequency bands; and a first adaptive filter changing unit (202) that varies an adaptive filter coefficient of the first adaptive filter based on the resultant signal output by the first subtractor (203a) and the full band of the received signal, wherein the first adaptive filter (201) generates the first pseudo-echo signal based on the received signal and a full-band adaptive filter coefficient generated by the first adaptive filter changing unit (202), and wherein the second adaptive filter varying units (207a, 207b) are provided for the respective frequency bands, and each of the second adaptive filter varying units (207a, 207b) varies adaptive filter coefficients of the corresponding second adaptive filters (206a, 206b) based on the output signal of the delay control unit (205b, 205d) and the sub-band signals of the respective frequency bands generated by the second sub-band division processor (204b).
Citation Information
Patent Citations
Echo canceller
JP1994013938A
Echo canceling circuit and mobile radio terminal
JP2006203358A
acoustic echo canceller
DE69636361T2
Adaptives Filter
DE69801083T2
System and method of echo cancellation
EP1817847B1