The present document describes a method (600) for estimating source parameters of audio sources (101) from mix audio signals (102), with. The mix audio signals (102) comprise a plurality of frames. The mix audio signals (102) are representable as a mix audio matrix in a frequency domain and the audio sources (101) are representable as a source matrix in the frequency domain. The method (600) comprises updating (601) an un-mixing matrix (221) which is configured to provide an estimate of the source matrix from the mix audio matrix, based on a mixing matrix (225) which is configured to provide an estimate of the mix audio matrix from the source matrix. Furthermore, the method (600) comprises updating (602) the mixing matrix (225) based on the un-mixing matrix (221) and based on the mix audio signals (102). In addition, the method (600) comprises iterating (603) the updating steps (601, 602) until an overall convergence criteria is met.

Patent
   11152014
Priority
Apr 08 2016
Filed
Apr 05 2017
Issued
Oct 19 2021
Expiry
Mar 26 2038
Extension
355 days
Assg.orig
Entity
Large
0
31
window open
1. A method of estimating source parameters of J audio sources from I mix audio signals, with I,J>1, wherein the I mix audio signals comprise a plurality of frames, wherein the I mix audio signals are represented as a mix audio matrix in a frequency domain, wherein the J audio sources are represented as a source matrix in the frequency domain, wherein the method comprises,
receiving the I mix audio signals that are captured by microphones at different places within an acoustic environment;
for a frame n,
updating an un-mixing matrix which is configured to provide an estimate of the source matrix from the mix audio matrix, based on a mixing matrix which is configured to provide an estimate of the mix audio matrix from the source matrix;
updating the mixing matrix based on the un-mixing matrix and based on the/mix audio signals for the frame n, by updating the mixing matrix with a non-negative multiplier multiplying previous values of the mixing matrix, wherein the non-negative multiplier is determined based at least in part on the un-mixing matrix and the I mix audio signals; and
iterating the updating steps of the un-mixing matrix and the mixing matrix until an overall convergence criterion is met,
wherein
the method further comprises determining a covariance matrix of the audio sources;
the un-mixing matrix is updated based on the covariance matrix of the audio sources; and
the covariance matrix of the audio sources is determined based on the mix audio matrix and based on the un-mixing matrix;
boosting, attenuating or leveling one or more audio sources in the J audio sources using the estimated source parameters in one or more audio processing applications, wherein the estimated source parameters include the mixing matrix.
23. A non-transitory storage medium comprising a software program that, when executed by a processor causes the processor to perform operations comprising:
receiving the I mix audio signals that are captured by microphones at different places within an acoustic environment;
estimating source parameters of J audio sources from I mix audio signals, with I,J>1, wherein the I mix audio signals comprise a plurality of frames, wherein the I mix audio signals are represented as a mix audio matrix in a frequency domain, wherein the J audio sources are represented as a source matrix in the frequency domain, the estimating comprising, for a frame n:
updating an un-mixing matrix which is configured to provide an estimate of the source matrix from the mix audio matrix, based on a mixing matrix which is configured to provide an estimate of the mix audio matrix from the source matrix;
updating the mixing matrix based on the un-mixing matrix and based on the/mix audio signals for the frame n, by updating the mixing matrix with a non-negative multiplier multiplying previous values of the mixing matrix, wherein the non-negative multiplier is determined based at least in part on the un-mixing matrix and the I mix audio signals; and
iterating the updating steps of the un-mixing matrix and the mixing matrix until an overall convergence criterion is met,
wherein the estimating further comprises determining a covariance matrix of the audio sources;
the un-mixing matrix is updated based on the covariance matrix of the audio sources; and
the covariance matrix of the audio sources is determined based on the mix audio matrix and based on the un-mixing matrix;
boosting, attenuating or leveling one or more audio sources in the J audio sources using the estimated source parameters in one or more audio processing applications, wherein the estimated source parameters include the mixing matrix.
24. A system for estimating source parameters of J audio sources from I mix audio signals, with I,J>1, wherein the I mix audio signals comprise a plurality of frames, wherein the I mix audio signals are represented as a mix audio matrix in a frequency domain, wherein the J audio sources are represented as a source matrix in the frequency domain, wherein
the system comprises a mix audio signal receiver which is configured to receive the I mix audio signals that are captured by microphones at different places within an acoustic environment;
the system comprises a parameter learner which is configured, for a frame n, to
update an un-mixing matrix which is configured to provide an estimate of the source matrix from the mix audio matrix, based on a mixing matrix which is configured to provide an estimate of the mix audio matrix from the source matrix; and
update the mixing matrix based on the un-mixing matrix and based on the I mix audio signals for the frame n, by updating the mixing matrix with a non-negative multiplier multiplying previous values of the mixing matrix, wherein the non-negative multiplier is determined based at least in part on the un-mixing matrix and the I mix audio signals;
the system comprises a source pre-processor which is configured to determine a covariance matrix of the audio sources;
the parameter learner is configured to update the un-mixing matrix based on the covariance matrix of the audio sources;
the system is configured to cause the parameter learner to update the mixing matrix and the un-mixing matrix in a repeated manner until an overall convergence criterion is met; and
the source pre-processor is configured to determine the covariance matrix of the audio sources based on the mix audio matrix and based on the un-mixing matrix;
the system comprises an audio signal processor which is configured to boost, attenuate or level one or more audio sources in the J audio sources using the estimated source parameters in one or more audio processing applications, wherein the estimated source parameters include the mixing matrix.
2. The method of claim 1, wherein
the method comprises determining a covariance matrix of the I mix audio signals based on the mix audio matrix; and
the mixing matrix is updated based further on the covariance matrix of the I mix audio signals.
3. The method of claim 2, wherein
the covariance matrix RXX,fn of the I mix audio signals for frame n and for a frequency bin f of the frequency domain is determined based on an average of covariance matrices of frames of the I mix audio signals within a window around the frame n;
a covariance matrix of a frame k is determined based on XfkXfkH; and
Xfn is the mix audio matrix for frame n and for the frequency bin f.
4. The method of claim 2, wherein determining the covariance matrix of the I mix audio signals comprises normalizing the covariance matrix for the frame n and for a frequency bin f such that a sum of energies of the I mix audio signals for the frame n and for the frequency bin f is equal to a pre-determine normalization value.
5. The method of claim 1, wherein
the covariance matrix RSS,fn of the audio sources for frame n and for a frequency bin f of the frequency domain is determined based on RSS,fnfnRXX,fnΩfnH;
RXX,fn is a covariance matrix of the I mix audio signals; and
Ωfn is the un-mixing matrix.
6. The method of claim 1, wherein
the method comprises determining a covariance matrix of noises within the I mix audio signals; and
the un-mixing matrix is updated based on the covariance matrix of noises within the I mix audio signals.
7. The method of claim 1, wherein
a covariance matrix of noises is determined based on the I mix audio signals; and/or
the covariance matrix of noises is proportional to trace of a covariance matrix of the I mix audio signals; and/or
the covariance matrix of noises is determined such that only a main diagonal of the covariance matrix of noises comprises non-zero matrix terms; and/or
a magnitude of the matrix terms of the covariance matrix of noises decreases with an increasing number q of iterations of the method.
8. The method of claim 1, wherein
updating the un-mixing matrix comprises improving an un-mixing objective function which is dependent on the un-mixing matrix; and/or
updating the mixing matrix comprises improving a mixing objective function which is dependent on the mixing matrix.
9. The method of claim 8, wherein
the un-mixing objective function and/or the mixing objective function comprises one or more constraint terms; and
a constraint term is dependent on a desired property of the un-mixing matrix or the mixing matrix.
10. The method of claim 9, wherein the mixing objective function comprises one or more of
a constraint term which is dependent on a non-negativity of matrix terms of the mixing matrix;
a constraint term which is dependent on a number of non-zero matrix terms of the mixing matrix;
a constraint term which is dependent on a correlation between different columns or different rows of the mixing matrix; and/or
a constraint term which is dependent on a deviation of the mixing matrix for frame n and a mixing matrix for a preceding frame.
11. The method of claim 9, wherein the un-mixing objective function comprises one or more of
a constraint term which is dependent on a degree to which the un-mixing matrix provides a covariance matrix of the audio sources from a covariance matrix of the I mix audio signals, such that non-zero matrix terms of the covariance matrix of the audio sources are concentrated towards the main diagonal;
a constraint term which is dependent on a degree of invertibility of the un-mixing matrix; and/or
a constraint term which is dependent on a degree of orthogonality of column vectors or row vectors of the un-mixing matrix.
12. The method of claim 9, wherein the one or more constraint terms are included into the un-mixing objective function and/or the mixing objective function using one or more constraint weights, respectively, to increase or reduce an impact of the one or more constraint terms on the un-mixing objective function and/or on the mixing objective function.
13. The method of claim 8, wherein the un-mixing objective function and/or the mixing objective function are improved in an iterative manner until a sub convergence criterion is met, to update the un-mixing matrix and/or the mixing matrix, respectively.
14. The method of claim 13, wherein
improving the mixing objective function comprises repeatedly multiplying the mixing matrix with a multiplier matrix until the sub convergence criterion is met; and
the multiplier matrix is dependent on the un-mixing matrix and on the I mix audio signals.
15. The method of claim 14, wherein
the multiplier matrix is dependent on
( D . D + 4 ( A M + ) . ( A M - ) - D + ɛ 1 A M + + ɛ 1 ) ;
M=ΩRXXΩHuncorr1;
D=−RXXΩHuncorr1;
Ω is the un-mixing matrix;
RXX is a covariance matrix of the I mix audio signals;
αuncorr and αsparse are constraint weights;
ε is a real number; and
A is the mixing matrix.
16. The method of claim 13, wherein
improving the un-mixing objective function comprises repeatedly adding a gradient to the un-mixing matrix until the sub convergence criterion is met; and
the gradient is dependent on a covariance matrix of the I mix audio signals.
17. The method of claim 1, wherein the method comprises determining the mix audio matrix by transforming the I mix audio signals from a time domain to the frequency domain.
18. The method of claim 17, wherein the mix audio matrix is determined using a short-term Fourier transform.
19. The method of claim 1, wherein
an estimate of the source matrix for the frame n and for a frequency bin f is determined as SfnfnXfn;
an estimate of the mix audio matrix for the frame n and for the frequency bin f is determined based on Xfn=AfnSfn;
Sfn is an estimate of the source matrix;
Ωfn is the un-mixing matrix;
Afn is the mixing matrix; and
Xfn is the mix audio matrix.
20. The method of claim 1, wherein the overall convergence criterion is dependent on a degree of change of the mixing matrix between two successive iterations.
21. The method of claim 1, wherein the method comprises,
initializing the mixing matrix based on an un-mixing matrix determined for a frame preceding the frame n and based on the I mix audio signals for the frame n.
22. The method of claim 1, wherein the method comprises, subsequent to meeting the convergence criterion, performing post-processing on the mixing matrix to determine one or more source parameters with regards to the audio sources.

The present document relates to audio content processing and more specifically to a method and system for estimating the source parameters of audio sources from mix audio signals.

Mix audio signals of multi-channel format, such as stereo signals, beamforming, 5.1 or 7.1 signals, etc., are created by mixing different audio sources in a studio, or are generated from a plurality of recordings of audio sources in a real environment. Source parameterization is a task to estimate source parameters of these audio sources for further audio processing applications. Such source parameters include information about the audio sources, such as the mixing parameters, position metadata, spectral power parameters, spectral and temporal signatures, etc. The source parameters are useful for a wide range of audio processing applications. For example, when recording an auditory scene using one or more microphones, it may be beneficial to separate and identify the audio source dependent information for different subsequent audio processing tasks. Examples for audio processing applications include spatial audio coding, 3D (three dimensional) sound analysis and synthesis and/or remixing/re-authoring. Re-mixing/re-authoring applications may render the audio sources in an extended play-back environment compared to the environment that the original mix audio signals were created for. Other applications make use of the audio source parameters to enable audio source-specific analysis and post-processing, such as boosting, attenuating, or leveling certain audio sources, for various purposes such as automatic speech recognition.

In view of the foregoing, there is a need in the art for a solution for estimating audio source parameters from mix audio signals, even if no prior information about the audio sources or about the capturing process is available (such as the properties of the recording devices, the acoustic properties of the room, etc.). Furthermore, there is a need for a robust unsupervised solution for estimating source parameters in a noisy environment.

The present document addresses the technical problem of providing a method for estimating source parameters of multiple audio sources from mix audio signals in an accurate and robust manner.

According to an aspect, a method for estimating source parameters of J audio sources from I mix audio signals, with I,J>1, is described. The mix audio signals typically include a plurality of frames. The I mix audio signals are representable as a mix audio matrix in a frequency domain and the audio sources are representable as a source matrix in the frequency domain. In particular, the mix audio signals may be transformed from the time domain into the frequency domain using a time domain to frequency domain transform, such as a short-term Fourier transform.

The method includes, for a frame n, updating an un-mixing matrix which is adapted to provide an estimate of the source matrix from the mix audio matrix. The un-mixing matrix is updated based on a mixing matrix which is adapted to provide an estimate of the mix audio matrix from the source matrix. As a result of the updating step an (updated) un-mixing matrix is obtained.

In particular, an estimate of the source matrix for the frame n and for a frequency bin f of the frequency domain may be determined using SfnfnXfn. Furthermore, an estimate of the mix audio matrix for the frame n and for the frequency bin f may be determined based on Xfn=AfnSfn. In the above formulas, Sfn is (an estimate of) the source matrix, Ωfn is the un-mixing matrix, Afn is the mixing matrix, and Xfn is the mix audio matrix.

Furthermore, the method includes updating the mixing matrix based on the (updated) un-mixing matrix and based on the I mix audio signals for the frame n.

In addition, the method includes iterating the updating steps until an overall convergence criteria is met. In other words, the un-mixing matrix may be updated using the previously updated mixing matrix and the mixing matrix may be updated using the previously updated un-mixing matrix. These updating steps may be performed for a plurality of iterations until the overall convergence criteria is met. The overall convergence criteria may be dependent on a degree of change of the mixing matrix between two successive iterations. In particular, the iterative updating procedure may be terminated once the degree of change of the mixing matrix between two successive iterations is equal to or smaller than a pre-determined threshold.

Further, the method may include determining a covariance matrix of the audio sources. The covariance matrix of the audio sources may be determined based on the mix audio matrix.

For example, the covariance matrix of the audio sources may be determined based on the mix audio matrix and based on the un-mixing matrix. The covariance matrix RSS,fn of the audio sources for frame n and for the frequency bin f of the frequency domain may be determined based on RSS,fnfnRXX,fnΩfnH. The un-mixing matrix may be updated based on the covariance matrix of the audio sources, thereby enabling an efficient and precise determination of the un-mixing matrix.

By repeatedly updating the mixing matrix based on the un-mixing matrix and then using the updated mixing matrix to update the un-mixing matrix, a precise mixing matrix and/or a precise un-mixing matrix may be determined, thereby enabling the determination of precise source parameters of the audio sources. For this purpose, the method may include, subsequent to meeting the convergence criteria, performing post-processing on the mixing matrix to determine one or more (additional) source parameters with regards to the audio sources (such as position information regarding the different positions of the audio sources).

The iterative procedure may be initialized by initializing the un-mixing matrix based on an un-mixing matrix determined for a frame preceding the frame n. Furthermore, the mixing matrix may be initialized based on the (initialized) un-mixing matrix and based on the I mix audio signals for the frame n. By making use of the estimation result for a previous frame for initializing the estimation method for the current frame, the convergence speed of the iterative procedure and the precision of the estimation result may be improved.

The method may include determining a covariance matrix of the mix audio signals based on the mix audio matrix. In particular, the covariance matrix RXX,fn of the mix audio signals for frame n and for the frequency bin f of the frequency domain may be determined based on an average of covariance matrices for a plurality of frames within a window around the frame n. By way of example, the covariance matrix of a frame k may be determined based on XfkXfkH. The covariance matrix of the mix audio signals may be determined based on RXX,fnk=nn+T−1XfkXfkH/T, wherein T is a number of frames used for determining the covariance matrix RXX,fn. The mixing matrix may then be updated based on the covariance matrix of the mix audio signals, thereby enabling an efficient and precise determination of the mixing matrix. Furthermore, determining the covariance matrix of the mix audio signals may comprise normalizing the covariance matrix for the frame n and for the frequency bin f such that a sum of energies of the mix audio signals for the frame n and for the frequency bin f is equal to a pre-determine normalization value (e.g. to one). By doing this, convergence properties of the method may be improved.

The method may include determining a covariance matrix of noises within the mix audio signals. The covariance matrix of noises may be determined based on the mix audio signals. Furthermore, the covariance matrix of noises may be proportional to the covariance matrix of the mix audio signals. In addition, the covariance matrix of noises may be determined such that only a main diagonal of the covariance matrix of noises includes non-zero matrix terms (to take into account the fact that the noises are uncorrelated). Alternatively or in addition, a magnitude of the matrix terms of the covariance matrix of noises may decrease with an increasing number q of iterations of the iterative procedure (thereby supporting convergence of the iterative procedure towards an optimum estimation result). The un-mixing matrix may be updated based on the covariance matrix of noises within the mix audio signals, thereby enabling an efficient and precise determination of the un-mixing matrix.

The step of updating the un-mixing matrix may include the step of improving (for example, minimizing or optimizing) an un-mixing objective function which is dependent on or which is a function of the un-mixing matrix. In a similar manner, the step of updating the mixing matrix may include the step of improving (for example, minimizing or optimizing) a mixing objective function which is dependent on or which is a function of the mixing matrix. By taking into account such objective functions, the mixing matrix and/or the un-mixing matrix may be determined in a precise manner.

The un-mixing objective function and/or the mixing objective function may include one or more constraint terms, wherein a constraint term is typically dependent on or indicative of a desired property of the un-mixing matrix or the mixing matrix. In particular, a constraint term may reflect a property of the mixing matrix or of the un-mixing matrix, which is a result of a known property of the audio sources. The one or more constraint terms may be included into the un-mixing objective function and/or the mixing objective function using one or more constraint weights, respectively, to increase or reduce an impact of the one or more constraint terms on the un-mixing objective function and/or on the mixing objective function. By taking into account one or more constraint terms, the quality of the estimated mixing matrix and/or un-mixing matrix may be increased further.

The mixing objective function (for updating the mixing matrix) may include one or more of: a constraint term which is dependent on non-negativity of the matrix terms of the mixing matrix; a constraint term which is dependent on a number of non-zero matrix terms of the mixing matrix; a constraint term which is dependent on a correlation between different columns or different rows of the mixing matrix; and/or a constraint term which is dependent on a deviation of the mixing matrix for frame n from a mixing matrix for a (directly) preceding frame.

Alternatively or in addition, the un-mixing objective function (for updating the un-mixing matrix) may include one or more of: a constraint term which is dependent on a capacity of the un-mixing matrix to provide a covariance matrix of the audio sources from a covariance matrix of the mix audio signals, such that non-zero matrix terms of the covariance matrix of the audio sources are concentrated towards the main diagonal of the covariance matrix; a constraint term which is dependent on a degree of invertibility of the un-mixing matrix; and/or a constraint term which is dependent on a degree of orthogonality of column vectors or row vectors of the un-mixing matrix.

The un-mixing objective function and/or the mixing objective function may be improved in an iterative manner until a sub convergence criteria is met, to update the un-mixing matrix and/or the mixing matrix, respectively. In other words, the updating step for updating the mixing matrix and/or for updating the un-mixing matrix may itself include an iterative procedure.

In particular, improving the mixing objective function (and by consequence updating the mixing matrix) may include the step of repeatedly multiplying the mixing matrix with a multiplier matrix until the sub convergence criteria is met, wherein the multiplier matrix may be dependent on the un-mixing matrix and on the mix audio signals. In particular, the multiplier matrix may be dependent on or may be equal to

( D · D + 4 ( AM + ) · ( AM - ) - D + ɛ 1 A M + + ɛ 1 ) ;
wherein M=ΩRXXΩHuncorr1; wherein D=−RXXΩHsparse1; wherein Ω is the un-mixing matrix; wherein RXX is the covariance matrix of the mix audio signals; wherein αuncorr and αsparse are constraint weights; wherein ε is a real number; and wherein A is the mixing matrix. In the above terms, the frame index n and the frequency bin index f has been omitted in order to provide a simplified notation. By repeatedly applying a multiplier matrix, the mixing matrix may be determined in a robust and precise manner.

The step of improving the un-mixing objective function (and by consequence updating the un-mixing matrix) may include repeatedly adding a gradient to the un-mixing matrix until the sub convergence criteria is met. The gradient may be dependent on a covariance matrix of the mix audio signals. Using a gradient approach, the un-mixing matrix may be updated in a precise and robust manner.

According to a further aspect, a system for estimating source parameters of J audio sources from I mix audio signals, with I,J>1 is described. The I mix audio signals are representable as a mix audio matrix in the frequency domain and the J audio sources are representable as a source matrix in the frequency domain. The system includes a parameter learner which is adapted to update an un-mixing matrix which is adapted to provide an estimate of the source matrix from the mix audio matrix, based on a mixing matrix which is adapted to provide an estimate of the mix audio matrix from the source matrix. Furthermore, the parameter learner is adapted to update the mixing matrix based on the un-mixing matrix and based on the I mix audio signals. The system is adapted to instantiate the parameter learner in a repeated manner until an overall convergence criteria is met.

According to a further aspect, a software program is described. The software program may be adapted for execution on a processor and for performing the method steps outlined in the present document when carried out on the processor.

According to another aspect, a storage medium is described. The storage medium may include a software program adapted for execution on a processor and for performing the method steps outlined in the present document when carried out on the processor.

According to a further aspect, a computer program product is described. The computer program may include executable instructions for performing the method steps outlined in the present document when executed on a computer.

It should be noted that the methods and systems including its preferred embodiments as outlined in the present patent application may be used stand-alone or in combination with the other methods and systems disclosed in this document. Furthermore, all aspects of the methods and systems outlined in the present patent application may be arbitrarily combined. In particular, the features of the claims may be combined with one another in an arbitrary manner.

The invention is explained below in an exemplary manner with reference to the accompanying drawings, wherein

FIG. 1 shows an example scenario with a plurality of audio sources and a plurality of mix audio signals of a multi-channel signal;

FIG. 2 shows a block diagram of an example system for estimating source parameters of a plurality of audio sources;

FIG. 3 shows a block diagram of an example constrained parameter learner;

FIG. 4 shows a block diagram of another example constrained parameter learner;

FIGS. 5A and 5B show example iterative processors for updating a mixing matrix and an un-mixing matrix, respectively; and

FIG. 6 shows a flow chart of an example method for estimating a source parameter of audio sources from a plurality of mix audio signals.

As outlined above, the present document is directed at the estimation of source parameters of audio sources from mix audio signals. FIG. 1 illustrates an example scenario for source parameter estimation. In particular, FIG. 1 illustrates a plurality of audio sources 101 which are positioned at different locations within an acoustic environment. Furthermore, a plurality of mix audio signals 102 is captured by microphones at different places within the acoustic environment. It is an object of source parameter estimation to derive information about the audio sources 101 from the mix audio signals 102. In particular, an unsupervised method for source parameterization is described in the present document, which may extract meaningful source parameters, which may discover a structure underlying the observed mix audio signals, and which may provide useful representations of the given data and constraints.

The following notations are used in the present document,

A B
denotes an element-wise division of two matrices A and B;

FIG. 2 shows a block diagram of an example system 200 for estimating a source parameter. The input of the system 200 includes a multi-channel audio signal with I audio channels or mix audio signals 102, expressed as xi(t), i=1, . . . , I, t=1, . . . Z. The mix audio signals 102 can be converted into the frequency domain, for example into the Short-time Fourier transform (STFT) domain, so that Xfn are I×1 matrices (referred to as mix audio matrices) representing STFTs of I mix audio signals 102, with f=1, . . . , F being the frequency bin index, and with n=1, . . . , N being the time frame index. The mixing model of the mix audio signals may be presented in a matrix form as:
Xfn=AfnSfn+Bfn  (1)
where Sfn are matrices of dimension J×1, representing STFTs of J unknown audio sources (referred to herein as source matrices), Afn are matrices of dimension I×J, representing mixing parameters, which can be frequency-dependent and time-varying (referred to herein as mixing matrices), and Bfn are matrices of dimension I×1, representing additive noise plus diffusive ambience signals (referred to herein as noise matrices).

Likewise, the inverse mixing process from the observed mix audio signals 102 to the unknown audio sources 101 may be modeled in a similar matrix form as:
{tilde over (S)}fnfnXfn  (2)
where {tilde over (S)}fn are matrices of dimension J×1, representing STFTs of J estimated audio sources (referred to herein as estimated source matrices), Ωfn are matrices of dimension J×1, representing inverse mixing parameters or un-mixing parameters (referred to herein as the un-mixing matrices).

In the present document, an unsupervised learning method and system 200 for estimating source parameters for the use in different subsequent audio processing tasks is described. Meanwhile, if prior-knowledge is available, the method and system 200 may be extended to incorporate the prior information within the learning scheme. The source parameters may include the mixing and un-mixing parameters Afn, Ωfn, and/or estimated spectral and temporal parameters of the unknown audio sources 101.

The system 200 may include the following modules:

Table 1 illustrates example inputs and outputs of the parameter learner 202.

TABLE 1
Input Output
Covariance Inverse mixing Mixing
matrices parameters parameters
observed First input: First input: First output:
mix Covariance matrices Ωfn: the un-mixing Afn
audio output from the Mix parameters initially
signals audio pre-processor set with random
values or with prior
information about the
mix (if available)
and consequently
the feedback from
the second output
unknown Second input: Second input: Second
audio Covariance matrices Afn: the mixing output:
sources output from the parameters being the Ωfn
Source parameter feedback from the first
regulator, and that output from the
from noise parameter learner
estimation

In the following, examples for the different modules of the system 200 are described.

The mix pre-processor 201 may read in I mix audio signals 102 and may apply a time domain to frequency domain transform (such as a STFT transform) to provide the frequency-domain mix audio matrix Xfn. The covariance matrices RXX,fn 222 of the mix audio signals 102 may be calculated as below:

R XX , fn = Σ k = n n + T - 1 X f k X f k H / T ( 3 )
where n is the current frame index, and where T is the frame count of the analysis window of the transform.

In addition, the covariance matrices 222 of the mix audio signals 102 may be normalized by the energy of the mix audio signals 102 per TF tiles, so that the sum of all normalized energies of the mix audio signals 102 for a given TF tile is one:

R XX , fn = R XX , fn trace ( R XX , fn ) + ɛ 1 ( 4 )
where ε1 is a relatively small value (for example, 10−6) to avoid division by zero, and trace(·) returns the sum of the diagonal entries of the matrix within the bracket.

The source pre-processor 203 may be adapted to calculate the audio sources' covariance matrices RSS,fn as:
RSS,fnfnRXX,fnΩfnH  (5)

It may be assumed that the noises in each mix audio signal 102 are uncorrelated to each other, which does not limit the generality from the practical point of view. Hence, the noises' covariance matrices are diagonal matrices, wherein all diagonal entries may be initialized as being proportional to the trace of mix covariance matrices of the mix audio signals 102 and wherein the proportionality factor may decrease along the iteration times of the iterative processor:

( R BB , fn ) ii = 1 100 Q 2 I ( Q - 0.9 q ) 2 trace ( R XX , fn ) , ( 6 )
where Q is the overall iteration times and q is the current iteration count during the iterative processing.

If prior knowledge 223 about the audio sources 101 and/or noises is available, advanced methods may be adopted within the source pre-processor 203.

The mixing parameter learner 202 may implement a learning method that determines the mixing and un-mixing parameters 225, 221 for the audio sources 101 by minimizing and/or optimizing a cost function (or objective function). The cost function may depend on the mix audio matrices and the mixing parameters. In an example, such a cost function for learning the mixing parameters Afn (or A, when omitting the frequency index f and the frame index n) may be defined as below:

E ( A ) = ( X H - ( AS ) H ) F 2 = trace ( ( X H - S H A H ) H ( X H - S H A H ) ) = trace ( XX H - XS H A H - ASX H + ASS H A H ) = f trace [ R XX , fn - R XX , fn Ω fn H A fn H - A fn Ω fn R XX , fn H + A fn ( Ω fn R XX , fn Ω fn H ) A fn H ] ( 7 )
where ∥·∥F represents the Frobenius norm.

The cost function for learning the un-mixing parameters Ωfn (or Ω) may be defined in the same manner. The input to the cost function is changed by replacing A with Ω and replacing X with S. Thus, the cost function may depend on the source matrices and the un-mixing parameters. In an example corresponding to the example of equation (7):

E ( Ω ) = ( S H - ( Ω X ) H ) F 2 = f trace [ R SS , fn - R SS , fn A fn H Ω fn H - Ω fn A fn R SS , fn H + Ω fn ( A fn R SS , fn A fn H + R BB , fn ) Ω fn H ] ( 8 )

Alternatively, notably if the noise model is to be taken into account, a cost function using the minus log-likelihood may be used, such as:

E ( A ) = - log P ( X fn | A fn ) = f [ ( X fn - A fn S fn ) H R BB , fn - 1 ( X fn - A fn S fn ) + log ( trace R BB , fn ) ] = f trace [ R XX , fn - R XX , fn Ω fn H ( R BB , fn - 1 A fn ) H - ( R BB , fn - 1 A fn ) Ω fn R XX , fn H + ( R BB , fn - 1 A fn ) ( Ω fn R XX , fn Ω fn H ) ( R BB , fn - 1 A fn ) H ] + f log ( trace R BB , fn ) = f trace [ R XX , fn - R XX , fn Ω fn H A _ fn H - A _ fn Ω fn R XX , fn H + A _ fn ( Ω fn R XX , fn Ω fn H ) A _ fn H ] + f log ( trace R BB , fn ) ( 9 )
where Ā=RBB,fn−1Afn, and where RBB,fn is the covariance matrix of the noise signals. Typically, RBB,fn is a diagonal matrix, if the noises are considered to be uncorrelated signals. It can be observed that the cost function of equation (9) is in the same form as the cost functions of equations (7) and (8).

Different optimization techniques may be applied to learn the mixing parameters and/or un-mixing parameters. In particular, the problem of learning the mixing/un-mixing parameters may be considered as the minimization problems:
A=argmin E(A)  (10)
Ω=argmin E(Ω)  (11)

The system 200 may use an inverse-matrix method by solving ∇E=0 to determine optimized values of the mixing parameters as follows:
A=RXXΩHRXXΩH)−1  (12)
Ω=RSSAH(ARSSAH+RBB)−1  (13)

The successful and efficient design and implementation of the mixing parameter learner 202 typically depends on an appropriate use of regularization, pre-processing and post-processing based on prior knowledge 223. For this purpose, one or more constraints may be taken into account within the mixing parameter learner 202, thereby enabling the extraction and/or identification of physically significant and meaningful hidden source parameters.

FIG. 3 illustrates a mixing parameter learner 302 which makes use of one or more constraints 311, 312 for determining the mixing parameters 225 and/or for determining the un-mixing parameters 221. Different constraints 311, 312 may be imposed according to the different properties and physical meaning of the mixing parameters A and/or of the un-mixing parameters Ω.

Example constraints 311 for learning the mixing parameters A:

Moreover, for learning the un-mixing parameters Ω, one or more of the following constraints may be enforced within the learner 202, 302. Example constraints are:

While a cost function may include terms such as the Frobenius norm as expressed in equations (7) and (8) or the minus log-likelihood term as expressed in equation (9), other cost functions may be used instead of or in addition to the cost functions as described in the present document. Especially, additional constraint terms may be used to regulate the learning for fast convergence and improved performance. For example, the constrained cost function may be given by
E(A)=∥(XH−(AS)∥F2+Euncorr+Esparse  (14)
where Euncorr is a term for the uncorrelatedness constraint:
Euncorruncorr∥A1∥F2  (15)
and Esparse is a term for the sparseness constraint:

E sparse = α sparse A 1 = α sparse ij A ij = α sparse ij A ij , subject to A ij 0 , i , j ( 16 )

The level of the uncorrelatedness and/or the sparsity may be increased with the increase of the regularization coefficients αuncorr and/or αsparse. By way of example, αuncorr∈[0,10] and αsparse∈[0.0, 0.5].

An example constrained learner 302 may use the inverse-matrix method by solving ∇E=0 to determine optimized values of the mixing parameters as follows:
A=(RXXΩH−αsparse1)(ΩRXXΩHuncorr1)−1  (17)

However, there may be limitations for the inverse-matrix method with regards to the constraints. A possible method for enforcing a non-negativity constraint is to make A=A+ after each calculation of equation (17), where a positive component A+ and a negative component Aof a matrix A are respectively defined as follows:

A + ij = { A ij if A ij > 0 0 otherwise A - ij = { - A ij if A ij < 0 0 otherwise ( 18 )

Such a method for imposing non-negativity may not necessarily converge to the global optimum. On the other hand, if the non-negativity constraint is not enforced, meaning if the condition Aij≥0, ∀i,j in equation (16) does not hold, it may be difficult to impose the L1-norm sparseness constraint, as defined in equation (16).

Instead of or in addition to using the inverse-matrix method, an unsupervised iterative learning method may be used, which is flexible with regards to imposing different constraints. This method may be used to discover a structure underlying the observed mix audio signals 102, to extract meaningful parameters, and to identify a useful representation of the given data. The iterative learning method may be implemented in a relatively simple manner.

It may be relevant to solve the problem by multiplicative updates when constraints such as L1-norm sparseness are imposed, since a closed form solution no longer exists. Furthermore, given non-negative initialization and non-negative multipliers, the multiplicative iterative learner naturally enforces a non-negativity constraint. In addition, the multiplicative update approach also provides stability for ill-conditioned situations. It leads the learner 202 to output robust and stable mixing parameters A given ill-conditioned ΩRXXΩH. Such an ill-conditioned situation may occur frequency for unsupervised learning, especially when the number of audio sources 101 is over-estimated, or when the estimated audio sources 101 are highly correlated to each other. In these cases, the matrix ΩRXXΩH is singular (having a lower rank than its dimension), so that using the inverse-matrix method in equations (12) and (13) may lead to numerical issues and may become unstable.

When using the multiplicative update approach, current values of the mixing parameters are obtained by iteratively updating previous values of the mixing parameters with a non-negative multiplier. For the purpose of illustration only, the current values of the mixing parameters may be derived from the previous values of the mixing parameters with a non-negative multiplier as follows:

A 1 2 A . ( D . D + 4 ( A M + ) . ( A M - ) - D + ɛ 1 A M + + ɛ 1 ) ( 19 )
where M=ΩRXXΩHuncorr1, D=−RXXΩHsparse1, and where ε is a small value (typically ε=10−8) to avoid zero-division. In the above, αsparse and/or αuncorr may be zero.

When αsparse=0 and αuncorr=0, the above mentioned updated approach is identical to an un-constrained learner without a sparseness constraint or uncorrelatedness constraint. The uncorrelatedness level and sparsity level may be pronounced by increasing the regularization coefficients or constraint weights ═uncorr and αsparse. These coefficients may be set empirically depending on the desired degree of uncorrelatedness and/or sparseness. Typically, αuncorr∈[0, 10] and αsparse∈[0.0, 0.5]. Alternatively, optimal regularization coefficients may be learned based on a target metric such as a signal-to-distortion ratio. It may be shown that the optimization of the cost function E (A) using the multiplicative update approach is convergent.

Although M is typically diagonalizable and positive definite, the mixing parameters obtained via the inverse-matrix method as given by equations (12) or (17) may not necessarily be positive. In contrast, when updating mixing parameter values through an update factor that is a positive multiplier according to equation (19) non-negativity in the optimization process of the mixing parameters may be ensured, provided that the initial values of the mixing parameters are non-negative. The mixing parameters obtained using a multiplicative-update method according to equation (19) may remain zero provided the initial values of the mixing parameters are zero.

The multiplicative update method may be extended for a learner 202, 302 without the non-negativity constraint, meaning that A is allowed to contain both non-negative and negative entries: A=A+−A. For the purpose of illustration only, the current values of the mixing parameters may be derived by updating its non-negative part and negative part separately as follows:

A + 1 2 A + . ( D p . D p + 4 ( A + M + ) . ( A + M - ) - D p + ɛ 1 A + M + + ɛ 1 ) , ( 20 ) A - 1 2 A - . ( D n . D n + 4 ( A - M + ) . ( A - M - ) - D n + ɛ 1 A - M + + ɛ 1 ) ,
where Dp=−RXXΩH−AM+αsparse1, Dn=RXXΩH−A+M+αsparse1, M=ΩRXXΩHuncorr1, and ε is a small value (typically ε=10−8) to avoid zero-division.

As shown in FIG. 4, the constrained learner 302 may be adapted to apply an iterative processor 411 for learning the mixing parameters and an iterative processor 412 for learning the un-mixing parameters. The multiplicative-update method may be applied within the constrained learner 302. Furthermore, a different optimization method that can maintain non-negativity may be used instead of, or in conjunction with, the multiplicative-update method. In an example, a quadratic programming method (for example, implemented as MATLAB function pdco( ) etc.) that implements a non-negativity constraint may be used to learn parameter values while maintaining non-negativity. In another example, an interior point optimizer (for example, implemented in the software library IPOPT) may be used to learn parameter values while maintaining non-negativity. Such a method may be implemented as an iterative method, a recursive method, and the like. It should also be noted that such optimization methods including the multiplicative-update scheme may be applied to any of a wide variety of cost or objective functions including but not limited to the examples provided within the present document (such as the cost or objective functions given in equations (7), (8) or (9)).

FIG. 5A illustrates an iterative processor 411 which applies a multiplicative updater 511 iteratively. First, initial non-negative values for the mixing parameters A may be set using for example random values. Alternatively, the initial values of the mixing parameters may be inherited from values of the mixing parameters of a previous frame, Afn=Afn−1, so that the consistency constraint is indirectly imposed to the learner 302. The value of the mixing matrix A is then iteratively updated by multiplying the current values with the multiplier (as indicated for example by equation (19). The iterative procedure is terminated upon convergence. The convergence criteria (also referred to herein as sub convergence criteria) may for example include differences in values of the mixing matrix between two successive iterations. The iterative procedure may be terminated, if such differences become smaller than convergence thresholds. Alternatively or in addition, the iterative procedure may be terminated, if the maximum allowed number of iterations is reached. The iterative processor 411 may then output the converged values of the mixing parameters 225.

An example implementation of the constrained learner 302 for the mixing parameters using the multiplicative method is shown in Table 2:

TABLE 2
Input: Ω, RXX, Af,n−1 (if n > 1)
Initialize:
 // initialize A with learned values from previous frames; if no history
 data available, use random non-negative values
A ij = { A ij , f , n - 1 , ( if n > 1 ) ϕ , where ϕ ( 0 , 1 ) ( otherwise )
 M = ΩRXXΩH + αuncorr1,
 D = −RXXΩH + αsparse1,
Iteration:
 for iter = 1: iteration_times, do:
  //Update A with nonnegative multiplier using Eq. (19)
  Aold = A,
   A 1 2 A · ( D · D + 4 ( AM + ) · ( AM - ) - D + ɛ1 AM + + ɛ1 ) ,
  //terminate the iteration if difference is less than a pre-defined
  threshold
  // Γ (empirically set to 0.0001)
   if ΔA = ||A − Aold||F < Γ
   break;
  end
 end
Normalize:
 for j = 1: J, do:
   E = i A ij 2
  if E > 10−12
    A ij , fn = A ij E // L 2 normalize
  else // if very small L2 value, set even values for the mixing
  parameters
    A ij , fn = 1 I
  end
 end
Output: the mixing parameters Afn.

In the above, αsparse and/or αuncorr may be zero.

The multiplicative updater may be applied for learning un-mixing parameters Ω in a similar manner. In FIG. 5B an iterative processor 412 with a constrained learner 512 that makes use of an example gradient update method for enforcing diagonalizability is described. According to this gradient update method, a gradient may be repeatedly added to the un-mixing matrix until the sub convergence criteria is met. This may be said to correspond to improving the un-mixing objective function. The gradient may be dependent on a covariance matrix of the mix audio signals. Table 3 shows the pseudocode of such a gradient update method for determining the un-mixing parameters.

TABLE 3
Input: A, RSS, RXX, RBB
Initialize:
 // initialize Ω with Example method I using Eq. (13)
 Ω = RSSAH (ARSSAH + RBB)−1,
Iteration:
 for iter = 1: iteration_times, do:
  //Update Ω by enforcing the diagonalizability constraint, where:
  //Δ(·) returns the off-diagonal matrix of the input matrix;
  // μ is the gradient learning step, and empirically μ = 2;
  // ε is a small value to avoid zero-division, and empirically ε = 10−12
   Ω Ω + μ · Δ _ ( Ω ( R XX - R BB ) Ω H ) Ω R XX Ω F 2 · R XX - R BB F 2 + ɛ ,
  // Calculate a metric indicating how much the matrix is diagonalized
  Λ = ||Δ(Ω(RXX − RBBH)||F
  //terminate the iteration if the target matrix is sufficiently
  diagonalized,
  where:
  //Γ1 is a threshold for absolute diagonalization degree,
  //and empirically Γ1 = 0.15;
  //Γ2 is a threshold for relative diagonalization degree descent between
  two iterations, and empirically Γ2 = 0.004;
  if Λ < Γ1 && Λold − Λ < Γ2
   break;
  end
  Λold ← Λ
 End
Output: the un-mixing parameters Ω.

The convergence for the iterative processor 204 in FIG. 2 may be determined by measuring the difference for the mixing parameters A between two iterations of the iterative processor 204. The difference metric may be the same as the one used in Table 2. The mixing parameters may then be output for calculating other source metadata and for other types of post-processing 205.

As such, the iterative processor 204 of FIG. 2 may make use of outer iterations for updating the un-mixing parameters based on the mixing parameters and for updating the mixing parameters based on the un-mixing parameters, in an alternating manner. Furthermore, the iterative processor 204, and notably the parameter learner 202, may make use of inner iterations for updating the un-mixing parameters and for updating the mixing parameters (using the iterative processors 412 and 411), respectively. As a result of this, the source parameters may be determined in a robust and precise manner.

In the following, example post-processing 205 is described. The audio sources' position metadata may be directly estimated from the mixing parameters A. Provided that non-negativity has been enforced when determining the mixing parameters A, each column of the mixing matrix represents the panning coefficients of the corresponding audio source. The square of the panning coefficients may represent the energy distribution of an audio source 101 within the mix audio signals 102. Thus, the position of an audio source 101 may be estimated as the energy weighted center of mass: Pji=1IwijPi, where Pj is the spatial position of the j-th audio source, where Pi is the position corresponding to the i-th mix audio signal 102, and where wij is the energy distribution of the j-th audio source in the i-th mix audio signal:

w ij = A ij 2 Σ i = 1 I A ij 2 .

Alternatively or in addition, the spatial position of each audio source 101 may be estimated by reversing the Center of Mass Amplitude Panning (CMAP) algorithm and by using:

P j = Σ i = 1 I Σ k = 1 I A ij A k j ( 1 + α distance δ i = k ) P i Σ i = 1 I Σ k = 1 I A ij A kj ( 1 + α distance δ i = k ) ( 21 )
where αdistance is a weight of a constraint term in CMAP which penalizes firing speakers that are far from the audio sources 101, and where αdistance is typically set to 0.01.

The position metadata estimated for conventional channel-based mix audio signals (such as 5.1 and 7.1 multi-channel signals) typically contains 2D (two dimensional) information only (x and y since the mix audio signals only contain horizontal signals). z may be estimated with a pre-defined hemisphere function:

z = { 0 , ( if a + b > 1 ) h max 1 - ( a + b ) ( otherwise ) ( 22 )
where

a = ( 0 . 5 - x ) 2 0 . 5 2 , b = ( 0 . 5 - y ) 2 0 . 5 2
are relative distances between the position of an audio source (x, y) and the center of the space (0.5, 0.5), and where hmax is the maximum object height which typically ranges from 0 to 1.

FIG. 6 shows a flow chart of an example method 600 for estimating source parameters of J audio sources 101 from I mix audio signals 102, with I,J>1. The mix audio signals 102 include a plurality of frames. The I mix audio signals 102 are representable as a mix audio matrix in the frequency domain and the audio sources 101 are representable as a source matrix in the frequency domain.

The method 600 includes updating 601 an un-mixing matrix 221 which is adapted to provide an estimate of the source matrix from the mix audio matrix, based on a mixing matrix 225 which is adapted to provide an estimate of the mix audio matrix from the source matrix. Furthermore, the method 600 includes updating 602 the mixing matrix 225 based on the un-mixing matrix 221 and based on the I mix audio signals 102. In addition, the method 600 includes iterating 603 the updating steps 601, 602 until an overall convergence criteria is met.

By repeatedly and alternately updating the mixing matrix 225 based on the un-mixing matrix 221 and then using the updated mixing matrix 225 to update the un-mixing matrix 221, a precise mixing matrix 225 may be determined, thereby enabling the determination of precise source parameters of the audio sources 101. The method 600 may be performed for different frequency bins f of the frequency domain and/or for different frames n.

The methods and systems described in the present document may be implemented as software, firmware and/or hardware. Certain components may for example be implemented as software running on a digital signal processor or microprocessor. Other components may for example be implemented as hardware and or as application specific integrated circuits.

The signals encountered in the described methods and systems may be stored on media such as random access memory or optical storage media. They may be transferred via networks, such as radio networks, satellite networks, wireless networks or wireline networks, for example the Internet.

Various aspects of the present invention may be appreciated from the following enumerated example embodiments (EEEs):

( D . D + 4 ( A M + ) . ( A M - ) - D + ɛ 1 A M + + ɛ 1 ) ;

Wang, Jun

Patent Priority Assignee Title
Patent Priority Assignee Title
6622117, May 14 2001 International Business Machines Corporation EM algorithm for convolutive independent component analysis (CICA)
8200484, Aug 14 2004 Samsung Electronics Co., Ltd. Elimination of cross-channel interference and multi-channel source separation by using an interference elimination coefficient based on a source signal absence probability
8355509, Feb 14 2005 FRAUNHOFER-GESELLSCHAFT FOERDERUNG DER ANGEWANDTEN FORSCHUNG E V Parametric joint-coding of audio sources
8358563, Jun 11 2008 Sony Corporation Signal processing apparatus, signal processing method, and program
8363865, May 24 2004 Multiple channel sound system using multi-speaker arrays
8874439, Mar 01 2006 The Regents of the University of California Systems and methods for blind source signal separation
8880395, May 04 2012 SONY INTERACTIVE ENTERTAINMENT INC Source separation by independent component analysis in conjunction with source direction information
8958750, Sep 12 2013 KING FAHD UNIVERSITY OF PETROLEUM AND MINERALS; KIng Abdulaziz City for Science and Technology Peak detection method using blind source separation
9031816, Dec 17 2010 INTELLIGENT INFORMATION SECURITY TECHNOLOGY INC Independent component analysis processor
9099096, May 04 2012 SONY INTERACTIVE ENTERTAINMENT INC Source separation by independent component analysis with moving constraint
20090086998,
20100082340,
20130297298,
20140058736,
20150213806,
20150256956,
20160029121,
20170365273,
CN104103277,
GB2510650,
GB2516483,
RS1332,
WO2013053631,
WO2014147442,
WO2014179308,
WO2014195132,
WO2015081070,
WO2016011048,
WO2016014815,
WO2016130885,
WO2016133785,
//
Executed onAssignorAssigneeConveyanceFrameReelDoc
Mar 12 2017WANG, JUNDolby Laboratories Licensing CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0470540701 pdf
Apr 05 2017Dolby Laboratories Licensing Corporation(assignment on the face of the patent)
Date Maintenance Fee Events
Oct 02 2018BIG: Entity status set to Undiscounted (note the period is included in the code).


Date Maintenance Schedule
Oct 19 20244 years fee payment window open
Apr 19 20256 months grace period start (w surcharge)
Oct 19 2025patent expiry (for year 4)
Oct 19 20272 years to revive unintentionally abandoned end. (for year 4)
Oct 19 20288 years fee payment window open
Apr 19 20296 months grace period start (w surcharge)
Oct 19 2029patent expiry (for year 8)
Oct 19 20312 years to revive unintentionally abandoned end. (for year 8)
Oct 19 203212 years fee payment window open
Apr 19 20336 months grace period start (w surcharge)
Oct 19 2033patent expiry (for year 12)
Oct 19 20352 years to revive unintentionally abandoned end. (for year 12)