L'idée du codage prédictif est d'utiliser les corrélations (ressemblances) temporelles ou spatiales du signal à compresser.
\section{Rappels sur la corrélation}
On considère une source $X$ qui émet un signal constitué de $x_1,\dots,x_N$ considérés comme une réalisation d'une suite de variables aléatoires $X_1,\dots,X_N$ de moyenne nulle.
%\img{0.5}{3/1/1}
La fonction de corrélation permet de mesurer la ressemblance entre échantillons voisins :
\[\gamma_x(n,k)= E(X_nX_{n+k})\]
Pour un signal stationnaire (dont les caractéristiques statistiques n'évoluent pas au cours du temps :
Lorsque le signal sera très corrélé, $\gamma_x(1)\approx\gamma_x(0)$ et $\hat{a_1}\approx1$. Pour un signal peu corrélé, $\gamma_x(1)\approx0$ et $\hat{a_1}\approx0$.
$\hat{e}$ est l'énergie de la partie qui n'a pas pu être prédite de $x_1,\dots,x_N$.\\
Le résidu de prédiction a une variance plus faible. Si on le quantifie, il permettra de reconstituer le signal initial avec une distorsion plus faible.
\newpage
\section{Prédiction à $p$ pas}
On cherche à prédire $X_n$ à partir des échantillons précédents $X_{n-1},\dots,X_{n-p}$.
Ce prédicteur à $p$ pas est en général plus efficace que le prédicteur à 1 pas mais il est plus complexe.
\newpage
\section{Mise en oeuvre du prédicteur}
On considère le codeur prédictif de structure suivante à l'émetteur :
%\img{0.4}{3/2/1}
et de structure suivante au décodeur de récepteur:
%\img{0.4}{3/2/2}
On met en œuvre un dispositif de prédiction exploitant les échantillons disponibles au récepteur, de manière à éviter l'accumulation des erreurs de quantification. Il n'y a pas d'accumulation d'erreur de prédiction car le prédicteur est le même à l'émetteur et au récepteur.\\
Pour le réglage du prédicteur, on distingue plusieurs méthodes :
\begin{enumerate}\setlength{\itemsep}{5mm}
\item On calcule $\hat{\gamma_x}$ sur tout le signal et on transmet $\underline{\hat{a}}_{opt}$.
Avantage :
\begin{itemize}
\item sa simplicité de mise ne œuvre
\end{itemize}
Inconvénients :
\begin{itemize}
\item il ne permet pas de tenir compte des non stationnarités
\item on règle le prédicteur à partir de $x_n$ et non de $\hat{x_n}$.
\end{itemize}
\item On découpe le signal en blocs et on recalcule le prédicteur sur chaque bloc.
Avantages :
\begin{itemize}
\item sa simplicité de mise ne œuvre
\item permet de s'adapter aux non-stationnarités
\end{itemize}
Inconvénient :
\begin{itemize}
\item débit nécessaire à la transmission des $\underline{\hat{a}}_{opt}$.
\end{itemize}
\item Mettre en place un prédicteur adaptatif. On travaille sur une fenêtre glissante contenant les N échantillons décalés : $\underline{\hat{X}}_n =(\hat{x}_{n-1}, ..., \hat{x}_{n-N})^T$.
On calcule $\underline{\hat{a}}_{opt}$ à partir de $\underline{\hat{X}}_n$ (au codeur et au décodeur). On applique $\underline{\hat{a}}_{opt}$ pour coder et décoder $x_n$ en $\hat{x}_n$. À l'itération suivante, on calcule $\underline{\hat{a}}_{opt}$ à partir de $\underline{\hat{X}}_{n+1}=(\hat{x}_{n}, ..., \hat{x}_{n-N+1})^T$.
Avantages :
\begin{itemize}
\item Il est très adaptatif.
\item On ne transmet plus $\underline{\hat{a}}_{opt}$