Brevet FR2814627A1 — publié le 20020329

Procédé et dispositif de traitement d'image pour corriger des défauts de visualisation d'objets mobiles. L'invention concerne un procédé et un dispositif de traitement d'image pour corriger des défauts de visualisation d'objets mobiles. Plus particulièrement, l'invention se rapporte aux corrections de défauts produits par les dispositifs de visualisation ayant recours à l'intégration temporelle de sous-balayes d'image pour reproduire des niveaux de gris. Les dispositifs de visualisation concernés disposent d'une matrice de cellules élémentaires qui sont soit dans un état allumé, soit dans un état éteint. Parmi les dispositifs de visualisation, on s'intéresse plus particulièrement aux panneaux d'affichage au plasma. Les panneaux d'affichage au plasma, appelés par la suite PAP, sont des écrans de visualisation de type plat. Il existe deux grandes familles de PAP, à savoir les PAP dont le fonctionnement est du type continu et ceux dont le fonctionnement est du type alternatif. Les PAP comprennent généralement deux dalles isolantes (ou substrat), portant chacune un ou plusieurs réseaux d'électrodes et délimitant entre elles un espace rempli de gaz. Les dalles sont assemblées l'une à l'autre de manière à définir des intersections entre les électrodes desdits réseaux. Chaque intersection d'électrodes définit une cellule élémentaire à laquelle correspond un espace gazeux partiellement délimité par des barrières et dans lequel se produit une décharge électrique lorsque la cellule est activée. La décharge électrique provoque une émission de rayons UV dans la cellule élémentaire. Des luminophores déposés sur les parois de la cellule transforment les rayons UV en lumière visible. Pour les PAP de type alternatif, il existe deux types d'architecture de cellule, l'une est dite matricielle, l'autre est dite coplanaire. Bien que ces structures soient différentes, le fonctionnement d'une cellule élémentaire est sensiblement le même. Chaque cellule peut se retrouver dans état allumé ou éteint. Le maintien dans l'un des états se fait par l'envoi d'une succession d'impulsions dites d'entretien durant toute la durée pendant laquelle on désire maintenir cet état. L'allumage, ou adressage, d'une cellule se fait par l'envoi d'une impulsion plus importante, communément appelée impulsion d'adressage. L'extinction, ou effacement, d'une cellule se fait par annulation des charges à l'intérieur de la cellule à l'aide d'une décharge amortie. Pour obtenir différents niveaux de gris, on fait appel au phénomène d'intégration de l'cil en modulant les durées des états allumés et éteints à l'aide de sousbalayages, ou sous-trames, pendant la durée d'affichage d'une image. Pour pouvoir effectuer la modulation temporelle d'allumage de chaque cellule élémentaire, il est principalement utilisé deux techniques dites modes d'adressage . Un premier mode d'adressage, dit d'adressage pendant l'affichage (ou Addressing While Displaying), consiste à adresser chaque ligne de cellules pendant le maintien des autres lignes de cellules, l'adressage se faisant ligne par ligne de manière décalée. Un deuxième mode d'adressage, dit adressage à affichage séparé (Addressing and Display Separation), consiste à effectuer l'adressage, le maintien et l'effacement de toutes les cellules du panneau durant trois périodes distinctes. Pour plus de précisions sur ces deux modes d'adressage, l'homme du métier peut par exemple se reporter aux brevets américains n 5, 420,602 et 5,446, 344. Quel que soit le mode d'adressage utilisé, il existe de nombreux problèmes liés à l'intégration temporelle des cellules fonctionnant en mode tout ou rien. Un problème de faux contours consiste en l'apparition d'un trait plus sombre ou plus clair voire coloré lors de déplacement de zone de transition entre deux couleurs. Le phénomène de faux contour étant d'autant plus perceptible lorsque la transition se fait entre deux couleurs très proche que l'cil associe à une même couleur. Un problème de netteté de contour apparaît également sur les objets en mouvement. La figure 1 représente une répartition temporelle pour l'affichage de deux images consécutives avec une transition qui se déplace. Le temps d'affichage total de l'image est de 16,6 ou 20 ms suivant les pays. Durant le temps d'affichage, huit sous-balayages associés à des durées de poids 1,2, 4,8, 16,32, 64 et 128 sont réalisés afin de permettre 256 niveaux de gris par cellule. Chaque sous-balayage permet d'éclairer ou non une cellule élémentaire pendant une durée d'éclairement égal au poids 1,2, 4,8, 16, 32,64 ou 128 multiplié par une durée élémentaire. Les durées d'éclairement sont séparées par des opérations d'effacement et d'adressage pendant lesquelles les cellules sont éteintes. Une transition sur une couleur entre un niveau 128 et un niveau 127 est représentée pour une image 1 et une image 1+1 avec un décalage de 5 pixels. L'intégration faite par 'oeil revient à intégrer temporellement selon les droites obliques représentées. Le résultat de l'intégration se traduit par l'apparition d'un niveau de gris égal à zéro au moment de la transition entre les niveaux 128 et 127 alors que l'cil humain ne fait pas de distinction entre ces deux niveaux. Lorsque la transition se produit du niveau 127 vers le niveau 128, il y a apparition d'un niveau 0. Inversement, lorsque la transition se produit du niveau 128 vers le niveau 127, il y a apparition d'un niveau 255. Lorsque les trois couleurs primaires (rouge vert et bleu) sont combinées entre elles, ce changement de niveau peut se colorer et devenir encore plus visible. Une première solution consiste à casser les poids forts pour minimiser l'erreur. La figure 2 représente la même transition que la figure 1 en utilisant sept sous-balayage de poids 32 à la place des trois sousbalayage de poids 32,64 et 128. L'erreur d'intégration de l'oeil se fait alors sur une valeur maximale égale à un niveau 32. De nombreuses autres solutions ont été élaborées en jouant sur les poids des sous-balayages afin de minimiser l'erreur. Toutefois, quelle que soit la solution retenue pour la répartition de luminosité des différents sous-balayages, il subsiste toujours une erreur de visualisation due au codage. Dans la demande européenne no0 978 817 (ci-après D1) il est proposé de corriger l'image en fonction des mouvements constatés. Dans D1, on calcule des vecteurs de mouvement pour tous les pixels à afficher d'une image puis, on déplace les sous-balayages le long de ces vecteurs en fonction des différents poids des sous-balayages. La correction ainsi obtenue est représentée sur la figure 3. Le résultat de cette correction donne un excellent résultat sur les transitions qui provoque des effets de faux contours car généralement les zones appartenant à une transition sujette au faux contour se déplacent selon un même vecteur mouvement. Cependant la correction décrite dans D1 présente quelques défauts lors de la mise en pratique sur des séquences où les objets se croisent. La figure 4 illustre un champ de vecteur de mouvement obtenu à partir d'estimateurs de l'état de la technique. A chaque point de l'image courante (Image 1) est associé un vecteur mouvement indiquant la direction du mouvement par rapport à l'image précédente (Image 1-1). Lorsqu'un objet mobile se déplace devant un fond, une partie du fond apparaît tandis qu'une autre partie du fond disparaît. Si l'on essaie de déplacer les sous-balayages de l'image courante le long des vecteurs de mouvement, il apparaît une zone de conflit 1 et une zone de trou 2. La zone de conflit 2 se caractérise par le croisement de vecteur mouvement qui impose deux valeurs à un sous- balayage donné pour un point donné. La zone de trou se caractérise par une absence d'information. L'invention propose une méthode pour réaliser une compensation en mouvement du défaut de faux contour. Selon l'invention, on réalise une compensation en mouvement en déterminant, pour chaque sous-balayage, l'état de chaque cellule en lui attribuant l'état qui correspondrait à une image intermédiaire compensée en mouvement située à l'instant dudit sousbalayage. L'invention est un procédé d'affichage d'image vidéo sur un dispositif de visualisation qui comporte une pluralité de cellules dans lequel les niveaux de gris sont obtenus par intégration temporelle sur une période donnée d'une pluralité de sous-balayages pour lesquels chaque cellule est soit allumée soit éteinte. Pour chaque sous-balayage, on calcule une image intermédiaire correspondant à l'instant dudit sous-balayage, chaque image intermédiaire étant compensée en mouvement. Ensuite, on détermine l'état de chaque cellule pour chaque sous-balayage en y affectant la valeur de la cellule correspondant à l'image intermédiaire associée audit sous-balayage. Préférentiellement, on réalise une estimation de mouvement entre l'image à afficher et l'image précédente, les vecteurs mouvements obtenus par l'estimation de mouvement étant regroupés en champs de vecteurs parallèles. Pour chaque sous-balayage et pour chaque cellule, on détermine le vecteur de mouvement qui s'applique, puis on détermine le niveau de gris qui correspond en fonction de l'image à afficher et/ou de l'image qui précède l'image à afficher. Trois cas de figure sont envisageable en fonction des différentes zone de l'image pour un sous balayage donné. Si une cellule est soumise à un unique champ de vecteurs parallèles, alors le vecteur qui lui est associé correspond au champ de vecteurs et le niveau de gris correspond au niveau de gris de l'image à afficher sur lequel pointe le vecteur. Si une cellule est soumise à au moins deux champs de vecteurs parallèles, alors on détermine les vecteurs parallèles à tous les champs passant par la cellule et on associe à la cellule le vecteur pour lequel les niveaux de gris de l'image à afficher et de l'image précédente sont les plus proches, le niveau de gris associé à la cellule correspond au niveau de gris de l'image à afficher sur lequel le vecteur associé pointe. Si une cellule n'est soumise à aucun champ de vecteurs, alors on calcule un vecteur résultant correspondant à une moyenne des vecteurs voisins et on associe à la cellule le niveau de gris de l'image précédente correspondant au vecteur résultant. En variante, si une cellule n'est soumise à aucun champ de vecteurs, alors on prolonge les vecteurs de mouvement de l'image précédente, et on affecte un vecteur parallèle au champ de vecteurs prolongés de l'image précédente qui entoure la cellule, le niveau de gris associé à la cellule correspondant au niveau de gris de l'image précédente par lequel passe le vecteur affecté à la cellule. L'invention concerne également un dispositif de visualisation qui met en oeuvre le procédé défini précédemment. Plus particulièrement, le dispositif comporte une dalle plasma. L'invention sera mieux comprise, et d'autres particularités et avantages apparaîtront à la lecture de la description qui va suivre, la description faisant référence aux dessins annexés parmi lesquels : les figures 1 à 3 représentent l'intégration temporelle de niveaux de gris faite par l'oil humain sur des dispositifs de visualisation fonctionnant en tout ou rien, la figure 4 représente un exemple de champs de vecteurs fournis par un estimateur de mouvement, les figures 5 et 6 montrent des extrapolations de vecteurs de mouvement selon l'invention, la figure 7 représente la succession de tâches réalisées pour transformer une image vidéo en commande pour un dispositif de visualisation fonctionnant en tout ou rien, selon l'invention, et la figure 8 représente un schéma bloc d'un mode de réalisation de l'invention. Les figures 1 à 3 ayant été décrites précédemment, celle-ci ne seront pas décrites plus en détail. La figure 4 représente des vecteurs de mouvement tels que fournis par un estimateur de mouvement. L'estimateur de mouvement utilisé par l'invention est du même type que ceux utilisés pour réaliser de la conversion de fréquence de visualisation d'image avec compensation de mouvement. Les estimateurs de mouvement utilisés actuellement donnent des résultats proches de ceux que devrait donner un estimateur dit parfait. Les vecteurs de mouvement comportent une composante selon un axe horizontale et une composante selon un axe vertical de l'image qui correspond au déplacement du point entre deux images (ou deux trames suivant que l'on travaille en mode entrelacé ou progressif). Pour des raisons de représentation, l'image n'est représentée que sur une dimension par une suite linéaire de point selon l'axe horizontal, l'axe vertical représentant le temps. Pour une image 1 donné, l'estimateur de mouvement associe à chaque point un vecteur de mouvement qui pointe sur l'image précédente selon des techniques connues. Pour les points correspondant à un fond apparaissant, les estimateurs sont capables de déterminer de manière fiable les vecteurs associés, en fonction des vecteurs voisins et des textures de groupe de points de l'image courante (image 1) et de l'image précédente (image 1-1). Les résultats obtenus font apparaître des zones de conflit 1 qui correspondent à des croisements de vecteurs de mouvement et des zones de trou 2 où aucun vecteur ne passe. Selon l'invention, on associe à chaque sous-balayage une image intermédiaire compensée en mouvement pour déterminer les valeurs allumées ou éteintes des cellules pour ledit sous-balayage. La figure 5 illustre une première façon de calculer les valeurs des cellules. Tout d'abord, on effectue une estimation de mouvement entre l'image 1 et l'image 1-1. Le résultat de l'estimation de mouvement est un ensemble de vecteurs V1 à V20 qui pointent tous sur un unique pixel de l'image 1. Chaque pixel de l'image 1 dispose d'un vecteur de mouvement associé qui part de l'image 1-1. Dans notre exemple de réalisation, les vecteurs de mouvement sont regroupés en champs de vecteurs CV1 à CV3. Les champs de vecteurs CV1 à CV3 correspondent à des zones de pixels continues de l'image 1 associée à un même vecteur de mouvement en incluant la projection de cette zone de pixel sur l'image 1-1 selon l'axe du vecteur de mouvement associé. Le regroupement se fait par comparaison entre les vecteurs associés à des pixels voisins, si deux vecteurs sont parallèles alors les deux pixels appartiennent au même champ. Selon une variante, il est possible d'admettre que deux vecteurs sont parallèles avec une faible marge d'erreur, par exemple +/-0, 1 pixels de décalage en abscisse et/ou en ordonnée. Le calcul d'une image intermédiaire associée à un sous-balayage se fait à l'instant correspondant à la fin dudit sous-balayage. Pour chaque pixel de l'image intermédiaire, on regarde quel champ de vecteur CV1 à CV3 s'applique. Lorsqu'un seul champ de vecteur est applicable, par exemple pour les pixels P1 et P2, on regarde à quel pixel celui-ci correspond sur l'image 1 par une projection selon la direction du champ de vecteur CV2 ou CV3 respectivement. Bien évidemment, la projection peut ne pas correspondre à un pixel de l'image 1, dans ce cas, on prend par exemple la valeur du pixel le plus proche ou on effectue une moyenne pondérée sur les valeurs de pixels les plus proches. Si on se trouve dans une zone de conflit comme par exemple le pixel P3, alors on détermine quel champ de vecteur s'applique. Pour cela, on effectue, selon la direction de chacun des champs de vecteurs CV2 et CV3 dans lesquels est placé le pixel P3, une projection du pixel P3 d'une part sur l'image 1 et d'autre part sur l'image 1-1. Puis, on effectue la différence entre les valeurs des pixels (ou les pixels résultant d'une éventuelle moyenne) des images 1 et 1-1 selon chacune des directions. On compare, ensuite, les valeurs absolues des deux différences afin de déterminer selon quelle direction les pixels des images 1 et 1-1 sont les plus proches. On affecte alors au pixel P3 le champ CV2 correspondant à la direction pour laquelle les pixels des images 1 et 1-1 sont les plus proches. Finalement, on associe alors au pixel P3 la valeur correspondant à sa projection sur l'image 1 selon la direction du champ CV2 auquel il est associé. Si, par contre, on se trouve dans une zone de trou comme par exemple le pixel P4, alors on détermine un vecteur Vm en fonction des champs de vecteur CV1 et CV2 entourant la zone de trou. Le vecteur Vm est calculé en réalisant une moyenne des vecteurs associés aux champs de vecteurs CV1 et CV2 entourant la zone, la moyenne étant pondérée par la distance sur l'image intermédiaire qui sépare le pixel P3 de chaque champ de vecteur CV1 et CV2. On effectue ensuite une projection du pixel P3 sur l'image 1-1 selon la direction du vecteur Vm pour déterminer la valeur à associer au pixel P3. Pour associer une image intermédiaire à un sous-balayage, on considère, dans l'exemple décrit précédemment, l'instant de fin d'un sousbalayage comme étant l'instant où doit se placer l'image, l'image 1 correspondant à l'instant de fin du dernier sous-balayage. En variante, l'homme du métier peut également associer les instants de début de sousbalayage aux images. Une autre variante consiste également à associer l'image 1 avec le premier sous-balayage de l'image, dans ce cas il faudra calculer les vecteurs de mouvement avec l'image 1+1 et retarder la visualisation d'une image. La figure 6 représente une variante pour déterminer les valeurs de pixels dans les zones de trou. Pour cette méthode, on détermine les champs de vecteurs correspondant aux prolongations des champs de vecteur de l'image 1-1. Les pixels P1 à P3 se trouvant tous dans des zones où au moins un champs de vecteur CV2 et/ou CV3 est présent, on détermine la valeur de ces pixels par exemple comme précédemment. Par contre, le pixel P3 se trouvant dans une zone de trous, on prend en compte le champ de vecteur CV'qui correspond à la prolongation d'un champ de vecteur calculé à l'aide des images 1-1 et 1-2. On projette le pixel P3 sur l'image 1-1 selon la direction du champ de vecteur CV'. La valeur associée au pixel P3 est égale à la valeur du pixel de l'image 1-1 selon la projection (ou égal à la moyenne pondérée des pixels les plus proches). Pour résumer le procédé mis en oeuvre quelle que soit la méthode utilisée pour déterminer les vecteurs ou direction de vecteur à appliquer aux différents pixels des différentes images intermédiaires, on se réfère à la figure 7. A la réception d'une nouvelle image, on effectue une première étape E1 d'estimation de mouvement entre la nouvelle image 1 et l'image précédente 1-1. Cette estimation de mouvement se déroulant selon l'une des multiples techniques connues. A l'issue de la première étape E1, on effectue une deuxième étape E2 d'extrapolation de vecteurs de mouvement. Durant cette deuxième étape E2, on associe à chaque pixel et pour chaque sous-balayage un vecteur de mouvement calculé à partir des vecteurs de mouvement obtenu pendant la première étape E1. Eventuellement, on réutilise les vecteurs de mouvement obtenu pour une première étape E1 réalisée sur l'image précédente 1-1, comme expliqué précédemment. A l'issu de la deuxième étape E2 ou en partie simultanément avec ladite étape E2, on effectue une troisième étape E3 de calcul de niveau de gris. Cette troisième étape E3 consiste à déterminer le niveau de gris qui s'applique pour chaque pixel de chaque sous-balayage en fonction du vecteur calculé associé et de l'image courante 1 ou de l'image précédente 1-1, comme expliqué précédemment. Le chevauchement des deuxième et troisième étapes E2 et E3 peut se faire dès qu'un vecteur de mouvement a été calculé pour un pixel d'un sous-balayage. Afin de réduire au minimum les ressources nécessaires à l'invention, le calcul des images intermédiaire se limite aux informations nécessaires à la détermination de l'état des cellules pour ledit sousbalayage. Pour chaque sous-balayage, on détermine pour chaque cellule le vecteur de mouvement qui s'applique, mais on ne calcule le niveau de gris correspondant que si le vecteur de mouvement ne pointe pas sur un unique pixel. Enfin on procédera à l'encodage des niveaux de gris au cours d'une étape E4. Selon l'invention, on détermine l'état allumé ou éteint d'une cellule du PAP pour un sous-balayage donné en fonction du pixel correspondant à la cellule pour le sous-balayage donné. A titre d'exemple d'encodage, on considère sur la figure 5 que les niveaux de gris associés aux pixels contenu dans le champ de vecteur CV2 sont tous au niveau 127 et que les niveaux de gris associés aux pixels contenu dans le champ CV3 sont tous au niveau 64. Le niveau de la cellule C12 est encodé au niveau 127 et le niveau de la cellule C18 est encodé au niveau 64. Les cellules C13 à C17 sont à des niveaux intermédiaires. Pour le sous-balayage de poids 1, les cellules C13 à C17 appartiennent au champ CV2. Pour les sousbalayages de poids 2,4, 8 et 16, les cellules C13 à C16 appartiennent au champ CV2 alors que la cellule C17 appartient au champ CV3. Pour le premier sous-balayage de poids 32, les cellules C13 à C15 appartiennent au champ CV2 et les cellules C16 et C17 appartiennent au champ CV3. Pour les deuxième et troisième sous-balayages de poids 32, les cellules C13 et C14 appartiennent au champ CV2 et les cellules C15 à C17 appartiennent au champ CV3. Pour les quatrième et cinquième sous-balayages de poids 32, la cellule C13 appartient au champ CV2 et les cellules C14 à C17 appartiennent au champ CV3. Pour les sixième et septième sous-balayages de poids 32, les cellules C13 à C17 appartiennent au champ CV3. Les valeurs encodées sur les cellules C13 à C17 sont donc respectivement égales à 127,127, 95,95 et 65. La création de la table d'allumage se fait ensuite selon une technique connue à partir des niveaux encodés. De très nombreuses structures de mise en oeuvre sont possibles. Un exemple de réalisation est représenté sur la figure 8. Une mémoire d'image 800 reçoit un flux d'images pour mémorisation. La taille de la mémoire 800 permet de mémoriser au moins trois images, l'image 1+1 étant mémoriser pendant le traitement de l'image 1 qui utilise l'image 1-1. Un circuit de calcul 801, par exemple un processeur de signal, réalise l'encodage selon le procédé décrit précédemment et fournit les signaux d'allumage au circuit de pilotage de colonnes d'une dalle plasma 803. Un circuit de synchronisation 804 effectue la synchronisation des circuits de pilotage de colonnes 802 et de lignes 805. Comme peut le comprendre l'homme du métier, de très nombreuses variantes sur le circuit de mise en oeuvre sont possibles. REVENDICATIONS 1. Procédé d'affichage d'image vidéo sur un dispositif de visualisation qui comporte une pluralité de cellules dans lequel les niveaux de gris sont obtenus par intégration temporelle sur une période donnée d'une pluralité de sous-balayages pour lesquels chaque cellule est soit allumée soit éteinte, caractérisé en ce que : - pour chaque sous-balayage, on calcule une image intermédiaire correspondant à l'instant dudit sous-balayage, chaque image intermédiaire étant compensée en mouvement, - on détermine l'état de chaque cellule pour chaque sous- balayage en y affectant la valeur de la cellule correspondant à l'image intermédiaire associée audit sous-balayage. 2. Procédé selon la revendication 1, caractérisé en ce que, on réalise une estimation de mouvement entre l'image à afficher et l'image précédente, les vecteurs mouvements obtenus par l'estimation de mouvement étant regroupés en champs de vecteurs parallèles, et en ce que, pour chaque sous-balayage et pour chaque cellule, on détermine le vecteur de mouvement qui s'applique, puis on détermine le niveau de gris qui correspond en fonction de l'image à afficher et/ou de l'image qui précède l'image à afficher. 3. Procédé selon la revendication 2, caractérisé en ce que, pour un sous-balayage donné, si une cellule est soumise à un unique champ de vecteurs parallèles, alors le vecteur qui lui est associé correspond au champ de vecteurs et le niveau de gris correspond au niveau de gris de l'image à afficher sur lequel pointe le vecteur. 4. Procédé selon la revendication 2, caractérisé en ce que, pour un sous-balayage donné, si une cellule est soumise à au moins deux champs de vecteurs parallèles, alors on détermine les vecteurs parallèles à tous les champs passant par la cellule et on associe à la cellule le vecteur pour lequel les niveaux de gris de l'image à afficher et de l'image précédente sont les plus proches, le niveau de gris associé à la cellule correspond au niveau de gris de l'image à afficher sur lequel le vecteur associé pointe. 5. Procédé selon la revendication 2, caractérisé en ce que, pour un sous-balayage donné, si une cellule n'est soumise à aucun champ de vecteurs, alors on calcule un vecteur résultant correspondant à une moyenne des vecteurs voisins et on associe à la cellule le niveau de gris de l'image précédente correspondant au vecteur résultant. 6. Procédé selon la revendication 2, caractérisé en ce que, pour un sous-balayage donné, si une cellule n'est soumise à aucun champ de vecteurs, alors on prolonge les vecteurs de mouvement de l'image précédente, et on affecte un vecteur parallèle au champ de vecteurs prolongés de l'image précédente qui entoure la cellule, le niveau de gris associé à la cellule correspondant au niveau de gris de l'image précédente par lequel passe le vecteur affecté à la cellule. 7. Dispositif de visualisation caractérisé en ce qu'il met en oeuvre le procédé de l'une des revendications 1 à 6. 8. Dispositif selon la revendication 7, caractérisé en ce qu'il comporte une dalle plasma.