• Aucun résultat trouvé

La s´election du meilleur codage parmi l’ensemble des codages possibles est obtenue soit par une s´election bas´ee sur un crit`ere exhaustif, soit par une s´election provenant de crit`eres a priori. Dans cette section, nous d´efinirons les crit`eres exhaustifs utilis´es pour comparer les diff´erents codages, notamment le plus utilis´e : le crit`ere d´ebit-distorsion. Ensuite, les comp´etitions bas´ees sur des a priori seront ´evoqu´ees. Nous d´efinirons particuli`erement ce que l’on entend par a priori, en expliquant l’utilit´e de ce mode de s´election pour limiter les tests exhaustifs impliquant la r´eduction de complexit´e de calcul.

2.2.1

Crit`eres exhaustifs

Une s´election exhaustive signifie que toutes les possibilit´es de codage sont ´evalu´ees avec la mˆeme m´etrique. La possibilit´e de codage minimisant (ou maximisant selon la m´etrique) l’ensemble des ´evaluations est alors s´electionn´ee comme meilleur codage. En compression vid´eo et d’image avec pertes, la s´election est le processus qui permet de choisir la possibilit´e de codage qui obtient le meilleur compromis entre la qualit´e et le d´ebit.

La probl´ematique de d´ebit qualit´e pour le codage d’un signal avec pertes a ´et´e d´efinie en 1948 par Shannon [Sha48]. Le codage avec pertes est bas´e sur le fait qu’il n’est pas n´ecessaire d’envoyer l’ensemble de l’information originale pour “comprendre” l’information. La perte introduite dans l’information originale a pour but de r´eduire le nombre de bits `a transmettre ou `a stocker. Dans une technique de compression avec pertes, le nombre de bits correspond `a la quantit´e d’information n´ecessaire pour d´ecrire l’information relative `a un certain crit`ere de fid´elit´e du signal de d´epart. Ce probl`eme peut ˆetre r´esolu par la m´ethode du “Rate-Constraint” (d´ebit contraint) [HC97], [LJO98], [SG88] qui est d´efini par l’´equation suivante :

min{D}, avec R ≤ Rc (2.1)

o`u D, la distorsion, est la mesure inverse de la qualit´e, R (rate), le d´ebit, et Rc est le d´ebit maxi-

mum que l’on peut utiliser. Cette m´ethode est donc la recherche de la minimisation de la dis- torsion D et d’un d´ebit R inf´erieur `a la contrainte Rc. On peut aussi r´esoudre la probl´ematique

d´ebit-distorsion avec l’optimisation Lagrangienne [Eve63]. Cette m´ethode d’optimisation du d´ebit- distorsion est donn´ee par la formule suivante :

min{J}, avec J = D + λR (2.2)

o`u λ est le param`etre de Lagrange, et J est le crit`ere d´ebit-distorsion que l’on notera RD dans la suite du manuscrit. L’analyse th´eorique du crit`ere RD a ´et´e largement ´etudi´ee durant ces 60 derni`eres ann´ees. La difficult´e avec ce crit`ere est de d´eterminer le param`etre de Lagrange λ. En effet, l’optimi- sation du crit`ere RD est diff´erente selon les caract´eristiques du signal d’entr´ee [OR98]. Les signaux 1D peuvent facilement ˆetre associ´es `a un mod`ele math´ematique [Ber71], [Ben48] mais les signaux 2D ou 3D comme les images ou les vid´eos ne comportent pas les mˆemes caract´eristiques. De plus, pour le codage de ces signaux, on utilise des codeurs complexes qui exploitent des redondances spatiales

et temporelles avec des transform´ees, des pr´edictions, etc. L’analyse math´ematique th´eorique de ces signaux est tr`es difficile `a r´esoudre [OR98]. Il est n´ecessaire d’adapter l’optimisation du crit`ere RD en fonction des caract´eristiques des codeurs vid´eo [Wie02] et d’image. De mˆeme, cette s´election doit d´ependre de l’utilisation de ces images et vid´eos [ZM05]. En effet, certaines applications n´ecessitent un compromis entre l’efficacit´e de codage et la robustesse. Enfin, dans une m´ethode de compression avec pertes, l’´etape de quantification, qui alt`ere l’information, va modifier le compromis. Il est alors essentiel que le param`etre de Lagrange d´epende des pertes introduites par la quantification [HC97]. Les mesures d’estimation de la distorsion sont aussi un facteur d’efficacit´e de la s´election avec le crit`ere RD [SW98]. Les mesures les plus utilis´ees sont : le SAD, la SSD, la MSE, le PSNR etc. Cependant, ces mesures ne refl`etent pas forc´ement la perception visuelle [JJS93]. Dans [CPN04], afin de s´electionner le meilleur codeur vid´eo au niveau objet, chaque codeur est estim´e `a l’aide du crit`ere RD. La mesure de la distorsion est la M SET ext : la MSE dans le “domaine texture” qui prend en

compte la distorsion g´eom´etrique engendr´ee par un codage.

Afin d’adapter la s´election en fonction du signal `a coder, dans [WG91] il est propos´e que le param`etre λ du crit`ere RD d´epende des macroblocs d´ej`a encod´es. Cependant, ces algorithmes ne prennent pas en compte les d´ependances entre les macroblocs. Par exemple, dans la norme d’H.264 /AVC, le codage du macrobloc courant d´epend des macroblocs voisins : les vecteurs des modes Inter sont pr´edits en fonction de la valeur des vecteurs voisins, le signal utilis´e pour le calcul des pr´edicteurs Intra provient des macroblocs voisins, et les contextes adaptatifs du CABAC d´ependent du codage de ces derniers. Dans [WLM+96], les auteurs proposent de r´esoudre l’optimisation de la s´election des modes de codage. Ils formulent la probl´ematique du d´ebit-distorsion pour un GOP (c’est-`a-dire que le choix de chaque macrobloc d´epend de l’ensemble des codages des macroblocs composant le GOP). La formulation de ce probl`eme est th´eorique et inapplicable en terme de complexit´e de calcul. Ils reformulent donc le probl`eme en consid´erant que le codage d´epend du codage du macrobloc pr´ec´edent et du suivant. Cette m´ethode est impl´ement´ee en utilisant la programmation dynamique.

En consid´erant que le param`etre de Lagrange doit ˆetre diff´erent selon l’´etape du codage, dans [SW98], deux λ sont d´efinis : un pour l’estimation de mouvement λM otion et un pour la s´election des

modes de codage λM ode. Ces deux param`etres d´ependent du pas de quantification. Cette m´ethode

est impl´ement´ee dans le logiciel de r´ef´erence de la norme H.264/AVC [JM] : le JM. Pour l’estimation de mouvement, le d´ebit R est ´egal au d´ebit Rmv [Gir94]. Le crit`ere RD, pour cette ´etape est donn´e

dans l’´equation suivante :

J = D + λM otionRmv (2.3)

Dans le JM, le d´ebit des vecteurs mouvement, Rmv est estim´e pour chaque vecteur lors de

l’estimation de mouvement, pour chacun des modes Inter ayant un vecteur. Ce d´ebit correspond au coˆut du r´esiduel εmvestim´e `a l’aide de la table de Golomb. Ce coˆut est le mˆeme quelque soit le type

du codage entropique utilis´e (CAVLC ou CABAC). Pour la s´election au niveau macrobloc, le crit`ere RD est donn´e par la formule suivante :

J = D + λM ode(Rr+ Rm+ Ro+ Rmv) (2.4)

S´election du meilleur codage 35

informations (CBP, Stuffing Bits, reference frames, etc.) et Rmv le d´ebit des vecteurs mouvement.

Pour chaque macrobloc, le d´ebit r´eel au bit pr`es est calcul´e pour chaque mode de codage Inter et Intra. Dans ce cas, Rmv repr´esente le vrai nombre de bits. Pour chaque mode, le crit`ere RD est

calcul´e avec un λM ode= (λM otion)2 comme param`etre de Lagrange.

Le mode Skip n’ayant pas de r´esiduel, l’´equation du d´ebit-distorsion devient pour ce mode :

JSKIP = DSKIP + λM odeRm (2.5)

o`u DSKIP est la distorsion engendr´ee par ce mode et Rmest le nombre de bits n´ecessaire au codage

de l’indice “Skip” qui est le seul d´ebit engendr´e par ce mode. Le crit`ere RD pour le mode Direct est ´equivalent. En pratique, le coˆut λM odeRm est n´egligeable compar´e `a la distorsion DSKIP. Le

d´ebit Rm est souvent inf´erieur `a un bit, que ce soit pour le CABAC ou pour le CAVLC. En effet,

les contextes du codage de l’indice pour le mode Skip, repr´esent´e par la valeur 0, sont binaris´es avec un seul bit. Ce mode a une forte probabilit´e de s´election. Par cons´equent, le codage arithm´etique obtient de bonnes performances et permet de coder un macrobloc skipp´e avec moins d’un bit. Pour le CAVLC, un codage RLC est utilis´e pour le codage de ce mode : lorsqu’un premier macrobloc est cod´e en Skip, on ´ecrit la valeur 0 dans le bitstream puis on compte le nombre de macroblocs successifs cod´es en Skip (dans l’ordre de parcours de l’image). Si on arrive `a la fin de l’image, ou si le nouveau macrobloc courant n’est pas cod´e en Skip, on ´ecrit ce nombre.

2.2.2

Crit`eres “a priori”

Les crit`eres a priori sont des choix humains, applicatifs ou statistiques. Le but de ce type de s´election est en g´en´eral de r´eduire la complexit´e de calcul. Pour cela, les estimations de mouve- ment rapides ´eliminent certaines zones de la fenˆetre de recherche. Ces estimations peuvent ˆetre des approches multi-r´esolutions [Bie88], [DK92], hi´erarchiques [ZZB91], ou bas´ees sur la descente de gradient [LKF96]. Ces m´ethodes utilisent les propri´et´es des vid´eos pour r´eduire le nombre de calculs du crit`ere utilis´e pour l’algorithme BMA (crit`ere RD dans le cas du codage vid´eo). Comme ces estimations ne testent pas l’ensemble des possibilit´es de codage, la s´election de la meilleure efficacit´e de codage est (th´eoriquement) sous-optimale par rapport `a une recherche exhaustive. Les recherches rapides du meilleur pr´edicteur Intra sont bas´ees sur des crit`eres statistiques ou des caract´eristiques du signal d’entr´ee, comme dans [WLN07], o`u une d´etection de contour, bas´ee sur la transform´ee de Haar, est utilis´ee pour s´electionner ou non un ensemble r´eduit de pr´edicteurs. Dans [YPL04], les macroblocs sont class´es en fonction de leur contenu. Si ce contenu est lisse, un ensemble restreint de pr´edicteurs est test´e. Dans ces deux cas, l’ensemble des possibilit´es de codage n’a pas ´et´e ´evalu´e avec le crit`ere RD mais avec un crit`ere “a priori”. Dans [REK97], un codage dynamique est utilis´e. Plusieurs codeurs sont alors mis en comp´etition. Le nombre de ces comp´etitions ´etant trop large et inutile en fonction des applications vis´ees, un ensemble de solutions admissibles est d´etermin´e en fonction de l’application vis´ee. Les crit`eres d’´elimination sont la complexit´e et l’efficacit´e de co- dage de chacun des codeurs. Le meilleur codeur parmi l’ensemble des codeurs retenus est ensuite s´electionn´e avec le crit`ere RD. Le crit`ere a priori propos´e provient donc d’un choix humain ou d’un choix applicatif.