Brevet FR2944937A1 — publié le 20101029

La présente invention se rapporte à un procédé et à un dispositif de restauration d'une séquence vidéo par masquage de zones perdues. La restauration de séquences vidéo codées par bloc est l'action de compléter des blocs perdus lors de la transmission d'une image courante. Une image de la séquence est découpée en blocs carrés de pixels dénommés macro-blocs (� macroblock �). Un macro-bloc sera désigné dans toute la suite par le sigle MB. On considère ici les séquences vidéo codées par blocs avec un codage prédictif tel que celui défini par le consortium Moving Picture Experts Group (MPEG), comme par exemple dans les normes MPEG4 - Partie 2 et H.264. En pratique, un MB est généralement un carré de 16 pixels de coté (avec des possibilités de sous-blocs notamment pour les formats MPEG4 et H.264). Dans de telles séquences les MBs d'une image courante sont calculés par translation relative à partir des MBs d'une ou de plusieurs images de référence précédemment décodées. Ce procédé est appelé procédé par compensation de mouvement. Dans l'image courante chaque MB est ainsi associé à un MB d'une image de référence par l'intermédiaire d'un vecteur de translation appelé vecteur de mouvement. L'approximation étant imparfaite en raison notamment de la complexité des mouvements réels, un résidu de codage vient s'ajouter à la compensation du mouvement pour prendre en compte l'erreur de prédiction entre les deux MBs. Ce résidu est obtenu par soustraction du MB de l'image courante du signal d'image décodé du MB associé dans l'image de référence et est quasiment nul si le mouvement entre l'image de référence et l'image courante est nul ou correctement approché par une translation. L'ensemble des vecteurs de mouvement obtenu définit, pour une image, un champ de vecteurs de mouvement. Le calcul de chaque vecteur de mouvement se fait au niveau du codeur, ce codeur étant programmé selon un algorithme permettant la détermination de chacun de ces vecteurs de sorte qu'il minimise le résidu associé, ceci afin d'obtenir une compression optimale du signal. Il arrive cependant qu'au cours de la transmission du signal certaines informations soient perdues, en particulier au niveau des vecteurs de mouvement. De telles pertes entraînent l'impossibilité de reconstituer certains MBs, ces MBs étant alors des blocs qui sont perdus. Il existe déjà des procédés d'interpolation selon lesquels chaque MB perdu est reconstitué en recopiant un MB d'une image de référence, pointé par un vecteur de mouvement obtenu par interpolation à partir de vecteurs de mouvements d'autres MBs de l'image. Ces procédés sont connus sous le nom générique de masquage d'erreur temporel (en anglais, � temporal error concealment �). Ces procédés sont relativement performants dans les zones de mouvement homogène, mais donnent des résultats inexacts dans des zones de l'image où des blocs voisins présentent des vecteurs de mouvement non homogènes. L'invention vise à fournir un procédé de restauration de ces blocs perdus qui soit à la fois plus précis et plus fiable. Elle propose à cet effet un procédé de restauration d'une séquence vidéo comprenant une pluralité d'images dont au moins l'une d'elles, appelée image à restaurer, comporte au moins un bloc de pixels à restaurer ainsi que plusieurs autres blocs de pixels dont au moins certains sont associés à un vecteur de mouvement respectif, chaque vecteur de mouvement faisant correspondre le bloc de pixels auquel il est associé à un bloc de pixels d'une image de référence de la séquence vidéo, caractérisé en ce qu'il comporte les étapes suivantes : - identification, dans l'image à restaurer, de blocs de pixels qui sont associés à un vecteur de mouvement ; - détermination, pour chaque bloc identifié, d'une zone de confiance représentative de la tolérance de sélection du vecteur de mouvement associé au bloc identifié ; - obtention d'un vecteur de mouvement de restauration à partir d'au moins certaines de ces zones de confiance ainsi déterminées ; et - restauration dudit bloc à restaurer à partir dudit vecteur de mouvement de restauration. Les zones de confiance ainsi déterminées, donnent une information sur la latitude de sélection de chacun des vecteurs de mouvement de façon à obtenir un vecteur de mouvement de restauration qui soit le plus fiable possible et qui minimise le résidu pour optimiser les performances de la compression. En effet, la détermination de zones de confiance autour des vecteurs de mouvement des blocs identifiés permet d'isoler des zones préférentielles pour réaliser l'interpolation du vecteur de mouvement manquant. Ceci permet d'obtenir un vecteur de mouvement de restauration proche du mouvement vrai (c'est-à-dire le mouvement qui se produit réellement devant le capteur d'images). Ce procédé de restauration est également robuste et peu susceptible d'être perturbé par le bruit de la séquence vidéo qui impacte sur le calcul des 20 vecteurs de mouvement. De plus, la présence de zones de confiance permet de n'exploiter que l'information utile des vecteurs de mouvement qui, pris isolément, apparaissent parfois incohérents par rapport au mouvement vrai en raison du fait que la priorité est donnée à la minimisation des coûts de compression 25 (c'est-à-dire du résidu associé) et non à la fiabilité du vecteur par rapport au mouvement vrai. Selon une autre caractéristique, l'étape de détermination d'une zone de confiance pour chaque bloc identifié comporte une étape d'obtention d'un modèle représentatif de la similarité du bloc identifié avec d'autres blocs de 30 pixels, chaque modèle étant défini par au moins un coefficient. La reconstitution (au niveau du décodeur) d'un modèle représentatif de la similarité lors de la restauration des images permet ainsi d'obtenir des informations sur l'environnement spatial des blocs de pixel pour en déterminer les zones de confiances correspondantes. Selon d'autres caractéristiques : - le modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels est basé sur le calcul de la somme de la valeur absolue des différences entre ledit bloc identifié et chaque dit autre bloc ; et/ou - lesdits autres blocs de pixels présentent au moins certains pixels en commun avec ledit bloc de pixel identifié correspondant ; Ainsi, ce modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels caractérise l'image a restaurer localement autour du bloc identifié. Selon d'autres caractéristiques : - ledit au moins un coefficient de chaque modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels est obtenu par la 15 méthode des moindres carrés ; et/ou - chaque modèle présente la forme d'un paraboloïde ; Avantageusement, le modèle est caractérisé par un nombre réduit de coefficients dont le calcul est rapide. Selon d'autres caractéristiques : 20 - chaque zone de confiance est représentative de la forme du modèle correspondant ; et/ou - chaque zone de confiance est délimitée par une ellipse. Selon une autre caractéristique, ladite étape d'obtention d'un vecteur de mouvement de restauration comporte les étapes de : 25 - détermination, dans un espace de paramètres où sont représentés les vecteurs de mouvement et les zones de confiance, d'au moins une zone d'interpolation issue d'au moins certaines de ces zones de confiance ; et - détermination d'un vecteur de mouvement de restauration à partir de ladite au moins une zone d'interpolation. 30 Ainsi, le vecteur de mouvement obtenu est cohérent avec l'ensemble des zones de confiance déterminées pour les blocs identifiés. Selon une autre caractéristique, l'étape de détermination de ladite au moins une zone d'interpolation comporte l'étape d'incrémenter chaque pixel de l'espace de paramètres lorsqu'il est situé dans une zone de confiance et de ne retenir comme zone(s) d'interpolation que la ou les zones de cet espace dont la valeur des pixels dépasse une valeur de seuil prédéterminée. Ainsi, l'obtention de la ou des zones d'interpolation est simple et ne nécessite aucun calcul supplémentaire. Selon d'autres caractéristiques : - l'étape de détermination du vecteur de mouvement de restauration comporte, pour chaque zone d'interpolation, une étape de détermination d'un vecteur d'interpolation associé ; et/ou - les coordonnées de chaque vecteur d'interpolation sont obtenues par calcul du barycentre de ladite zone d'interpolation correspondante. Ainsi, chaque vecteur d'interpolation est obtenu de manière systématique et avec un coût calculatoire minimal. Selon une autre caractéristique, l'étape de détermination du vecteur de mouvement de restauration comporte, s'il existe plusieurs zones d'interpolation, une étape de combinaison desdits vecteurs d'interpolation correspondants. Ainsi, les mouvements complexes peuvent être pris en compte. Selon une autre caractéristique, parmi les blocs identifiés au cours de l'étape d'identification, au moins certains d'entre eux sont voisins du bloc de pixels à restaurer. Ainsi, les caractéristiques locales de l'image à restaurer sont prises 25 en compte. Selon d'autres caractéristiques : - l'étape d'identification est réalisée, pour au moins certains des blocs, dans une fenêtre de recherche de taille prédéterminée autour du bloc à restaurer ; et/ou 30 - l'étape d'identification de blocs comporte une étape de normalisation des vecteurs de mouvement associés. Dans le même but que celui indiqué plus haut, la présente invention concerne également un dispositif de restauration d'une séquence vidéo comprenant une pluralité d'images dont au moins l'une d'elles, appelée image à restaurer, comporte au moins un bloc de pixels à restaurer ainsi que plusieurs autres blocs de pixels dont au moins certains sont associés à un vecteur de mouvement respectif, chaque vecteur de mouvement faisant correspondre le bloc de pixels auquel il est associé à un bloc de pixels d'une image de référence de la séquence vidéo, caractérisé en ce qu'il comporte : - des moyens pour identifier, dans l'image à restaurer, des blocs qui 10 sont associés à un vecteur de mouvement ; - des moyens pour déterminer, pour chaque bloc identifié, une zone de confiance représentative de la tolérance de sélection du vecteur de mouvement associé au bloc identifié ; - des moyens pour obtenir un vecteur de mouvement de 15 restauration à partir d'au moins certaines de ces zones de confiance ainsi déterminées ; et - des moyens pour restaurer ledit bloc à restaurer à partir dudit vecteur de mouvement de restauration. Toujours dans le même but, la présente invention vise aussi un 20 moyen de stockage d'informations, lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, caractérisé en ce qu'il permet la mise en oeuvre d'un procédé de restauration tel qu'exposé ci-dessus. Toujours dans le même but, la présente invention vise aussi un 25 produit programme d'ordinateur, pouvant être chargé dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions pour mettre en oeuvre un procédé de restauration tel qu'exposé ci-dessus, lorsque ce programme est chargé et exécuté par l'appareil programmable. Les caractéristiques particulières et les avantages du dispositif de 30 restauration, du moyen de stockage d'informations et du produit programme d'ordinateur étant similaires à ceux du procédé de restauration, ils ne sont pas rappelés ici. L'exposé de l'invention sera maintenant poursuivi par la description détaillée d'un exemple de réalisation, donnée ci-après à titre illustratif mais non limitatif, en référence aux dessins annexés, sur lesquels : - la figure 1 est un organigramme illustrant les principales étapes 5 d'un procédé de restauration d'une séquence vidéo conforme à la présente invention, dans un mode particulier de réalisation ; - la figure 2 représente de façon schématique l'identification de blocs autour du bloc de pixels à restaurer ; - la figure 3 illustre pour trois blocs de pixels d'une image les 10 valeurs de matrices de similarité à partir desquelles sont obtenues des zones de confiance pour chacun de ces blocs ; - la figure 4 présente une vue schématique illustrant un espace de paramètres dans lequel sont représentés les vecteurs de mouvement des blocs identifiés pour restaurer un bloc perdu ainsi que leurs zones de confiance 15 respectives ; et - la figure 5 représente de façon schématique un mode particulier de réalisation d'un dispositif susceptible de mettre en oeuvre la présente invention. Dans la présente description, les séquences vidéo sont codées par 20 blocs en mode � P � avec un codage prédictif tel que celui défini par le consortium Moving Picture Experts Group (MPEG), comme par exemple dans les normes MPEG4 - Partie 2 et H.264. Chaque MB est ici un carré de 16 pixels de côté (avec des possibilités de sous-blocs notamment pour les formats MPEG 4 et H.264). 25 Préalablement à la présentation du procédé de restauration selon l'invention, on va rappeler ici plus en détail le principe de fonctionnement du procédé d'obtention d'images par compensation de mouvement au niveau du codage de la séquence d'images. Comme on l'a vu précédemment, un tel procédé consiste à associer 30 un MB de l'image courante à un MB d'une image antérieure par l'intermédiaire d'un vecteur de mouvement et de son résidu. Il est important de chercher à minimiser le résidu pour chaque bloc codé par compensation de mouvement, car cela conditionne la qualité de la compression qui sera réalisée au niveau du codeur. En effet, plus l'énergie du signal de résidu (l'énergie peut être calculée comme étant égale à sa variance par exemple) est faible, plus il pourra être compressé. Un exemple d'algorithme permettant de déterminer de façon optimale le vecteur de mouvement minimisant le résidu associé est basé sur l'étude de la similarité du bloc de l'image courante à coder avec des blocs des images de référence, chaque bloc d'images de référence étant associé à un vecteur de mouvement candidat. Le codeur cherche ainsi un vecteur de mouvement parmi plusieurs vecteurs de mouvement candidats tel que le bloc pointé de l'image de référence soit le plus proche possible du bloc à coder de l'image courante. Il est à noter que les vecteurs de mouvement peuvent être calculés avec une précision sub-pixel : la précision est de '/2 pixel pour la norme MPEG4 - Partie 2 et de 1/4 de pixel pour la norme H.264. Un vecteur de mouvement non entier correspond à un MB de référence interpolé d'une fraction de pixel, selon la norme utilisée, afin de rendre possibles les calculs de similarité avec le MB de l'image courante. L'intérêt de calculer les vecteurs de mouvement avec une précision sub-pixel est de diminuer l'amplitude des résidus. La méthode d'estimation de la similarité entre deux blocs la plus souvent utilisée est celle basée sur les sommes des valeurs absolues des différences entre le bloc considéré et les autres blocs (SAD : � sum of absolute difference � en anglais). La SAD est nulle si les deux blocs sont identiques et elle est importante si ces deux blocs diffèrent beaucoup. Le codeur recherche ainsi la SAD qui présente la valeur la plus faible et sélectionne le vecteur de mouvement correspondant pour que les blocs ainsi associés soient le plus similaires possible l'un de l'autre. Le codeur se charge donc de calculer la SAD des différents blocs candidats et de rechercher un minimum absolu. L'ensemble des valeurs de SAD associées aux blocs définissent une surface appelée carte de similarité (� similarity map � en anglais) ou encore carte de SAD (� SAD map �). Autour d'un minimum cette carte peut être modélisée par un paraboloïde dont la forme dépend de la nature des pixels des blocs à comparer. La forme locale de la carte de similarité ou "SAD error shape" autour du minimum détecté par le codeur donne ainsi une indication sur la nature des MBs. Par exemple, si les MBs comparés sont très texturés, alors la forme de la carte de similarité autour du minimum est très resserrée (les valeurs de la carte de similarité autour du minimum sont très supérieures à ce minimum). A l'opposé, pour des MBs aux pixels quasiment constants, la forme de la carte de similarité autour du minimum est très évasée (les valeurs de la carte de similarité autour du minimum sont très légèrement supérieures à ce minimum). Pour des blocs chevauchant un contour de même direction, la forme de cette carte est étirée dans cette direction. La position du minimum de la carte de SAD indique ainsi le vecteur de mouvement optimal du bloc tandis que la forme de la carte de SAD donne une indication sur la nature des pixels du bloc à coder. On va maintenant décrire le procédé de restauration selon l'invention à l'aide de l'algorithme de la figure 1 qui illustre les principales étapes 11 à 15 de ce procédé. Un tel algorithme peut être exécuté dans le dispositif de la figure 5. Préalablement au procédé de restauration proprement dit, le décodeur renseigne selon une étape préalable 10 de la perte des MBs. Chaque MB étant dans l'exemple illustré constitué d'un carré de 16x16 pixels, ces informations sont sauvegardées dans une matrice 16 fois plus petite que les images codées, chaque cellule de cette matrice indiquant si le MB correspondant est perdu ou valide. Dans l'exemple illustré à la figure 2, les trois blocs hachurés sont détectés comme étant perdus à l'étape 10. Pour chaque bloc perdu ainsi détecté, le procédé de restauration dont la mise en oeuvre débute à l'étape suivante 11 réalise l'identification dans l'image à restaurer, parmi les blocs qui sont associés à un vecteur de mouvement (c'est-à-dire parmi les blocs qui sont valides), de blocs de pixels voisins du bloc de pixels perdu considéré. A titre d'exemple, dans la figure 2, pour le MB perdu 200, les blocs reçus 202, 204 et 206 sont identifiés. Le but de cette étape d'identification est d'utiliser des vecteurs de mouvement de MBs dont au moins certains sont proches du MB perdu afin que l'interpolation du vecteur de mouvement pour le bloc perdu soit la plus fiable possible. Pour cela, on retient par exemple pour fenêtre de recherche l'ensemble des MB reçus qui sont distants d'un MB perdu d'au plus deux MBs. Chaque vecteur de mouvement de chaque MB voisin identifié correspond à une image de référence qui peut varier d'un MB à un autre en fonction du format vidéo utilisé. On choisit donc ici également de normaliser dans cette étape les vecteurs de mouvement de telle sorte qu'ils ne pointent que sur une unique image précédant l'image courante. Pour cela, les coordonnées d'un vecteur de mouvement sont divisées par le nombre d'images qu'il y a entre l'image courante et l'image de référence de ce vecteur. Cette normalisation permet d'interpoler des vecteurs de mouvement n'ayant pas les mêmes images de référence. Dans l'étape suivante 12, on détermine pour chaque bloc identifié une zone de confiance associée au vecteur de mouvement correspondant. Cette zone de confiance est directement déduite comme on le verra ci-après d'un modèle de similarité (carte de similarité) du vecteur de mouvement correspondant et est un indicateur de la nature du bloc de pixel associé. Avant de donner davantage de détails sur cette zone de confiance on va tout d'abord décrire comment elle est obtenue à partir de la carte de similarité correspondante. Au niveau du décodeur où est mis en oeuvre le procédé de restauration la carte de similarité de chaque vecteur de mouvement n'est pas connue. Il faut donc tout d'abord la recalculer avant de pouvoir en déduire la zone de confiance correspondante. Cette carte de similarité peut se calculer de nombreuses manières, la méthode ici retenue est basée sur l'estimateur de SAD. Afin d'accélérer les calculs, la carte de SAD est calculée sur le bloc identifié en fonction de lui-même et de son voisinage immédiat (on parle alors de carte d'auto-similarité, car les blocs candidats sélectionnés pour le calcul présentent un grand nombre de pixels en commun avec le bloc principal). Dans l'exemple illustré, cette carte est ainsi obtenue par comparaison d'une partie du contenu de ce MB avec lui-même (centre de la matrice), ainsi qu'avec les MBs qui sont décalés respectivement de +/-1 pixel selon l'horizontale et/ou décalés de +/-1 pixel selon la verticale. Lorsqu'il s'agit d'un MB directement voisin (ou adjacent) d'un MB perdu, un sous-ensemble de pixels de ce MB est utilisé pour le calcul de l'auto-similarité, afin de tenir compte du fait que certains pixels sur un des bords du MB sont manquants. Considérons le macro-bloc ou le sous macro-bloc M de taille nxm pixels. On définit ainsi la carte d'auto similarité de M par une matrice S(i,j) basée sur l'estimateur de SAD de la façon suivante : n-1 m-1 S(i,j)=LLM(x,y)-M(x+1+i,y+1+j) x=1 y=1 avec i et j = - 1, 0 ou 1 (la matrice S étant une matrice 3x3). Le centre S (0, 0) de la matrice est égal à 0 puisque pour i=0 et j=0 le 20 MB est comparé à lui-même. Les huit autres valeurs sont supérieures ou égales à 0. Ce calcul par auto-similarité permet de simplifier les calculs tout en garantissant que la carte de similarité ainsi obtenue peut être modélisée autour de son extremum, ce qui assure une grande fiabilité dans la détermination de la 25 zone de confiance correspondante. La figure 3 illustre différentes cartes d'autosimilarité en fonction des différentes zones d'une image. Pour chaque carte, les neuf valeurs de S(i,j) se modélisent par une paraboloïde : 30 S(i,j)= A.i2 + B.j2 + C.i.j+ D.i + E.j+ F Les six paramètres A, B, C, D, E, F sont calculés par la méthode des moindres carrés en connaissant les neuf valeurs de la matrice S(i, j). De ces six paramètres, sont extraits les trois paramètres de la zone de confiance (8, a et b) selon le système d'équation suivant : 1 ( C 0 = ùArc tan 2 AùBi 1 a= (A.cosO +B.sin0 ùC.cos0.sin0)2 b= (A.sinO +B.cosO + C.cosO.sin 0 )2 Ces zones de confiance sont ainsi délimitées par l'ellipse (caractérisée par trois paramètres, à savoir : l'orientation 8, le demi grand axe a 10 et le demi petit axe b) définie ci-dessus et dont le centre est confondu avec l'extrémité du vecteur de mouvement associé. La forme de l'ellipse délimitant cette zone est donc directement corrélée à la forme de la carte de similarité correspondante, les trois paramètres de la zone de confiance traduisant la nature des pixels inclus dans 15 le bloc M (homogène, texturé et/ou allongé). Dans cette zone de confiance le vecteur de mouvement peut être remplacé par tout autre vecteur de mouvement avec une influence quasi-nulle sur la quantité d'information du résidu et donc sur le taux de compression du MB. 20 Ainsi, pour un MB inclus dans une zone texturée le paraboloïde est très pointu et les paramètres A et B sont grands, ce qui a pour conséquence que la zone de confiance a des demi-axes petits (la zone de confiance présente une surface faible). Ce vecteur est donc proche du mouvement vrai, c'est-à-dire du 25 mouvement qui se produit réellement devant le capteur d'images. Un tel vecteur de mouvement doit donc être considéré différemment d'un vecteur de mouvement associé à un MB d'une zone homogène. En effet, par opposition, pour un MB d'une zone homogène les paramètres A et B sont petits et la zone de confiance a des demi-axes 1 importants. Dans un tel cas la carte de SAD associée est plate et sa zone de confiance est très large. Un tel vecteur de mouvement n'a pas besoin d'être choisi très précisément et peut être échangé pour un autre vecteur de mouvement avec une influence quasi nulle sur la quantité d'information du résidu et donc sur le taux de compression du MB. Un cas intermédiaire concerne les MBs chevauchant un contour fort, la carte de SAD étant dans ce cas allongée dans la direction du contour. En d'autres termes, le vecteur de mouvement peut être remplacé par tout autre vecteur de mouvement tel que le MB pointé chevauche le contour de la même manière. Pour de tels MBs, les vecteurs de mouvement sont généralement très différents du mouvement vrai. Néanmoins, la composante du vecteur de mouvement dans la direction perpendiculaire à celle du contour est très précise et similaire au mouvement vrai. Pour de tels MBs, la zone de confiance est donc une ellipse étirée dans la direction du contour et très aplatie dans la direction perpendiculaire au contour. En d'autres termes, une zone de confiance est représentative de la tolérance de sélection du vecteur de mouvement associé au bloc considéré. Cette information est utilisée dans la présente invention pour obtenir une indication de la marge de manoeuvre dans la détermination de la composante du vecteur de mouvement à interpoler qui dépend de ce vecteur de mouvement particulier. En effet, si la zone de confiance pour ce vecteur est grande, la marge de manoeuvre dans la détermination de la composante du vecteur de mouvement à interpoler qui dépend de ce vecteur de mouvement sera importante alors qu'elle sera plus étroite si la zone de confiance est réduite. Dans l'étape suivante 13 sont ensuite accumulées les zones de confiance de chaque bloc identifié dans un espace de paramètres où est également représenté chacun des vecteurs de mouvement correspondants et ceci afin d'isoler une ou plusieurs zones préférentielles pour le choix du vecteur à interpoler. L'espace de paramètres est une image dont tous les pixels sont initialement mis à zéro et dans laquelle sont représentés les vecteurs de mouvement. La taille de l'espace de paramètres se définit par l'amplitude et la résolution souhaitées. Soit M la taille de l'espace de paramètres et s le facteur de résolution, un vecteur de mouvement est converti en coordonnées (M/2+x.s, M/2+y.$) dans l'espace de paramètres. Le facteur de résolution s permet de définir le pas d'échantillonnage des vecteurs de mouvement. La même mise à l'échelle est réalisée pour les coefficients a et b de chaque ellipse selon un facteur de résolution spécifique s'. Les zones de confiance sont ainsi accumulées dans l'espace de paramètres. Sur la figure 4 ont été représentés trois vecteurs de mouvement 21 à 23, chacun associé à un bloc voisin d'un même bloc à restaurer. A chaque vecteur de mouvement correspond une ellipse 24 à 26 délimitant la zone de confiance associée. Chaque vecteur de mouvement pointe sur le centre de l'ellipse à laquelle il est associé. Chaque pixel de cet espace est incrémenté de la valeur 1 dès qu'il est situé dans une zone de confiance, c'est-à-dire à l'intérieur d'une ellipse définie comme précédemment et projetée dans cet espace de paramètres. Dès lors que toutes les zones de confiance sont ainsi représentées dans l'espace de paramètres, l'accumulation des zones de confiance fait apparaître une ou plusieurs zones en recouvrement. Ces zones de recouvrement correspondent à des zones où les pixels atteignent des valeurs maximales (on parle également de pics d'accumulation) et dont la position indique les coordonnées potentielles d'un vecteur de mouvement interpolé. En effet ce sont dans ces zones de recouvrement que les chances sont optimales d'obtenir des vecteurs de mouvement interpolés, dont chacun correspond de façon fiable à au moins une partie du mouvement vrai. Dans l'exemple illustré sont représentées trois zones de confiances mais on notera qu'il est possible, dans d'autres cas, d'avoir moins de trois zones de confiance dans l'espace de paramètres, voire plus de trois zones de confiance, le principe de l'invention restant quant à lui identique. L'étape suivante 14 (calcul d'un vecteur de restauration pour chaque bloc perdu) consiste à isoler ou extraire ces zones de recouvrement pour en déterminer des vecteurs interpolés à partir de ces zones. Pour cette raison ces zones seront appelées par la suite des zones d'interpolation. Dans l'exemple illustré la méthode utilisée pour isoler les zones de recouvrement de l'espace de paramètres est la suivante : - détection du pixel de valeur maximale max dans l'espace de paramètres ; - seuillage de l'espace de paramètres par rapport au seuil égal à max . Les pixels de valeur inférieure sont mis à 0 (dans l'exemple illustré en figure 4, ce seuillage permet d'isoler comme zone d'interpolation la zone qui est hachurée, située à l'intersection des trois ellipses) ; - isolation des zones d'interpolation, ces zones se définissant par un ensemble de pixels connexes supérieurs au seuil déterminé ci-dessus. Si plusieurs zones sont observables cela signifie que le mouvement vrai est fait de plusieurs combinaisons de mouvements ; - pour chaque zone d'interpolation, un barycentre est calculé pour 20 déterminer les coordonnées du vecteur interpolé correspondant. Le barycentre est calculé pour chaque zone Z; (i variant de 1 à n où n correspond au nombre total de zones d'interpolation obtenues) par le moment d'ordre : L x.P(x, y) L y.P(x, y) - (x,Y)EZi - (x,yEZt x` L P(x, y) ' y~ - L P(x, y) (x, yE Z, (x, yE Z, 25 avec P(x,y) la valeur du pixel de l'espace de paramètres à la position (x,y). Pour chaque zone Z;, les coordonnées (V(i)X, V(i)y) du vecteur de mouvement interpolé correspondant s'expriment en fonction de la taille et du facteur de résolution de l'espace de paramètres : (x~ ûM) (Yi û M) V(i)x = 2 ; V (i) y = 2 Le nombre de vecteurs de mouvement ainsi calculés est fonction du mouvement se produisant dans la séquence vidéo. Ainsi, si le mouvement est une translation homogène alors une unique zone d'interpolation apparaît, cette zone correspondant à un unique vecteur de mouvement interpolé. Par contre, si le mouvement est multiple (par exemple en présence de plusieurs sources ayant des mouvements différents dans l'image), alors plusieurs zones d'interpolation sont observées correspondant à autant de vecteurs de mouvement interpolés. Dans le cas où une seule zone d'interpolation apparaît, le vecteur de mouvement final, encore appelé vecteur de mouvement de restauration, correspond à l'unique vecteur de mouvement interpolé. Dans le cas où plusieurs zones d'interpolation apparaissent, il convient de prévoir ici une étape supplémentaire qui consiste à déterminer le vecteur de mouvement de restauration à partir de l'ensemble des vecteurs de mouvement interpolés au niveau de chacune des zones d'interpolation. Ce vecteur est déterminé en combinant les vecteurs interpolés de la façon suivante : - on sélectionne parmi les MBs identifiés ceux qui sont les plus 20 proches du MB à restaurer ; - on recherche pour chaque MB identifié ainsi sélectionné, le vecteur interpolé qui se rapproche le plus de son vecteur de mouvement ; et - on détermine ensuite le vecteur de mouvement de restauration en réalisant une moyenne des vecteurs de mouvement interpolés ainsi 25 sélectionnés. Enfin, dans une dernière étape 15 visant à remplacer le bloc perdu, une simple compensation du mouvement est appliquée à partir du vecteur de mouvement de restauration. Il s'agit ici simplement de copier l'ensemble des pixels du bloc de l'image de référence qui est pointé par le vecteur de 30 mouvement de restauration sur le bloc perdu de l'image courante, le MB perdu étant ainsi restauré. On notera que l'image de référence n'est pas nécessairement une image antérieure de la séquence vidéo. Dans le cas où l'image restaurée comporte plusieurs blocs perdus le procédé selon l'invention peut s'appliquer sur tous les blocs perdus simultanément ou bien encore en plusieurs fois sur des sous-ensembles des blocs perdus tels que tous ces sous-ensembles couvrent tous les blocs perdus une fois. La figure 5 montre un mode particulier de réalisation d'un dispositif de traitement d'information apte à fonctionner comme dispositif de restauration 10 d'une séquence vidéo conforme à la présente invention. Le dispositif illustré sur la figure 5 peut comporter tout ou partie des moyens de mise en oeuvre d'un procédé de restauration conforme à la présente invention, et qui correspondent notamment à des moyens permettant de mettre en oeuvre chaque étape de la figure 1, à savoir : 15 - des moyens pour détecter dans l'image le ou les blocs perdus ; - des moyens pour identifier dans cette image, pour chaque bloc perdu, des blocs reçus qui sont associés à un vecteur de mouvement ; - des moyens pour déterminer pour chaque bloc identifié sa zone de confiance ; 20 - des moyens pour obtenir un vecteur de mouvement de restauration à partir d'au moins certaines de ces zones de confiance ainsi déterminées ; et - des moyens pour restaurer chaque bloc perdu à partir du vecteur de mouvement de restauration correspondant. 25 Selon le mode de réalisation choisi, ce dispositif peut être par exemple un micro-ordinateur ou une station de travail 100 connecté à différents périphériques, par exemple, une caméra numérique 101 (ou un scanner, ou tout autre moyen d'acquisition ou de stockage d'images) reliée à une carte graphique (non représentée) et fournissant ainsi des informations à traiter selon 30 l'invention. Le micro-ordinateur 100 comporte de préférence une interface de communication 102 reliée à un réseau 103 apte à transmettre des informations numériques. Le micro-ordinateur 100 comporte également un moyen de stockage permanent 104, tel qu'un disque dur, ainsi qu'un lecteur de moyens de stockage d'informations temporaire tel qu'un lecteur de disquettes 105 pour coopérer avec une disquette 106. La disquette 106 et le disque dur 104 peuvent contenir des données d'implantation logicielle de l'invention ainsi que le code du ou des programme(s) d'ordinateur dont l'exécution par le micro-ordinateur 100 met en oeuvre la présente invention, ce code étant par exemple mémorisé sur le disque dur 104 une fois qu'il a été lu par le micro-ordinateur 100. En variante, le ou les programme(s) (basé sur l'algorithme de la figure 1) permettant au dispositif 100 de mettre en oeuvre l'invention sont stockés dans une mémoire morte (par exemple du type ROM) 107. Selon une autre variante, ce ou ces programme(s) sont reçus totalement ou partiellement à travers le réseau de communication 103 pour être stockés comme indiqué. Le micro-ordinateur 100 comprend également un écran 109 pour visualiser les informations à traiter (par exemple l'espace de paramètres représenté à la figure 4) et/ou servir d'interface avec l'utilisateur, afin que l'utilisateur puisse par exemple paramétrer certains modes de traitement à l'aide du clavier 110 ou de tout autre moyen approprié de pointage et/ou de saisie tel qu'une souris, un crayon optique, etc. Une unité de calcul ou unité centrale de traitement (CPU) 111 exécute les instructions relatives à la mise en oeuvre de l'invention, ces instructions étant stockées dans la mémoire morte ROM 107 ou dans les autres éléments de stockage décrits. En particulier, l'unité centrale de traitement 111 est adaptée à mettre en oeuvre l'algorithme illustré sur la figure 1. Lors de la mise sous tension du dispositif 100, les programmes et méthodes de traitement stockés dans une des mémoires non-volatiles, par exemple la ROM 107, sont transférés dans une mémoire vive (par exemple du type RAM) 112, qui contient alors le code exécutable de l'invention ainsi que les variables nécessaires à la mise en oeuvre de l'invention. En variante, la méthode de restauration du signal numérique peut être stockée dans différents emplacements de stockage. De façon générale, un moyen de stockage d'information lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible, peut mémoriser un ou plusieurs programme(s) dont l'exécution met en oeuvre le procédé de restauration d'une séquence vidéo décrit précédemment. On peut faire évoluer le mode particulier de réalisation choisi pour l'invention, par exemple en ajoutant des méthodes de traitement actualisées ou améliorées ; dans un tel cas, ces nouvelles méthodes peuvent être transmises au dispositif 100 par le réseau de communication 103, ou chargées dans le dispositif 100 par l'intermédiaire d'une ou de plusieurs disquettes 106. Bien entendu, les disquettes 106 peuvent être remplacées par tout support d'information jugé approprié (CD-ROM, carte mémoire, etc.). Un bus de communication 113 permet la communication entre les différents éléments du micro-ordinateur 100 et les éléments reliés à celui-ci. On notera que la représentation du bus 113 n'est pas limitative. En effet, l'unité centrale CPU 111 est, par exemple, susceptible de communiquer des instructions à tout élément du micro-ordinateur 100, directement ou par l'intermédiaire d'un autre élément du micro-ordinateur 100. Selon une première variante, chaque carte de SAD n'est pas déterminée sur les MBs reçus de l'image à restaurer mais sur les MBs correspondants indiqués par les vecteurs de mouvement associés de l'image ou des images de référence correspondantes. Selon une deuxième variante, chaque carte de similarité est obtenue 25 par d'autres méthodes que par des calculs de SAD. Selon une troisième variante, les blocs identifiés pour réaliser la restauration du bloc perdu ne sont pas nécessairement voisins du bloc perdu, dans le but par exemple de disposer de davantage de vecteurs de mouvement et donc de davantage de zones de confiance afin de mieux faire ressortir les 30 pics d'accumulation. Selon une quatrième variante, les zones de confiance sont obtenues à partir des modélisations des cartes de similarité, non pas sous la forme de surfaces en ellipse mais sous tout autre type de formes de surface ou bien encore sous la forme de segments (les segments indiquant dans ce cas uniquement une direction préférentielle pour l'interpolation du vecteur de mouvement de restauration). De nombreuses autres variantes sont possibles en fonction des circonstances, et l'on rappelle à cet égard que l'invention ne se limite pas aux exemples décrits et représentés. REVENDICATIONS1. Procédé de restauration d'une séquence vidéo comprenant une pluralité d'images dont au moins l'une d'elles, appelée image à restaurer, comporte au moins un bloc de pixels à restaurer ainsi que plusieurs autres blocs de pixels dont au moins certains sont associés à un vecteur de mouvement respectif, chaque vecteur de mouvement faisant correspondre le bloc de pixels auquel il est associé à un bloc de pixels d'une image de référence de la séquence vidéo, caractérisé en ce qu'il comporte les étapes suivantes : - identification (11), dans l'image à restaurer, de blocs de pixels qui sont associés à un vecteur de mouvement ; - détermination (12), pour chaque bloc identifié, d'une zone de confiance représentative de la tolérance de sélection du vecteur de mouvement associé au bloc identifié ; - obtention (13, 14) d'un vecteur de mouvement de restauration à partir d'au moins certaines de ces zones de confiance ainsi déterminées ; et - restauration (15) dudit bloc à restaurer à partir dudit vecteur de mouvement de restauration. 2. Procédé selon la revendication 1, caractérisé en ce que l'étape de détermination d'une zone de confiance pour chaque bloc identifié comporte une étape d'obtention d'un modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels, chaque modèle étant défini par au moins un coefficient. 3. Procédé selon la revendication 2, caractérisé en ce que le modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels est basé sur le calcul de la somme de la valeur absolue des différences entre ledit bloc identifié et chaque dit autre bloc. 4. Procédé selon l'une quelconque des revendications 2 ou 3, caractérisé en ce que lesdits autres blocs de pixels présentent au moins certains pixels en commun avec ledit bloc de pixel identifié correspondant. 5. Procédé selon l'une quelconque des revendications 2 à 4, caractérisé en ce que ledit au moins un coefficient de chaque modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels est obtenu par la méthode des moindres carrés. 6. Procédé selon l'une quelconque des revendications 2 à 5 caractérisé en ce que chaque modèle présente la forme d'un paraboloïde. 7. Procédé selon l'une quelconque des revendications 2 à 6, caractérisé en ce que chaque zone de confiance est représentative de la forme du modèle correspondant. 8. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que chaque zone de confiance est délimitée par une ellipse. 9. Procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce que ladite étape d'obtention (13, 14) d'un vecteur de mouvement de restauration comporte les étapes de : - détermination (13), dans un espace de paramètres où sont représentés les vecteurs de mouvement et les zones de confiance, d'au moins une zone d'interpolation issue d'au moins certaines de ces zones de confiance ; et - détermination (14) d'un vecteur de mouvement de restauration à partir de ladite au moins une zone d'interpolation. 10. Procédé selon la revendication 9, caractérisé en ce que l'étape de détermination (13) de ladite au moins une zone d'interpolation comporte l'étape d'incrémenter chaque pixel de l'espace de paramètres lorsqu'il est situé dans une zone de confiance et de ne retenir comme zone(s) d'interpolation que la ou les zones de cet espace dont la valeur des pixels dépasse une valeur de seuil prédéterminée. 11. Procédé selon l'une quelconque des revendications 9 ou 10, caractérisé en ce que l'étape de détermination (14) du vecteur de mouvement de restauration comporte, pour chaque zone d'interpolation, une étape de détermination d'un vecteur d'interpolation associé. 12. Procédé selon la revendication 11, caractérisé en ce que les coordonnées de chaque vecteur d'interpolation sont obtenues par calcul du barycentre de ladite zone d'interpolation correspondante. 13. Procédé selon l'une quelconque des revendications 11 ou 12, caractérisé en ce que l'étape de détermination (14) du vecteur de mouvement de restauration comporte, s'il existe plusieurs zones d'interpolation, une étape de combinaison desdits vecteurs d'interpolation correspondants. 14. Procédé selon l'une quelconque des revendications 1 à 13, caractérisé en ce que, parmi les blocs identifiés au cours de l'étape d'identification, au moins certains d'entre eux sont voisins du bloc de pixels à restaurer. 15. Procédé selon la revendication 14, caractérisé en ce que l'étape d'identification est réalisée, pour au moins certains des blocs, dans une fenêtre de recherche de taille prédéterminée autour du bloc à restaurer. 16. Procédé selon l'une quelconque des revendications 1 à 15, caractérisé en ce que l'étape d'identification de blocs comporte une étape de normalisation des vecteurs de mouvement associés. 17. Dispositif de restauration d'une séquence vidéo comprenant une pluralité d'images dont au moins l'une d'elles, appelée image à restaurer, comporte au moins un bloc de pixels à restaurer ainsi que plusieurs autres blocs de pixels dont au moins certains sont associés à un vecteur de mouvement respectif, chaque vecteur de mouvement faisant correspondre le bloc de pixels auquel il est associé à un bloc de pixels d'une image de référence de la séquence vidéo, caractérisé en ce qu'il comporte : - des moyens pour identifier, dans l'image à restaurer, des blocs qui sont associés à un vecteur de mouvement ; - des moyens pour déterminer, pour chaque bloc identifié, une zone de confiance représentative de la tolérance de sélection du vecteur de mouvement associé au bloc identifié ; - des moyens pour obtenir un vecteur de mouvement de restauration à partir d'au moins certaines de ces zones de confiance ainsi déterminées ; et - des moyens pour restaurer ledit bloc à restaurer à partir dudit vecteur de mouvement de restauration. 18. Dispositif selon la revendication 17, caractérisé en ce que lesdits moyens de détermination pour chaque bloc identifié d'une zone de confiance sont adaptés à obtenir un modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels. 19. Dispositif selon l'une quelconque des revendications 17 ou 18, caractérisé en ce que lesdits moyens de détermination pour chaque bloc identifié d'une zone de confiance sont adaptés à obtenir ledit modèle représentatif de la similarité du bloc identifié avec d'autres blocs de pixels par un calcul de la somme de la valeur absolue des différences entre ledit bloc identifié et chaque dit autre bloc. 20. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, caractérisé en ce qu'il permet la mise en oeuvre d'un procédé de restauration selon l'une quelconque des revendications 1 à 16. 21. Produit programme d'ordinateur pouvant être chargé dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions pour mettre en oeuvre un procédé de restauration selon l'une quelconque des revendications 1 à 16, lorsque ce programme est chargé et exécuté par l'appareil programmable.