diff --git a/Bilder/fig_anr.jpg b/Bilder/fig_anr.jpg index 4f13ab8..4fac19d 100644 Binary files a/Bilder/fig_anr.jpg and b/Bilder/fig_anr.jpg differ diff --git a/Bilder/fig_anr_hybrid.jpg b/Bilder/fig_anr_hybrid.jpg index 57c4fb8..058134d 100644 Binary files a/Bilder/fig_anr_hybrid.jpg and b/Bilder/fig_anr_hybrid.jpg differ diff --git a/chapter_02.tex b/chapter_02.tex index 83652f6..a442e40 100644 --- a/chapter_02.tex +++ b/chapter_02.tex @@ -122,7 +122,7 @@ Although active noise cancellation and adaptive noise reduction share obvious si \caption{The basic idea of an adaptive filter design for noise reduction.} \label{fig:fig_anr} \end{figure} -\noindent Figure \ref{fig:fig_anr} shows the basic concept of an adaptive filter design, represented through a feedback filter application. The signal sensor aims to recieve the input signal $s[n]$, which consists out of the target signal and the noise signal, whereas the noise sensor aims to recieve (ideally) only the noise signa $d[n]$, which then feeds the adaptive filter. The adaptive filter removes a certain, noise-related, frequency part of the input signal and re-evaluates the output through its feedback design. The filter parameters are then adjusted and applied to the next sample to minimize the observed error $e[n]$. In reality, a signal contamination of the two sensors has to be expected, which will be illustrated in a more realistic signal flow diagram of an implanted CI system. +\noindent Figure \ref{fig:fig_anr} shows the basic concept of an adaptive filter design, represented through a feedback filter application. The target signal sensor aims to recieve the target signal $d[n]$, which consists out of the speech signal $s[n]$ and the noise signal $n[n]$, whereas the noise signal sensor aims to recieve (ideally) only the noise signal $x[n]$, which then feeds the adaptive filter. The adaptive filter removes a certain, noise-related, frequency part of the input signal and re-evaluates the output through its feedback design. The filter parameters are then adjusted and applied to the next sample to minimize the observed error $e[n]$, which also represents the aproximated speech signal $š[n]$. In reality, a signal contamination of the two sensors has to be expected, which will be illustrated in a more realistic signal flow diagram of an implanted CI system. \subsubsection{Fully adaptive vs. hybrid filter design} The basic ANR concept illustrated in Figure \ref{fig:fig_anr} can be understood as a fully adaptive variant. A fully adaptive filter design works with a fixed number of coefficients of which everyone is updated after every sample processing. Even if this approach features the best performance in noise reduction, it also requires a relatively high amount of computing power, as every coefficient has to be re-calculated after every sample.\\ \\ To reduce the required computing power, a hybrid static/adaptive filter design can be taken into consideration instead. In this approach, the inital fully adaptive filter is split into a fixed and an adaptive part - the static filter removes a certain, known, or estimated, frequency portion of the noise signal, whereas the adaptive part only has to adapt to the remaining, unforecastable, noise parts. This approach reduces the number of coefficients required to be adapted, therefore lowering the required computing power. @@ -139,20 +139,20 @@ In the decription of the concept of adaptive filtering above, the adaption of fi Adaptive filters rely on an error metric to self-reliantely evaluate their performance in real-time by adjusting their coefficients in a constant manner to minimize the recieved error signal $e[n]$, which is defined as: \begin{equation} \label{equation_error} - e[n] = d[n] - y[n] + e[n] = d[n] - y[n] = š[n] \end{equation} The error signal $e[n]$, already illustrated in Figure \ref{fig:fig_anr} and \ref{fig:fig_anr_hybrid}, is calculated as the difference between the target signal $d[n]$ and the output signal of the filter $y[n]$. As we will see in the following chapters, a real world application of an adaptive filter system poses several challenges, which have to be taken into consideration when designing the filter. These challenges include: \begin{itemize} -\item The output signal $e[n]$ is not a perfect representation of the clean speech signal $s[n]$ present in the target signal $d[n]$, as the adaptive filter can only approximate the noise signal based on its current coefficients, which in general doesn´t represent the optimal solution at that given time. -\item The clean speech signal $s[n]$ is not directly available, as it is contaminated with noise and there is no reference. Therefore, the error signal $e[n]$ of the adaptive filter serves as an approximation of the clean speech signal and is used as an indirect measure of the filter's performance, guiding the adaptation process by its own stepwise minimization. +\item The error signal $e[n]$ is not a perfect representation of the clean speech signal $s[n]$ present in the target signal $d[n]$, as the adaptive filter can only approximate the noise signal based on its current coefficients, which in general do not represent the optimal solution at that given time. +\item The clean speech signal $s[n]$ is not directly available, as it is contaminated with noise and there is no reference available. Therefore, the error signal $e[n]$, respectively $š[n]$, of the adaptive filter serves as an approximation of the clean speech signal and is used as an indirect measure of the filter's performance, guiding the adaptation process by its own stepwise minimization. \item The noise signal $x[n]$ fed into the adaptive filter could also contaminated with parts of the target signal. If this circumstance occurs, it can lead to undesired effects like signal distortion if not handled properly. \end{itemize} The goal of the adaptive filter is therefore to minimize this error signal over time, thereby improving the quality of the output signal by reducing it by it´s noise-component.\\ The minimization of the error signal $e[n]$ can by achieved by applying different error metrics used to evaluate the performance of an adaptive filter, including: \begin{itemize} -\item Mean Squared Error (MSE): This metric calculates the average of the squares of the errors over a specified period. It is sensitive to large errors and is commonly used in adaptive filtering applications. -\item Least Mean Squares (LMS): This metric focuses on minimizing the mean squared error by adjusting the filter coefficients iteratively based on the error signal. It is computationally efficient and widely used in real-time applications. +\item Mean Squared Error (MSE): This metric calculates the averaged square of the error between input and output over a predefined period. It is sensitive to large errors and is commonly used in adaptive filtering applications. +\item Least Mean Squares (LMS): This metric focuses on minimizing the mean squared error by adjusting the filter coefficients iteratively based on the error signal by applying the gradient descent method. It is computationally efficient and widely used in real-time applications. \item Normalized Least Mean Squares (NLMS): An extension of the LMS algorithm that normalizes the step size based on the power of the input signal, improving convergence speed and stability. \item Recursive Least Squares (RLS): This metric aims to minimize the weighted sum of squared errors, providing faster convergence than LMS but at the cost of higher computational complexity. \end{itemize} @@ -165,6 +165,24 @@ Gradient descent is an optimization algorithm used to minimize a function by ite In the context of adaptive filtering, gradient descent is used to adjust the filter coefficients in a way that minimizes the error signal $e[n]$.\\ \\ +The MSE cost function $J[i]$ can be defined as: +\begin{equation} +\label{equation_mse} + J[i] = 1/n*sum_{i=1}^{n} (x[i] - y[i])^2 +\end{equation} +where $x[i]$ is the desired signal and $y[i]$ is the output signal of the filter. The goal of the LMS algorithm is to minimize this cost function by adjusting the filter coefficients $w_k$.\\ \\ +The minimization is achieved by calculating the gradient of the cost function with respect to the filter coefficients and updating them in the opposite direction of the gradient. The update equation for the filter coefficients can be expressed as: +\begin{equation} +\label{equation_lms} + w_k[n+1] = w_k[n] + mu*e[n]*x[n-k] +\end{equation} +where $mu$ is the step size, controlling the rate of convergence, $e[n]$ is the error signal, and $x[n-k]$ are the input samples.\\ \\ +The step size $mu$ is a crucial parameter in the LMS algorithm, as it influences both the convergence speed and stability of the filter adaptation. A larger step size can lead to faster convergence but may also cause instability, while a smaller step size ensures stability but results in slower convergence. Therefore, selecting an appropriate value for $mu$ is essential for the effective performance of the adaptive filter.\\ \\ +The LMS algorithm is widely used in adaptive filtering applications due to its simplicity and computational efficiency. It +provides a practical approach to real-time noise reduction by continuously updating the filter coefficients based on the observed error signal, allowing the filter to adapt to changing noise conditions effectively. + + + \subsection{Signal flow diagram of an implanted cochlear implant system} \subsection{Derivation of the system’s transfer function based on the problem setup} \subsection{Example applications and high-level simulations using Python} diff --git a/drawio/ANR.drawio b/drawio/ANR.drawio index 56399e2..992e173 100644 --- a/drawio/ANR.drawio +++ b/drawio/ANR.drawio @@ -1,17 +1,13 @@ - + - + - + - - - - - - + + @@ -23,7 +19,7 @@ - + @@ -36,12 +32,12 @@ - + - - + + - + @@ -55,36 +51,63 @@ - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/drawio/ANR_hybrid.drawio b/drawio/ANR_hybrid.drawio index 7f96b21..95ec7af 100644 --- a/drawio/ANR_hybrid.drawio +++ b/drawio/ANR_hybrid.drawio @@ -1,130 +1,153 @@ - + - + - + - - - - - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + + + + + + + - - + + + + + + + + - + + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +