BeamForming node performs sound source separation based on the following methods:
DS : Delay-and-Sum beamforming
WDS : Weighted Delay-and-Sum beamforming
NULL : NULL beamforming
ILSE : Indefinite term and Least Square Estimator based beamforming
LCMV Linearly Constrained Minimum Variance beamforming
GJ : Griffiths-Jim beamforming
GICA : Geometrically constrained Independent Component Analysis
GHDSS : Geometrically constrained Higher-order Decorrelation-based Source Separation
Node inputs are:
Multi-channel complex spectrum of the input acoustic signal,
Direction of localized sound sources,
Direction or multi-channel complex spectrum or a correlation matrix of the noise.
Note outputs are a set of complex spectrum of each separated sound.
Corresponding parameter name |
Description |
TF_CONJ_FILENAME |
Transfer function of microphone array |
When to use
Given a sound source direction, the node separates a sound source originating from the direction with a microphone array. As a sound source direction, either a value estimated by sound source localization or a constant value may be used.
Typical connection
Figure 6.52 shows connection examples of the BeamForming . The node has three inputs as follows:
INPUT_FRAMES takes a multi-channel complex spectrum containing the mixture of sounds coming from for example MultiFFT ,
INPUT_SOURCES takes the results of sound source localization coming from for example LocalizeMUSIC or ConstantLocalization ,
INPUT_NOISE_SOURCES takes the results of sound source localization for noise sources coming from for example LocalizeMUSIC or ConstantLocalization .
The output is the separated signals.
Input
: Matrix<complex<float> > type. Multi-channel complex spectra. Rows correspond to channels, i.e., complex spectra of waveforms input from microphones, and columns correspond to frequency bins.
: Vector<ObjectRef> type. A Vector array of the Source type object in which Source localization results are stored. It is typically connected to the SourceTracker node and SourceIntervalExtender node and its outputs are used.
: Vector<ObjectRef> type. A Vector array of the Source type object where noise source localization results are stored. The type is the same as INPUT_SOURCES.
Output
: Map<int, ObjectRef> type. A pair containing the sound source ID of a separated sound and a 1-channel complex spectrum of the separated sound
(Vector<complex<float> > type).
Parameter
: int type. Analysis frame length [samples], which must be equal to the values at a preceding node (e.g. AudioStreamFromMic or the MultiFFT node). The default is 512.
: int type. Shift length of a frame [samples], which must be equal to the values at a preceding node (e.g. AudioStreamFromMic or the MultiFFT node). The default is 160.
: int type. Sampling frequency of the input waveform [Hz]. The default is 16000.
: int type. This parameter is the minimum frequency used when separation processing is performed. Processing is not performed for frequencies below this value and the value of the output spectrum is zero then. The user designates a value in the range from 0 to half of the sampling frequency.
: int type. This parameter is the maximum frequency used when separation processing is performed. Processing is not performed for frequencies above this value and the value of the output spectrum is zero then. LOWER_BOUND_FREQUENCY $<$ UPPER_BOUND_FREQUENCY must be maintained.
: string type. The file name in which the transfer function database of your microphone array is saved. Refer to Section 5.3.1 for the detail of the file format. This valid for all BF_METHOD.
: string type. The file name in which the initial value of a separation matrix is described. Initializing with a converged separation matrix through preliminary computation allows for separation with good precision from the beginning. If specified, a matrix in INITW_FILENAME is used as an initial separation matrix. Otherwise, initial separation matrix is estimated from the geometrical relationship or pre-measured TF according to TF_CONJ_FILENAME.
: string type. Select a stepsize of ICA (Independent Component Analysis) calculation method based for a blind source separation. This is valid only when BF_METHOD=GICA. Select one of GICA_SS_METHOD=FIX, LC_MYU, and ADAPTIVE. If FIX, a fixed designated value specified by GICA_SS_MYU is the stepsize. If LC_MYU, GICA_SS_MYU=LC_MYU. If ADAPTIVE, the stepsize is adaptively determined.
: float type. Designate the stepsize to be used when updating a separation matrix based on blind source separation. The default value is 0.001. This is valid only when BF_METHOD=GICA. If FIX, GICA_SS_MYU is the designated value for the stepsize. If LC_MYU, this parameter is ignored. If ADAPTIVE, GICA_SS_MYU is multiplied by the adaptive stepsize, resulting the final stepsize. By setting this value and GICA_LC_MYU to zero and passing a separation matrix of delay-and-sum beamformer type as INITW_FILENAME, processing equivalent to delay-and-sum beamforming is performed.
: string type. Select a stepsize calculation method based for HDSS (Higher-order Decorrelation-based Source Separation). This is valid only when BF_METHOD=GHDSS. Select one of GHDSS_SS_METHOD=FIX, LC_MYU, and ADAPTIVE. If FIX, a fixed designated value specified by GHDSS_SS_MYU is the stepsize. If LC_MYU, GHDSS_SS_MYU=LC_MYU. If ADAPTIVE, the stepsize is adaptively determined.
: float type. Designate the stepsize to be used when updating a separation matrix based on HDSS (Higher-order Decorrelation-based Source Separation). The default value is 0.001. This is valid only when BF_METHOD=GHDSS. If FIX, GICA_SS_MYU is the designated value for the stepsize. If LC_MYU, this parameter is ignored. If =ADAPTIVE, GHDSS_SS_MYU is multiplied by the adaptive stepsize, resulting the final stepsize. By setting this value and GHDSS_LC_MYU to zero and passing a separation matrix of delay-and-sum beamformer type as INITW_FILENAME, processing equivalent to delay-and-sum beamforming is performed.
: string type. Select a stepsize calculation method for separation based on geometric constraints. This is valid only when BF_METHOD=LCMV. This parameter affects the stepsize for the source separation based on geometric constraints (GC). Select one of LCMV_LC_METHOD=FIX and ADAPTIVE. If FIX, a fixed designated value specified by LCMV_LC_MYU is the stepsize. If ADAPTIVE, the stepsize is adaptively determined.
: float type. Designate the stepsize to be used when updating a separation matrix based on geometric constraints. The default value is 0.001. This is valid only when BF_METHOD=LCMV. If FIX, LCMV_LC_MYU is the designated value for the stepsize. If ADAPTIVE, LCMV_LC_MYU is multiplied by the adaptive stepsize, resulting the final stepsize.
: string type. Select a stepsize calculation method for separation based on geometric constraints. This is valid only when BF_METHOD=GJ. This parameter affects the stepsize for the source separation based on geometric constraints (GC). Select one of GJ_LC_METHOD=FIX and ADAPTIVE. If FIX, a fixed designated value specified by GJ_LC_MYU is the stepsize. If ADAPTIVE, the stepsize is adaptively determined.
: float type. Designate the stepsize to be used when updating a separation matrix based on geometric constraints. The default value is 0.001. This is valid only when BF_METHOD=GJ. If FIX, GJ_LC_MYU is the designated value for the stepsize. If ADAPTIVE, GJ_LC_MYU is multiplied by the adaptive stepsize, resulting the final stepsize.
: string type. Select a stepsize calculation method for separation based on geometric constraints. This is valid only when BF_METHOD=GICA. This parameter affects the stepsize for the source separation based on geometric constraints (GC). Select one of GICA_LC_METHOD=FIX and ADAPTIVE. If FIX, a fixed designated value specified by GICA_LC_MYU is the stepsize. If ADAPTIVE, the stepsize is adaptively determined.
: float type. Designate the stepsize to be used when updating a separation matrix based on geometric constraints. The default value is 0.001. This is valid only when BF_METHOD=GICA. If FIX, GICA_LC_MYU is the designated value for the stepsize. If ADAPTIVE, LCMV_LC_MYU is multiplied by the adaptive stepsize, resulting the final stepsize. By setting this value and GICA_SS_MYU to zero and passing a separation matrix of delay-and-sum beamformer type as INITW_FILENAME, processing equivalent to delay-and-sum beamforming is performed.
: string type. Select a stepsize calculation method for separation based on geometric constraints. This is valid only when BF_METHOD=GHDSS. This parameter affects the stepsize for the source separation based on geometric constraints (GC). Select one of GHDSS_LC_METHOD=FIX and ADAPTIVE. If FIX, a fixed designated value specified by GHDSS_LC_MYU is the stepsize. If ADAPTIVE, the stepsize is adaptively determined.
: float type. Designate the stepsize to be used when updating a separation matrix based on geometric constraints. The default value is 0.001. This is valid only when BF_METHOD=GHDSS. If FIX, GHDSS_LC_MYU is the designated value for the stepsize. If ADAPTIVE, GHDSS_LC_MYU is multiplied by the adaptive stepsize, resulting the final stepsize. By setting this value and GHDSS_SS_MYU to zero and passing a separation matrix of delay-and-sum beamformer type as INITW_FILENAME, processing equivalent to delay-and-sum beamforming is performed.
: string type. Select geometric constraint method. This is valid only when BF_METHOD=GHDSS. Select one of GHDSS_LC_CONST=DIAG and FULL. The default value is FULL. If DIAG, use only diagonal components (direct sound components) for geometric constraints. If FULL, use off-diagonal components in addition to diagonal components (direct sound components) for geometric constraints. Highly precise separation is possible even with DIAG, because the blind spot is automatically formed by higher order decorrelation.
: float type. The default value is 1.0. This is valid only when BF_METHOD=GICA. Designate the scale factor of a hyperbolic tangent function (tanh) in calculation of the higher-order correlation matrix. A positive real number greater than zero must be designated. The smaller the value is, the less non-linearity, which makes the calculation close to a normal correlation matrix calculation.
: float type. The default value is 0. This is valid only when BF_METHOD=GHDSS. Specify the amplitude threshold (upper limit) that regards the input signal as noise. When the amplitude of the input signal is less than this value, it is regarded as a noise section and the separation matrix is not updated. Specify a positive real number, if the noise is large and the separation matrix does not converge stably.
: string type. Decide how to update separation matrix. This is valid only when BF_METHOD=GHDSS. Select one of GHDSS_UPDATE=STEP and TOTAL. The default value is STEP. If STEP, update based on geometric constraints is performed after updating based on higher order decorrelation. If TOTAL, perform updates based on higher order decorrelation and update based on geometric constraints at the same time.
: string type. Select one of UPDATE_METHOD_W=ID, POS and ID_POS. The default value is ID. This is valid only when BF_METHOD=LCMV, GJ, GICA, GHDSS. Recalculation of separation matrix is required when sound source position information changes. At this time, designate a method to consider sound source position information changed. The separating matrix is internally stored together with the coordinates of the sound source ID and the sound source direction for a certain period of time, and once the sound is stopped, if a sound judged to be a sound source from the same direction is detected, the separating matrix saved again The separation process is performed. At this time, a criterion as to whether or not to update the separation matrix is set. If ID, it is judged by the sound source ID whether it is the same direction sound source or not. If POS, it is judged by comparing the coordinates of the sound source direction. If ID_POS, at first sound source IDs are compared, if they are not determined to be identical, further, judgment is made by comparing the coordinates of the sound source direction.
: float type. The default value is 300.0. This parameter is valid when BF_METHOD=LCMV, GJ, GICA, GHDSS and UPDATE_METHOD_W is set to POS or ID_POS. Distance to be regarded as the same sound source for movement of the sound source [mm]. If it is within the set distance range, calculation is performed using the updated separation matrix.
: bool type. The default value is false. This is valid only when BF_METHOD=LCMV, GJ, GICA, GHDSS. The user determines if the results of the separation matrix updated will be output. When true, select EXPORT_W_FILENAME.
: string type. This parameter is valid when BF_METHOD=LCMV, GJ, GICA, GHDSS and EXPORT_W is set to true. Designate the name of the file into which a separation matrix will be output. For its format, see Section 5.3.2.
: string type. Designate the sound source separation method. Currently, this node supports the following separation methods:
DS : Delay-and-Sum beamforming [1]
WDS : Weighted Delay-and-Sum beamforming [1]
NULL : NULL beamforming [1]
ILSE : Iterative Least Squares with Enumeration [2]
LCMV : Linearly Constrained Minimum Variance beamforming [3]
GJ : Griffiths-Jim beamforming [4]
GICA : Geometrically constrained Independent Component Analysis [7]
: bool type. The default value is false. If true, this node prints the status of separation as a standard output.
Parameter name |
Type |
Default value |
Unit |
Description |
LENGTH |
512 |
[pt] |
Analysis frame length. |
|
ADVANCE |
160 |
[pt] |
Shift length of frame. |
|
SAMPLING_RATE |
16000 |
[Hz] |
Sampling frequency. |
|
LOWER_BOUND_FREQUENCY |
0 |
[Hz] |
The minimum value of the frequency used for separation processing |
|
UPPER_BOUND_FREQUENCY |
8000 |
[Hz] |
The maximum value of the frequency used for separation processing |
|
TF_CONJ_FILENAME |
File name of transfer function database of your microphone array. |
|||
ENABLE_DEBUG |
false |
Enabling debug output |
Parameter name |
Type |
Default value |
Unit |
Description |
LENGTH |
512 |
[pt] |
Analysis frame length. |
|
ADVANCE |
160 |
[pt] |
Shift length of frame. |
|
SAMPLING_RATE |
16000 |
[Hz] |
Sampling frequency. |
|
LOWER_BOUND_FREQUENCY |
0 |
[Hz] |
The minimum value of the frequency used for separation processing |
|
UPPER_BOUND_FREQUENCY |
8000 |
[Hz] |
The maximum value of the frequency used for separation processing |
|
TF_CONJ_FILENAME |
File name of transfer function database of your microphone array. |
|||
INITW_FILENAME |
A file name in which the initial value of the separation matrix is described. |
|||
LCMV_LC_METHOD |
ADAPTIVE |
A stepsize calculation method based on geometric constraints. |
||
LCMV_LC_MYU |
0.001 |
The stepsize when updating a separation matrix based on geometric constraints. |
||
UPDATE_METHOD_W |
ID |
How to regard sound source position information as changed. |
||
UPDATE_ACCEPT_DISTANCE |
300.0 |
[mm] |
Distance to be regarded as the same sound source with respect to movement of the sound source. |
|
EXPORT_W |
false |
Designate whether separation matrixes are to be written to files. |
||
EXPORT_W_FILENAME |
The name of the file to which the separation matrix is written. This is valid only when EXPORT_W=true. |
|||
ENABLE_DEBUG |
false |
Enabling debug output |
Parameter name |
Type |
Default value |
Unit |
Description |
LENGTH |
512 |
[pt] |
Analysis frame length. |
|
ADVANCE |
160 |
[pt] |
Shift length of frame. |
|
SAMPLING_RATE |
16000 |
[Hz] |
Sampling frequency. |
|
LOWER_BOUND_FREQUENCY |
0 |
[Hz] |
The minimum value of the frequency used for separation processing |
|
UPPER_BOUND_FREQUENCY |
8000 |
[Hz] |
The maximum value of the frequency used for separation processing |
|
TF_CONJ_FILENAME |
File name of transfer function database of your microphone array. |
|||
INITW_FILENAME |
A file name in which the initial value of the separation matrix is described. |
|||
GJ_LC_METHOD |
ADAPTIVE |
A stepsize calculation method based on geometric constraints. |
||
GJ_LC_MYU |
0.001 |
The stepsize when updating a separation matrix based on geometric constraints. |
||
UPDATE_METHOD_W |
ID |
How to regard sound source position information as changed. |
||
UPDATE_ACCEPT_DISTANCE |
300.0 |
[mm] |
Distance to be regarded as the same sound source with respect to movement of the sound source. |
|
EXPORT_W |
false |
Designate whether separation matrixes are to be written to files. |
||
EXPORT_W_FILENAME |
The name of the file to which the separation matrix is written. This is valid only when EXPORT_W=true. |
|||
ENABLE_DEBUG |
false |
Enabling debug output |
Parameter name |
Type |
Default value |
Unit |
Description |
LENGTH |
512 |
[pt] |
Analysis frame length. |
|
ADVANCE |
160 |
[pt] |
Shift length of frame. |
|
SAMPLING_RATE |
16000 |
[Hz] |
Sampling frequency. |
|
LOWER_BOUND_FREQUENCY |
0 |
[Hz] |
The minimum value of the frequency used for separation processing |
|
UPPER_BOUND_FREQUENCY |
8000 |
[Hz] |
The maximum value of the frequency used for separation processing |
|
TF_CONJ_FILENAME |
File name of transfer function database of your microphone array. |
|||
INITW_FILENAME |
A file name in which the initial value of the separation matrix is described. |
|||
GICA_SS_METHOD |
ADAPTIVE |
A stepsize calculation method based on blind source separation. |
||
GICA_SS_MYU |
0.001 |
The stepsize when updating a separation matrix based on blind source separation. |
||
GICA_LC_METHOD |
ADAPTIVE |
A stepsize calculation method based on geometric constraints. |
||
GICA_LC_MYU |
0.001 |
The stepsize when updating a separation matrix based on geometric constraints. |
||
GICA_SS_SCAL |
1.0 |
The scale factor in a higher-order correlation matrix computation. |
||
UPDATE_METHOD_W |
ID |
How to regard sound source position information as changed. |
||
UPDATE_ACCEPT_DISTANCE |
300.0 |
[mm] |
Distance to be regarded as the same sound source with respect to movement of the sound source. |
|
EXPORT_W |
false |
Designate whether separation matrixes are to be written to files. |
||
EXPORT_W_FILENAME |
The name of the file to which the separation matrix is written. This is valid only when EXPORT_W=true. |
|||
ENABLE_DEBUG |
false |
Enabling debug output |
Parameter name |
Type |
Default value |
Unit |
Description |
LENGTH |
512 |
[pt] |
Analysis frame length. |
|
ADVANCE |
160 |
[pt] |
Shift length of frame. |
|
SAMPLING_RATE |
16000 |
[Hz] |
Sampling frequency. |
|
SPEED_OF_SOUND |
343.0 |
[m/s] |
Sound speed |
|
TF_CONJ_FILENAME |
File name of transfer function database of your microphone array. |
|||
INITW_FILENAME |
A file name in which the initial value of the separation matrix is described. |
|||
GHDSS_SS_METHOD |
ADAPTIVE |
A stepsize calculation method based on blind source separation. |
||
GHDSS_SS_MYU |
1.0 |
The stepsize when updating a separation matrix based on blind source separation. |
||
GHDSS_LC_METHOD |
ADAPTIVE |
A stepsize calculation method based on geometric constraints. |
||
GHDSS_LC_MYU |
1.0 |
The stepsize when updating a separation matrix based on geometric constraints. |
||
GHDSS_SS_SCAL |
1.0 |
The scale factor in a higher-order correlation matrix computation. |
||
UPDATE_METHOD_W |
ID |
How to regard sound source position information as changed. |
||
UPDATE_ACCEPT_DISTANCE |
300.0 |
[mm] |
Distance to be regarded as the same sound source with respect to movement of the sound source. |
|
EXPORT_W |
false |
Designate whether separation matrixes are to be written to files. |
||
EXPORT_W_FILENAME |
The name of the file to which the separation matrix is written. This is valid only when EXPORT_W=true. |
|||
ENABLE_DEBUG |
false |
Enabling debug output |
Technical details: Basically, the technical detail of each separation method can be found in the references below.
Bried explanation of sound source separation:
Table 6.44 shows the notation of variables used in sound source separation problems. Since the source separation is performed frame-by-frame in the frequency domain, all the variable is computed in a complex field. Also, the separation is performed for all $K$ frequency bins ($1 \leq k \leq K$). Here, we omit $k$ from the notation. Let $N$, $M$, and $f$ denote the number of sound sources and the number of microphones, and the frame index, respectively.
Variables |
Description |
$\boldsymbol {S}(f) = \left[S_1(f), \dots , S_ N(f)\right]^ T$ |
Complex spectrum of target sound sources at the $f$-th frame |
$\boldsymbol {X}(f) = \left[X_1(f), \dots , X_ M(f)\right]^ T$ |
Complex spectrum of a microphone observation at the $f$-th frame, which corresponds to INPUT_FRAMES. |
$\boldsymbol {N}(f) = \left[N_1(f), \dots , N_ M(f)\right]^ T$ |
Complex spectrum of added noise |
$\boldsymbol {H} = \left[ \boldsymbol {H}_1, \dots , \boldsymbol {H}_ N \right] \in \mathbb {C}^{M \times N}$ |
Transfer function matrix from the $n$-th sound source ($1 \leq n \leq N$) to the $m$-th microphone ($1 \leq m \leq M$) |
$\boldsymbol {W}(f) = \left[ \boldsymbol {W}_1, \dots , \boldsymbol {W}_ M \right] \in \mathbb {C}^{N \times M}$ |
Separation matrix at the $f$-th frame |
$\boldsymbol {Y}(f) = \left[Y_1(f), \dots , Y_ N(f)\right]^ T$ |
Complex spectrum of separated signals |
We use the following linear model for the signal processing:
$\displaystyle \boldsymbol {X}(f) $ | $\displaystyle = $ | $\displaystyle \boldsymbol {H}\boldsymbol {S}(f) + \boldsymbol {N}(f)~ .\label{eq:beamforming-observation} $ | (38) |
The purpose of the separation is to estimate $\boldsymbol {W}(f)$ based on the following equation:
$\displaystyle \boldsymbol {Y}(f) $ | $\displaystyle = $ | $\displaystyle \boldsymbol {W}(f)\boldsymbol {X}(f) \label{eq:Beamforming-separation} $ | (39) |
so that $\boldsymbol {Y}(f)$ is getting closer to $\boldsymbol {S}(f)$. After separation, the estimated $\boldsymbol {W}(f)$ can be saved by setting EXPORT_W=true and put a certain name in EXPORT_W_FILENAME.
TF_CONJ_FILENAME specifies the transfer function matrix $\boldsymbol {H}$ which is pre-measured or pre-calculated. Hereinafter, we denote this pre-measured transfer function as $\hat{\boldsymbol {H}}$ to distinguish from $\boldsymbol {H}$.
Separation by BF_METHOD=DS,WDS,NULL,ILSE: $\boldsymbol {W}(f)$ is directly determined using $\hat{\boldsymbol {H}}$ and corresponding directions of target and noise sources coming from INPUT_SOURCES and INPUT_NOISE_SOURCES.
Separation by BF_METHOD=LCMV,GJ: The cont function $J_{\textrm{L}}(\boldsymbol {W}(f))$ for updating the separation matrix is defined by the directions of target and noise sources coming from INPUT_SOURCES and INPUT_NOISE_SOURCES. The equation for updating the separation matrix is described simply as follows:
$\displaystyle \boldsymbol {W}(f+1) $ | $\displaystyle = $ | $\displaystyle \boldsymbol {W}(f) + \mu \nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{L}}(\boldsymbol {W})(f)~ ,\label{eq:LCMV-GJ-J} $ | (40) |
where $\nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{L}}(\boldsymbol {W}) = \frac{\partial \boldsymbol {J}_{\textrm{L}}(\boldsymbol {W})}{\partial \boldsymbol {W}}$. LC_MYU specifies the value of $\mu $. If LC_METHOD=ADAPTIVE, this node computes the adaptive stepsize based on the following equation.
$\displaystyle \mu $ | $\displaystyle = $ | $\displaystyle \left. \frac{\boldsymbol {J}_{\textrm{L}}(\boldsymbol {W})}{\left| \nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{L}}(\boldsymbol {W})\right|^2} \right|_{\boldsymbol {W} = \boldsymbol {W}(f)}\label{eq:LCMV-GJ-mu} $ | (41) |
BF_METHOD=GICA: The cont function $J_{\textrm{G}}(\boldsymbol {W}(f))$ for updating the separation matrix is defined by the directions of target and noise sources coming from INPUT_SOURCES and INPUT_NOISE_SOURCES.
$\displaystyle J_{\textrm{G}}(\boldsymbol {W}(f)) $ | $\displaystyle = $ | $\displaystyle J_{\textrm{SS}}(\boldsymbol {W}(f)) + J_{\textrm{LC}}(\boldsymbol {W}(f))~ , \label{eq:GHDSS-J} $ | (42) |
where $J_{\textrm{SS}}(\boldsymbol {W}(f))$ is the cost function for the blind source separation, $J_{\textrm{LC}}(\boldsymbol {W}(f))$ is the cost function for the source separation based on geometric constraints. The equation for updating the separation matrix is described simply as follows:
$\displaystyle \boldsymbol {W}(f+1) $ | $\displaystyle = $ | $\displaystyle \boldsymbol {W}(f) + \mu _{\textrm{SS}} \nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{SS}}(\boldsymbol {W})(f) + \mu _{\textrm{LC}} \nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{LC}}(\boldsymbol {W})(f)~ , \label{eq:GHDSS-W} $ | (43) |
where $\nabla _{\boldsymbol {W}}$ means the partial derivative in respect of $\boldsymbol {W}$ same as Eq. (40). The $\mu _{\textrm{SS}}$ and $\mu _{\textrm{LC}}$ in the equation can be specified by SS_MYU and LC_MYU, respectively. If SS_METHOD=ADAPTIVE, $\mu _{\textrm{SS}}$ is adaptively determined by
$\displaystyle \mu _{\textrm{SS}} $ | $\displaystyle = $ | $\displaystyle \left. \frac{\boldsymbol {J}_{\textrm{SS}}(\boldsymbol {W})}{\left| \nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{SS}}(\boldsymbol {W})\right|^2} \right|_{\boldsymbol {W} = \boldsymbol {W}(f)}~ .\label{eq:GHDSS-SS-mu} $ | (44) |
If LC_METHOD=ADAPTIVE, $\mu _{\textrm{LC}}$ is adaptively determined by
$\displaystyle \mu _{\textrm{LC}} $ | $\displaystyle = $ | $\displaystyle \left. \frac{\boldsymbol {J}_{\textrm{LC}}(\boldsymbol {W})}{\left| \nabla _{\boldsymbol {W}}\boldsymbol {J}_{\textrm{LC}}(\boldsymbol {W})\right|^2} \right|_{\boldsymbol {W} = \boldsymbol {W}(f)}~ .\label{eq:GHDSS-LC-mu} $ | (45) |
Trouble shooting: Basically, follow the trouble shooting of the GHDSS node.
H. Krim and M. Viberg, ’Two decades of array signal processing research: the parametric approach’, in IEEE Signal Processing Magazine, vol. 13, no. 4, pp. 67–94, 1996. D. H. Johnson and D. E. Dudgeon, Array Signal Processing: Concepts and Techniques, Prentice-Hall, 1993.
S. Talwar, et al.: ’Blind separation of synchronous co-channel digital signals using an antenna array. I. Algorithms’, IEEE Transactions on Signal Processing, vol. 44 , no. 5, pp. 1184 - 1197.
O. L. FrostIII, ’An Algorithm for Lineary Constrained Adaptive array processing’, Proc. of the IEEE, Vol. 60, No.8, 1972
L. Griffiths and C. Jim, ’An alternative approach to linearly constrained adaptive beamforming’, IEEE trans. on ant. and propag. Vol. AP-30, No.1, 1982
H. Nakajima, et al.: ’Blind Source Separation With Parameter-Free Adaptive Step-Size Method for Robot Audition’, IEEE Trans. ASL Vol.18, No.6, pp.1476-1485, 2010.