espnet2.enh.layers.beamformer.get_WPD_filter_v2
Less than 1 minute
espnet2.enh.layers.beamformer.get_WPD_filter_v2
espnet2.enh.layers.beamformer.get_WPD_filter_v2(Phi: Tensor | ComplexTensor, Rf: Tensor | ComplexTensor, reference_vector: Tensor, diagonal_loading: bool = True, diag_eps: float = 1e-07, eps: float = 1e-08) → Tensor | ComplexTensor
Return the WPD vector (v2).
This implementation is more efficient than get_WPD_filter as : it skips unnecessary computation with zeros.
- Parameters:
- Phi (torch.complex64/ComplexTensor) – (B, F, C, C) is speech PSD.
- Rf (torch.complex64/ComplexTensor) – (B, F, (btaps+1) * C, (btaps+1) * C) is the power normalized spatio-temporal covariance matrix.
- reference_vector (torch.Tensor) – (B, C) is the reference_vector.
- diagonal_loading (bool) – Whether to add a tiny term to the diagonal of psd_n
- diag_eps (float)
- eps (float)
- Returns: (B, F, (btaps+1) * C)
- Return type: filter_matrix (torch.complex64/ComplexTensor)