Brevet FR2921504A1 — publié le 20090327

La présente invention concerne un procédé d'interpolation spatiale des pixels manquants dans une image. Plus particulièrement, elle concerne un procédé d'interpolation spatiale reconstruisant les contours présents dans une image. Corrélativement, elle concerne un dispositif d'interpolation spatiale adapté à mettre en oeuvre le procédé conforme à l'invention. Les méthodes de correction d'erreurs fondées sur une interpolation spatiale reconstruisent des données manquantes dans une image à partir des données voisines ou adjacentes aux données manquantes. Les méthodes d'interpolation spatiale classiques sont rapides, mais elles ne reconstruisent essentiellement que des données basses fréquences ou zones uniformes (zones d'image qui ne contiennent pas de contours). Les données hautes fréquences ou contours d'image sont mal reconstruites. Ainsi, la qualité de l'image avec des zones contenant des données reconstruites par ces méthodes d'interpolation n'est pas satisfaisante. D'autre part, il existe des méthodes d'interpolation permettant de reconstruire les données hautes fréquences. Ces méthodes consistent en des algorithmes souvent extrêmement lents, dû à leur complexité. Ainsi, lorsque l'on doit mettre en oeuvre ces méthodes d'interpolation dans des applications temps réel, ces algorithmes ne peuvent pas être utilisés. Le document "A spatial domain error concealment method with edge recovery and selective directional interpolation" Wei-Ying, Chang-su Kim and C.-C. Jay Kuo IEEE - Volume 5, Issue, 6-10 April 2003 Page(s): V - 700-3 vol.5 ICASSP 2003, décrit une méthode de correction spatiale permettant la reconstruction des contours d'image. Des pixels caractéristiques sont détectés parmi les pixels de la frontière d'une zone d'image à reconstruire. Ces pixels caractéristiques permettent de partitionner la zone d'image à reconstruire. Une interpolation des données appartenant à la zone d'image à reconstruire est mise en oeuvre, à partir des points sélectionnés en fonction de la partition à laquelle appartient le pixel à reconstruire. Cet algorithme est complexe et lent, dès lors qu'il requiert un traitement de la zone d'image à reconstruire préalablement à l'interpolation. La présente invention a pour but de résoudre les limitations précitées et de proposer un procédé d'interpolation spatiale des valeurs de pixels d'un bloc manquant dans une image et un dispositif associé à ce procédé, permettant de reconstruire les données basses fréquences ainsi que les données hautes fréquences d'une façon simple et rapide. Dans la suite de cette description, nous désignerons par le même terme la valeur d'un pixel p(x, y) et le pixel p(x, y). Ainsi, interpoler un pixel p(x, y) veut dire reconstruire la valeur du pixel p(x, y) situé en la position (x, y). A cet effet, la présente invention vise selon un premier aspect, un procédé d'interpolation spatiale des pixels d'un bloc manquant dans une image, dans lequel chaque pixel à interpoler du bloc est déterminé par un algorithme d'interpolation appliqué à un ensemble de pixels voisins appartenant à l'ensemble de pixels adjacents au bloc manquant, chaque pixel voisin étant pondéré dans l'algorithme d'interpolation par un poids associé. Selon l'invention, le poids associé à un pixel voisin est déterminé en fonction de la distance existant entre le pixel à interpoler du bloc et le pixel voisin, lorsque le pixel voisin n'appartient pas à un contour d'image, et en fonction de ladite distance et d'une information représentative de contour associée au pixel voisin, lorsque le pixel voisin appartient à un contour d'image. Ainsi, en plus des données basses fréquences ou zones uniformes de l'image, les données hautes fréquences ou contours d'image sont également reconstruits. Cette reconstruction est réalisée d'une façon simple et rapide, dès lors qu'un seul algorithme d'interpolation est utilisé pour l'interpolation de tous les pixels du bloc manquant. Par conséquent, il est possible d'utiliser le procédé d'interpolation spatiale selon l'invention dans des applications de traitement d'image en temps réel. Selon une caractéristique préférée, le procédé comporte une étape de détermination de pixels adjacents au bloc manquant appartenant à un contour d'image parmi l'ensemble de pixels adjacents au bloc manquant et d'une information représentative de contour associée respectivement aux pixels adjacents déterminés. Par conséquent, les pixels adjacents appartenant à un contour d'image sont repérés, parmi les pixels adjacents au bloc manquant. Une information représentative du contour est associée à chaque pixel adjacent repéré, afin de pouvoir déterminer le poids associé à un pixel voisin appartenant à un contour. Par exemple, l'information représentative de contour est un vecteur de direction représentant la direction de contour. Ainsi, il est possible de connaître la direction dans laquelle le contour doit être reconstruit à l'intérieur du bloc manquant. En pratique, le poids associé à un pixel voisin appartenant à un contour est calculé en fonction de la valeur de la norme d'un vecteur distance formé entre le pixel à interpoler et le pixel voisin et d'un angle formé par le vecteur distance et le vecteur de direction du contour. Par conséquent, lors du calcul du poids d'un pixel voisin appartenant à un contour d'image, en plus de tenir compte de la distance entre le pixel à interpoler et le pixel voisin (comme dans le cas des pixels voisins qui n'appartiennent pas au contour), on tient compte de l'alignement du pixel à interpoler avec la direction du contour d'image. En pratique, la détermination du vecteur de direction de contour 25 comporte les étapes suivantes : - calcul du gradient de l'intensité associé respectivement à des pixels appartenant à un ensemble de pixels situé autour du bloc manquant à partir de pixels appartenant à une matrice de dimensions prédéterminées située autour du bloc manquant ; 30 - détermination à partir des gradients calculés, d'un ensemble de pixels appartenant à un contour, parmi les pixels appartenant audit ensemble de pixels situé autour du bloc manquant ; - pour chaque pixel appartenant audit ensemble, détermination d'une direction normale au gradient associé au pixel, la direction normale représentant la direction du contour ; - détection des pixels intersection respectivement entre les directions normales et l'ensemble de pixels adjacents ; et - association d'un vecteur de direction représentant la direction du contour à chaque pixel intersection. Ainsi, on associe un vecteur de direction représentant l'information de contour à chaque pixel appartenant à un contour, parmi les pixels adjacents. Par exemple, la détermination de l'ensemble de pixels appartenant à un contour est réalisée au moyen d'une comparaison des normes desdits gradients calculés avec une valeur seuil de norme, un pixel appartenant audit ensemble de pixels lorsque la norme dudit gradient d'intensité associé audit pixel est supérieure à ladite valeur seuil de norme. Selon une autre caractéristique préférée, l'ensemble de pixels voisins correspond à l'ensemble des pixels adjacents au bloc manquant. Avantageusement, l'ensemble de pixels voisins est un sous-ensemble de l'ensemble de pixels adjacents au bloc manquant, variable en fonction de la position du pixel à interpoler dans le bloc manquant. Ainsi, il est possible d'employer un sous-ensemble de pixels voisins ayant une influence supérieure pour la reconstruction du contour d'image lors de la mise en oeuvre de l'algorithme d'interpolation. La présente invention concerne selon un deuxième aspect un dispositif d'interpolation spatiale des pixels d'un bloc manquant dans une image, comportant des moyens de détermination de chaque pixel à interpoler du bloc adaptés à mettre en oeuvre un algorithme d'interpolation appliqué à un ensemble de pixels voisins appartenant à l'ensemble de pixels adjacents au bloc manquant, chaque pixel voisin étant pondéré dans l'algorithme d'interpolation par un poids associé. Selon l'invention, le dispositif d'interpolation spatiale comporte des moyens de détermination du poids associé à un pixel voisin, en fonction de la distance existant entre le pixel à interpoler du bloc et le pixel voisin, lorsque le pixel voisin n'appartient pas à un contour d'image, et en fonction de la distance et d'une information représentative de contour associée au pixel voisin, lorsque le pixel voisin appartient à un contour d'image. Ce dispositif présente des caractéristiques et avantages analogues à 5 ceux décrits précédemment en relation avec le procédé. En pratique, le dispositif d'interpolation spatiale comporte des moyens de détermination de pixels adjacents au bloc manquant appartenant à un contour d'image parmi l'ensemble de pixels adjacents au bloc manquant et des moyens de détermination d'une information représentative de contour 10 associée respectivement aux pixels adjacents déterminés. Avantageusement, les moyens de détermination de l'information représentative de contour comportent des moyens de détermination d'un vecteur de direction représentant la direction de contour. Selon une caractéristique préférée, le dispositif d'interpolation 15 spatiale comporte des moyens de calcul du poids associé à un pixel voisin appartenant à un contour en fonction de la valeur de la norme d'un vecteur distance formé entre le pixel à interpoler et le pixel voisin et d'un angle formé par le vecteur distance et le vecteur de direction du contour. En pratique, le dispositif d'interpolation spatiale comporte : 20 - des moyens de calcul du gradient de l'intensité associé à chaque pixel appartenant à un ensemble de pixels situé autour du bloc manquant à partir de pixels appartenant à une matrice de dimensions prédéterminées située autour du bloc manquant ; - des moyens de détermination à partir des gradients calculés d'un 25 ensemble de pixels appartenant à un contour, parmi les pixels appartenant audit ensemble de pixels situé autour du bloc manquant ; - des moyens de détermination, pour chaque pixel appartenant audit ensemble, d'une direction normale au gradient associé au pixel, la direction normale représentant la direction du contour ; 30 - des moyens de détection des pixels intersection respectivement entre les directions normales et l'ensemble de pixels adjacents au bloc manquant ; et - des moyens d'association d'un vecteur de direction représentant la direction du contour à chaque pixel intersection. Selon une autre caractéristique préférée, les moyens de détermination de l'ensemble appartenant à un contour comportent des moyens de comparaison des normes des gradients calculés avec une valeur seuil de norme, un pixel appartenant à l'ensemble de pixels lorsque la norme du gradient d'intensité associé au pixel est supérieure à la valeur seuil de norme. En pratique, le dispositif d'interpolation spatiale comporte des moyens de détermination de l'ensemble de pixels voisins, l'ensemble de pixels voisins correspondant à l'ensemble de pixels adjacents au bloc manquant. Avantageusement, le dispositif d'interpolation spatiale comporte des moyens de détermination de l'ensemble de pixels voisins, l'ensemble de pixels voisins étant un sous-ensemble de l'ensemble de pixels adjacents au bloc manquant, variable en fonction de la position du pixel à interpoler dans le bloc manquant. La présente invention concerne selon un troisième aspect, un moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en oeuvre d'un procédé d'interpolation spatiale conforme à l'invention. Avantageusement, le moyen de stockage d'informations conforme à l'invention est partiellement ou totalement amovible. La présente invention concerne selon un quatrième aspect, un produit programme d'ordinateur pouvant être chargé dans un appareil programmable, comportant de séquences d'instructions pour mettre en oeuvre un procédé d'interpolation spatiale conforme à l'invention, lorsque ce programme est chargé et exécuté par l'appareil programmable. D'autres particularités et avantages de l'invention apparaîtront encore dans la description ci-après. Aux dessins annexés, donnés à titre d'exemples non limitatifs : - la figure 1 est une zone d'image comprenant un bloc manquant; - la figure 2 représente schématiquement un mode particulier de réalisation d'un appareil susceptible de mettre en oeuvre la présente invention ; - la figure 3 est un algorithme représentant le procédé d'interpolation conforme à l'invention ; - la figure 4 est un algorithme représentant l'étape de détermination des pixels adjacents au bloc manquant appartenant à un contour ; - la figure 5 est une zone d'image illustrant des étapes de l'étape de détermination des pixels appartenant à un contour d'image ; - la figure 6 est une zone d'image similaire à la figure 5, représentant le calcul des pixels appartenant à un contour d'image parmi les pixels adjacents et d'une information représentative de contour ; et - la figure 7 est une zone d'image similaire à la figure 5, représentant le calcul des poids des pixels voisins. La figure 1 représente une zone d'une image 1 comprenant un bloc manquant 2. La zone d'image est composée d'une zone uniforme 3 ou des données basses fréquences et d'un contour d'image 4 ou des données hautes fréquences. Les pixels p(i, j) appartenant au bloc manquant 2 sont déterminés par un algorithme d'interpolation appliqué à un ensemble de pixels voisins B appartenant à un ensemble de pixels adjacents A au bloc manquant 2, comme il sera décrit ci-dessous. On va décrire tout d'abord en référence à la figure 2, un dispositif mettant en oeuvre l'invention. Ce dispositif est par exemple un micro-ordinateur 210 connecté à différents périphériques, par exemple une caméra numérique 207 (ou un scanner, ou tout moyen d'acquisition ou de stockage d'image) reliée à une carte graphique et fournissant des informations à traiter par la mise en oeuvre de la présente invention. Le dispositif 210 comporte une interface de communication 212 reliée à un réseau 213 apte à transmettre des données numériques à traiter ou inversement à transmettre des données traitées par le dispositif. Le dispositif 210 comporte également un moyen de stockage 208 tel que par exemple un disque dur. Il comporte aussi un lecteur 209 de disque 205. Ce disque 205 peut être une disquette, un CD-ROM, ou un DVD-ROM, par exemple. Le disque 205 comme le disque 208 peut contenir des données traitées selon l'invention ainsi que le ou les programmes mettant en oeuvre l'invention qui, une fois lu par le dispositif 210, sera stocké dans le disque dur 208. Selon une variante, le ou les programmes permettant au dispositif de mettre en oeuvre l'invention, pourront être stocké en mémoire morte 202 (appelée ROM sur le dessin). En seconde variante, le ou les programmes pourront être reçus pour être stockés de façon identique à celle décrite précédemment par l'intermédiaire du réseau de communication 213. Ce même dispositif possède un écran 204 permettant de visualiser les données à traiter ou de servir d'interface avec l'utilisateur qui peut ainsi paramétrer certains modes de traitement, à l'aide du clavier 214 ou de tout autre moyen (souris par exemple). L'unité centrale 200 (appelée CPU sur le dessin) exécute les instructions relatives à la mise en oeuvre de l'invention, instructions stockées dans la mémoire morte 202 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes de traitement stockés dans une mémoire non volatile, par exemple la ROM 202, sont transférés dans la mémoire vive RAM 203 qui contiendra alors le code exécutable de l'invention ainsi que des registres pour mémoriser les variables nécessaires à la mise en oeuvre de l'invention. De manière plus générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement totalement ou partiellement amovible, mémorise un programme mettant en oeuvre le procédé d'interpolation spatiale selon l'invention. Le bus de communication 201 permet la communication entre les différents éléments inclus dans le micro-ordinateur 210 ou reliés à lui. La représentation du bus 201 n'est pas limitative et notamment l'unité centrale 200 est susceptible de communiquer des instructions à tout élément du micro-ordinateur 210 directement ou par l'intermédiaire d'un autre élément du micro-ordinateur 210. On va décrire en référence à la figure 3, le procédé d'interpolation spatiale conforme à l'invention. Ce procédé d'interpolation commence tout d'abord par une étape de détermination El des pixels appartenant à un contour 4 parmi les pixels adjacents A au bloc manquant 2. Cette étape de détermination El sera décrite plus loin dans ce 5 document. Chaque pixel à interpoler p(i, j) du bloc manquant 2 est déterminé par un algorithme d'interpolation appliqué à un ensemble de pixels voisins B. Cet ensemble de pixels voisins B est un sous-ensemble de l'ensemble de pixels adjacents A au bloc manquant 2. 10 L'ensemble de pixels adjacents A est défini par les pixels situés à la périphérie du bloc manquant 2 qui sont adjacents au bloc manquant 2. L'ensemble de pixels voisins B peut correspondre à l'ensemble de pixels adjacents A au bloc manquant 2 (comme représenté sur la figure 1), ou bien à un sous-ensemble de l'ensemble des pixels adjacents A au bloc 15 manquant 2 (comme représenté sur la figure 7), comme il sera décrit ci-dessous. Chaque pixel voisin p(x, y) appartenant à un ensemble de pixels voisins B est pondéré dans l'algorithme d'interpolation par un poids associé. Ainsi, pour chaque pixel à interpoler p(i, j) du bloc manquant 2, le 20 poids associé à chaque pixel voisin p(x, y) est calculé dans une étape de calcul E2 en fonction de leur appartenance à un contour d'image 4 ou à une zone uniforme 3. Par conséquent, pour chaque pixel voisin p(x, y), on doit calculer son poids par des méthodes différentes selon qu'il appartient à un contour d'image 25 4 ou à une zone uniforme 3. Enfin, une fois que les poids d'un ensemble de pixels voisins B sont déterminés, l'algorithme d'interpolation est appliqué dans une étape d'interpolation E3 afin de déterminer le pixel p(i, j). On va décrire en référence aux figures 4, 5 et 6 l'étape de 30 détermination El des pixels appartenant à un contour d'image 4 parmi l'ensemble de pixels adjacents A au bloc manquant 2 et de l'information représentative de contour. La détermination des pixels appartenant à un contour est nécessaire dès lors que le calcul du poids est différent selon que le pixel voisin appartient ou n'appartient pas à un contour d'image. On va ainsi décrire les étapes pour déterminer les pixels adjacents appartenant à un contour 4, et par conséquent les pixels voisins p(x, y) appartenant à un contour 4. Afin de connaître les pixels adjacents appartenant à un contour 4, un gradient d'intensité GKl est calculé sur chaque pixel pm(x, y) appartenant à un ensemble de pixels P situé autour du bloc manquant 2. Pour chaque pixel pm(x, y) appartenant à l'ensemble de pixels P situé autour du bloc manquant 2, une matrice de pixels 100 de dimensions prédéterminées située à la périphérie du bloc manquant 2 est sélectionnée dans une étape de sélection E10. Cette matrice 100 est d'une taille variable, par exemple 5x5 pixels. Cette matrice est située de façon à ce que le pixel pm(x, y) sur lequel on calcule le gradient d'intensité GKl soit situé dans la position centrale de la matrice 100. Ainsi, la matrice 100 est glissante autour du bloc manquant 2 afin de calculer les pixels adjacents appartenant à un contour, sur toute la périphérie 20 du bloc manquant 2. Les étapes que l'on va décrire ci-dessous sont mises en oeuvre pour chaque chaque pixel pm(x, y) appartenant à l'ensemble de pixels P situé autour du bloc manquant 2 (et par conséquent pour chaque position de la matrice 100). 25 Afin de connaître la direction normale au contour 4, ainsi que son module, le gradient d'intensité GKl est calculé dans une étape de calcul El 1 à partir de l'ensemble de pixels appartenant à cette matrice 100. Pour le calcul du gradient d'intensité GKl , deux opérateurs ou masques de Sobel Fx, Fy sont appliqués sur l'ensemble de pixels de la matrice 30 100. Les opérateurs de Sobel déterminent la taille de la matrice de pixels 100, de sorte que la taille de la matrice 100 de pixels soit égale à la taille des opérateurs de Sobel Fx, Fy. L'ensemble de pixels P situé autour du bloc manquant 2 sur lequel l'on calcule le gradient d'intensité GKl correspond à l'ensemble de pixels situés dans un lieu géométrique L défini par les positions des pixels, tel que pour chaque pixel pm(k, I) du lieu géométrique L, la distance D représentée par le nombre de pixels minimum séparant un pixel pm(k, I) du lieu géométrique L du bloc manquant 2, soit égale à la moitié entière de la largeur de l'opérateur de Sobel Fx, Fy. Ainsi, si l'opérateur ou masque de Sobel Fx, Fy (ainsi que la matrice 100) a une dimension de 5x5, la dimension de la distance D est de 2. On notera que les masques de Sobel (ainsi que la matrice 100) présentent des dimensions égales en lignes et en colonnes. Bien entendu, le calcul du gradient d'intensité GKl peut être réalisé au moyen d'autres masques. Les dimensions de ces masques peuvent présenter d'autres dimensions, les dimensions pouvant être différentes en lignes et en colonnes. Le gradient GKl est défini par deux composantes, une première composante GxKI selon la direction horizontale X et une seconde composante GyK, selon la direction verticale Y. Le premier opérateur de Sobel Fx est utilisé lors du calcul de la première composante GxKI du gradient GKl , et le second opérateur de Sobel Fy est utilisé lors du calcul de la seconde composante GyK, du gradient GKl . Le second opérateur Fy est la matrice transposée du premier opérateur Fx. Les deux composantes définissant le gradient GxK,, GyK, sont calculées par les formules suivantes : 4 4 Gx,~ =ù•LLFx(u,v).P(kù2,1ù2) 96 u=0 v=0 4 4 Gy,~ _ù LLFy(u,v).P(kù2,1ù2). 96 u=0 v=0 La valeur 96 correspond à un facteur de normalisation correspondant à la somme des valeurs absolues des coefficients de l'opérateur du Sobel Fx, Fy. Bien entendu, le facteur 1/96 peut présenter d'autres valeurs. La norme de chaque gradient GKl est calculée dans une étape de calcul E12 et comparée lors d'un test E13 à une valeur seuil de norme Gth. Si la norme du gradient GKl est supérieure à la valeur seuil de norme Gth, le pixel pm(k, I) appartient à un sous-ensemble Pc correspondant aux pixels appartenant à un contour d'image 4, et est ainsi mémorisé dans une étape de mémorisation El 31. Si la norme du gradient GKl est inférieure à la valeur seuil de norme Gth, le pixel pm(k, I) appartient à un second sous-ensemble Pu, correspondant aux pixels appartenant à une zone uniforme 3, et est ainsi mémorisé dans une étape de mémorisation E132. La valeur seuil de norme Gth est une valeur prédéterminée. Dans cet exemple, la valeur seuil de norme Gth est de 2. Pour chaque pixel appartenant au sous-ensemble Pc, un vecteur orthogonal GKIT au vecteur gradient GKl est calculé dans une étape de calcul E14. Ainsi, la direction normale au gradient GKI est déterminée. Cette direction normale représente la direction du contour d'image 4. Les pixels adjacents appartenant à un contour 4 sont déterminés dans une étape de détermination E15 par l'intersection de la prolongation du contour 4 selon cette direction normale et l'ensemble de pixels adjacents A au bloc manquant 2. Enfin, un vecteur de direction GKIT représentant la direction du contour est associé dans une étape d'association E16 à chaque pixel appartenant à un contour 4. Si un même pixel adjacent appartenant à un contour 4 est déterminé par l'intersection des prolongations de plusieurs contours 4, le vecteur de direction GKIT associé au pixel appartenant à un contour 4 est celui correspondant au vecteur gradient GKI de norme supérieure. Une fois que l'on connaît le sous-ensemble de pixels appartenant à un contour d'image Ac et le sous-ensemble de pixels appartenant à une zone uniforme Au, ainsi que l'information représentative de contour associée aux pixels p(x, y) du sous-ensemble Ac, les poids associés sont respectivement calculés à l'étape E2. On va décrire le calcul du poids E2 des pixels de l'ensemble de pixels, en référence à la figure 7. Selon un mode de réalisation, l'ensemble de pixels voisins est un sous-ensemble B' de l'ensemble de pixels adjacents A au bloc manquant 2, variable en fonction de la position (i, j) du pixel à interpoler p(i, j) dans le bloc manquant 2. Ainsi, les pixels appartenant au sous-ensemble B' sont les pixels adjacents les plus proches du pixel à interpoler p(i, j) parmi l'ensemble de pixels adjacents A, et ont ainsi une influence supérieure que le reste de pixels adjacents. Ainsi par exemple, si l'on veut interpoler le pixel p(i, j), on sélectionne parmi l'ensemble des pixels adjacents A au bloc manquant 2, un sous- ensemble B' contenant les 40 pixels les plus proches du pixel à interpoler p(i, j). Chacun de ces 40 pixels sera pondéré par un poids. Les pixels appartenant à l'ensemble de pixels adjacents au bloc manquant 2 non sélectionnés n'ont donc aucune influence sur la valeur reconstruite du pixel p(i,j). Le nombre de pixels sélectionnés parmi l'ensemble de pixels 25 adjacents A au bloc manquant 2 peut varier en fonction des temps de calcul nécessaire. Si les ressources du dispositif mettant en oeuvre l'invention sont importantes, le nombre de pixels du sous-ensemble B' peut être élevé (par exemple 40). Si les ressources du dispositif sont plus faibles, le nombre de 30 pixels du sous-ensemble B' est moins élevé (par exemple, de l'ordre de 10). Ainsi, par exemple, si le dispositif a des ressources importantes, une stratégie est donc de sélectionner les 40 pixels les plus proches du pixel à interpoler p(i, j), à partir de l'ensemble de pixels adjacents A du bloc manquant 2. Une seconde stratégie peut être de sélectionner 20 pixels les plus proches parmi l'ensemble de pixels adjacents A au bloc manquant 2 d'un côté du bloc manquant 2 et les 20 autres sur le côté opposé du bloc manquant 2. Par exemple, sur la figure 7, la zone perdue étant plus large que haute (ce qui arrive très fréquemment dû au fait de la structure horizontale des zones perdues dans des schémas de compression/transmission de vidéo), 20 pixels pourront être sélectionné sur le bord supérieur et 20 autres pixels sur le bord inférieur. Selon un autre mode de réalisation, pour chaque pixel à interpoler p(i, j) du bloc manquant 2, l'ensemble des pixels voisins B est la totalité des pixels adjacents A au bloc manquant 2. Par conséquent, lorsque l'on emploie les pixels voisins appartenant 15 au sous-ensemble B' dans la mise en oeuvre de l'algorithme d'interpolation, la précision de l'algorithme d'interpolation est supérieure. Ici, on sélectionne un sous-ensemble de pixels voisins B' parmi les pixels de l'ensemble de pixels adjacents A au bloc manquant 2, d'une largeur prédéterminée. Les pixels voisins p(x, y) peuvent ainsi appartenir à un sous- 20 ensemble de pixels appartenant à un contour Ac ou bien, à un sous-ensemble de pixels appartenant à une zone uniforme Au. Ainsi, le calcul du poids d'un pixel de l'ensemble de pixels B' est différent en fonction de son appartenance au sous-ensemble de pixels appartenant au contour Ac, ou au sous-ensemble de pixels appartenant à une 25 zone uniforme Au. Lorsque le pixel voisin p(x, y) de l'ensemble de pixels voisins B' appartient au sous-ensemble de pixels appartenant à une zone uniforme Au, le poids associé est déterminé en fonction de la distance d;i(x,y) existant entre le pixel à interpoler p(i, j) du bloc manquant et le pixel voisin p(x, y). 30 Ainsi, le poids associé au pixel voisin p(x, y) est calculé comme suit : w (x,Y) = f(dii (x, Y)) = 1 dii(x,Y)a Le dénominateur représente la distance séparant le pixel à interpoler p(i, j) du pixel voisin p(x, y). Le coefficient a a une valeur prédéterminée et calculée expérimentalement. Ici, la valeur du coefficient a est 3. Ce coefficient permet d'ajuster l'atténuation due à la distance entre le pixel à interpoler p(i, j) et le pixel voisin candidat p(x, y). Ici, le coefficient a est prédéterminé de façon à ce que le facteur distance d;i(x, y) soit très discriminant. Par exemple, si l'on calcule le poids associé à deux pixels voisins p(xl, yl) et p(x2, y2) tels que la distance entre le pixel à interpoler p(i, j) et le pixel voisin p(xl, yl) vaut 1 et la distance entre le pixel à interpoler p(i, j) et le pixel voisin p(x2, y2) vaut 2. Si a vaut 1, le poids du pixel p(xl, yl) sera de 1 et le poids du pixel p(x2, y2) sera de '/2. Si, a vaut 3, le poids du pixel p(xl, yl) sera toujours de 1, alors que le poids du pixel p(x2,y2) sera de 1/8. Lorsque le pixel voisin p(x, y) de l'ensemble de pixels voisins appartient au sous-ensemble de pixels appartenant à un contour Ac, le poids associé est déterminé en fonction de la distance d;i(x, y) existant entre le pixel à interpoler p(i, j) du bloc manquant 2 et le pixel voisin p(x, y) et de l'information représentative de contour associé au pixel voisin p(x, y) . Ainsi, le poids w;i(x, y) est calculé en fonction de la valeur de la norme d'un vecteur distance Id;i(x, y)I formé entre le pixel à interpoler p(i, j) et le pixel voisin p(x, y) et d'un angle 8 (x, y) formé par le vecteur distance dlii (x, y) et le vecteur de direction GKIT de contour. Le poids wii(x,y) est calculé selon la formule suivante : WI; (x, y) = f (8 (x, y), dl; (x, y)) = 1 cos(61; (x, y)) d..(x,Y)a , Le terme cos(6~~ (x, y)) est ainsi calculé : 1 cos( 9 (x, y)) = (dii (x, y), G=~ d ~, (x, y) Par conséquent, avec ce calcul, on tient compte de l'alignement du pixel à interpoler p(i, j) avec le contour d'image 4. Ainsi, lorsque l'angle 6;i(x, y) formé par le vecteur distance dlii (x, y) et le vecteur de direction GKIT de contour est proche de 0°, c'est-à-dire que le pixel à interpoler p(i, j) se situe dans l'alignement du contour, la valeur du poids du pixel voisin p(x, y) est élevée, et supérieure au poids des pixels n'appartenant pas à un contour d'image 4. De cette manière, le contour est prolongé à l'intérieur du bloc manquant 2. Au contraire, lorsque l'angle 6;i(x, y) est proche de 90°, c'est-à- dire que le pixel à interpoler p(i, j) n'est pas situé dans l'alignement d'un contour, le poids est pratiquement fonction de la distance d;i(x, y) existant entre le pixel à interpoler p(i, j) du bloc manquant 4. Par conséquent, le poids du pixel voisin p(x, y) est moins significatif que dans le cas précédent. Comme dans le cas du calcul du poids précédent, le coefficient a a une valeur prédéterminée. Ici, la valeur du coefficient a est par exemple égale à 3. Le coefficient a également une valeur prédéterminée et est déterminée expérimentalement. Ce coefficient permet d'ajuster l'atténuation des hautes fréquences dans l'alignement du contour 4. Ici, la valeur du coefficient est 1,0005 à titre d'exemple. Cette valeur conserve de manière optimale le contour. Ainsi, plus la valeur de est élevée, plus le calcul du poids d'un pixel appartenant au sous-ensemble de pixels appartenant à un contour Ac s'approche du calcul du poids d'un pixel appartenant au sous-ensemble de pixels appartenant à une zone uniforme Au. Par exemple, si tend vers l'infini alors Si tend vers 1, plus les pixels appartenant au sous-ensemble de pixels appartenant à un contour Ac ont un poids (et par conséquent une influence) élevé par rapport aux pixels appartenant au sous-ensemble de pixels appartenant à une zone uniforme Au. Une fois les poids des pixels p(x, y) de l'ensemble de pixels voisins B' calculés, l'algorithme d'interpolation spatiale est appliqué dans une étape d'interpolation E3, afin de déterminer le pixel à interpoler. Le pixel à interpoler est calculé de la façon suivante : w (x, y) . p(x, y) p(i, J) = (x,yB, Ew (x,y) (x,y)EB' Bien entendu, l'étape de calcul du poids E2 et l'étape d'interpolation E3 sont mises en oeuvre pour chaque pixel à interpoler p(i, j) du bloc manquant 2. Ainsi, grâce à l'invention, il est possible de déterminer les pixels à interpoler par un algorithme d'interpolation appliqué à un ensemble de pixels voisins, et de calculer le poids associé à chaque pixel voisin en fonction de l'appartenance à un contour d'image ou à une zone uniforme. Par conséquent, les contours d'image ou données hautes fréquences sont reconstruits par cet algorithme d'interpolation. Ainsi la qualité de l'image contenant le bloc reconstruit est améliorée. Par ailleurs, la détermination des pixels à interpoler est réalisée simplement dès lors qu'un seul algorithme d'interpolation est utilisé pour l'interpolation des pixels du bloc manquant, et rapidement, de sorte qu'elle puisse être utilisée dans des applications en temps réel. dii(x, y)a . 1cos(e ii(x, y)) [i_ •d~..(xy Bien entendu, de nombreuses modifications peuvent être apportées à l'exemple de réalisation décrit précédemment sans sortir du cadre de l'invention. Ainsi, l'ensemble de pixels voisins peut être la totalité des pixels 5 adjacents au bloc manquant. REVENDICATIONS 1. Procédé d'interpolation spatiale des pixels (p(i, j)) d'un bloc manquant (2) dans une image (1), dans lequel chaque pixel à interpoler (p(i, j)) dudit bloc (2) est déterminé par un algorithme d'interpolation appliqué à un ensemble de pixels voisins (B, B') appartenant à un ensemble de pixels adjacents (A) au bloc manquant (2), chaque pixel voisin (p(x, y)) étant pondéré dans ledit algorithme d'interpolation par un poids associé, caractérisé en ce que ledit poids associé à un pixel voisin (p(x, y)) est déterminé en fonction de la distance (d;i(x, y)) existant entre ledit pixel à interpoler (p(i, j)) dudit bloc (2) et ledit pixel voisin (p(x, y)), lorsque ledit pixel voisin n'appartient pas à un contour d'image (4), et en fonction de ladite distance (d;i(x, y)) et d'une information représentative de contour (GKIT) associée audit pixel voisin (p(x, y)), lorsque ledit pixel voisin (p(x, y)) appartient à un contour d'image (4). 2. Procédé d'interpolation spatiale conforme à la revendication 1, caractérisé en ce qu'il comporte une étape de détermination (El) de pixels adjacents (A) appartenant à un contour d'image (4) parmi ledit ensemble de pixels adjacents (A) au bloc manquant (2) et d'une information représentative de contour (GKIT) associée respectivement auxdits pixels adjacents (A) déterminés. 3. Procédé d'interpolation spatiale conforme à la revendication 2, caractérisé en ce que l'information représentative de contour (GKIT) est un vecteur de direction (GKIT) représentant la direction du contour (4). 4. Procédé d'interpolation spatiale conforme à la revendication 3, caractérisé en ce que le poids associé à un pixel voisin (p(x, y)) appartenant à un contour (4) est calculé en fonction de la valeur de la norme d'un vecteur distance (dlii(x,y)) formé entre ledit pixel à interpoler (p(i, j)) et ledit pixel voisin(p(x, y)) et d'un angle (0) formé par ledit vecteur distance (dl..(x,y)) et ledit vecteur de direction du contour (GKIT ). 5. Procédé d'interpolation spatiale conforme à l'une des revendications 3 ou 4, caractérisé en ce que la détermination dudit vecteur de direction de contour (GKIT) comporte les étapes suivantes : - calcul du gradient de l'intensité (GKI) associé respectivement à des pixels (pm(x, y)) appartenant à un ensemble de pixels (P) situé autour du bloc manquant (2) à partir de pixels appartenant à une matrice (100) de dimensions prédéterminées située autour du bloc manquant (2) ; - détermination à partir des gradients (GKI) calculés, d'un ensemble (Pc) de pixels (pc(x, y)) appartenant à un contour (4), parmi les pixels (pm(x, y)) appartenant audit ensemble de pixels (P) situé autour du bloc manquant (2) ; - pour chaque pixel (pc(x, y)) appartenant audit ensemble (Pc), détermination d'une direction normale au gradient associé audit pixel, ladite direction normale représentant la direction du contour (4) ; - détection des pixels intersection (Ac) respectivement entre lesdites directions normales et ledit ensemble de pixels adjacents (A) au bloc manquant (2) ; et -association d'un vecteur de direction (GKIT) représentant la direction du contour (4) à chaque pixel intersection (p(x, y)). 6. Procédé d'interpolation spatiale conforme à la revendication 5, caractérisé en ce que la détermination dudit ensemble (Pc) de pixels (pc(x, y)) appartenant à un contour (4) est réalisée au moyen d'une comparaison des normes desdits gradients (GKI) calculés avec une valeur seuil de norme (Gth), un pixel (pc(x, y)) appartenant audit ensemble (Pc) de pixels (pc(x, y)) lorsque la norme dudit gradient d'intensité (GKI) associé audit pixel (pc(x, y)) est supérieure à ladite valeur seuil de norme (Gth). 7. Procédé d'interpolation spatiale conforme à l'une des revendications 1 à 6, caractérisé en ce que ledit ensemble de pixels voisins (B) correspond à l'ensemble de pixels adjacents (A) au bloc manquant (2). 8. Procédé d'interpolation spatiale conforme à l'une des revendications 1 à 6, caractérisé en ce que ledit ensemble de pixels voisins (B') est un sous-ensemble de l'ensemble des pixels adjacents (A) audit bloc manquant (2), variable en fonction de la position dudit pixel à interpoler (p(i, j)) dans ledit bloc manquant (2). 9. Dispositif d'interpolation spatiale des pixels (p(i, j)) d'un bloc manquant (2) dans une image (1), comportant des moyens de détermination de chaque pixel à interpoler dudit bloc (2) adaptés à mettre en oeuvre un algorithme d'interpolation appliqué à un ensemble de pixels voisins (B, B') appartenant à un ensemble de pixels adjacents (A) audit bloc manquant (2), chaque pixel voisin (p(x, y)) étant pondéré dans ledit algorithme d'interpolation par un poids associé, caractérisé en ce qu'il comporte des moyens de détermination dudit poids associé à un pixel voisin (p(x, y)), en fonction de la distance (d;i(x, y)) existant entre ledit pixel à interpoler (p(i, j)) dudit bloc (2) et ledit pixel voisin (p(x, y)), lorsque ledit pixel voisin (p(x, y)) n'appartient pas à un contour d'image (4), et en fonction de ladite distance (d;i(x, y)) et d'une information représentative de contour (GKIT) associée audit pixel voisin (p(x, y)), lorsque ledit pixel voisin (p(x, y)) appartient à un contour d'image (4). 10. Dispositif d'interpolation spatiale conforme à la revendication 9, caractérisé en ce qu'il comporte des moyens de détermination de pixels adjacents (A) audit bloc manquant (2) appartenant à un contour d'image (4) parmi ledit ensemble de pixels adjacents (A) audit bloc manquant (2) et des moyens de détermination d'une information représentative de contour (GKIT ) associée respectivement auxdits pixels adjacents (A) déterminés. 11. Dispositif d'interpolation spatiale conforme à la revendication 10, caractérisé en ce que les moyens de détermination de ladite information représentative de contour (GKIT) comportent des moyens de détermination d'un vecteur de direction (GKIT) représentant la direction de contour (4). 12. Dispositif d'interpolation spatiale conforme à la revendication 11, caractérisé en ce qu'il comporte des moyens de calcul du poids associé à un pixel voisin (p(x, y)) appartenant à un contour (4) en fonction de la valeur de lanorme d'un vecteur distance (dlii (x, y)) formé entre ledit pixel à interpoler (p(i, j)) et ledit pixel voisin (p(x, y)) et d'un angle (6) formé par ledit vecteur distance y)) et ledit vecteur de direction (GKIT) du contour. 13. Dispositif d'interpolation spatiale conforme à l'une des revendications 11 ou 12, caractérisé en ce qu'il comporte : - des moyens de calcul du gradient de l'intensité (GKI) associé à chaque pixel (pm(x, y)) appartenant à un ensemble de pixels (P) situé autour du bloc manquant (2) à partir de pixels appartenant à une matrice (100) de dimensions prédéterminées située autour du bloc manquant (2) ; - des moyens de détermination à partir des gradients (GKI) calculés d'un ensemble (Pc) de pixels (pc(x, y)) appartenant à un contour (4), parmi les pixels (pm(x, y)) appartenant audit ensemble de pixels (P) situé autour du bloc manquant (2) ; - des moyens de détermination, pour chaque pixel (pc(x, y)) appartenant audit ensemble (Pc), d'une direction normale au gradient (VKI ) associé audit pixel (pm(x, y)), ladite direction normale représentant la direction du contour (GKIT) ; - des moyens de détection des pixels intersection (Ac) respectivement entre lesdites directions normales et ledit ensemble de pixels adjacents (A) audit bloc manquant (2); et - des moyens d'association d'un vecteur de direction (vKIT ) représentant la direction du contour à chaque pixel intersection (p(x, y)). 14. Dispositif d'interpolation spatiale conforme à la revendication 13, caractérisé en ce que lesdits moyens de détermination dudit ensemble (Pc) appartenant à un contour comportent des moyens de comparaison des normes desdits gradients (GKI) calculés avec une valeur seuil de norme, un pixel (pc(x, y)) appartenant audit ensemble (Pc) de pixels lorsque la norme dudit gradient d'intensité (GKI) associé audit pixel (pc(x, y)) est supérieure à ladite valeur seuil de norme. 15. Dispositif d'interpolation spatiale conforme à l'une des revendications 9 à 14, caractérisé en ce qu'il comporte des moyens de détermination dudit ensemble de pixels voisins (B), ledit ensemble de pixels voisins (B) correspondant audit ensemble de pixels adjacents (A) audit bloc manquant (2). 16. Dispositif d'interpolation spatiale conforme à l'une des revendications 9 à 14, caractérisé en ce qu'il comporte des moyens de détermination dudit ensemble de pixels voisins (B'), ledit ensemble de pixels voisins (B') étant un sous-ensemble de l'ensemble des pixels adjacents (A) audit bloc manquant (2), variable en fonction de la position dudit pixel à interpoler (p(i, j)) dans ledit bloc manquant (2). 17. Moyen de stockage d'informations lisible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, caractérisé en qu'il permet la mise en oeuvre d'un procédé d'interpolation spatiale conforme à l'une des revendications 1 à 8. 18. Moyen de stockage d'informations conforme à la revendication 17, caractérisé en ce qu'il est partiellement ou totalement amovible. 19. Produit programme d'ordinateur pouvant être chargé dans un appareil programmable, caractérisé en ce qu'il comporte de séquences d'instructions pour mettre en oeuvre un procédé d'interpolation spatiale conforme à l'une des revendications 1 à 8, lorsque ce programme est chargé et exécuté par l'appareil programmable.