Source: http://www.google.com/patents/US5761318?ie=ISO-8859-1&dq=5,664,133
Timestamp: 2014-03-13 17:03:28
Document Index: 268295294

Matched Legal Cases: ['art, 41', 'art 19', 'art 41', 'arts 17', 'arts 17', 'art 24', 'arts 18', 'art 18', 'art 41', 'art 24', 'art 19', 'art 19', 'art 24', 'art 19', 'art 19', 'art 24', 'art 19', 'art 19', 'art 19', 'arts 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'arts 19', 'art 19', 'art 19', 'art 19', 'art 19', 'arts 18', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'arts 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 19', 'art 13', 'art 13', 'art 17', 'art 18', 'art 19', 'art 19', 'art 18', 'art 19', 'arts 17', 'art 24', 'art 19', 'art 18']

Patent US5761318 - Method and apparatus for multi-channel acoustic echo cancellation - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsIn a multi-channel acoustic echo cancellation, received signals in a plurality of channels are radiated as acoustic signals by a plurality of loudspeakers, received signal vectors in these channels are combined into a combined vector and a rearranged received signal vector in the case of at least two...http://www.google.com/patents/US5761318?utm_source=gb-gplus-sharePatent US5761318 - Method and apparatus for multi-channel acoustic echo cancellationAdvanced Patent SearchPublication numberUS5761318 APublication typeGrantApplication numberUS 08/720,207Publication dateJun 2, 1998Filing dateSep 25, 1996Priority dateSep 26, 1995Fee statusLapsedAlso published asCA2186416A1, CA2186416C, DE69628618D1, EP0766446A2, EP0766446A3, EP0766446B1Publication number08720207, 720207, US 5761318 A, US 5761318A, US-A-5761318, US5761318 A, US5761318AInventorsJunji Kojima, Shoji Makino, Suehiro ShimauchiOriginal AssigneeNippon Telegraph And Telephone CorporationExport CitationBiBTeX, EndNote, RefManPatent Citations (9), Referenced by (29), Classifications (8), Legal Events (6) External Links: USPTO, USPTO Assignment, EspacenetMethod and apparatus for multi-channel acoustic echo cancellationUS 5761318 AAbstract In a multi-channel acoustic echo cancellation, received signals in a plurality of channels are radiated as acoustic signals by a plurality of loudspeakers, received signal vectors in these channels are combined into a combined vector and a rearranged received signal vector in the case of at least two channels being exchanged is generated. By inputting the combined received signal vector into an echo replica generating part which simulates echo paths from the loudspeakers to at least one microphone, an echo replica is generated. The echo replica is subtracted from an echo output from the microphone to obtain a residual echo. Based on the relationship between the received signal vector and the corresponding residual echo and between the rearranged received signal vector and the corresponding approximated residual echo, an adjustment vector is obtained which is used to adjust the estimated echo path vector representing an impulse response of the echo replica generating part.
To facilitate a better understanding of the present invention, its principle will be described first in connection with a two-receive-channel system for the sake of brevity. As described previously with reference to FIGS. 4 and 5, when the received signals x.sub.1 (k) and x.sub.2 (k) are reproduced, then propagate over the corresponding echo paths h.sub.1m (k) and h.sub.2m (k) and are picked up as an echo y.sub.m (k) in the m-th pickup channel (m=2 in FIG. 4), the input-output relationship in this instance is given as follows:
y.sub.m (k)=h.sub.1m.sup.T (k)x.sub.1 (k)+h.sub.2m.sup.T (k)x.sub.2 (k) (21)
When the cross-correlation between the received signal vectors x.sub.1 (k) and x.sub.2 (k) is constant, it is impossible to uniquely determine estimated echo path vectors h.sub.1m (k) and h.sub.2m (k) which satisfy the relationship of Eq. (21), as referred to previously. Now, assuming that an echo y'.sub.m (k) is observed in the m-th pickup channel that corresponds to received signal vectors x'.sub.1 (k) and x'.sub.2 (k) having a cross-correlation different from that between the received signal vectors x.sub.1 (k) and x.sub.2 (k), the following relationship is obtained as is the case with Eq. (21).
y'.sub.m (k)=h.sub.1m.sup.T (k)x'.sub.1 (k)+h.sub.2m.sup.T (k)x'.sub.2 (k) (22)
Letting echo replicas for the m-th pickup channel when supplied with the pairs of received signals x.sub.1 (k), x.sub.2 (k) and x'.sub.1 (k), x'.sub.2 (k) be represented by y.sub.m (k) and y'.sub.m (k), they are given as follows.
y.sub.m (k)=h.sub.1m.sup.T (k)x.sub.1 (k)+h.sub.2m.sup.T (k)x.sub.2 (k) (23)
y'.sub.m (k)=h.sub.1m.sup.T (k)x'.sub.1 (k)+h.sub.2m.sup.T (k)x'.sub.2 (k) (24)
Further, letting error signals between the echoes y.sub.m (k), y'.sub.m (k) and the echo replicas y.sub.m (k), y'.sub.m (k) be represented by e.sub.m (k) and e'.sub.m (k), respectively, and echo path estimation error vectors between the echo paths h.sub.1m (k) and h.sub.2m (k) and estimated echo path vectors h.sub.1m (k), h.sub.2m (k) represented by Δh.sub.1m (k) and Δh.sub.2m (k), respectively, the error vectors are given by the following equations. ##EQU1## That is, the following relationships are obtained. ##EQU2## The echo path estimation error vectors Δh.sub.1m (k) and Δh.sub.2m (k) cannot uniquely be derived from Eq. (27), but letting its minimum-norm solutions be represented by Δh.sub.1m (k) and Δh.sub.2m (k), respectively, the following relationship is obtained. ##EQU3## where (*).sup.+ indicates a generalized inverse matrix. Thus, the estimated echo vectors h.sub.1m (k) and h.sub.2m (k) can be adjusted using the minimum-norm solutions Δh.sub.1m (k) and Δh.sub.2m (k) as adjustment vectors as follows:
h.sub.1m (k+1)=h.sub.1m (k)+&#956;.sub.m &#916;h.sub.1m (k) (29)
h.sub.2m (k+1)=h.sub.2m (k)+&#956;.sub.m &#916;h.sub.2m (k) (30)
where μ.sub.m is a step size parameter. In this case, the adjustment vectors Δh.sub.1m (k) and Δh.sub.2m (k) are allowed to have a cross-correlation different from that between the received signals x.sub.1 (k) and x.sub.2 (k), and hence it is possible to estimate the characteristic of the true echo path independently of the cross-correlation between the received signals. However, the above discussion presupposes that the input-output relationship for the received signals x'.sub.1 (k) and x'.sub.2 (k) having a cross-correlation different from that between the received signals x.sub.1 (k) and x.sub.2 (k), expressed by Eq. (22), could be observed. In practice, this input-output relationship is unknown. The present invention utilizes the condition in which this input-output relationship is approximately satisfied.
It is possible to use, as the received signals x'.sub.1 (k) and x'.sub.2 (k), arbitrary signals having a cross-correlation different from that between the received signals x.sub.1 (k) and x.sub.2 (k). Now, to approximately satisfy the input-output relationship given by Eq. (22), consider the case where received signals of two channels are exchanged or reversed and reproduced as follows:
x'.sub.1 (k)=x.sub.2 (k)                                   (31)
x'.sub.2 (k)=x.sub.1 (k)                                   (32)
That is, when the cross-correlation between the received signals x.sub.1 (k) and x.sub.2 (k) is 1:2, for instance, the received signals x'.sub.1 (k) and x'.sub.2 (k) resulting from the channel exchange have a different cross-correlation 2:1. According to the present invention, when received signals of multiple channels are reproduced, an adjustment vector is obtained by solving the combination of exchanged or reversed received signals of two channels as shown by Eq. (28). A description will be given of several methods for obtaining the adjustment vectors Δh.sub.1m (k) and Δh.sub.2m (k) on this principle.
Method 1 uses different weights to evaluate the observable input-output relationship expressed by Eq. (21) and the input-output relationship of Eq. (22) which is inferred to be approximately obtained by the signal exchange based on Eqs. (31) and (32). For example, error signals e.sub.m (k) and e'.sub.m (k) are evaluated with different weights. This weighting is divided into two: a fixed, time-invariant weight and a time-varying weight.
For example, in the case of a two-receive-channel system, the adjustment vectors are obtained by introducing weigthing coefficients γ.sub.m and γ'.sub.m to evaluate the errors e.sub.m (k) and e'm(k) in Eq. (27) with different weights and solving the following equation. ##EQU4##
The error e'.sub.m (k) is separated into a component are correlated with the error e.sub.m (k) and a component decorrelated therewith and then weighting coefficients are introduced. For example, noting the correlation between received signals, the signals x'.sub.1 (k) and x'.sub.2 (k) can be separated into a portion correlated with the received signals x.sub.1 (k) and x.sub.2 (k) (second term on the right-hand side of Eq. (34)) and the other portion (first term on the right-hand side of Eq. (34)) as expressed as follows: ##EQU5##
r'(k)=x.sub.1.sup.T (k)x'.sub.1 (k)+x.sub.2.sup.T (k)x'.sub.2 (k) (35)
r(k)=x.sub.1.sup.T (k)x.sub.1 (k)+x.sub.2.sup.T (k)x.sub.2 (k) (36)
Further, by multiplying the both sides of Eq. (34) by Δh.sub.1m.sup.T (k), Δh.sub.2m.sup.T (k)! from the left-hand side and using the relationships of Eqs. (25) and (26), the error e'.sub.m (k) becomes as follows: ##EQU6## From the viewpoint of the correlation between the received signals, the error e'.sub.m (k) is separated into the component correlated with the error e.sub.m (k) (second term on the right-hand side of Eq. (37)) and the other component (first term on the right-hand side of Eq. (37)). By this, Eq. (27) becomes as follows: ##EQU7## Then, the component of the error e'.sub.m (k) correlated with the error e.sub.m (k) and the other component are multiplied by coefficients v and w independently, by which Eq. (38) becomes as follows: ##EQU8## This equation is solved to obtain the adjustment vectors.
As shown by Eq. (39), by separating the error e'm(k) into the component correlated with the error em(k) and decorrelated component and weighting the respective components independently of each other, the resulting adjustment vectors match those obtainable with the aforementioned NLMS algorithm when setting v=0 and w=1. Further, setting v=1 and w=0 has a physical meaning which corresponds to the calculation of the adjustment vectors on the basis of that component of the error e'.sub.m (k) obtained converning the approximated input-output relationships which is not correlated with the error e.sub.m (k) obtained concerning the observable input-output relationships.
One possible method that is employed in the case of varying the weighting coefficients with time as mentioned above is to vary them in accordance with the degree of convergence of the estimated echo path vector to the true echo path vector as will be described later on. For example, in Method (1-a), the weighting coefficient γ.sub.m (k) is chosen to be equal to 1 and γ'.sub.m (k) smaller than 1, whereas when the degree of simulation of the true echo path is low, the weighting coefficient γ'.sub.m (k) is chosen to be larger but not in excess of 1. In Method (1-b), when the degree of simulation is low, the coefficients v and w are set to 0 and 1, respectively, as in the past, and as the degree of simulation increases, the values of the coefficients v and w are varied accordingly.
To evaluate the degree of simulation, use is made of at least one of the ratio between the echo y.sub.m (k) and the residual echo (i.e. error signal) e.sub.m (k), the average power ratio between the echo and the residual echo, the absolute value of the residual echo and the average power of the residual echo.
Next, a description will be given of a concrete method for obtaining the vectors Δh.sub.1m (k) and Δh.sub.2m (k) in Eq. (28) in the description of the principle of the present invention or Eqs. (33) and (39) in Methods (1-a) and (1-b).
Unknown input-output relationships approximated between inputs into echo paths when some or all of the received signals of respective channels are exchanged and reproduced as acoustic signals from channels different from their original channels and outputs to be produced when the above inputs are picked up as echo signals by microphones after propagation over the corresponding echo paths. This approximation is made through utilization of known input-output relationships actually observed when the received signals x.sub.m (k) of respective channels are reproduced intact as acoustic signals and picked up by microphones after propagating over the corresponding echo paths, the residual echo (an error signal) for the evaluation of the input-output relationships and the similarity of the echo paths. This can be done by such concrete methods as described below.
y.sub.1 (k)=h.sub.11.sup.T (k)x.sub.1 (k)+h.sub.21.sup.T (k)x.sub.2 (k) (40)
y.sub.2 (k)=h.sub.12.sup.T (k)x.sub.1 (k)+h.sub.22.sup.T (k)x.sub.2 (k) (41)
Now, supposing that when loudspeakers 12.sub.1, 12.sub.2 and microphones 16, and 16 are arranged bilaterally symmetrical, including their directional patterns, as shown in FIG. 6, the following equations hold
h.sub.11 (k)=h.sub.22 (k)                                  (42)
h.sub.21 (k)=h.sub.12 (k)                                  (43)
y'.sub.1 (k)=h.sub.11.sup.T (k)x.sub.2 (k)+h.sub.21.sup.T (k)x.sub.1 (k)=y.sub.2 (k)                                           (44)
y'.sub.2 (k)=h.sub.12.sup.T (k)x.sub.2 (k)+h.sub.22.sup.T (k)x.sub.1 (k)=y.sub.1 (k)                                           (45)
These relationships are indeed the input-output relationships which are obtained when the receive channels are exchanged; hence, e'.sub.1 (k)=e.sub.2 (k) and e'.sub.2 (k)=e.sub.1 (k) hold. By applying these approximated results to Eqs. (28), (33) and (39) as well as (44) and (45), three methods could be obtained as described below.
Setting c(k)=γ'(k)γ.sup.-1 (k) and applying the channel exchange and the echo path approximation to Eq. (39), the following simultaneous equations are obtained, and by solving Eq. (48), the adjustment vectors are obtained. ##EQU11##
h.sub.11 (k)=h.sub.22 (k)+f.sub.1 (k)                      (49)
h.sub.21 (k)=h.sub.12 (k)+f.sub.2 (k)                      (50)
where f.sub.1 (k) and f.sub.2 (k) represent a similarity error between the true echo path vectors h.sub.11 (k) and h.sub.22 (k) and a similarity error between the true echo path vectors h.sub.12 (k) and h.sub.21 (k), respectively. On the other hand, a similarity error f.sub.1 (k) between the estimated echo path vectors h.sub.11 (k) and h.sub.22 (k) and a similarity error f.sub.2 (k) between the estimated echo path vectors h.sub.12 (k) and h.sub.21 (k) are expressed as follows:
h.sub.11 (k)=h.sub.22 (k)+f.sub.1 (k)                      (51)
h.sub.21 (k)=h.sub.12 (k)+f.sub.2 (k)                      (52)
&#916;f.sub.1 (k)=f.sub.1 (k)-f.sub.1 (k)                 (53)
&#916;f.sub.2 (k)=f.sub.2 (k)-f.sub.2 (k)                 (54)
These differences will hereinafter be referred to as similarity error differences. Then, letting y'.sub.1 (k) and y'.sub.2 (k) be outputs which are obtained in the first and second pickup channels when reproducing the received signals x.sub.1 (k) and x.sub.2 (k) after exchanging the receive channels, the following equations are obtained using the relationships of Eqs. (49), (50) and Eqs. (40), (41). ##EQU12## The outputs y'.sub.1 (k) and y'.sub.2 (k) are simulated to be y'.sub.1 (k) and y'.sub.2 (k) by the following equations, using the estimated echo path vectors h.sub.11 (k), h.sub.21 (k), h.sub.12 (k), h.sub.22 (k) and Eqs. (51), (52). ##EQU13## Errors e'.sub.1 (k) and e'.sub.2 (k) between the outputs y'.sub.1 (k), y'.sub.2 (k) and their simulated values y'.sub.1 (k), y'.sub.2 (k) are given as follows: ##EQU14## where:
e.sub.1 (k)=y.sub.1 (k)-y.sub.1 (k)                        (61)
e.sub.2 (k)=y.sub.2 (k)-y.sub.2 (k)                        (62)
&#916;f.sub.1 (k)=f.sub.1 (k)-f.sub.1 (k)                 (63)
&#916;f.sub.2 (k)=f.sub.2 (k)-f.sub.2 (k)                 (64)
Since the similarity error differences Δf.sub.1 (k) and Δf.sub.2 (k) are expressed in Eqs. (63) and (64) as unknown similarity error vectors f.sub.1 (k) and f.sub.2 (k), respectively, the errors e'1(k) and e'2(k) cannot correctly be known. Then, solving Eqs. (59) and (60) for the known errors e.sub.2 (k) and e.sub.1 (k), we have
e.sub.2 (k)=&#916;h.sub.11.sup.T (k)x.sub.2 (k)+&#916;h.sub.21.sup.T (k)x.sub.1 (k) -&#916;f.sub.1.sup.T (k)x.sub.2 (k)-&#916;f.sub.2.sup.T (k)x.sub.1 (k)                                            (65)
e.sub.1 (k)=&#916;h.sub.12.sup.T (k)x.sub.2 (k)+&#916;h.sub.22.sup.T (k)x.sub.1 (k) +&#916;f.sub.1.sup.T (k)x.sub.1 (k)+&#916;f.sub.2.sup.T (k)x.sub.2 (k)                                            (66)
e.sub.1 (k)=&#916;h.sub.11.sup.T (k)x.sub.1 (k)+&#916;h.sub.21.sup.T (k)x.sub.2 (k)                                            (67)
e.sub.2 (k)=&#916;h.sub.12.sup.T (k)x.sub.1 (k)+&#916;h.sub.22.sup.T (k)x.sub.2 (k)                                            (68)
Therefore, the following simultaneous equations are obtained from Eqs. (65) through (68). ##EQU15## The adjustment vectors of the estimated echo paths are obtained as minimum-norm solutions of the simultaneous equations of Eq. (69). In this case, the similarity error differences Δf.sub.1 (k) and Δf.sub.2 (k) need not calculated in practice.
&#947;'.sub.1 e'.sub.1 (k)=&#947;'.sub.1 e.sub.2 (k)+&#947;'.sub.1 &#916;f.sub.1.sup.T (k)x.sub.2 (k)+&#947;'.sub.1 &#916;f.sub.2.sup.T (k)x.sub.1 (k)                                            (71)
&#947;'.sub.2 e'.sub.2 (k)=&#947;'.sub.2 e.sub.1 (k)+&#947;'.sub.2 &#916;f.sub.1.sup.T (k)x.sub.1 (k)+&#947;'.sub.1 &#916;f.sub.2.sup.T (k)x.sub.2 (k)                                            (72)
This method introduces time-invariant or time-varying weighting coefficients which permit control of the influence of the echo path similarity error vectors. For example, when the receive and pickup systems are both two-channel, the evaluation of the afore-mentioned similarity error differences Δf.sub.1 (k) and Δf.sub.2 (k) is weighted with respect to the evaluation of the estimated echo path vectors Δh.sub.11 (k), Δh.sub.21 (k), Δh.sub.12 (k), Δh.sub.22 (k). For example, introducing into Eq. (63) weighting coefficients k.sub.1, k.sub.2, k.sub.3 and k.sub.4 as elements by which the similarity error differences Δf.sub.1 (k) and Δf.sub.2 (k), we have ##EQU17## In this instance, if (k) (k) (47) that the similarity error vector f.sub.1 (k) is small; hence, if the above ratio is smaller than a predetermined threshold value K1, for instance, control is effected to make the weighting coefficient k.sub.1 smaller than 1, for example. Similarly, when (k)-h.sub.12 (k) (k) K2, control is effected to make the weighting coefficient k.sub.2 smaller than 1, for instance.
According to this method, introducing weighting coefficients v1, v.sub.2, w.sub.1 and w.sub.2 based on Method (1-b) into Eq. (69) based on Method (2-b) and setting c(k)=r'(k)r.sup.-1 (k), we have ##EQU18## By setting the following equations (75) and (76) and solving simultaneous equations (73), the adjustment vectors can be obtained.
r'(k)=x.sub.1.sup.T (k)x.sub.2 (k)+x.sub.2.sup.T (k)x.sub.1 (k) (75)
r(k)=x.sub.1.sup.T (k)x.sub.1 (k)+x.sub.2.sup.T (k)x.sub.2 (k) (76)
In concrete terms, a projection algorithm is applied to methods (2-a) and (2-b) which utilize the afore-mentioned channel exchange. The projection algorithm is to adjust the estimated echo path vectors so that the input-output relationships in an n-th received signal channel at the current and previous time p.sub.n are satisfied simultaneously, where p.sub.n is an integer that does not exceed the number of taps L of each estimated echo path vector. In the first place, the n-th channel received signal vectors from the current time back to the previous time p.sub.n are generically expressed as follows:
x.sub.n.sup.(p) (k)= x.sub.n (k), xn(k-1), . . . , x.sub.n (k-p+1)!(77)
e.sub.1.sup.(p.sbsp.1.sup.) (k)= e.sub.1 (k),(1-&#956;.sub.1)e.sub.1 (k-1), . . . ,(1-&#956;.sub.1).sup.p.sbsp.1.sup.-1 e.sub.1 (k-p.sub.1 +1)!.sup.T (78)
e.sub.2.sup.(p'.sbsp.1.sup.) (k)= e.sub.2 (k),(1-&#956;.sub.2)e.sub.2 (k-1), . . . ,(1-&#956;.sub.2).sup.p'.sbsp.1.sup.-1 e.sub.2 (k-p'.sub.1 +1)!.sup.T (79)
e.sub.1.sup.(p.sbsp.2.sup.) (k)= e.sub.2 (k),(1-&#956;.sub.1)e.sub.2 (k-1), . . . ,(1-&#956;.sub.2).sup.p.sbsp.2.sup.-1 e.sub.2 (k-p.sub.2 +1)!.sup.T (80)
e.sub.1.sup.(p'.sbsp.2.sup.) (k)= e.sub.1 (k),(1-&#956;.sub.1)e.sub.1 (k-1), . . . ,(1-&#956;.sub.1).sup.p'.sbsp.2.sup.-1 e.sub.1 (k-p'.sub.2 +1)!.sup.T (81)
and applying the projection algorithm to Eq. (73), we have ##EQU19## Let it be assumed that parameters for determining how far back to the previous time for using the input-output relationships can be set independently within the ranges in which they do not individually exceed the numbers of taps L of the estimated echo path vectors just like p.sub.1, p'.sub.1, p.sub.2 and p'.sub.2 which satisfy a condition min{p.sub.1,p.sub.2 }≧max{p'.sub.1,p'.sub.2 }.
C.sub.1 (k)=R'.sub.(p'.sbsb.1.sub. (k)R.sup.-1.sub.(p.sbsb.1.sub.
C.sub.2 (k)=R'.sub.(p'.sbsb.2.sub. (k)R.sup.-1.sub.(p.sbsb.2.sub.
x.sub.n.sup.(p) (k)= x.sub.n (k),x.sub.n (k-1), . . . ,x.sub.n (k-p+1)!(85)
The parameters for determining how far back to the previous time for using the input-output relationships are set as p.sub.1, p'.sub.1, p.sub.2 and p'.sub.2, which satisfy the condition min{p.sub.1,p.sub.2 }≧max{p'.sub.1,p'.sub.2 } and are given as follows:
R'.sub.(p'.sbsb.1.sub. (k)=X.sub.1.sup.(p'.sbsp.1.sup.)T (k)X.sub.2.sup.(p.sbsp.1.sup.) (k)+X.sub.2.sup.(p'.sbsp.1.sup.)T (k)X.sub.1.sup.(p.sbsp.1.sup.) (k) (86)
R'.sub.(p'.sbsb.2.sub. (k)=X.sub.1.sup.(p'.sbsp.2.sup.)T (k)X.sub.2.sup.(p.sbsp.2.sup.) (k)+X.sub.2.sup.(p'.sbsp.2.sup.)T (k)X.sub.1.sup.(p.sbsp.2.sup.) (k) (87)
R.sub.(p.sbsb.1.sub. (k)X.sub.1.sup.(p.sbsp.1.sup.) (k)+X.sub.2.sup.(p.sbsp.1.sup.)T (k)X.sub.2.sup.(p.sbsp.1.sup.) (k)                        (88)
R.sub.(p.sbsb.2.sub. (k)X.sub.1.sup.(p.sbsp.2.sup.) (k)+X.sub.2.sup.(p.sbsp.2.sup.)T (k)X.sub.2.sup.(p.sbsp.2.sup.) (k)                        (89)
e.sub.1.sup.(p.sbsp.1.sup.) (k)= e.sub.1 (k),(1-&#956;.sub.1)e.sub.1 (k-1), . . . , (1-&#956;.sub.1).sup.p.sbsp.1.sup.-1 e.sub.1 (k-p.sub.1 +1)!.sup.T (90)
e.sub.2.sup.(p'.sbsp.1.sup.) (k)= e.sub.2 (k),(1-&#956;.sub.2)e.sub.2 (k-1), . . . , (1-&#956;.sub.2).sup.p'.sbsp.1.sup.-1 e.sub.2 (k-p'.sub.1 +1)!.sup.T (91)
e.sub.2.sup.(p.sbsp.1.sup.) (k)= e.sub.2 (k),(1-&#956;.sub.2)e.sub.2 (k-1), . . . , (1-&#956;.sub.2).sup.p.sbsp.2.sup.-1 e.sub.2 (k-p.sub.2 +1)!.sup.T (92)
e.sub.1.sup.(p'.sbsp.2.sup.) (k)= e.sub.1 (k),(1-&#956;.sub.1)e.sub.1 (k-1), . . . , (1-&#956;.sub.1).sup.p'.sbsp.2.sup.-1 e.sub.1 (k-p'.sub.2 +1)!.sup.T (93)
As is the case with Eq. 84), the adjustment vectors can also be obtained by introducing the time-invariant or time-varying weighting coefficients k.sub.1, k.sub.2, k.sub.3 and k.sub.4, which permit control the influence of the echo path similarity error vectors in Method (2-b-2), into Eq. (84) of Method (3-b) as follows: ##EQU21##
It is also possible to obtain the adjustment vectors by introducing weighting coefficients λ.sub.1 and λ.sub.2 into Eq. (93) as follows: ##EQU22## and by controlling the weighting in accordance with the balance between the weighting coefficients k.sub.1, k.sub.2, k.sub.3, k.sub.4 and λ.sub.1, λ.sub.2.
&#945;.sup.(r).sub.i =&#945;.sup.(r) (&#955;.sup.(r)).sup.i-1, i=1, . . . , L                                                     (100)
0&amp;lt;&#955;.sup.(r) &#8806;1
Alternatively, L sequences of numbers given by Eq. (100) are divided into equally or unequally spaced blocks and the value of each α.sup.(r).sub.i in each block is made equal to the value of the first α.sup.(r).sub.i in the same block, by which the basic exponential decay matrix A.sup.(r) is obtained in a simplified form which has an advantage in terms of computational complexity. The matrix is set as follows: ##EQU27## This is applied to Eq. (97) as follows: ##EQU28## From the minimum-norm solution thus obtained, the adjustment vectors of the respective estimated echo path vectors are derived.
Next, examples of the echo cancellers embodying the above-described methods of the present invention will be described in comparison with conventional device configurations. The conventional echo cancellation system having an N-receive-channel system and an M-pickup-channel system is formed by providing N-channel echo cancellers 22.sub.1, 22.sub.2, . . . , 22.sub.M independently of M pickup channels as shown in FIG. 2. In contrast thereto, according to the present invention, the echo cancellation system with the N-receive-channel system and the M-pickup-channel system is formed as an N which is adapted to exchange information between channels and make the echo path estimation as shown in detail in FIG. 8.
The configuration of the echo canceller shown in FIG. 8 is the basic configuration that is applicable to any of Methods 1 to 4 of the present invention, and as will be described below, this configuration features a vector permuting/combining part, 41 in comparison with the echo path estimating part 19.sub.m in the prior art example of FIG. 3. In the vector computing/combining part 41, the received signal vectors x.sub.1 (k), x.sub.2 (k), . . . are arranged in D ways by rearranging them through their exchange with received signal vectors of other channels, and these vectors are combined into D vectors x.sup.(1) (k), x.sup.(2) (k), . . . x.sup.(D) (k). By approximating the input-output relationships for the combined vectors x.sup.(1) (k), x.sup.(2) (k), . . . x.sup.(D) (k) through use of the similarity of echo paths, estimated echo path adjustment vectors Δh.sub.1 (k), . . . , Δh.sub.M (k) can be obtained.
The N generating parts 17.sub.1 to 17.sub.N corresponding to N channels as shown in FIG. 8, which hold L received signals up to the current time (k) determined for the respective received signal channels and generate the received signal vectors x.sub.1 (k) to x.sub.N (k) expressed by Eqs. (7) to (9) as is the case with the received signal storage/vector generating parts 17.sub.1 to 17.sub.N in FIG. 3. The received signal vectors x.sub.1 (k) to x.sub.N (k) thus obtained are combined by a vector combining part 24 into the combined vectors x(k) expressed by Eq. (10), which are provided to echo replica generating parts 18.sub.1 to 18.sub.M. The echo replica generating part 18.sub.m (where m=1 . . . ,M) for each m-th pickup channel calculates an echo replica by Eq. (13) from the combined vector x(k) and the combined estimated echo path vector h.sub.m (k) and provides the echo replica y.sub.m (k) to a subtractor 21.sub.m. Each subtractor 21.sub.m outputs the difference between the echo y.sub.m (k) and the echo replica y.sub.m (k) as the residual echo (i.e. an error signal) e.sub.m (k).
As mentioned previously, what is characteristic of the echo canceller according to the present invention is the vector computing/combining part 41, which rearranges the N-channel received signal vectors x.sub.1 (k) to x.sub.N (k) in D ways by exchanging the received signal vectors of the respective channels, then combines the received signals of the D orders of arrangement into D combined vectors x.sup.(1) (k), x.sup.(2) (k), . . . x.sup.(D) (k) by Eq. (10) as is the case with the vector combining part 24 and provides the D combined vectors to the echo path estimating part 19. The echo path estimating part 19 is supplied with the D combined vectors x.sup.(1) (k) to x.sup.(D) (k), the combined vector x(k) from the vector combining part 24, the error signals e.sub.1 (k) to e.sub.M (k) from the subtractors 21.sub.1 to 21.sub.M and, if necessary, the echoes y.sub.1 (k) to y.sub.M (k) as indicated by the broken lines. The echo path estimating part 19 calculates the estimated echo path adjustment vectors Δh.sub.1 (k), . . . , Δh.sub.M (k) by any one of the afore-mentioned methods and further calculates the estimated echo path vectors h.sub.1 (k+1) to h.sub.M (k+1) at the next time (k+1) by Eqs. (29) and (30), for instance.
FIG. 9 is a functional block diagram of the echo path estimating part 19 for use in the execution of the aforementioned methods (1-a), (2-a-1), (2-a-2), (2-b-10, (2-b-2) and (3-a) which involve assigning the coefficients γ.sub.m and γ'.sub.m to the error signals e.sub.m (k) and e'.sub.m (k). The combined vectors x.sup.(1) (k) to x.sup.(D) (k) from the vector permuting/combining part 24 and the combined vectors x(k) are provided to an adjustment vector calculating part 19A and a weighting coefficient assigning part 19B as well.
A weighting coefficient control part 19E introduces, by Method (1-a), the weighting coefficients γ.sub.m and γ'.sub.m into the measured and approximated input-output relationships, respectively, then changes the weighting coefficients in accordance with the degree of convergence of the estimated echo path vector to the true echo path and provides the weighting coefficients to weighting coefficient assigning parts 19B, 19C and 19D. That is, the weighting coefficient control part 19E in this example, takes thereinto the echoes y.sub.1 (k) to y.sub.M (k) together with the error signals e.sub.1 (k) to e.sub.M (k), then calculates their average power ratio ##EQU34## as an index representing the degree of convergence of the estimated echo path vector and, based on the value of the index, determines the weighting coefficients γ.sub.m and γ'.sub.m. The weighting coefficient γ.sub.m in Eq. (33), (70), (73), or (82) is always set at 1, for instance, and when the power ratio r.sub.pm becomes larger than a predetermined positive value r.sub.th, the weighting coefficient γ'.sub.m is set at a predetermined large positive value which does not exceed 1, and when the power ratio r.sub.pm is equal to or smaller than the predetermined positive value r.sub.th, the weighting coefficient γ'.sub.m is set at a predetermined small positive value which does not exceed 1 either. A weighting coefficient evaluation and control part 19G is used in the case of Method (2-b-2); it determines, based on the adjustment vector Δf(k), the weighting coefficients k.sub.1, k.sub.2, k.sub.3 and k.sub.4 for controlling the influence of the echo path similarity error vector Δf and provides the weighting coefficients to the weighting coefficient assigning part 19B. The weighting coefficient assigning part 19B assigns the received signal vectors x.sub.1.sup.T and x.sub.2.sup.T with weights by combinations of the weighting coefficients k.sub.1 to k.sub.4 and γ'.sub.1, γ'.sub.2 as shown in Eq. (66) and provides them to the adjustment vector calculating part 19A. The weighting coefficients assigning parts 19C and 19D assign the weighting coefficients γ'.sub.1, γ'.sub.2 and γ.sub.1, γ.sub.2 to the error signals e.sub.1 (k) and e.sub.2 (k) and provide them to the adjustment vector calculating part 19A. The adjustment vector calculating part 19A uses the signals applied thereto to solve any one of Eqs. (33), (70), (73) and (84), thereby obtaining the adjustment vector Δh.sub.mn (k), which is provided to an adaptive filter updating part 19F. The adaptive filter updating part 19F adjusts the estimated echo path vector by Eqs. (29) and (30), then outputs it as the estimated echo path vector at time (k+1) and provides it to each of the echo replica generating parts 18.sub.1 to 18.sub.M.
FIG. 10 is a functional block diagram of a multi-channel acoustic echo canceller which embodies the afore-mentioned Methods (1-b), (2-a-3), (2-b-3), (3-b-1) and (3-b-2) which separate the error signal e'.sub.m (k) into components and weight them with the coefficients v and w. In this example, as in the FIG. 9 example, the weighting coefficient evaluation/control part 19G uses the adjustment vector Δh(k) to determine the weighting coefficients k.sub.1 to k.sub.4 which controls the influence of the echo path similarity error difference Δf(k) and provides them to the weighting coefficient assigning part 19B. The adjustment vector calculating part 19A is supplied with the combined received signal vector X(k) and channel-exchanged combined received signal vectors X.sup.(10) (k), . . . , X.sup.(D) (k). In this embodiment, the error signal e'.sub.m (k) is divided into a component correlated with the error signal e.sub.m (k) and the other component and they are assigned with the weighting coefficients w and v, respectively as shown in Eq. (39), (74), (84), (94), or (95). To this end, as is the case with the above, the weighting coefficient control part 19E calculates from the echoes y.sub.1 (k) to y.sub.M (k) and the error signals e.sub.1 (k) to e.sub.M (k) their average power ratio ##EQU35## as an index indicating the degree of convergence of the estimated echo path vector, and determines the values of the coefficients w and v accordingly. Furthermore, a cross-correlation calculating part 19H calculates the cross-correlation between the received signals by a matrix c(k)=r'(k)r.sup.-1 (k) or C.sub.1 (k) and C.sub.2 (k) in Eqs. (86) to (89) and provides it to a component separating part 19J.
The component separating part 19J separates the error signal e'.sub.m (k) into the component correlated with the error signal e.sub.m (k) and the uncorrelated component, which are fed to weighting coefficient assigning parts 19K and 19L and assigned with the weighting coefficients w and v, respectively. The correlated component and the other component assigned with the weighting coefficients are added by an adder 19M and the added output is applied to the adjustment vector calculating part 19A. The adjustment vector calculating part 19A uses the signals applied thereto to solve the simultaneous equations (37), (74), (84), (94), or (95) to calculate the adjustment vector Δh(k), which is provided to the adaptive filter updating part 19F and the weighting coefficient evaluation/control part 19G as well. Based on the adjustment vector provided thereto, the adaptive filter updating part 19F calculates the estimated echo path vector by Eqs. (27) and (30) and outputs it.
FIG. 11 illustrates the functional block configuration of the adjustment vector calculating part 19A in the echo path estimging part 19 of FIGS. 9 and 10 which permits the application of a p-th order projection algorithm of Method 3 and the ES algorithm of Method 4 when the echo paths are highly symmetrical and hence Method (2-a) is used. To execute the p-th order projection algorithm, the received signal vectors are provided to a signal storage part 19A2, wherein (p-1) preceding received signal vectors are held, and the received signal matrix X.sup.(p).sub.n of Eq. (85), which is a set of the stored received signal vectors and the received signal vectors at the current time k, is fed to an exponential weighting coefficient assigning part 19A1, wherein the received signal matrix is assigned with a weighting coefficient by the basic exponential decay matrix A.sup.(r), thereafter being provided to a simultaneous equation calculating part 19A3. At the same time, the received signal vector weighted in the weighting coefficient assigning part 19B in FIGS. 9 and 10 is also provided to the simultaneous equation calculating part 19A3.
On the other hand, the weighted measured error signals e.sub.1 (k), . . . , e.sub.M (k) and the weighted approximated error signals e'.sub.1 (k), . . . e'.sub.M (k) are also stored as sets of error signals at (p.sub.n -1) previous points in time and they are applied to the simultaneous equations calculating part 19A3 together with error signals at the current time. The simultaneous equations calculating part 19A3 solves the simultaneous equations (47) from the signals fed thereto to calculate the adjustment vector Δh(k). In the case of FIG. 10, the set of measured error signals e.sub.1 (k), . . . , e.sub.M (k) at (p.sub.n -1) previous times are stored in the signal storage part 19A4 and are provided therefrom to the simultaneous equations calculating part 19A3 together with the set of measured error signals at the current time and the set of component-separated, weighted approximated error signals from the adder 19M is provided to the signal storage part 19A5, wherein a set of weighted approximated error signals at (p.sub.n -1) previous times is held. The (p.sub.n -1) sets of weighted approximated error signals and the set of error signals at the current time are fed to the simultaneous equations calculating part 19A3. The simultaneous equations calculating part 19A3 uses these signals to solve, for example, Eq. (74) to obtain the adjustment vector.
For the sake of brevity, consider a stereo teleconference system which connects two points via a two-channel transmission system and uses two-channel pickup and receive systems as shown in FIG. 4. For example, when a plurality of speakers speak in their seats at the point A, stereo speech signals which are picked up by two microphones bear a cross-correlation therebetween dependent on the positional relationship between the speakers and the microphones. When these speech signals are reproduced at the point B using the conventional echo canceller, the echo estimation depends on the cross-correlation between the speech signals and hence is incorrect, allowing large echoes to return to the point A each time the speaker changes. In contrast to this, the echo cancellation method of the present invention is capable of lessening the influence of the cross-correlation between the stereo signals and quickly estimating the echo path, and hence suppresses echoes from increasing whenever the speaker changes. FIG. 13 is a graph showing the results of computer simulations using, as reproduced signals, stereophonically picked up speech uttered by a speaker with his body or head fixed. The prior art method (a), a method of extracting a variation in the cross-correlation (b) proposed in the inventors' prior application (Japanese Pat. Appln. No. 50002/95), and this invention method (c) are compared in terms of the error vector between the combined estimated echo path vector generated in the echo path estimating part and the combined true echo path, with the echo path estimation starting time set at 0. An NLSM (Normalized Least Mean Squares) algorithm was used in the case of the conventional method and a second-order projection algorithm was used in the case of the method by the extraction of a variation in the cross-correlation proposed in the prior application. In the case of this invention method, the adjustment vector was calculated by Eq. (107); the weighting coefficients γ.sub.1, γ'.sub.1, γ.sub.2 and γ'.sub.2 were made time-varying in accordance with the echo return loss enhancement (ERLE), k.sub.1 =k.sub.2 =k.sub.3 =k.sub.4 =1.0, p.sub.1 =p'.sub.1 =p.sub.2 =p'.sub.2 =2, A.sup.(1) =A.sup.(2) =A.sup.(3) =A.sup.(4) =A.sup.(5) =A.sup.(6), and they were divided into four blocks and assigned with weights 1.0, 0.5, 0.25 and 0.125. As is evident from FIG. 13, according to this invention method, the echo path error vector decreases faster than in the cases of the other methods and the vector itself is also smaller.
FIG. 14 is a graph showing the influences of the weighting coefficients γ'.sub.1 and γ'.sub.2 with the coefficients γ.sub.1 and γ.sub.2 set at γ.sub.1 =γ.sub.2 =0 in this invention method using Eq. (70). The curve (a) indicates the case where γ.sub.1 =γ'.sub.2 =1.0 and the curve (b) the case where γ'.sub.1 =γ'.sub.2 =0.5. A comparison of these curves indicates that appropriate values of the weighting coefficients γ'.sub.1 and γ'.sub.2 differ with the convergence of filter coefficients. Then, the values of the weighting coefficients γ'.sub.1 and γ'.sub.2 were changed with ERLE, that is, ERLE was large the coefficients γ'.sub.1 and γ'.sub.2 were set small; in this case, the characteristic was improved as indicated by the curve (c). Further, the ES algorithm based on the exponential decay characteristic of the impulse response was used, in which case the curve (d) was obtained. This is considered to be due to the fact that since this invention method approximately utilizes the unknown input-output relationships expressed by Eqs. (55) and (57), the approximation accuracy is improved by the use of the statistical property of the impulse response.
The curve (a) indicates the case where v.sub.1 =v.sub.2 =0, w.sub.1 =w.sub.2 =1, p.sub.1 =p'.sub.1 =p.sub.2 =p'.sub.2 =1 and μ.sub.1 =μ.sub.2 =0.5, the curve (b) the case where v.sub.1 =v.sub.2 =1, w.sub.1 =w.sub.2 =1, p.sub.1 =p'.sub.1 =p.sub.2 =p'.sub.2 =8 and μ.sub.1 =μ.sub.2 =0.05, the curve (c) the case where v.sub.1 =v.sub.2 =0, w.sub.1 =w.sub.2 =1, p.sub.1 =p'.sub.1 =p.sub.2 =p'.sub.2 =8 and μ.sub.1 =μ.sub.2 =0.05, the curve (d) the case where v.sub.1 =v.sub.2 =0, w.sub.1 =w.sub.2 =0, p.sub.1 =p'.sub.1 =p.sub.2 =p'.sub.2 =8 and μ.sub.1 =μ.sub.2 =0.05, and the curve (e) the case where v.sub.1 =v.sub.2 =1, w.sub.1 =w.sub.2 =0, p.sub.1 =p'.sub.1 =p.sub.2 =p'.sub.2 =8 and μ.sub.1 =μ.sub.2 =0.05. As will be seen from FIG. 15, since this invention method (3-b) uses the weighting scheme of the method (1-b), the error obtained concerning the approximated input-output relationship can be evaluated excepting therefrom the error obtained concerning the observable input-output relationship or a redundant component as in the case of the curve (e) in FIG. 15; hence, good results can be obtained without varying the weighting coefficients with time as in the cases of FIGS. 13 and 14.
Other than the method according to which at a terminal provided with a stereo receiving system, two-channel stereo signals picked up at the other end are received and reconstructed intact, there is proposed a method for multi-point teleconference by which the received signal for each point is freely subjected to sound image localization at the receiving side to provide a comfortable receiving environment. The method and apparatus according to the present invention are also applicable to such multi-point teleconference terminals. FIG. 16 illustrates the configuration of a four-point teleconference system. At each point the pickup system is one-channel (monaural). Now, the teleconference system will be described in connection with the point D. Let it be assumed that at the point D received signals from the points A, B and C are subjected to sound image localization so that the signals are localized at the right, center and left with respect to the point d, respectively, by which new two-channel stereo reproduced signals are generated for two-channel stereo reproduction. In this instance, a response y.sub.1 (k) to the two-channel received signals x.sub.1 (k) and x.sub.2 (k) at some point is given as follows:
y.sub.1 (k)=h.sub.11.sup.T (k)x.sub.1 (k)+h.sub.21.sup.T (k)x.sub.2 (k) (108)
By applying the echo path similarity error vector f.sub.1 (k) between h.sub.11.sup.T (k) and h.sub.21.sup.T (k), the following equation is obtained:
h.sub.11.sup.T (k)-h.sub.21.sup.T (k)=f.sub.1 (k)          (109)
Then, the response y'.sub.1 (k) which is obtained when the reproducing channels of the received signals x1(k) and x2(k) are exchanged is given as follows: ##EQU36## By formulating simultaneous equations based on Eqs. (108) and (110), it is possible to obtain an estimated echo path vector adjustment equation according to this invention method.
FIG. 15 is a graph showing the influence of weighting coefficients v.sub.1, v.sub.2, w.sub.1, w.sub.2, orders p.sub.1, p'.sub.1, p'.sub.2 and step sizes μ.sub.1, μ.sub.2 on the convergence characteristic of the echo path estimation; and
A description will be given first, with reference to FIG. 1, of a conventional method and apparatus for one-channel acoustic echo cancellation. In the hands-free telecommunication, there are two cases where the received signal provided at a received signal input terminal 11 is reproduced intact by a loudspeaker 12 and where the received signal is reproduced by the loudspeaker 12 after being subjected to some processing by a received signal processing part 13 which automatically controls its gain in accordance with the amplitude, power or the like of the received signal. On this account, the received signal x.sub.1 (k) mentioned herein is not limited specifically to the received signal itself from the person talking at the other end but also indicates the processed received signal when the received signal processing part 13 is provided. k represents a discrete time index. An echo canceller 14 cancels an echo y.sub.1 (k) which is produced when the received signal x.sub.1 (k) from the loudspeaker 12 is picked up by a microphone 16 after propagating over an echo path 15. The echo y.sub.1 (k) can be modeled as a signal which can be obtained by the following convolution with the impulse response of the echo path 15 at time k represented by h.sub.11 (k,n):
y.sub.1 (k)=&#931;h.sub.11 (k,n)x.sub.1 (k-n)             (1)
where Σ indicates the summation from n=0 to L-1, L being the number of taps, which is a constant preset corresponding to the reverberation time of the echo path 15. In the first place, received signals x.sub.1 (k) at times back to L-1 are stored in a received signal storage/vector generating part 17. The received signals thus stored are output as a received signal vector x.sub.1 (k), which is given as follows:
x.sub.1 (k)= x.sub.1 (k),x.sub.1 (k-1), . . . ,x.sub.1 (k-L+1)!.sup.T ( 2)
where (*).sup.T indicates a transpose of vector. An echo replica generating part 18 calculates the inner product of the received signal vector x.sub.1 (k) of Eq. (2) and an echo replica vector h.sub.11 (k) obtainable from an echo path estimating part 19 as follows:
y.sub.1 (k)=h.sub.11.sup.T (k)x.sub.1 (k)                  (3)
As a result, an echo replica h.sub.1 (k) is generated. This inner product calculation is equivalent to such a convolution as Eq. (1). The echo path estimating part 19 generates the echo replica vector h.sub.11 (k) that is used in the echo replica generating part 18. The most common algorithm for this echo path estimation is the NLMS (Normalized Least Mean Squares) algorithm. With the NLMS algorithm, the received signal vector x.sub.1 (k) at time k and a residual echo e.sub.1 (k), i.e. the following error obtained by subtracting the echo replica from the output of the microphone 16 with a subtractor 21,
e.sub.1 (k)=y.sub.1 (k)-h.sub.1 (k)                        (4)
are used to calculate an estimated echo path vector h.sub.11 (k)(k+1) which is used at time k+1, by the following equation:
h.sub.11 (k+1)=h.sub.11 (k)+&#945;e.sub.1 (k)x.sub.1 (k)/{x.sub.1.sup.T (k)x.sub.1 (k)}                                           (5)
where α is called a step size parameter, which is used to adjust adaptation within the range of 0&lt;α&lt;2. By repeating the above processing, the echo path estimating part 19 is allowed to gradually converge the estimated echo path vector h.sub.11 (k) toward an echo path vector h.sub.11 (k) which has, as its elements, a time sequence of impulse responses h.sub.11 (k,n) of the true echo path 15 given by the following equation:
h.sub.11 (k)= h.sub.11 (k,0),h.sub.11 (k,1), . . . , h.sub.11 (k,L-1)!.sup.T                                            ( 6)
As the result of this, the residual echo e.sub.1 (k) given by Eq. (4) can be reduced.
In general, a teleconference system of the type having an N(≧2)-receive-channel system and an M(≧1)-pickup-channel system employs, for echo cancellation, such a configuration as shown in FIG. 2. That is, an echo cancellation system 23 is implemented in which N-channel echo cancellers 22.sub.1, 22.sub.2, . . . , 22.sub.M for processing N-inputs-one-output time sequence signals are each connected between all the N channels of the receive (loudspeaker) side and one channel of the pickup (microphone) side. In this instance, the echo cancellation system 23 has a total of N (where 1≦n≦N and 1≦m≦M). The N-channel echo cancellers 22.sub.1, 22.sub.2, . . . , 22.sub.M, which are each connected between all of the N channels of the receive side and one channel of the pickup side, have such a configuration as depicted in FIG. 3, which is an extended version of the configuration of the echo canceller 14 shown in FIG. 1. This is described in detail, for example, in B. Widrow and S. D. Stearns, "Adaptive Signal Processing," Prince-Hall, Inc., pp.198-200 (1985). Now, consider the N-channel echo canceller 22.sub.m having its pickup side connected to an m-th (where 1≦m≦M) pickup channel. The echo y.sub.m (k) which is picked up by the m-th channel microphone 16m is created by adding together respective received signals of all receive channels at the pickup side after propagation over respective echo paths 15.sub.1m through 15.sub.nm. Hence, it is necessary to devise how to make the echo path estimation by evaluating only one residual echo e.sub.m (k) in common to all the channels. In the first place, for the received signal x.sub.n (k) of each channel, the following received signal vectors are generated in the received signal storage/vector generating parts 17.sub.1, 17.sub.2, . . . , 17.sub.N :
x.sub.1 (k)= x.sub.1 (k),x.sub.1 (k-1), . . . ,x.sub.1 (k-L.sub.1 +1)!.sup.T                                                ( 7)
x.sub.2 (k)= x.sub.2 (k),x.sub.2 (k-1), . . . ,x.sub.2 (k-L.sub.1 +1)!.sup.T                                                ( 8)
x.sub.N (k)= x.sub.N (k),x.sub.N (k-1), . . . ,x.sub.N (k-L.sub.N +1)!.sup.T                                                ( 9)
where L.sub.1, L.sub.2, . . . , L.sub.N are numbers of taps, which are constants preset in correspondence with the reverberation times of the echo paths 15.sub.1m, 15.sub.2m, . . . , 15.sub.Nm. The vectors thus generated are combined in vector combining part 24 as follows:
x(k)= x.sub.1.sup.T (k), x.sub.2.sup.T (k), . . . , x.sub.N.sup.T (k)!.sup.T                                                ( 10)
Also in the echo path estimating part 19.sub.m, estimated echo path vectors h.sub.1m (k), h.sub.2m (k), . . . , h.sub.Nm (k), which are used to simulate N echo paths between the respective receive channel and the m-th pickup channel, are combined as follows:
h.sub.m (k)= h.sub.1m.sup.T (k), h.sub.2m.sup.T (k), . . . , h.sub.Nm.sup.T (k)!.sup.T                                                ( 11)
In the case of using the NLSM algorithm, the updating of the combined estimated echo path vector h.sub.m (k) is done as follows:
h.sub.m (k+1)=h.sub.m (k)+&#945;e.sub.m (k)x(k)/{x.sup.T (k)x(k)}(12)
In the echo replica generating part 18.sub.m, an echo replica y.sub.m (k) for the echo y.sub.m (k) picked up in the m-th pickup channel by the following inner product calculation:
y.sub.m (k)=h.sub.m.sup.T (k)x(k)                          (13)
To explain this problem, attention is paid to the operation of an echo canceller 22b.sub.1 connected to a first pickup channel which is one of echo cancellers of two channels forming the echo cancellation system at the point B. To clarify the operation of each receive channel, each element of the afore-mentioned combined vector which corresponds to one of the receive channels will hereinafter be identified in distinct form. Let x.sub.1 (k) and x.sub.2 (k) represent received signal vectors in the two channels at the point B side. Letting echo path vectors of true echo paths 15.sub.11 and 15.sub.21 of the receive channels be represented by h.sub.11 (k) and h.sub.21 (k), respectively, an echo y.sub.1 (k) which is picked up via the echo paths 15.sub.11 and 15.sub.21 is given by
y.sub.1 (k)=h.sub.11.sup.T (k)x.sub.1 (k)+h.sub.21.sup.T (k)x.sub.2 (k) (14)
On the other hand, an echo replica y.sub.1 (k) which is generated in the echo canceller 22b.sub.1 is given by the following equation using estimated echo paths h.sub.11 (k) and h.sub.21 (k) that are generated in the echo canceller 22b.sub.1.
y.sub.1 (k)=h.sub.11.sup.T (k)x.sub.1 (k)+h.sub.21.sup.T (k)x.sub.2 (k) (15)
When the same speaker speaks or utters at the point A, the received signal vectors x.sub.1 (k) and x.sub.2 (k) have a very strong cross-correlation. When the received signal vectors x.sub.1 (k) and x.sub.2 (k) have a constant cross-correlation, the combined vector h.sub.11.sup.T (k), h.sub.21.sup.T (k)! as the solution of the following equation exists infinitely, forming a subspace H.sub.x inhrent to the cross-correlation between the received signal vectors x.sub.1 (k) and x.sub.2 (k).
y.sub.1 (k)=y.sub.1 (k)                                    (16)
On this account, in the case of using such an ordinary iterative error minimization algorithm as the NLMS algorithm, the combined vector h.sub.11.sup.T (k), h.sub.21.sup.T (k)! converges to a point where the distance from the initial value to the subspace H.sub.x is minimum; in general, it does not converge to the true value h.sub.11.sup.T (k), h.sub.21.sup.T (k)!.
For simplicity, consider the case where the received signal vectors x.sub.1 (k) and x.sub.2 (k) are expressed by the following equations using constant scalar values p.sub.1 and p.sub.2 and the original signal vector s(k).
x.sub.1 (k)=p.sub.1 s(k), x.sub.2 (k)=p.sub.2 s(k)         (17)
The subspace H.sub.x where the combined vector h.sub.11.sup.T (k), h.sub.21.sup.T (k)! is allowed to exist can be regarded as a straight line in FIG. 5 which satisfies the following equation.
p.sub.1 h.sub.11 (k)+p.sub.2 h.sub.21 (k)=p.sub.1 h.sub.11 (k)+p.sub.2 h.sub.21 (k)                                              (18)
When the adaptation starts from the initial value 0, the point of convergence h.sub.11p.sup.T (k), h.sub.21p.sup.T (k)! is obtained as follows:
h.sub.11p (k)=p.sub.1.sup.2 {h.sub.11 (k)+p.sub.2 h.sub.21 (k)/p.sub.1 }/(p.sub.1.sup.2 +p.sub.2.sup.2)&#8800;h.sub.11 (k)       (19)
h.sub.21p (k)=p.sub.2.sup.2 {p.sub.1 h.sub.11 (k)/p.sub.2 h.sub.21 (k)}/(p.sub.1.sup.2 +p.sub.2.sup.2)&#8800;h.sub.21 (k)    (20)
Consequently, Eq. (18) is no longer satisfied upon variation in the rate between the scalar values p.sub.1 and p.sub.2, making echo cancellation impossible and hence resulting in an increase in the acoustic echo returning to the speaker at the other end.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5272695 *Sep 9, 1991Dec 21, 1993Nippon Telegraph And Telephone CorporationSubband echo canceller with adjustable coefficients using a series of step sizesUS5323459 *Sep 13, 1993Jun 21, 1994Nec CorporationMulti-channel echo cancelerUS5371789 *Feb 1, 1993Dec 6, 1994Nec CorporationMulti-channel echo cancellation with adaptive filters having selectable coefficient vectorsUS5396554 *Mar 13, 1992Mar 7, 1995Nec CorporationMulti-channel echo canceling method and apparatusUS5408530 *Sep 28, 1993Apr 18, 1995Nippon Telegraph And Telephone CorporationEcho cancelling method and echo canceller using the sameUS5513265 *May 31, 1994Apr 30, 1996Nec CorporationMulti-channel echo cancelling method and a device thereofUS5539731 *Feb 9, 1995Jul 23, 1996Nippon Telegraph And Telephone CorporationEcho cancelling method and apparatus using fast projection schemeUS5602765 *Jul 21, 1994Feb 11, 1997Nippon Telegraph And Telephone CorporationAdaptive transfer function estimating method and estimating device using the sameUS5661813 *Oct 24, 1995Aug 26, 1997Nippon Telegraph And Telephone CorporationMethod and apparatus for multi-channel acoustic echo cancellation* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS6246760 *Sep 11, 1997Jun 12, 2001Nippon Telegraph & Telephone CorporationSubband echo cancellation method for multichannel audio teleconference and echo canceller using the sameUS6424720 *May 20, 1998Jul 23, 2002France TelecomMethod and device for reducing multi-channel acoustic echo and adapting sound to space conditionsUS6473409 *Feb 26, 1999Oct 29, 2002Microsoft Corp.Adaptive filtering system and method for adaptively canceling echoes and reducing noise in digital signalsUS6577731 *Sep 1, 1999Jun 10, 2003Nec CorporationMethod and apparatus of cancelling multi-channel echoesUS6611601 *Jan 15, 2002Aug 26, 2003Matsushita Electric Industrial Co., Ltd.Echo sound signal suppressing apparatusUS6694020 *Sep 14, 1999Feb 17, 2004Agere Systems, Inc.Frequency domain stereophonic acoustic echo canceller utilizing non-linear transformationsUS6757385May 18, 2000Jun 29, 2004Telefonaktiebolaget Lm Ericsson (Publ)Symmetry based subband acoustic echo cancellationUS6785391 *May 21, 1999Aug 31, 2004Nippon Telegraph And Telephone CorporationApparatus and method for simultaneous estimation of transfer characteristics of multiple linear transmission pathsUS6792107 *Jan 26, 2001Sep 14, 2004Lucent Technologies Inc.Double-talk detector suitable for a telephone-enabled PCUS7574005 *Mar 29, 2005Aug 11, 2009Yamaha CorporationHowling frequency component emphasis method and apparatusUS7804963May 30, 2007Sep 28, 2010France Telecom SaMethod and device for comparing signals to control transducers and transducer control systemUS7844059 *Jun 24, 2005Nov 30, 2010Microsoft CorporationDereverberation of multi-channel audio streamsUS7983720May 24, 2005Jul 19, 2011Broadcom CorporationWireless telephone with adaptive microphone arrayUS8111833 *Aug 10, 2007Feb 7, 2012Henri SeydouxMethod of reducing residual acoustic echo after echo suppression in a �hands free� deviceUS8189765 *Jul 6, 2007May 29, 2012Panasonic CorporationMultichannel echo cancellerUS8194851 *Dec 9, 2008Jun 5, 2012Sony CorporationVoice processing apparatus, voice processing system, and voice processing programUS8218774 *May 4, 2006Jul 10, 2012Herbert BuchnerApparatus and method for processing continuous wave fields propagated in a roomUS8223959 *Jul 31, 2007Jul 17, 2012Hewlett-Packard Development Company, L.P.Echo cancellation in which sound source signals are spatially distributed to all speaker devicesUS8271277 *Mar 5, 2007Sep 18, 2012Nippon Telegraph And Telephone CorporationDereverberation apparatus, dereverberation method, dereverberation program, and recording mediumUS8391505 *Jun 1, 2010Mar 5, 2013Honda Motor Co., Ltd.Reverberation suppressing apparatus and reverberation suppressing methodUS8428661Oct 30, 2007Apr 23, 2013Broadcom CorporationSpeech intelligibility in telephones with multiple microphonesUS8494845 *Feb 16, 2007Jul 23, 2013Nippon Telegraph And Telephone CorporationSignal distortion elimination apparatus, method, program, and recording medium having the program recorded thereonUS8509703Aug 31, 2005Aug 13, 2013Broadcom CorporationWireless telephone with multiple microphones and multiple description transmissionUS20080008333 *Jul 6, 2007Jan 10, 2008Tsuyoki NishikawaMultichannel echo cancellerUS20080189103 *Feb 16, 2007Aug 7, 2008Nippon Telegraph And Telephone Corp.Signal Distortion Elimination Apparatus, Method, Program, and Recording Medium Having the Program Recorded ThereonUS20090248403 *Mar 5, 2007Oct 1, 2009Nippon Telegraph And Telephone CorporationDereverberation apparatus, dereverberation method, dereverberation program, and recording mediumUS20100329472 *Jun 1, 2010Dec 30, 2010Honda Motor Co., Ltd.Reverberation suppressing apparatus and reverberation suppressing methodUS20120310637 *May 18, 2012Dec 6, 2012ParrotAudio equipment including means for de-noising a speech signal by fractional delay filtering, in particular for a "hands-free" telephony systemWO2003061344A2 *Dec 9, 2002Jul 24, 2003Gerardus P M EgelmeersMultichannel echo canceller system using active audio matrix coefficients* Cited by examinerClassifications U.S. Classification381/66, 379/406.9, 381/94.1, 381/71.1, 379/406.5International ClassificationH04M9/08Cooperative ClassificationH04M9/082European ClassificationH04M9/08CLegal EventsDateCodeEventDescriptionJul 20, 2010FPExpired due to failure to pay maintenance feeEffective date: 20100602Jun 2, 2010LAPSLapse for failure to pay maintenance feesJan 4, 2010REMIMaintenance fee reminder mailedNov 18, 2005FPAYFee paymentYear of fee payment: 8Nov 30, 2001FPAYFee paymentYear of fee payment: 4Oct 30, 1996ASAssignmentOwner name: NIPPON TELEGRAPH & TELEPHONE CORPORATION, JAPANFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHIMAUCHI, SUEHIRO;MAKINO, SHOJI;KOJIMA, JUNJI;REEL/FRAME:008225/0847Effective date: 19961023RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google