next up previous
Next: Spectral reading Up: Speech Enhancement Summaries Previous: Rezayee's and Gazor's noise

Spectral Change and Adaptive Wiener [7]


\begin{displaymath}
y[n]=x[n]+b[n]
\end{displaymath}

The frequency-domain version of the Wiener filter is

\begin{displaymath}
H(\omega)=\frac{S_x(\omega)}{S_x(\omega)+S_b(\omega)}
\end{displaymath}

$y[n]$ is processed at L-frame intervals. Averaging spectra over the background region gives an estimate to the background spectral density, $\hat{S}_b(\omega)$. The desired signal spectrum is obtained by applying the Wiener filter from the previous frame to the current frame noisy spectrum

\begin{displaymath}
\hat{X}(pL,\omega)=\hat{H}((p-1)L,\omega)Y(pL,\omega)
\end{displaymath}

which is then used to update the Wiener filter for the next frame:

\begin{displaymath}
\hat{H}(pL,\omega)=\frac{\vert\hat{X}(pL,\omega)\vert}{\vert\hat{X}(pL,\omega)\vert^2+\alpha\hat{S}_b(\omega)}
\end{displaymath}

The Wiener filter can be made to vary more smoothly from frame to frame

\begin{displaymath}
\tilde{S}_x(pL,\omega)=\tau\tilde{S}_x((p-1)L,\omega)+(1-\tau)\hat{S}_x(pL,\omega)
\end{displaymath}

where $\hat{S}_x(pL,\omega)=\vert\hat{X}(pL,\omega)\vert^2$. The temporal smoothing introduced by the adaptive Wiener filter blurs transient and rapidly-varying speech components. Use instead

\begin{displaymath}
\Delta Y(pL)=\left[ \frac{1}{\pi} \int_{0}^{\pi} \vert Y(pL,\omega)-Y((p-1)L,\omega)\vert^2 d \omega \right]^{1/2}
\end{displaymath}

as a measure of the ``degree of stationarity''. When the spectrum is changing rapidly, little temporal smoothing is applied whereas when the spectrum is stationary, smoothing improves the spectral estimate.

\begin{displaymath}
\tau(pL)=1-2(\Delta Y(pL)- \Delta \bar{Y})
\end{displaymath}

where $\Delta \bar{Y}$ is the average spectral derivative over the background and reduces the noise presence.
next up previous
Next: Spectral reading Up: Speech Enhancement Summaries Previous: Rezayee's and Gazor's noise
Vinesh Bhunjun 2004-09-17