239 lines
No EOL
9.4 KiB
TeX
239 lines
No EOL
9.4 KiB
TeX
\documentclass{article}
|
|
\input{../../preambule/preambule}
|
|
|
|
\newcommand{\nom}{TD5 : Codage de sources}
|
|
\renewcommand{\nomentete}{UE455 - \nom}
|
|
|
|
|
|
|
|
\begin{document}
|
|
|
|
\titre{\nom}
|
|
|
|
\cacededi{C'est pratique d'avoir un pantalon troué, je peux me gratter les couilles comme je veux.}{Tom Colinot}
|
|
|
|
\section*{2. Quantification et codage entropique}
|
|
|
|
\img{0.5}{1}
|
|
|
|
\begin{enumerate}\setlength{\itemsep}{5mm}
|
|
|
|
\item On ne peut pas le dire directement parce que les couples $(R,D)$ n'ont ni $R$, ni $D$ connu pour QSU et QSNU.
|
|
|
|
\item Sans codeur entropique, on ne se réfère qu'on premier tableau. Pour le même débit, on a toujours $RSB_{QSU} \leq RSB_{SQNU}$, donc la QSNU est meilleure.
|
|
|
|
\item $D_{min} = \sigma^2 2^{-2R}$
|
|
\img{0.5}{2}
|
|
|
|
\[RSB_{max} = 10\log_{10} \frac{\sigma^2}{D_{min}} = 6.02R\]
|
|
|
|
\[D(r) - D_{min}(R) = RSB_{max} - RSB(R) = 6R - RSB(R)\]
|
|
|
|
Avec un codeur entropique parfait, on a $R=H$ et donc :
|
|
|
|
\begin{center}
|
|
\begin{tabular}{c|c|c}
|
|
$\log_2 M$ & QSU & QSNU \\
|
|
\hline
|
|
1 & 1.6 & 1.6 \\
|
|
2 & 2.174 & 2.166 \\
|
|
3 & 2.296 & 2.33 \\
|
|
4 & 2.232 & 2.37 \\
|
|
5 & 2.124 & 2.36
|
|
\end{tabular}
|
|
\end{center}
|
|
|
|
\item C'est QSU + CE qui est meilleur.
|
|
\end{enumerate}
|
|
|
|
|
|
\section*{3. Codage scalable}
|
|
|
|
\begin{enumerate}\setlength{\itemsep}{5mm}
|
|
|
|
\item
|
|
\begin{enumerate}
|
|
\item $M=2^R$ donc $\Delta = \frac{2X_{max}}{M} = \frac{2X_{max}}{2^R} = X_{max}2^{1-R}$
|
|
|
|
\item $D = \frac{\Delta^2}{12} = \frac{(X_{max}2^{1-R})^2}{12} = X_{max}^2 \frac{1}{3} 2^{-2R} $
|
|
|
|
\item $R=3 \Rightarrow M=8$
|
|
\imgt{3}
|
|
|
|
\item
|
|
\begin{itemize}
|
|
\item $X_1 = 0.9X_{max} \Rightarrow 111$
|
|
\item $X_2 = -0.1X_{max} \Rightarrow 011$
|
|
\item $X_3 = -0.6X_{max} \Rightarrow 001$
|
|
\end{itemize}
|
|
\end{enumerate}
|
|
|
|
\item Le train binaire classique est 111 0111 001. Si les six bits de la fin sont perdus, on ne peut que reconstruire $X_1$.
|
|
|
|
\item
|
|
\begin{itemize}
|
|
\item Scalable 1 : on code d'abord $X_1X_2X_3$ avec un bit par $X_i$, puis on la quantifiée avec 2 puis 3 bits. Au final, on code donc $X_1X_2X_3$ sur un train de 3+6+9=18 bits. Si on n'a que les 3 premiers 100, on peut reconstituer $X_1 = 0.5X_{max}$, $X_2=X_3=-0.5X_{max}$.
|
|
\item Scalable 2 : on envoie les premiers bits de $X_1,X_2$ et $X_3$ à la suite, puis les deuxièmes bits, puis les troisièmes. Le train fait donc 9 bits.
|
|
\end{itemize}
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\begin{tabular}{c|c|c|c|c}
|
|
R & D & Non scalable & Scalable 1 & Scalable 2 \\
|
|
\hline
|
|
0 & $\sigma^2$ & 0 & 0 & 0\\
|
|
1 & $\sigma^2 2^{-2}$ & 1 & 1 & 1 \\
|
|
2 & $\sigma^2 2^{-4}$ & 2 & 1+2 & 2 \\
|
|
3 & $\sigma^2 2^{-6}$ & 3 & 1+2+3 & 3
|
|
\end{tabular}
|
|
\caption{Débit}
|
|
\end{figure}
|
|
|
|
\item Codage d'image, codage vidéo. \textit{Because why ? Because fuck you that's why.}
|
|
|
|
\end{enumerate}
|
|
|
|
\section*{1. Quantification scalaire uniforme}
|
|
|
|
\imgt{4}
|
|
|
|
\begin{enumerate}\setlength{\itemsep}{5mm}
|
|
|
|
\item \begin{align*}
|
|
D & = E[(x-y)^2] \\
|
|
& = \int_{-\infty}^{+\infty} p_X(x)(x_Q(x))^2dx \\
|
|
& = \sum_{i=1}^N \int_{s_{i-1}}^{s_i} p_X(x)(x-y_i)^2 dx
|
|
\end{align*}
|
|
|
|
\item $N=2$
|
|
\img{0.5}{5}
|
|
$y_1 = -\frac{\Delta}{2}, \quad y_2 = \frac{\Delta}{2}$
|
|
|
|
On cherche $\Delta$ qui minimise $D$ :
|
|
\begin{align*}
|
|
D & = \int_{-\infty}^0 p_X(x)(x+\frac{\Delta}{2})^2 dx + \int_0^{\infty}p_X(x)(x-\frac{\Delta}{2})^2 dx \\
|
|
& = \int_{-\infty}^0 p_X(x)(x^2+\frac{\Delta^2}{4}+x\Delta) dx + \int_0^{\infty}p_X(x)(x^2+\frac{\Delta^2}{4}-x\Delta) dx \\
|
|
& = \int_{-\infty}^{\infty} p_X(x)(x^2 + \frac{\Delta^2}{4}) dx + \Delta(\int_{-\infty}^0p_X(x)dx - \int_0^{\infty}p_X(x)dx)
|
|
\intertext{Or, $\int_{-\infty}^0p_X(x)dx + \int_0^{\infty}p_X(x)dx = 0$ ($X$ de valeur moyenne nulle)}
|
|
D & = \int_{-\infty}^{\infty} p_X(x)(x^2 + \frac{\Delta^2}{4}) dx + 2\Delta\int_0^{\infty}p_X(x)dx \\
|
|
& = (\int_{-\infty}^{+\infty} p_X(x)dx)\frac{\Delta^2}{4} - (2\int_0^{\infty} xp_X(x)dx)\Delta + \int_{-\infty}^{+\infty} x^2p_X(x)dx \\
|
|
& = \frac{\Delta^2}{4} - (2\int_0^{\infty} xp_X(x)dx)\Delta + \int_{-\infty}^{+\infty} x^2p_X(x)dx
|
|
\end{align*}
|
|
|
|
Ainsi, \[ \drond{D}{\Delta} = 0 \Rightarrow \frac{1}{4}2\Delta - 2\int_0^{\infty} xp_X(x)dx = 0 \Rightarrow \Delta = 4\int_0^{\infty} xp_X(x)dx \]
|
|
|
|
\item On a maintenant $\acc{y_{i+1}-y_i & = \Delta}{y_{N/2} = -\Delta / 2, & y_{N/2+1} = \Delta / 2}$
|
|
|
|
De plus, $y_{N/2}-y_1 = \Delta(N/2-1)$ donc $y_1 = y_{N/2}-\Delta(N/2-1) = -\Delta(N/2-1/2)$
|
|
|
|
$y_i = \Delta/2(-N+1)+(i-1)\Delta = (i-N/2-1/2)\Delta$
|
|
|
|
$S_i=y_i+\Delta/2=\Delta(i-N/2)$
|
|
|
|
\begin{align*}
|
|
D & = \int_{-\infty}^{\Delta(1-N/2)}p_X(x)(x+\Delta(N/2-1/2))dx + \sum_{i=2}^{N-1} \int_{\Delta(i-1-N/2)}^{\Delta(i-N/2)} p_X(x)(x-\Delta(i-\frac{N+1}{2})^2)dx + \int_{\Delta(N/2-1)}^{\Delta(i-N/2)} p_X(x)(x-\Delta(N/2-1/2))dx
|
|
\end{align*}
|
|
Ensuite, on cherche $\Delta$ tel que $\drond{D}{\Delta}=0$ mais c'est relou donc on va pas le faire.
|
|
|
|
\item \begin{enumerate}
|
|
\item $ \Delta = \frac{2A}{4} = \frac{A}{2}$
|
|
\item \img{0.5}{6}
|
|
\item $D=\frac{\Delta^2}{12}=\frac{A^2}{3\times^{2R}}$
|
|
\end{enumerate}
|
|
|
|
\end{enumerate}
|
|
|
|
\section*{4. Codage avec information adjacent au décodeur}
|
|
\begin{enumerate}
|
|
\item Un exemple de compression d'une sourceX en se servant d'une information adjacente supposée disponible au codeur et au décodeur:\\
|
|
En codage vidéo, le codeur dispose de l'image n-1 (compressée et décompressée) pour coder l'image n.\\
|
|
Le décodeur dispose également de l'image n-1.\\
|
|
|
|
\item On fabrique $\tilde{X}$ à partir de X et de Y :
|
|
\[\tilde{X} = X-Y\]
|
|
Au décodeur, $\tilde{X}$ sera utilisé pour calculer $\hat{X}$ (l'estimé de X).\\
|
|
|
|
\item On suppose que Y et donc Z suivent une loi normale de moyenne nulle et d'écart-type respectif $\sigma_Y$ et $\sigma_Z$.
|
|
\begin{enumerate}
|
|
\item \begin{align*}
|
|
E(X) &= E(Y+Z) = E(Y) + E(Z) = 0\\
|
|
\sigma_X^2 &= E((X-E(X))^2) = E(X^2) =E(Y^2 + Z^2 + 2YZ)\\
|
|
&= E(Y^2) + 2E(Y)E(Z) +E(Z^2)\\
|
|
&= \sigma_Y^2 + \sigma_Z^2
|
|
\end{align*}
|
|
|
|
\item On ne tient compte de Y ni au codeur, ni au décodeur, $\tilde{X} = X$ et $D_1(R) = \sigma_X^2 2^{-2R}$.\\
|
|
|
|
\item Si on compresse $\tilde{X} = X-Y = Z$, alors $D_2(R) = \sigma_{\tilde{X}}^2 2^{-2R} = (\sigma_X^2 - \sigma_Y^2) 2^{-2R}$. Donc:
|
|
\[D_2(R) \leq D_1(R)\]
|
|
|
|
\end{enumerate}
|
|
|
|
\item On n'utilise pas Y au codeur, donc à priori, les performances devraient être moins bonnes.
|
|
|
|
\img{0.5}{7.png}
|
|
|
|
Tout d'abord, X est quantifié à l'aide d'un quantificateur scalaire uniforme de pas $\Delta_1$, centré en 0. X appartient à un intervalle de quantification répété par un index $q_1$, cet intervalle est alors découpé en M sous-intervalle, $m \in \{0,1,...,M-1\}$.
|
|
|
|
\item \[\Delta_1 = M\Delta_2 \Rightarrow \Delta_2 = \frac{\Delta_1}{M} \]
|
|
|
|
\item Les m(s) sont équiprobables donc:
|
|
\[H = \sum_{i=1}^{\Delta_2} \frac{1}{\Delta_2}log_2(\frac{1}{\frac{1}{\Delta_2}} = log_2(\Delta_2) \]
|
|
|
|
C'est le nombre de bits nécessaire.\\
|
|
|
|
Première méthode:\\
|
|
On quantifie Y au décodeur avec $\Delta_1$:
|
|
|
|
\img{0.5}{8.png}
|
|
|
|
\item Il faut:
|
|
\[\acc{k\Delta_1 - \frac{\Delta_1}{2} \leq Y \leq k\Delta_1 + \frac{\Delta_1}{2}}{k\Delta_1 - \frac{\Delta_1}{2} \leq X \leq k\Delta_1 + \frac{\Delta_1}{2}} \]
|
|
|
|
\img{0.5}{9.png}
|
|
On suppose que $Y = k \Delta_1$ donc, on a $k\Delta_1 - \frac{\Delta_1}{2} \leq k \Delta_1 + Z \leq k\Delta_1 + \frac{\Delta_1}{2}$. Ce qui implique que :
|
|
\[-\frac{\Delta_1}{2} \leq Z \leq \frac{\Delta_1}{2}\]
|
|
|
|
\item Lorsque Y est très proche de la limite de l'intervalle, on a une distorsion de l'ordre de $\Delta_1^2$, même lorsque $Z << Y$.
|
|
|
|
\item Deuxième méthode: On découpe l'intervalle de largeur $\Delta_1$ en 0, en M sous-intervalle, et on sélectionne le milieu 0' du sous-intervalle indexé par m.
|
|
Ensuite, Y est quantifié avec $\Delta_1$ mais centré en 0'.\\
|
|
|
|
\img{0.5}{10.png}
|
|
|
|
Première étape: on reconstruit $\hat{\omega}$ à partir de m et $-\frac{\Delta_1}{2} \leq \tilde{\omega} \leq \frac{\Delta_1}{2}$.\\
|
|
Seconde étape: $Y \rightarrow \hat{Y}$\\
|
|
\begin{align*}
|
|
\hat{X} = \hat{Y + \hat{\omega}} \text{ et,} X = Y + Z\\
|
|
\text{donc, } (\hat{X}-X) = (\hat{Y} - Y) + (\hat{\omega} - Z)\\
|
|
(\hat{Y}-Y)^2 \leq \frac{\Delta_1^2}{4}
|
|
\end{align*}
|
|
|
|
Si $Z \in [-\frac{\Delta_1}{2}; \frac{\Delta_1}{2}]$ alors, $ (Z-\hat{\omega})^2 \leq \Delta_1^2$, sinon $(z-\hat{\omega})^2$ peut être large.
|
|
|
|
\item $\Delta_1$ assez grand pour que $|Z| \leq \frac{\Delta_1}{2}$.\\
|
|
D(R) augmente aussi et $(\hat{m}-m)$ augmente.
|
|
|
|
\item Montrons que $Pr(|Z|> \frac{\Delta_1}{2}) = \sqrt{\frac{2}{\pi \sigma_Z^2}} \int_{\frac{\Delta_1}{2}}^{+\infty} exp(-\frac{z^2}{2\sigma_z^2}) dz$, dont la distribution de probabilité est:
|
|
\img{0.5}{11.png}
|
|
On peut aussi montrer que:
|
|
\begin{align*}
|
|
Pr(|Z|>\frac{\Delta_1}{2}) &= 2 Pr(Z > \frac{\Delta_1}{2})\\
|
|
&= 2 \sqrt{\frac{1}{2\pi \sigma_Z^2}} \int_{\frac{\Delta_1}{2}}^{+\infty} exp(-\frac{z^2}{2\sigma_z^2}) dz
|
|
\end{align*}
|
|
|
|
On suppose que $ \Delta_2 << \Delta_1$, et $\Delta_2 << \sigma_Z$.\\
|
|
On peut montrer que $|Z| \leq \frac{\Delta_2}{2} \Rightarrow D_1 = \frac{\Delta_2^2}{12}$ et que $|Z| > \frac{\Delta_2}{2} \Rightarrow D_2 = \Delta_2^2$.\\
|
|
|
|
\begin{align*}
|
|
D &= D_1 Pr(|Z| \leq \frac{\Delta_1}{2}) + D_2 Pr(|Z| > \frac{\Delta_1}{2})\\
|
|
&= \frac{\Delta_2^2}{12} \int_{-\frac{\Delta_1}{2}}^{\frac{\Delta_1}{2}} \frac{1}{\sqrt{2\pi \sigma_Z^2}} exp(-\frac{z^2}{2\sigma_Z^2})dz + \Delta_1^2 \sqrt{\frac{2}{\pi \sigma_Z^2}} \int_{\frac{\Delta_1}{2}}^{+\infty} exp(-\frac{z^2}{2\sigma_Z^2})dz\\
|
|
&= \sqrt{\frac{2}{pi \sigma_z^2}} \left(\frac{\Delta_2^2}{12} \int_{0}^{\frac{\Delta_1}{2}} exp(-\frac{z^2}{2\sigma_Z^2})dz + \Delta_1^2 \int_{\frac{\Delta_1}{2}}^{+\infty} exp(-\frac{z^2}{2\sigma_Z^2})dz\right)
|
|
\end{align*}
|
|
|
|
\item R est fixé donc M est fixé, et $\Delta_2 = \frac{\Delta_1}{M}$.
|
|
|
|
On calcul $\frac{\partial D}{\partial \Delta_1}$ et par magie on trouve 0.
|
|
|
|
\end{enumerate}
|
|
\end{document} |