Brevet FR2903270A1 — publié le 20080104

La présente invention concerne un procédé et un dispositif de codage d'une séquence d'images, un système de télécommunication comportant un tel dispositif et un programme mettant en oeuvre un tel procédé. Elle s'applique, en particulier, à la transmission de blocs monodirectionnels ou bidirectionnels robuste aux erreurs de transmission entre 15 un codeur vidéo prédictif et un décodeur correspondant. Le développement des réseaux de communication, fixes et mobiles, permet l'apparition de nombreuses applications de transmission vidéo. Ces applications sont envisagées pour une grande diversité d'unités de réception allant de l'ordinateur personnel, au téléphone mobile, à l'assistant numérique 20 personnel ou au téléviseur. Il est prévu que des réseaux très hétérogènes, filaires ou sans fil, puissent être utilisés. Les capacités de transmission varieront donc selon le canal de transmission mais aussi dans le temps. Lorsque le débit nécessaire sera supérieur au débit disponible, des congestions se produiront, ce qui engendrera des pertes de paquets de données. 25 Les flux vidéo codés sous forme prédictive, c'est-à-dire codant chaque image par référence à au moins une image antérieurement transmise, sont, de ce fait, particulièrement sensibles aux pertes de paquets. La perte de tout ou partie d'une image peut, en effet, se propager à de nombreuses images successives lors du décodage. 30 La présente invention vise à remédier à ces inconvénients, en particulier dans le cas de mise en oeuvre de macroblocs mono-prédits et de macroblocs bi-prédits. On rappelle que les images mono-prédites sont des images prédites à partir d'une seule image de référence, généralement l'image qui précède l'image à coder et que les images bi-prédites sont des images 1 2903270 2 prédites à partir de deux images de référence qui, temporellement, encadrent l'image à coder. De manière classique, l'entité de traitement des images d'une séquence d'images est le macrobloc, qui peut comprendre un ou plusieurs blocs de l'image, les blocs étant les entités élémentaires de codage. 5 Dans la technique de codage des images en fonction d'une seule image de référence (images dites mono-prédites ), la plupart des macroblocs de l'image en cours de codage sont, chacun, prédits à partir d'une zone, dite macrobloc de référence , de même dimension que le macrobloc, prise dans l'image de référence de manière à ce qu'elle ressemble, au mieux, au macrobloc à coder. Dans la technique de codage des images en fonction de deux images de référence (images dites bi-prédites ), la plupart des macroblocs de l'image en cours de codage sont, chacun, prédits à partir deux zones, dite macrobloc de référence , de même dimension que le macrobloc, zones prises, chacune, dans une des deux images de référence, de manière à qu'elle ressemble, au mieux, au macrobloc à coder. Dans chacun de ces deux cas, on applique un algorithme de recherche de bloc, connu sous le nom anglais de block matching , qui consiste à définir, dans chaque image de référence, une zone de recherche autour de la position du macrobloc à coder. Dans cette zone de recherche, on recherche la zone de même taille que le macrobloc à coder la plus ressemblante au macrobloc à coder. Ainsi, comme illustré en figure 1, relative aux images bi-prédites, le macrobloc 110 de l'image à coder 105 est prédit en fonction du macrobloc de référence 115 de la zone de recherche 120 de l'image de référence antérieure 125 et du macrobloc de référence 130 de la zone de recherche 135 de l'image de référence postérieure 140. Le critère de ressemblance appliqué à la recherche de chacun des macroblocs de référence 115 et 130 est l'erreur entre ce macrobloc de référence et le macrobloc 110, erreur que l'on cherche à minimiser. L'erreur est ici, par exemple, définie sous la forme d'une somme des valeurs absolues des différences entre les macroblocs, point par point. Ces deux minimisations, représentées par les deux équations (1) et (2), ci-dessous, permettent de déterminer deux vecteurs de mouvement. 2903270 min OAr+t- - MB[z,t] rs r ù MB[z,t] - 3 t+i-*r MB[z,t] ùP 8,z, r-Hr MB[z,t]ùP Bär~ Dans l'équation (1) Vt+,_,test le vecteur de mouvement reliant le macrobloc à coder 110 se trouvant en une position z de l'image 105, noté (MB[z,t]), à la zone de prédiction 130 de l'image 140, zone notée (P1]). 5 L'équation (2) est identique, seule l'image de référence, ici 125, étant modifiée. Dans chacune des équations (1) et (2), A représente l'erreur de prédiction définie ci-dessus. On code, dans le train binaire représentant le flux vidéo, les deux vecteurs de mouvement et une version quantifiée de la moyenne des deux erreurs : Q`MB[ t'tl + 0`MB[z t] 2 où Q() est l'opérateur de quantification. 10 ( Q Un décodeur doit recevoir les deux images de référence pour décoder chaque macrobloc bi-prédit. Cependant, dans un environnement à perte, la bonne réception des deux images de référence n'est pas assurée : on peut perdre l'une des deux 15 images, voire les deux. Dans le cas où l'une des images de référence est perdue entre l'encodeur et le décodeur, malgré la bonne réception d'une des deux images de référence, le décodage d'un bloc bi-prédit s'avère difficile, voire impossible, pour certains décodeurs. Un décodeur efficace tente de masquer la perte des macroblocs de 20 référence. A cet effet, le décodeur utilise une méthode de masquage de pertes (de l'anglais concealment method ), qui peut, de manière connue, prendre différentes formes : - masquage de pertes spatial, méthode dans laquelle on remplace le macrobloc de référence perdu par une interpolation obtenue à 25 partir des blocs voisins, que l'on considère comme similaires au bloc perdu, - masquage de pertes temporel, méthode dans laquelle on remplace le macrobloc de référence perdu par une interpolation obtenue à partir des vecteurs de mouvement des macroblocs voisins du macrobloc perdu ou 2903270 4 -remplacement du macrobloc de référence perdu par le macrobloc de référence reçu. On considère, dans ce dernier cas, que les deux macroblocs sont similaires, ce qui n'est généralement pas exact. ll arrive que, dans des 5 séquences d'images représentant des mouvements rapides, par exemple, les deux macroblocs de référence soient très différents. Le macrobloc reconstruit est alors de mauvaise qualité. Dans les deux premiers cas, l'interpolation génère des erreurs et la qualité de l'image reconstruite est variable. 10 Un autre problème des méthodes de masquage de pertes est qu'elles réagissent après les pertes du coté du récepteur. On connaît des méthodes de contrôle d'erreurs agissant a priori. Dans l'article Error resilient video transmission over the internet , F. Le Léannec, C. Guillemot, Visual communication and image processing, VCIP, January, 1999, il 15 est proposé une méthode de sélection de mode de codage et de paramètres de quantification prenant en compte l'état du canal. Ainsi une optimisation lagrangienne permet de déterminer, pour chaque macrobloc, son type (INTRA, INTER ou non codé) et son paramètre de quantification (pris dans l'intervalle [0, 31]), en fonction de la probabilité de perdre ce macrobloc et des dégradations 20 engendrées par cette perte. Cette approche ne prend pas en compte les macroblocs bi-prédits et ne permet pas de déterminer des vecteurs de mouvement en fonction de l'état du réseau. Le document US 6,295,624, ayant pour titre Data compression system for concealing errors in compressed data , propose de déterminer la meilleure 25 méthode de masquage de pertes à appliquer en cas de pertes au niveau du codeur. Selon ce document, dans le train binaire représentant le flux vidéo, on associe, à chaque bloc, une méthode de masquage de pertes. Le décodeur applique cette méthode, en cas de pertes. Cette méthode a l'inconvénient d'avoir un coût de codage important puisqu'elle suppose d'insérer des informations 30 supplémentaires dans le train binaire. De plus, elle ne permet pas de déterminer des vecteurs de mouvement en fonction de l'état du canal de transmission. La présente invention vise à remédier à ces inconvénients et à permettre la reconstruction d'une image de qualité lorsqu'une image de référence est perdue. 2903270 5 A cet effet, selon un premier aspect, la présente invention vise un procédé de codage d'une séquence d'images, qui comporte : - pour au moins une image à coder, pour au moins un macrobloc à coder de ladite image à coder, une étape de sélection d'au moins un macrobloc 5 de référence, dit primaire , d'une image de référence en fonction d'un autre macrobloc dit secondaire , selon un critère de similarité conjointe entre le macrobloc primaire et le macrobloc à coder et entre le macrobloc primaire et le macrobloc secondaire et - une étape de détermination d'un vecteur de mouvement entre le 10 macrobloc primaire et ledit macrobloc à coder. Ainsi, le macrobloc primaire n'est pas sélectionné seulement pour sa similarité au macrobloc à coder, mais également en fonction de sa similarité au macrobloc secondaire susceptible de le remplacer en cas de perte du macrobloc primaire. Réciproquement, si le macrobloc secondaire est perdu, on peut lui 15 substituer le macrobloc de référence primaire pour permettre la reconstruction d'une image de qualité. On observe que la présente invention s'applique, notamment, à tous les standards vidéo utilisant des images bi-prédites B (MPEG-2, MPEG-4, H.263, H264, SVC) et est particulièrement adaptée aux standards H.264 et SVC qui 20 utilisent les images B comme images de référence, puisqu'elle permet d'atténuer les effets de la propagation d'erreurs. La présente invention s'applique également dans le cas des macroblocs mono-prédits qui utilisent un macrobloc de référence primaire qui est susceptible d'être perdu et qui pourra être avantageusement remplacé par le 25 macrobloc secondaire déterminé grâce au procédé de l'invention. Selon des caractéristiques particulières, au cours de l'étape de sélection, on met en oeuvre un critère de sélection variable en fonction de la différence entre le macrobloc de référence primaire et le macrobloc secondaire. Grâce à ces dispositions, en cas de perte du macrobloc secondaire, 30 qui est un macrobloc de référence dans le cas du codage bi-préditif, le macrobloc de référence primaire, qui lui est peu différent, peut lui être substitué pour fournir une image reconstruite de bonne qualité. Selon des caractéristiques particulières, au cours de l'étape de sélection, on sélectionne conjointement les macroblocs primaire et secondaire. 2903270 6 Grâce à ces dispositions, en particulier dans le cas des images bi-prédites, chacun des macroblocs primaire et secondaire peut être substitué à l'autre en cas de perte d'une image de référence. Selon des caractéristiques particulières, le procédé de codage tel que 5 succinctement exposé ci-dessus comporte une étape d'estimation d'état d'un canal de transmission, l'étape de sélection d'au moins un macrobloc de référence primaire mettant en oeuvre le résultat de ladite étape d'estimation d'état du canal de transmission. Selon des caractéristiques particulières, au cours de l'étape de 10 sélection, on met en oeuvre un critère de sélection déterminant une erreur entre le macrobloc de référence primaire et le macrobloc à coder, ledit critère de sélection variant en fonction de l'état du canal de transmission. Selon des caractéristiques particulières, au cours de l'étape d'estimation d'état du canal de transmission, on estime un taux de perte sur ledit 15 canal. Grâce à chacune de ces dispositions, on adapte les macroblocs de référence, en fonction de l'état du canal de transmission, par exemple pour favoriser la qualité de l'image reconstruite en l'absence de perte de macrobloc de référence, lorsque le canal est faiblement bruité et pour favoriser la qualité de 20 l'image reconstruite en cas de perte d'un macrobloc de référence, lorsque le canal est fortement bruité. Par exemple, on utilise, afin d'accroitre la robustesse aux erreurs des données encodées et ainsi agir a priori, la connaissance, par l'émetteur, de l'état du canal de communication et, notamment, du taux de pertes sur celui-ci. 25 Selon des caractéristiques particulières, au cours de l'étape de sélection, on recherche le macrobloc de référence primaire pour lequel la somme, d'une part, d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder multiplié par une estimation de probabilité de bonne réception de l'image de référence et, d'autre part, une mesure de 30 différence entre le macrobloc de référence primaire et le macrobloc secondaire multiplié par une estimation de probabilité de perte de l'image de référence, est minimale. Grâce à ces dispositions, si le taux de pertes est faible, le premier terme est prépondérant et le macrobloc de référence primaire est choisi avec peu 2903270 7 de contrainte de ressemblance avec le macrobloc secondaire. On privilégie alors le taux de compression et la qualité de l'image décodée sans perte. Si le taux de pertes est élevé, le deuxième terme devient prépondérant et on privilégie la résistance aux pertes de paquets. Le macrobloc de référence primaire est alors 5 choisi de sorte que si le macrobloc secondaire était perdu, il serait efficacement remplacé par le macrobloc de référence primaire. On optimise ainsi conjointement le compromis débit/distorsion et la résistance aux erreurs. Selon des caractéristiques particulières, au cours de l'étape de sélection, on recherche conjointement le macrobloc de référence primaire et le 10 macrobloc secondaire pour lesquels la somme, d'une part, du produit d'une estimation de probabilité de bonne réception de l'image de référence par la somme d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder et d'une mesure de différence entre le macrobloc secondaire et le macrobloc à coder et, d'autre part, le produit d'une mesure de différence 15 entre le macrobloc de référence primaire et le macrobloc secondaire par une estimation de probabilité de perte de l'image de référence, est minimale. Grâce à ces dispositions, si le taux de pertes est faible, le premier terme est prépondérant et les macroblocs primaire et secondaire sont choisis avec peu de contrainte de ressemblance entre eux. On privilégie alors le taux de 20 compression et la qualité de l'image décodée sans perte. Si le taux de pertes est élevé, le deuxième terme devient prépondérant et on privilégie la résistance aux pertes de paquets. Les macroblocs primaire et secondaire sont alors choisis de sorte que si l'un d'entre eux était perdu, il serait efficacement remplacé par l'autre. On optimise ainsi conjointement le compromis débit/distorsion et la 25 résistance aux erreurs. Selon des caractéristiques particulières, le procédé tel que succinctement exposé ci-dessus comporte une étape de codage d'images mono-prédites comportant ladite étape de sélection d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc d'une image 30 antérieure à l'image dans laquelle se trouve le macrobloc de référence primaire. Selon des caractéristiques particulières, le procédé tel que succinctement exposé ci-dessus comporte une étape de codage d'images biprédites comportant ladite étape de sélection d'au moins un macrobloc de référence primaire, l'image comportant le macrobloc de référence primaire et 2903270 8 l'image comportant le macrobloc secondaire encadrant l'image à coder. La présente invention s'applique donc tant au codage d'images mono-prédites qu'au codage d'images bi-prédites. Selon des caractéristiques particulières, le procédé tel que 5 succinctement exposé ci-dessus comporte une étape de codage d'images mono-prédites comportant ladite étape de sélection d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc déterminé par simulation d'une procédure de masquage de la perte du macrobloc primaire. Selon des caractéristiques particulières, au cours de l'étape de 10 sélection, on sélectionne le macrobloc de référence primaire en fonction d'un macrobloc secondaire possédant les mêmes coordonnées que le macrobloc de référence primaire. Selon un deuxième aspect, la présente invention vise un dispositif de codage d'une séquence d'images, caractérisé en ce qu'il comporte : 15 - un moyen de sélection adapté, pour au moins une image à coder, pour au moins un macrobloc à coder de ladite image à coder, à sélectionner au moins un macrobloc de référence, dit primaire , d'une image de référence en fonction d'un autre macrobloc dit secondaire , selon un critère de similarité conjointe entre le macrobloc primaire et le macrobloc à coder et entre le macrobloc 20 primaire et le macrobloc secondaire et - un moyen de détermination d'un vecteur de mouvement entre le macrobloc primaire et ledit macrobloc à coder. Selon des caractéristiques particulières, le moyen de sélection est adapté à mettre en oeuvre un critère de sélection variable en fonction de la 25 différence entre le macrobloc de référence primaire et le macrobloc secondaire. Selon des caractéristiques particulières, le moyen de sélection est adapté à sélectionner conjointement les macroblocs primaire et secondaire. Selon des caractéristiques particulières, le dispositif de codage tel que succinctement exposé ci-dessus comporte un moyen d'estimation d'état d'un 30 canal de transmission, le moyen de sélection d'au moins un macrobloc de référence primaire mettant en oeuvre une estimation fournie par ledit moyen d'estimation d'état du canal. Selon des caractéristiques particulières, le moyen de sélection est adapté à mettre en oeuvre un critère de sélection déterminant une erreur entre le 2903270 9 macrobloc de référence primaire et le macrobloc à coder, ledit critère de sélection variant en fonction de l'état du canal de transmission. Selon des caractéristiques particulières, le moyen d'estimation d'état du canal de transmission est adapté à estimer un taux de perte sur ledit canal. 5 Selon des caractéristiques particulières, le moyen de sélection est adapté à rechercher le macrobloc de référence primaire pour lequel la somme, d'une part, d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder multiplié par une estimation de probabilité de bonne réception de l'image de référence et, d'autre part, une mesure de différence entre 10 le macrobloc de référence primaire et le macrobloc secondaire multiplié par une estimation de probabilité de perte de l'image de référence, est minimale. Selon des caractéristiques particulières, le moyen de sélection est adapté à rechercher conjointement le macrobloc de référence primaire et le macrobloc secondaire pour lesquels la somme, d'une part, du produit d'une 15 estimation de probabilité de bonne réception de l'image de référence par la somme d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder et d'une mesure de différence entre le macrobloc secondaire et le macrobloc à coder et, d'autre part, le produit d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc secondaire par une 20 estimation de probabilité de perte de l'image de référence, est minimale. Selon un troisième aspect, la présente invention vise un système de télécommunication comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif de codage tel que 25 succinctement exposé ci-dessus et au moins un dispositif terminal équipé d'un dispositif de décodage adapté à reconstruire des macroblocs d'images à partir d'au moins un macrobloc de référence d'une image de référence, et, lorsqu'un macrobloc de référence a été perdu, à substituer au macrobloc perdu, un autre macrobloc de référence. 30 Selon des caractéristiques particulières, le dispositif tel que succinctement exposé ci-dessus comporte un moyen de codage d'images mono-prédites comportant ledit moyen de sélection d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc d'une image antérieure à l'image dans laquelle se trouve le macrobloc de référence primaire. 2903270 10 Selon des caractéristiques particulières, le dispositif tel que succinctement exposé ci-dessus comporte un moyen de codage d'images biprédites comportant ledit moyen de sélection d'au moins un macrobloc de référence primaire, l'image comportant le macrobloc de référence primaire et 5 l'image comportant le macrobloc secondaire encadrant l'image à coder. Selon des caractéristiques particulières, le dispositif tel que succinctement exposé ci-dessus comporte un moyen de codage d'images mono-prédites comportant ledit moyen de sélection d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc obtenu par 10 simulation d'une procédure de masquage de la perte du macrobloc primaire. Selon des caractéristiques particulières, le moyen de sélection est adapté à sélectionner le macrobloc de référence primaire en fonction d'un macrobloc secondaire possédant les mêmes coordonnées que le macrobloc de référence primaire. 15 Selon un quatrième aspect, la présente invention vise un système de télécommunication comprenant une pluralité de dispositifs terminaux reliés à travers un réseau de télécommunications, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif de codage tel que succinctement exposé ci-dessus et au moins un dispositif terminal équipé d'un 20 dispositif de décodage adapté à reconstruire des macroblocs d'images à partir d'au moins un macrobloc de référence d'une image de référence, et, lorsqu'un macrobloc de référence a été perdu, à substituer au macrobloc perdu, un autre macrobloc de référence. Selon un cinquième aspect, la présente invention vise un programme 25 d'ordinateur chargeable dans un système informatique, ledit programme contenant des instructions permettant la mise en oeuvre du procédé de codage tel que succinctement exposé ci-dessus, lorsque ce programme est chargé et exécuté par un système informatique. Selon un sixième aspect, la présente invention vise un support 30 d'informations lisibles par un ordinateur ou un microprocesseur, amovible ou non, conservant des instructions d'un programme informatique, caractérisé en ce qu'il permet la mise en oeuvre du procédé de codage tel que succinctement exposé ci-dessus. Les avantages, buts et caractéristiques particulières de ce dispositif de 2903270 11 codage, de ce système de télécommunication, de ce programme d'ordinateur et de ce support d'informations étant similaires à ceux du procédé de codage, tel que succinctement exposé ci-dessus, ils ne sont pas rappelés ici. D'autres avantages, buts et caractéristiques de la présente invention 5 ressortiront de la description qui va suivre, faite, dans un but explicatif et nullement limitatif, en regard des dessins annexés dans lesquels : - la figure 1 représente, schématiquement, trois images successives d'une séquence vidéo mises en oeuvre dans le cas d'un codage bidirectionnel biprédit, 10 - la figure 2 représente, schématiquement, un mode de réalisation particulier d'un dispositif de codage objet de la présente invention, - la figure 3 représente, sous forme d'un logigramme, des étapes mises en oeuvre dans un mode de réalisation particulier du procédé de codage objet de la présente invention, 15 - les figures 4A, 4B, 5A, 5B et 6 représentent, sous forme de logigrammes, des variantes d'étapes mises en oeuvre au cours de l'une des étapes illustrées en figure 3, - la figure 7 représente, schématiquement, un mode de réalisation particulier d'un dispositif de décodage objet de la présente invention et 20 - la figure 8 représente, sous forme d'un logigramme, des étapes mises en oeuvre dans un mode particulier de réalisation du procédé de décodage objet de la présente invention. Avant de décrire des modes particuliers de réalisation de la présente invention, on en donne, ci-après une présentation générale. 25 L'invention se situe dans le domaine de la transmission vidéo sur un réseau. Elle vise, par exemple, des applications domestiques de transmission depuis un émetteur vers un récepteur. L'émetteur et le récepteur sont, par exemple, des systèmes embarqués potentiellement mobiles ou des systèmes fixes. Du côté de l'émetteur, on prévoit un encodeur, préférentiellement temps 30 réel et, du côté du récepteur, un décodeur correspondant à cet émetteur. Lors de la demande de transmission d'un programme vidéo au récepteur, par exemple lorsqu'un utilisateur veut visualiser ce programme vidéo sur un écran relié au récepteur, une connexion, par exemple sans fil, est créée entre l'émetteur et le récepteur. Un premier échange d'information entre l'émetteur et le récepteur 2903270 12 permet à l'émetteur de connaître la nature du récepteur, ses capacités de traitement et les souhaits de l'utilisateur. Ces informations décrivent, par exemple, le récepteur en termes de capacité de calcul, d'affichage et de décodage. 5 Au cours de la transmission, d'autres informations sont échangées entre l'émetteur et le récepteur afin de mettre à jour, au niveau de l'encodeur, la connaissance des capacités du récepteur en termes de réception, l'émetteur adaptant l'émission d'information en fonction de ces capacités. Au niveau de l'encodeur ou émetteur 200, la présente invention est, 10 par exemple, mise en oeuvre sur une unité multimédia de transmission 201 représentée en figure 2, possédant une unité réseau 202, telle qu'une carte réseau selon le standard de transmission sans fil 802.11a, b ou g, une unité de calcul 203, une unité de stockage temporaire ou mémoire vive 204, une unité de stockage 205 et une unité d'acquisition 206, telle qu'une caméra. 15 Un programme d'ordinateur contenant des instructions implémentant le procédé de codage objet de la présente invention est par exemple stocké en mémoire. Alternativement, ce programme peut être stocké sur un moyen de stockage amovible, tel un CD ou une disquette, et chargé en mémoire RAM au moment de l'exécution du procédé selon l'invention. Ses instructions sont mises 20 en oeuvre par l'unité de calcul 203, afin d'encoder les flux vidéo. Le standard vidéo utilisé est, par exemple, le standard H.264, d'autres standards ou futurs standards vidéo pouvant être utilisés, tels que MPEG-2, MPEG-4, H.263, SVC. L'unité réseau 202 transmet les données compressées sur un réseau sans fil. Ces données sont transmises vers un récepteur implémentant un procédé de 25 décodage objet de la présente invention compatible avec le standard mis en oeuvre par l'émetteur 200. L'unité réseau 202 reçoit, d'autre part, des informations du réseau lui indiquant l'état de celui-ci. Plus précisément, l'unité réseau 202 reçoit la bande passante disponible sur le réseau et le taux de pertes. Selon un mode préféré de 30 réalisation, ces deux informations sont calculées par le récepteur, de manière connue en soi, et transmises à l'émetteur 200. La mise en oeuvre de la présente invention débute par l'acquisition d'une séquence vidéo par l'unité d'acquisition 206. Cette séquence vidéo est ensuite stockée dans l'unité de stockage 205 ou dans l'unité de stockage 2903270 13 temporaire 204. L'unité de calcul 203 met en oeuvre l'encodeur en utilisant l'algorithme stocké dans l'unité de stockage 205. Selon un mode préféré de réalisation, décrit en référence à la figure 3, l'encodeur met en oeuvre un encodage en images B-hiérarchiques tel que décrit 5 dansles standards H.264 et SVC. L'encodage en images B-hiérarchiques fait partie des méthodes d'encodage en boucle fermée. Il débute par la création d'un groupe d'images, connu sous le nom de GOP (acronyme de group of pictures pour groupe d'images) comportant N=2"-' images, au cours d'une étape 301. Cette étape 301 est suivie de l'étape 303, au cours de laquelle on 10 réalise une classification des images en n niveaux de hiérarchie. Lors de cette étape 303, la première image du groupe d'images GOP est affectée au niveau de hiérarchie 1 . On monte ensuite en hiérarchie en multipliant la fréquence temporelle par deux à chaque niveau de hiérarchie, chaque image d'un niveau de hiérarchie x étant à égale distance des deux images les plus proches du 15 niveau x-1 . Puis, au cours d'une étape 305, on initialise une variable k à 1, cette variable k servant au décompte des niveaux de hiérarchie. On détermine ensuite, au cours de l'étape 307, si la valeur de la variable k a atteint le nombre de niveaux de hiérarchie n. 20 Si oui, au cours d'une étape 317, l'algorithme d'encodage s'arrête et on passe à l'encodage du groupe d'images GOP suivant en le créant et en retournant à l'étape 303. Si non, on procède à l'estimation de mouvement pour chaque image du niveau k, au cours d'une étape 309 détaillée en regard des figures 4 à 6, les 25 figures 4A et 4B concernant une première variante relative aux images biprédites, les étapes 5A et 5B, une seconde variante relative aux images biprédites et la figure 6, une troisième variante relative aux images monoprédites. Puis, au cours d'une étape 310, on procède à la compensation de mouvement des blocs de référence. 30 On observe que, lorsque k=1, la seconde image du niveau est prédite seulement à partir de la première image de ce niveau, cette première image ayant été codée soit en mode INTRA (c'est-à-dire non-prédite) si elle est la première de la séquence, soit en mode P (c'est-à-dire prédite à partir d'une seule référence). Lorsque k est supérieur à 1, chaque image du niveau k est 2903270 14 prédite à partir des deux images l'encadrant prises dans le niveau k-1, cas dans lequel le procédé objet de la présente invention opère. Au cours d'une étape 311, on procède au calcul d'un résidu, défini comme la différence entre l'image originale et sa prédiction, puis au cours d'une étape 313, on applique une 5 transformation spatiale de type DCT (acronyme de discrete Cosine transform , pour transformation en cosinus discrète), sur chaque macrobloc de l'image de résidu pour constituer, conjointement avec chaque vecteur de mouvement, le codage du macrobloc à coder. Puis, au cours d'une étape 315, on incrémente k de 1 et on retourne à 10 l'étape 307. Concernant l'étape 309, l'estimation de mouvement d'une image biprédite débute par une étape 400 d'estimation d'état du canal de transmission entre l'émetteur et le récepteur et de détermination d'une valeur p, comprise entre 0 et 1, qui représente le taux de pertes sur le canal de transmission entre 15 l'émetteur et le récepteur. Puis, au cours d'une étape 401 (figure 4A), on procède à l'initialisation des variables suivantes : - X, abscisse d'un macrobloc dans l'image à coder, à la valeur 0 , - Y, ordonnée d'un macrobloc dans l'image à coder, à la valeur 0 , - A(j' y) , l'erreur commise lors de la prédiction du macrobloc courant), à 20 la valeur de A. X et - An,;n , l'erreur minimale commise lors de la prédiction du macrobloc courant, à la valeur A. On observe que A. est une borne maximale de l'erreur, que l'on fixe, par exemple, comme égale au produit du nombre de valeurs que peut prendre un 25 pixel, par exemple 256, par le nombre de pixels dans un macrobloc. On teste ensuite, au cours de l'étape 403, si tous les macroblocs de l'image en cours d'encodage ont été traités. Si c'est le cas, on passe à l'étape 439 qui met fin à la prédiction de mouvement de l'image courante, c'est-à-dire à la fin de l'étape 309. Sinon, on initialise une variable yt_, à -d,,, étape 405, d,, 30 étant la demi hauteur de la zone de recherche des vecteurs de mouvement lors de la recherche de bloc, connu sous le nom anglais de block matching , qui consiste à définir, dans chaque image de référence, une zone de recherche 2903270 15 autour de la position du macrobloc à coder. C'est dans cette zone de recherche que l'on recherche la zone de même taille que le macrobloc à coder, appelée macrobloc de référence , la plus ressemblante au macrobloc à coder. L'étape 405 est suivie d'une étape 407, au cours de laquelle on 5 détermine si la valeur de la variable est strictement inférieure à la valeur d,. Si non, toutes les valeurs possibles de vecteur de mouvement pour le macrobloc courant ont été testées, on passe à l'étape 427 qui met fin au traitement du macrobloc courant et on incrémente la variable X de 1, au cours de l'étape 429. On vérifie, ensuite, lors de l'étape 431, que X ne dépasse pas la valeur L, c'est-à- 10 dire le nombre de macroblocs par ligne de l'image. Si X ne dépasse pas la valeur L, on retourne à l'étape 403. Sinon, X passe à 0, au cours de l'étape 433 et Y est incrémenté de 1 à l'étape 435. On retourne ensuite à l'étape 403. De retour à l'étape 407, si la valeur de la variable y1_, est strictement inférieure à la valeur di,, on passe à l'étape 409, au cours de laquelle on 15 détermine si la coordonnée verticale y,_, correspond à un vecteur pointant sur une zone incluse dans l'image de référence antérieure 125. Si le vecteur de mouvement pointe sur une zone située au dessus de l'image, on passe de l'étape 409 à l'étape 437 au cours de laquelle on incrémente la valeur de y,_,, de 1, et on retourne à l'étape 407. 20 Sinon, on passe à l'étape 411, au cours de laquelle on détermine si le vecteur de mouvement pointe sur une zone située en dessous de l'image, Sv représentant la hauteur de l'image, et, dans ce cas, on passe à l'étape 427 décrite ci-dessus. Sinon, la zone pointée est, en ce qui concerne son ordonnée, dans l'image de référence, et on passe à l'étape 412, au cours de laquelle on 25 initialise la coordonnée horizontale du vecteur de mouvement à la valeur -dh , dh étant la demi-largeur de la zone de recherche des vecteurs de mouvement lors de la recherche de bloc, connu sous le nom anglais de block matching . Lors de l'étape 413, on détermine si la valeur de la variable x,_, est strictement inférieure à la valeur dh , qui est la demi-largeur de la zone de 30 recherche. Si non, on passe à l'étape 437 décrite par ailleurs. Si oui, on passe aux étapes 415 et 417, similaires aux étapes 409 et 411 mais qui s'appliquent à la coordonnée horizontale. Si le vecteur de mouvement pointe sur une zone se 2903270 16 situant à gauche de l'image, l'étape 415 est suivie de l'étape 425 qui incrémente la variable x,_, de 1. On retourne ensuite à l'étape 413. Si le vecteur de mouvement pointe sur une zone se situant à droite de l'image, l'étape 417 est suivie de l'étape 437. Si la zone appartient à l'image antérieure 125, on passe à 5 l'étape 405', les étapes 405' à 417' et 437' étant identiques aux étapes 405 à 417 et 437 mais appliquées à la seconde image de référence, l'image postérieure 140, si ce n'est que les résultats négatifs des étape 407' et 411' différent de celles des étapes 407 et 411 en ce qu'elles amènent à un retour à l'étape 425 qui incrémente la variable x,_, plutôt que, pour le premier macrobloc de référence, de 10 passer à un autre macrobloc, au cours des étapes 427 et suivantes. L'étape 417' est suivie de l'étape 419, au cours de laquelle on procède au choix conjoint des deux vecteurs de mouvement qui associent le macrobloc courant à deux macroblocs de référence, l'un, dit macrobloc de référence primaire, dans l'image de référence antérieure et l'autre, dit macrobloc de 15 référence secondaire, dans l'image de référence postérieure. Pour cela, dans un mode de réalisation préférentiel, on utilise une métrique prenant en compte l'état du canal, par exemple sous la forme d'un indicateur p de la qualité du canal de transmission, cet indicateur p étant, par exemple, la probabilité qu'un macrobloc de référence soit perdu. Dans un mode particulier de réalisation du procédé objet 20 de la présente invention, la métrique utilisée, dont on cherche le minimum pour déterminer les deux vecteurs de mouvement associés au macrobloc courant est : ~(xr-I ,Yr-I ,zr+l >Yt+l) _ / (+ _ Y l (Ar-1-+t + Ar+Ht l / 2 + L. g (pl L J` MB[(X,Y),t] MB[(X,Y),t] J T ` J MB[(X,Y),t] , équation (3) dans laquelle : - le premier terme à droite du signe _ représente 25 l'erreur commise lors de la prédiction du macrobloc de coordonnées (X,Y) de l'image courante 105 par une zone située à la position (X+x,_, , Y+ y,_,) dans l'image antérieure 125 et par une seconde zone située à la position (X+ x,+, , Y+ y,+,) dans l'image postérieure 140 et - le deuxième terme à droite du signe + représente 30 l'erreur commise lorsque la zone située à la position de coordonnées (X+x,_, , Y+ y,_,) est remplacée par la zone située à la position de coordonnées (X+x,+, , Y+ y,+,) en cas de perte, et inversement. 2903270 17 p est une valeur comprise entre 0 et 1 et représente le taux de pertes sur le canal de transmission entre l'émetteur et le récepteur. On observe que l'on considère, dans ce mode de réalisation, un modèle de pertes de type Bernoulli, f(x) et g(x) étant des fonctions croissantes de 5 x. Par exemple, on peut prendre f(x)=g(x)=x. D'autres modèles de canaux peuvent aussi être utilisés et notamment les modèles à mémoire, tels que le modèle de Elliot-Gilbert, modèle de Markov à deux états, un état reçu et un état perdu . Deux paramètres caractérisent ce modèle : la probabilité PEG de tomber dans l'état reçu depuis l'état 10 perdu et la probabilité qEG de tomber dans l'état perdu depuis l'état reçu . Dans ce cas, les fonctions f et g décrites ci-dessus sont remplacées par des fonctions de PEG et qEG. Concernant la métrique de l'équation (3), on remarque que, si le taux de pertes est faible, le premier terme est prépondérant et les macroblocs primaire 15 et secondaire sont choisis avec peu de contrainte de ressemblance entre eux. On privilégie alors le taux de compression et la qualité de l'image décodée sans perte. Si le taux de pertes est élevé, le deuxième terme devient prépondérant et on privilégie la résistance aux pertes de paquets. Les macroblocs primaire et secondaire sont alors choisis de sorte que si l'un d'entre eux était perdu, il serait 20 efficacement remplacé par l'autre. L'étape de calcul de la métrique est suivie par l'étape 421, au cours de laquelle on compare l'erreur courante à la valeur minimale de l'erreur pour ce macrobloc. Si l'erreur est supérieure à l'erreur minimale, on retourne à l'étape 425'. Sinon, on passe à l'étape 423, A,,,;,, prend la valeur de la dernière erreur 25 calculée et on conserve les coordonnées des deux vecteurs de mouvement (x(X,Y) y(X,Y) ) et (x(X' y(opyt+~X,Y) ), correspondant respectivement au opt,! ~ opt,1-I opta+~ vecteur de mouvement entre le macrobloc courant et le macrobloc de référence primaire et entre le macrobloc courant et le macrobloc de référence secondaire. L'étape 423 est suivie de l'étape 425'. 30 Une variante de mise en oeuvre de l'étape 309 est illustrée en figures 5A et 5B. Elle consiste à traiter séquentiellement les deux images de référence. La première image de référence est traitée de manière strictement identique à une image bidirectionnelle classique. En comparaison avec la description de la 2903270 18 figure 4A, dans la figure 5A on a supprimé toutes les étapes relatives à l'image de référence postérieure 140. Cependant, l'étape 439 est remplacée par l'étape 539 qui consiste à entamer le traitement du deuxième macrobloc de référence, traitement illustré en figure 5B. En figure 5A, l'étape 417 est, dans cette variante, 5 suivie de l'étape 519 qui consiste à calculer une somme de valeurs absolues des différences classique entre le macrobloc à coder et sa prédiction. L'étape 519 est suivie de l'étape 421. Les coordonnées du vecteur optimal (xop 't'?ä yop 2,) sont ainsi conservées pour chaque macrobloc de l'image courante. La deuxième image de référence est traitée de manière similaire à la 10 première, comme exposé en figure 5B. A la suite de l'étape 417, l'étape 519' est, cependant, différente de l'étape 519, en ce qu'on y réutilise l'équation (3), et la valeur de l'erreur 4[ntin' et les coordonnées (x(Xopt-,1,y(opt,X[-Y>1 ) calculée dans la procédure exposée en figures 5A et 5B. L'étape 519' est suivie de l'étape 421 et l'étape 439 correspond à la fin de l'étape 309 illustrée en figure 3. 15 Une autre variante de mise en oeuvre de l'étape 309 est illustrée en figure 6. Elle consiste à traiter une seule image de référence en recherchant les similarités entre un macrobloc de référence dit primaire et, d'une part, le macrobloc à coder et, d'autre part, un macrobloc secondaire correspondant à une image précédant l'image de référence. Dans un mode de mise en oeuvre préféré 20 explicité plus loin, le macrobloc secondaire est localisé aux mêmes coordonnées que le macrobloc de référence primaire. Néanmoins, selon des variantes de mise en oeuvre, d'autres localisations du macrobloc secondaire peuvent être choisies, à condition que le décodeur puisse facilement retrouver ledit macrobloc. Ainsi, on choisit le macrobloc primaire de manière à ce qu'il soit 25 proche du macrobloc à coder et qu'il soit proche du macrobloc secondaire qui servira pour le masquage de perte si le macrobloc primaire est perdu. En tenant compte de la probabilité de perte sur le canal de transmission, le macrobloc de référence primaire est d'autant plus proche du macrobloc à coder que la probabilité de perte est faible. 30 L'image de référence est traitée de manière strictement identique à une image bidirectionnelle classique. En comparaison avec la description de la figure 5B, dans la figure 6, l'étape 417, dans cette variante, suivie de l'étape 619 qui consiste à calculer, d'abord, une somme de valeurs absolues des différences 2903270 19 classique entre le macrobloc à coder et sa prédiction, puis à utiliser l'une des équations (5), (6) ou (7) décrite plus loin, et à minimiser la valeur de l'erreur Ot-'in en fonction des coordonnées (x~optX'a -1,.y(opt,;t -1 ) erreur calculée dans la m procédure exposée en figure 6. L'étape 619 est suivie de l'étape 421 et l'étape 5 439 correspond à la fin de l'étape 309 illustrée en figure 3. On décrit, ci-dessous, un mode de réalisation des procédés de codage et de décodage objets de la présente invention, qui peut être mis en oeuvre par les dispositifs de codage et de décodage objets de la présente invention. Ce mode de réalisation particulier concerne les macroblocs inter, ou les macroblocs 10 bidirectionnels n'ayant qu'un vecteur de mouvement. Par exemple, dans les standards H.264 et SVC, un macrobloc bidirectionnel peut n'avoir qu'un seul vecteur de mouvement. Les macroblocs bidirectionnels sont alors très similaires aux macroblocs inter que l'on retrouve aussi dans ces deux standards. En général, si 15 l'image de référence est perdue, le macrobloc prédit ne peut être reconstruit. On considérera ici que les pertes de l'image de référence ont été masquées et qu'ainsi on peut tenter de décoder les macroblocs prédits. Une recherche classique de bloc, connu sous le nom anglais de block matching , minimise l'erreur suivante : 20 min Of Hr _ûMB[z,t] ~t- MB[z, t] ù P ef (4) Conformément à la présente invention, dans ce mode de réalisation, on prend en compte les pertes éventuelles et le masquage de pertes dans le choix d'un vecteur de mouvement pour un macrobloc inter et pour un macrobloc bidirectionnel n'ayant qu'un vecteur de mouvement avant. Par exemple, la 25 recherche de macrobloc de référence minimise l'équation suivante : min O I-, MB X,Y r MB[(X,Y),t]ùP(er (X Y) z f MB[(X, Y), t] ù PX r) +p (5) équation dans laquelle : - MB[(X,Y),t] est le macrobloc à la position (X,Y) dans l'image courante à coder, I-I -II 30 - PX,,Y,) est la zone de référence à la position (X,Y') de l'image immédiatement antérieure et 2903270 20 -Px,,,y,,) est la zone d'une x-ième image antérieure ou postérieure (selon que x est négatif ou positif, respectivement) à la position (X",Y') utilisée pour masquer la .,, perte de la zone PXäYä) , en effectuant une simulation du masquage de perte utilisé par le décodeur. 5 Dans certains modes de réalisation, on peut simplifier l'équation (5) en considérant que la méthode de masquage de pertes consiste à remplacer une zone perdue par la zone située à la même position spatiale dans l'image précédente, donc dans ce cas : X" = X' et Y" = Y' . La recherche du bloc de référence consiste alors à minimiser la 10 métrique définie par l'équation (6) ci-dessous : -' m1n OMB x,Y MB[(X,Y),t]ûPx ,r) MB[(X, Y), t] û P x,,r) +p (6) Ici, on remplace les zones perdues de l'image immédiatement antérieure par l'une des zones de la deuxième ou antépénultième image antérieure. 15 Dans d'autres modes de réalisation dans lesquels un macrobloc bidirectionnel prédit n'a qu'un vecteur de mouvement arrière, l'équation (5) est peu modifiée en : mm +' (X, Y) MB[x,Y),t ] = (1 û p) t+1->t MB[(X,Y),t] û Px.,r) t+i-3/ MB[(X,Y),t]ùPxäYä) +p (7) Dans ce cas, on remplace un macrobloc perdu par toute zone obtenue 20 par masquage de pertes en utilisant l'une des zones reçues de l'image courante ou d'autres images de son voisinage. Le récepteur est mis en oeuvre par une unité de réception, ou récepteur, 700 représentée en figure 7. Celui-ci est composé d'une unité réseau 708 lui permettant de recevoir les données vidéo et de transmettre des 25 informations sur l'état du réseau, d'une mémoire vive RAM 709, d'une unité de calcul 710 lui permettant de mettre en oeuvre l'algorithme de décodage implémentant le procédé de décodage objet de la présente invention et de calculer des informations sur l'état du réseau comme le taux de perte P, d'une unité de stockage 711 et d'une unité d'affichage 712. 30 Le mode de réalisation particulier du procédé de décodage objet de la présente invention mis en oeuvre par le récepteur 700 comporte les étapes 2903270 21 décrites en figure 8. Cette procédure débute, à l'étape 801, par l'initialisation de la variable n à 0, cette variable n servant au décompte des macroblocs de l'image à décoder. On détermine ensuite, au cours d'une étape 803, si la valeur n est strictement inférieure au nombre de macroblocs dans l'image en cours de 5 décodage. Si non, on arrête la procédure de décodage. Si oui, on détermine, au cours d'une l'étape 805, le nombre de zones de référence reçues. Dans le cas des images bi-prédites, si les deux zones ont été reçues, on procède à un décodage classique, au cours d'une étape 811, on passe au macrobloc suivant, étape 815 et on retourne à l'étape 803. 10 Si une et une seule des zones de référence a été perdue, on passe à l'étape 807 au cours de laquelle on compare la valeur du dernier taux de pertes envoyé par le récepteur à l'émetteur à un taux de pertes maximal dans l'objectif de vérifier que l'encodeur à bien pris en compte un taux de pertes suffisamment important pour mettre en oeuvre l'invention lors du choix du vecteur de 15 mouvement. En effet, il est inutile de remplacer la zone perdue par la zone reçue de l'autre image de référence si l'encodeur n'a pas fait en sorte que les deux zones de référence soient similaires. Si la valeur de P est supérieure à Pmax, on met en oeuvre une méthode de masquage de pertes classique, au cours d'une étape 813, telle que 20 celle décrites ci-dessus, dont on rappelle différentes formes : - masquage de pertes spatial, méthode dans laquelle on remplace le macrobloc de référence perdu par une interpolation obtenue à partir des blocs voisins, que l'on considère comme similaires au bloc perdu, - masquage de pertes temporel, méthode dans laquelle on 25 remplace le macrobloc de référence perdu par une interpolation obtenue à partir des vecteurs de mouvement des macroblocs voisins du macrobloc perdu et - remplacement du macrobloc de référence perdu par un macrobloc de référence reçu. 30 On observe que l'étape 807 est optionnelle. Si la valeur de P n'est pas supérieure à Pmax, on remplace la zone perdue de l'une des images de référence par la zone reçue de l'autre image de référence, au cours d'une étape 809 et on retourne à l'étape 815. Si on détermine, au cours de l'étape 805, qu'aucune des zones de 2903270 22 référence n'a été reçue, on met en oeuvre une méthode de masquage de pertes classique au cours de l'étape 813. La présente invention ne se limite pas aux modes de réalisation décrits et représentés mais s'étend, bien au contraire, à tous les procédés et dispositifs 5 qui déterminent un macrobloc de référence en fonction non seulement d'un macrobloc de l'image à coder, mais aussi d'un macrobloc secondaire. Par exemple, la présente invention peut être mise en oeuvre sans tenir compte d'une mesure actualisée de l'état du canal de transmission entre le codeur et le décodeur. 10 De même, la présente invention s'applique à tout type de détermination d'un macrobloc perdu en fonction d'au moins un macrobloc reçu, notamment les déterminations proposées dans les méthodes dites de concealment . De même, la présente invention peut être mise en oeuvre, dans un 15 système de codage bi-prédictif en sélectionnant, de manière classique l'un des macroblocs de référence et en sélectionnant l'autre macrobloc de référence en fonction du premier macrobloc de référence et du macrobloc à coder. Dans un système de codage mono-prédictif, la présente invention peut être mise en oeuvre en sélectionnant un macrobloc de référence en fonction de plusieurs 20 autres macroblocs d'au moins une image antérieure. REVENDICATIONS 1. Procédé de codage d'une séquence d'images (105, 125, 140), caractérisé en ce qu'il comporte : - pour au moins une image à coder, pour au moins un macrobloc à coder de ladite image à coder, une étape (309, 421, 423) de sélection d'au moins un macrobloc de référence, dit primaire , d'une image de référence en fonction d'un autre macrobloc dit secondaire , selon un critère de similarité conjointe entre le macrobloc primaire et le macrobloc à coder et entre le macrobloc primaire et le macrobloc secondaire et - une étape (310) de détermination d'un vecteur de mouvement entre le macrobloc primaire et ledit macrobloc à coder. 2. Procédé selon la revendication 1, caractérisé en ce que, au cours de l'étape de sélection (309, 421, 423), on met en oeuvre un critère de sélection variable en fonction de la différence entre le macrobloc de référence primaire et le macrobloc secondaire. 3. Procédé selon l'une quelconque des revendications 1 ou 2, caractérisé en ce que, au cours de l'étape de sélection (309, 421, 423), on sélectionne conjointement les macroblocs primaire et secondaire. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comporte une étape (400) d'estimation d'état d'un canal de transmission, l'étape de sélection (309, 421, 423) d'au moins un macrobloc de référence primaire mettant en oeuvre le résultat de ladite étape d'estimation d'état du canal de transmission. 5. Procédé selon la revendication 4, caractérisé en ce que, au cours de l'étape de sélection (309, 421, 423), on met en oeuvre un critère de sélection déterminant une erreur entre le macrobloc de référence primaire et le macrobloc à coder, ledit critère de sélection variant en fonction de l'état du canal de transmission. 6. Procédé selon l'une quelconque des revendications 4 ou 5, caractérisé en ce que, au cours de l'étape d'estimation d'état du canal de transmission (400), on estime un taux de perte sur ledit canal. 7. Procédé selon l'une quelconque des revendications 4 à 6, caractérisé en ce que, au cours de l'étape de sélection (309, 421, 423), on 2903270 24 recherche le macrobloc de référence primaire pour lequel la somme, d'une part, d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder multiplié par une estimation de probabilité de bonne réception de l'image de référence et, d'autre part, une mesure de différence entre le 5 macrobloc de référence primaire et le macrobloc secondaire multiplié par une estimation de probabilité de perte de l'image de référence, est minimale. 8. Procédé selon l'une quelconque des revendications 4 à 6, caractérisé en ce que, au cours de l'étape de sélection (309, 421, 423), on recherche conjointement le macrobloc de référence primaire et le macrobloc 10 secondaire pour lesquels la somme, d'une part, du produit d'une estimation de probabilité de bonne réception de l'image de référence par la somme d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder et d'une mesure de différence entre le macrobloc secondaire et le macrobloc à coder et, d'autre part, le produit d'une mesure de différence entre le 15 macrobloc de référence primaire et le macrobloc secondaire par une estimation de probabilité de perte de l'image de référence, est minimale. 9. Procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce qu'il comporte une étape de codage (309 à 313) d'images mono-prédites comportant ladite étape de sélection (309) d'au moins un 20 macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc d'une image antérieure à l'image dans laquelle se trouve le macrobloc de référence primaire. 10. Procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce qu'il comporte une étape de codage (309 à 313) d'images biprédites comportant ladite étape de sélection (309) d'au moins un macrobloc de référence primaire, l'image comportant le macrobloc de référence primaire et l'image comportant le macrobloc secondaire encadrant l'image à coder. 11. Procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce qu'il comporte une étape de codage (309 à 313) d'images 30 mono-prédites comportant ladite étape de sélection (309) d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc déterminé par simulation d'une procédure de masquage de la perte du macrobloc primaire. 12. Procédé selon l'une quelconque des revendications 1 à 11, 2903270 25 caractérisé en ce que, au cours de l'étape (309, 421, 423) de sélection, on sélectionne le macrobloc de référence primaire en fonction d'un macrobloc secondaire possédant les mêmes coordonnées que le macrobloc de référence primaire. 5 13. Dispositif de codage d'une séquence d'images, caractérisé en ce qu'il comporte : - un moyen de sélection (203, 204) adapté, pour au moins une image à coder, pour au moins un macrobloc à coder de ladite image à coder, à sélectionner au moins un macrobloc de référence, dit primaire , d'une image 10 de référence en fonction d'un autre macrobloc dit secondaire , selon un critère de similarité conjointe entre le macrobloc primaire et le macrobloc à coder et entre le macrobloc primaire et le macrobloc secondaire et - un moyen de détermination (203, 204) d'un vecteur de mouvement entre le macrobloc primaire et ledit macrobloc à coder. 15 14. Dispositif selon la revendication 13, caractérisé en ce que le moyen de sélection (203, 204) est adapté à mettre en oeuvre un critère de sélection variable en fonction de la différence entre le macrobloc de référence primaire et le macrobloc secondaire. 15. Dispositif selon l'une quelconque des revendications 13 ou 14, 20 caractérisé en ce que le moyen de sélection (203, 204) est adapté à sélectionner conjointement les macroblocs primaire et secondaire. 16. Dispositif selon l'une quelconque des revendications 13 à 15, caractérisé en ce qu'il comporte un moyen d'estimation (203, 204) d'état d'un canal de transmission, le moyen de sélection (203, 204) d'au moins un macrobloc 25 de référence primaire mettant en oeuvre une estimation fournie par ledit moyen d'estimation d'état du canal. 17. Dispositif selon la revendication 16, caractérisé en ce que le moyen de sélection (203, 204) est adapté à mettre en oeuvre un critère de sélection déterminant une erreur entre le macrobloc de référence primaire et le 30 macrobloc à coder, ledit critère de sélection variant en fonction de l'état du canal de transmission. 18. Dispositif selon l'une quelconque des revendications 16 ou 17, caractérisé en ce que le moyen d'estimation (203, 204) d'état du canal de transmission est adapté à estimer un taux de perte sur ledit canal. 2903270 26 19. Dispositif selon l'une quelconque des revendications 16 à 18, caractérisé en ce que le moyen de sélection (203, 204) est adapté à rechercher le macrobloc de référence primaire pour lequel la somme, d'une part, d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à 5 coder multiplié par une estimation de probabilité de bonne réception de l'image de référence et, d'autre part, une mesure de différence entre le macrobloc de référence primaire et le macrobloc secondaire multiplié par une estimation de probabilité de perte de l'image de référence, est minimale. 20. Dispositif selon l'une quelconque des revendications 16 à 18, 10 caractérisé en ce que le moyen de sélection (203, 204) est adapté à rechercher conjointement le macrobloc de référence primaire et le macrobloc secondaire pour lesquels la somme, d'une part, du produit d'une estimation de probabilité de bonne réception de l'image de référence par la somme d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc à coder et 15 d'une mesure de différence entre le macrobloc secondaire et le macrobloc à coder et, d'autre part, le produit d'une mesure de différence entre le macrobloc de référence primaire et le macrobloc secondaire par une estimation de probabilité de perte de l'image de référence, est minimale. 21. Dispositif selon l'une quelconque des revendications 13 à 20, 20 caractérisé en ce qu'il comporte un moyen de codage (203, 204) d'images mono-prédites comportant ledit moyen de sélection (203, 204) d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc d'une image antérieure à l'image dans laquelle se trouve le macrobloc de référence primaire. 22. Dispositif selon l'une quelconque des revendications 13 à 20, 25 caractérisé en ce qu'il comporte un moyen de codage (203, 204) d'images biprédites comportant ledit moyen de sélection (203, 204) d'au moins un macrobloc de référence primaire, l'image comportant le macrobloc de référence primaire et l'image comportant le macrobloc secondaire encadrant l'image à coder. 23. Dispositif selon l'une quelconque des revendications 13 à 22, 30 caractérisé en ce qu'il comporte un moyen de codage (203, 204) d'images mono-prédites comportant ledit moyen de sélection (203, 204) d'au moins un macrobloc de référence primaire, le macrobloc secondaire étant un macrobloc obtenu par simulation d'une procédure de masquage de la perte du macrobloc primaire. 24. Dispositif selon l'une quelconque des revendications 13 à 23, 2903270 27 caractérisé en ce que le moyen de sélection (203, 204) est adapté à sélectionner le macrobloc de référence primaire en fonction d'un macrobloc secondaire possédant les mêmes coordonnées que le macrobloc de référence primaire. 25. Système de télécommunication comprenant une pluralité de 5 dispositifs terminaux reliés à travers un réseau de télécommunications, caractérisé en ce qu'il comprend au moins un dispositif terminal équipé d'un dispositif de codage selon l'une quelconque des revendications 13 à 24 et au moins un dispositif terminal équipé d'un dispositif de décodage adapté à reconstruire des macroblocs d'images à partir d'au moins un macrobloc de 10 référence d'une image de référence, et, lorsqu'un macrobloc de référence a été perdu, à substituer au macrobloc perdu, un autre macrobloc de référence. 26. Programme d'ordinateur chargeable dans un système informatique, ledit programme contenant des instructions permettant la mise en oeuvre du procédé de codage selon l'une quelconque des revendications 1 à 12, 15 lorsque ce programme est chargé et exécuté par un système informatique. 27. Support d'informations lisibles par un ordinateur ou un microprocesseur, amovible ou non, conservant des instructions d'un programme informatique, caractérisé en ce qu'il permet la mise en oeuvre du procédé de codage selon l'une quelconque des revendications 1 à 12.