torchaudio.functional.mvdr_weights_rtf¶
- torchaudio.functional.mvdr_weights_rtf(rtf: Tensor, psd_n: Tensor, reference_channel: Optional[Union[int, Tensor]] = None, diagonal_loading: bool = True, diag_eps: float = 1e-07, eps: float = 1e-08) Tensor[源]¶
根據噪聲的相對傳遞函式 (RTF) 和功率譜密度 (PSD) 矩陣,計算最小方差無失真響應 (MVDR [Capon, 1969]) 波束形成權重。
給定目標語音的相對傳遞函式 (RTF) 矩陣或導向向量 \(\bm{v}\)、噪聲的 PSD 矩陣 \(\bf{\Phi}_{\textbf{NN}}\) 和表示參考通道的獨熱向量 \(\bf{u}\),此方法計算 MVDR 波束形成權重矩陣 \(\textbf{w}_{\text{MVDR}}\)。公式定義為
\[\textbf{w}_{\text{MVDR}}(f) = \frac{{{\bf{\Phi}_{\textbf{NN}}^{-1}}(f){\bm{v}}(f)}} {{\bm{v}^{\mathsf{H}}}(f){\bf{\Phi}_{\textbf{NN}}^{-1}}(f){\bm{v}}(f)} \]其中 \((.)^{\mathsf{H}}\) 表示 Hermitian 共軛運算。
- 引數:
rtf (torch.Tensor) – 目標語音的複數值 RTF 向量。形狀為 (…, freq, channel) 的張量。
psd_n (torch.Tensor) – 噪聲的複數值功率譜密度 (PSD) 矩陣。形狀為 (…, freq, channel, channel) 的張量。
reference_channel (int 或 torch.Tensor) – 指定參考通道。如果資料型別是
int,則表示參考通道索引。如果資料型別是torch.Tensor,則形狀為 (…, channel),其中channel維度是獨熱表示。diagonal_loading (bool, 可選) – 如果為
True,則對psd_n應用對角載入。(預設值:True)diag_eps (float, 可選) – 對角載入中乘到單位矩陣上的係數。僅當
diagonal_loading設定為True時有效。(預設值:1e-7)eps (float, 可選) – 新增到波束形成權重公式中分母上的值。(預設值:
1e-8)
- 返回:
複數值 MVDR 波束形成權重矩陣,形狀為 (…, freq, channel)。
- 返回型別: