EP2025143A1 - Method of coding of a digital color image including marking information - Google Patents

Method of coding of a digital color image including marking information

Info

Publication number
EP2025143A1
EP2025143A1 EP07765287A EP07765287A EP2025143A1 EP 2025143 A1 EP2025143 A1 EP 2025143A1 EP 07765287 A EP07765287 A EP 07765287A EP 07765287 A EP07765287 A EP 07765287A EP 2025143 A1 EP2025143 A1 EP 2025143A1
Authority
EP
European Patent Office
Prior art keywords
critical
image
coded
components
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP07765287A
Other languages
German (de)
French (fr)
Inventor
Eric Filliatre
Patrice Capircio
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thales SA
Original Assignee
Thales SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thales SA filed Critical Thales SA
Publication of EP2025143A1 publication Critical patent/EP2025143A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking

Definitions

  • the field of the invention is that of the operational safety of the visualization systems.
  • the field of application is more particularly that of cockpit systems on aircraft. This type of system is intended to display critical information for the piloting of the aircraft. As such, the incorrect display of certain parameters can lead to a catastrophic situation in terms of operating safety.
  • the basic integrity of the chain of view is not sufficient to guarantee these safety requirements, it is necessary to implement monitoring mechanisms to detect such errors.
  • the problem of verifying and monitoring the quality of an image essentially consists of identifying characteristic elements of this image and then analyzing whether these elements remain correctly positioned along the visualization chain. This problem has been solved in two different ways in the current solutions:
  • the solution consists in verifying the result of the computations applied on the characteristic points of the image by the graphical generation chain, but without propagating the information of marking of these points until the image memory;
  • the solution is to have the image computed by two dissimilar paths and then to compare the graphical result during the simultaneous replay of the two image memories.
  • the technique used in the first case consists of identifying the characteristic points of the image during its specification by associating them with a marker. These characteristic points thus retain their marker throughout the image calculation chain, which allows the graphic generation to be able to provide the result of the calculations. applied on these points to an external verification module. Once these calculation results are available, it is then possible to check whether they are in conformity with the expected results.
  • This solution has several disadvantages: • It only applies to specific graphic generation solutions that are:
  • the technique used in the second case consists in carrying out verification of the content of an image by pixel-to-pixel comparison of the image coming from two dissimilar and independent paths. The verification is then done on the basis of the comparison of the colors. It requires the management of an adapted tolerance threshold which makes it possible not to impose on each of the graphic generation channels to have a strictly identical result.
  • This technique has several variants, so that one channel generates the complete image and the other channel generates only the elements of the image whose integrity must be verified.
  • This solution has several disadvantages. Indeed, it imposes to implement two dissimilar chains of graphic generation, with significant impacts in terms of performance and development cost.
  • it is necessary to demonstrate that the tolerance threshold used for the colorimetric comparison of the images makes it possible in all cases to guarantee the integrity of the image. The determination of this "right" threshold is difficult to obtain.
  • the object of the invention is to provide, at the output of the graphic generation chain, markers in the image which will make it possible to guarantee the display integrity of the on-board visualization system. These marks are in particular associated with the critical symbols of the image and make it possible to check the integrity of these symbols.
  • the invention consists in elaborating the sequence of graphical operations which leads to the insertion of markers in the form of bits set to "1" at the location of the bits not used in the so-called RGB color components, an acronym for Rouge-Vert. -Blue.
  • the subject of the invention is a method for coding the pixels of a color digital image comprising critical symbols represented by critical pixels, each color pixel being coded on three digital components each comprising the same number of bits, characterized in that that the components of the critical pixels comprise on the one hand a color information and on the other hand a marker also called "tag" encoded on at least one bit, said marker being intended to be exploited by generation and prediction functions critical symbols.
  • the components are coded on eight bits, two of the components comprising five-bit color information and one of the components comprising six-bit color information.
  • the color information is coded on the bits of low weight or LSB (Least Significant Bit).
  • the method is carried out in a device for generating digital images comprising a GPU type computing unit comprising at least one image memory, a memory dedicated to "masks” also called “stencils” comprising at least one plane memory and a graphics processor, and said method comprises at least four steps:
  • a first step of generating non-critical symbols in the image memory A second step of generating critical symbols in the image memory and generating markers associated with said critical symbols in a memory plane of the memory dedicated to "masks";
  • the invention also relates to an electronic device for generating digital images comprising a computing unit of GPU type (Graphie Processing Unit) characterized in that it comprises a coding method according to one of the preceding claims.
  • GPU type Graphie Processing Unit
  • FIG. 1 represents the general block diagram of an electronic device for digital image generation according to the invention
  • FIG. 2 represents the main steps of the method according to the invention
  • FIG. 3 represents the general block diagram of an electronic device for securing digital images comprising an electronic device for generating digital images according to the invention.
  • the basic principle of the invention consists of:
  • OpenGL an acronym for Open Graphics library, is a multi-platform programming interface for designing applications that generate two- or three-dimensional images. This interface groups different functions that can be used to display complex three-dimensional scenes from simple primitives;
  • the graphic generation chain provides the image in a digital video format in which the colors are represented by their three RGB components (Red, Green and Blue);
  • the graphic generation chain has a memory resource dedicated to mask management. As an illustration, in the OpenGL standard, this resource is called “stencils”. This memory resource is used for marker management.
  • LSB is conventionally called the least significant bits, LSB being the acronym for Least Significant Bit and MSB, the most significant bits, MSB being the acronym for Most Significant Bit.
  • LSB being the acronym for Least Significant Bit
  • MSB the most significant bits
  • coding of the color pixels of a symbology does not require a range of color as important as that of a real image. Generally, a few dozen colors are enough to encode all the characters and symbols. As a result, useful colors can be encoded using only a limited number of bits of each component. For example, a typical configuration can be:
  • the coding of the marker requires only a limited number of bits, generally one bit is sufficient. Thus, it is possible to code on the same component both the color information and the marking information.
  • the various steps of the method consist in elaborating the sequence of graphic operations which leads to inserting for each pixel the marker stored in the memory of the masks at the location of the bits not used in the RGB color components, taking into account the constraints and special rules related to the use of graphic processors.
  • FIGS. 1 and 2 when implemented in a GPU, the entire process comprises four steps denoted 1, 2, 3 and 4 which are detailed below. These different steps are illustrated in FIGS. 1 and 2.
  • FIG. 1 the path of the non-critical symbols S N c is represented by dotted arrows and the path of the critical symbols Sc is represented by continuous arrows:
  • Step 1 Any non-critical symbol S NC is conventionally generated in the image memory 10 of the GPU 1 in RGB format, each pixel being coded on five bits on the LSBs of the Red, six bits on the LSB of the Green and five bits on the LSB of the Blue;
  • Step 2 Any critical symbol Sc is generated simultaneously in the image memory 10 in RGB format and in a memory plane 12 dedicated to the masks which has a depth bit.
  • any pixel written in the image memory is assigned a corresponding pixel and set to "1" in the mask plane.
  • the RGB color image is available in the process image and the pixel markers are available in the mask plane.
  • Each pixel is coded on five bits on the LSBs of the Red, six bits on the LSBs of the Green and five bits on the LSBs of the Blue;
  • Step 3 This step consists in inserting, by means of the calculation unit 1 1 of the GPU 1, a marker in the image memory for each pixel which has a correspondent positioned at "1" in the mask plane.
  • the technique used is to draw a surface or a set of surfaces: o Which cover the area of the image in which the markers are to be inserted. For example, depending on the importance of the symbology generated, a single surface may cover the entire image or one or more surfaces may cover a subset of the image; o Which are assigned a color whose active bits correspond to the markers that are inserted into the process image. These active bits must be positioned on the unused bits of the process image; o Which will be subject to a color mixing law such as, if a pixel of the mask plane is set to
  • Step 4 This step corresponds to the replay of the image memory by the graphical generation chain which then provides per pixel on the digital video output the combination of RGB color information and pixel marking information.
  • I M this image with markers.
  • FIG. 3 A portion of secure graphical generation chain implementing the method according to the invention is described in FIG. 3. It essentially comprises:
  • the operating principle is as follows: the prediction calculation unit calculates the position of the critical symbols in the image. These calculations are compared by means of the extraction and comparison unit at the positions of the critical symbols identified by their markers. So we know if the graphical generation chain is working properly.
  • the method takes into account the superposition management or symbol priority functions, functions called in OpenGL functions "clipping",
  • the solution provided is extensible to a number N of mask planes.
  • N In the case of non-overlapping critical symbols, it is thus possible to manage 2N markers or tags.
  • superimposed critical symbols it is then possible to manage N different tags.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

The domain of the invention is that of the reliability of the operation of visualisation systems. The applicable domain is, more precisely, that of cockpit systems installed in airplanes. The invention concerns a pixel coding process of a digital color image including critical symbols represented by critical pixels, each colored pixel being coded into three numerical components, each including the same number of bits. The components of the critical pixels include, on the one hand, information concerning the color and on the other, an additional marker known as a coded "tag" on at least one bit, said marker being intended to be used by the generation and prediction functions of the critical symbols.

Description

PROCEDE DE CODAGE D'UNE IMAGE NUMERIQUE COULEUR COMPORTANT UNE INFORMATION DE MARQUAGE METHOD FOR ENCODING A COLOR DIGITAL IMAGE HAVING MARKING INFORMATION
Le domaine de l'invention est celui de la sûreté de fonctionnement des systèmes de visualisation. Le domaine d'application est plus particulièrement celui des systèmes de cockpit embarqués sur aéronefs. Ce type de système est destiné à afficher des informations critiques pour le pilotage de l'aéronef. A ce titre, l'affichage erroné de certains paramètres peut conduire à une situation catastrophique en terme de sûreté de fonctionnement. L'intégrité de base de la chaîne de visualisation n'étant pas suffisante pour garantir ces exigences de sûreté, il est nécessaire de mettre en œuvre des mécanismes de surveillance destinés à détecter de telles erreurs.The field of the invention is that of the operational safety of the visualization systems. The field of application is more particularly that of cockpit systems on aircraft. This type of system is intended to display critical information for the piloting of the aircraft. As such, the incorrect display of certain parameters can lead to a catastrophic situation in terms of operating safety. The basic integrity of the chain of view is not sufficient to guarantee these safety requirements, it is necessary to implement monitoring mechanisms to detect such errors.
Le problème de la vérification et de la surveillance de la qualité d'une image consiste essentiellement à identifier des éléments caractéristiques de cette image puis à analyser si ces éléments restent correctement disposés le long de la chaîne de visualisation. Ce problème a été résolu de deux manières différentes dans les solutions actuelles :The problem of verifying and monitoring the quality of an image essentially consists of identifying characteristic elements of this image and then analyzing whether these elements remain correctly positioned along the visualization chain. This problem has been solved in two different ways in the current solutions:
• Dans le premier cas, la solution consiste à vérifier le résultat des calculs appliqués sur les points caractéristiques de l'image par la chaîne de génération graphique, mais sans propager l'information de marquage de ces points jusqu'à la mémoire image ;• In the first case, the solution consists in verifying the result of the computations applied on the characteristic points of the image by the graphical generation chain, but without propagating the information of marking of these points until the image memory;
• Dans le second cas, la solution consiste à faire calculer l'image par deux voies dissemblables puis à comparer le résultat graphique lors de la relecture simultanée des deux mémoires d'images.• In the second case, the solution is to have the image computed by two dissimilar paths and then to compare the graphical result during the simultaneous replay of the two image memories.
La technique mise en œuvre dans le premier cas consiste à identifier les points caractéristiques de l'image lors de sa spécification en leur associant un marqueur. Ces points caractéristiques conservent ainsi leur marqueur tout au long de la chaîne de calcul de l'image, ce qui permet à la génération graphique d'être capable de fournir le résultat des calculs appliqués sur ces points à un module externe de vérification. Une fois ces résultats de calcul disponibles, il est alors possible de vérifier s'ils sont conformes aux résultats attendus. Cette solution présente plusieurs inconvénients : • Elle ne s'applique qu'à des solutions de générations graphiques spécifiques qui sont :The technique used in the first case consists of identifying the characteristic points of the image during its specification by associating them with a marker. These characteristic points thus retain their marker throughout the image calculation chain, which allows the graphic generation to be able to provide the result of the calculations. applied on these points to an external verification module. Once these calculation results are available, it is then possible to check whether they are in conformity with the expected results. This solution has several disadvantages: • It only applies to specific graphic generation solutions that are:
• Capables d'accepter des marqueurs sur les points caractéristiques fournis en entrée de la chaîne de calcul ; • Capables de propager le marqueur le long de la chaîne de calcul ;• Capable of accepting markers on the characteristic points provided at the input of the computation chain; • Able to propagate the marker along the computation chain;
• Capables d'extraire les résultats des calculs appliqués sur les points caractéristiques.• Able to extract the results of the calculations applied on the characteristic points.
• Elle ne couvre pas la phase d'écriture des points caractéristiques dans la mémoire image et la phase de relecture de la mémoire image, de telle sorte qu'une corruption des points soit en position, soit par effacement n'est pas couverte par ce mécanisme.• It does not cover the writing phase of the characteristic points in the process image and the readback phase of the process image, so that a corruption of the points is in position, or by erasure is not covered by this mechanism.
• Elle nécessite des mécanismes complémentaires qui permettent de vérifier l'intégrité des phases d'accès aux mémoires images comme l'écriture, la lecture ou l'échange de données encore appelé « swap ».• It requires complementary mechanisms that make it possible to check the integrity of the access phases to the image memories such as writing, reading or data exchange, also called "swap".
La technique mise en oeuvre dans le second cas consiste à réaliser la vérification du contenu d'une l'image par la comparaison pixel à pixel de l'image issue de deux voies dissemblables et indépendantes. La vérification se fait alors sur la base de la comparaison des couleurs. Elle nécessite la gestion d'un seuil de tolérance adapté qui permet de ne pas imposer à chacune des voies de génération graphique d'avoir un résultat strictement identique. Cette technique dispose de plusieurs variantes, de telle manière qu'une voie génère l'image complète et l'autre voie génère uniquement les éléments de l'image dont l'intégrité doit être vérifiée. Cette solution présente plusieurs inconvénients. En effet, elle impose de mettre en oeuvre deux chaînes dissemblables de génération graphique, avec des impacts significatifs en terme de performance et de coût de développement. De plus, il est nécessaire de démontrer que le seuil de tolérance mis en oeuvre pour la comparaison colorimétrique des images permet de garantir dans tous les cas l'intégrité de l'image. La détermination de ce « juste » seuil est délicate à obtenir.The technique used in the second case consists in carrying out verification of the content of an image by pixel-to-pixel comparison of the image coming from two dissimilar and independent paths. The verification is then done on the basis of the comparison of the colors. It requires the management of an adapted tolerance threshold which makes it possible not to impose on each of the graphic generation channels to have a strictly identical result. This technique has several variants, so that one channel generates the complete image and the other channel generates only the elements of the image whose integrity must be verified. This solution has several disadvantages. Indeed, it imposes to implement two dissimilar chains of graphic generation, with significant impacts in terms of performance and development cost. In addition, it is necessary to demonstrate that the tolerance threshold used for the colorimetric comparison of the images makes it possible in all cases to guarantee the integrity of the image. The determination of this "right" threshold is difficult to obtain.
Le but de l'invention est de fournir en sortie de la chaîne de génération graphique des repères dans l'image qui vont permettre de garantir l'intégrité d'affichage de la chaîne de visualisation embarquée. Ces repères sont en particulier associés aux symboles critiques de l'image et permettent de vérifier l'intégrité de ces symboles. L'invention consiste à élaborer la séquence d'opérations graphiques qui conduit à l'insertion de repères sous la forme de bits positionnés à « 1 » à l'emplacement des bits non utilisés dans les composantes couleur dites RVB, acronyme de Rouge- Vert-Bleu.The object of the invention is to provide, at the output of the graphic generation chain, markers in the image which will make it possible to guarantee the display integrity of the on-board visualization system. These marks are in particular associated with the critical symbols of the image and make it possible to check the integrity of these symbols. The invention consists in elaborating the sequence of graphical operations which leads to the insertion of markers in the form of bits set to "1" at the location of the bits not used in the so-called RGB color components, an acronym for Rouge-Vert. -Blue.
Plus précisément, l'invention a pour objet un procédé de codage des pixels d'une image numérique couleur comportant des symboles critiques représentés par des pixels critiques, chaque pixel coloré étant codé sur trois composantes numériques comportant chacune le même nombre de bits, caractérisé en ce que les composantes des pixels critiques comporte d'une part une information de couleur et d'autre part un marqueur encore appelé « tag » codé sur au moins un bit, ledit marqueur étant destiné à être exploité par des fonctions de génération et de prédiction des symboles critiques. Avantageusement, les composantes sont codées sur huit bits, deux des composantes comportant une information de couleur codée sur cinq bits et une des composantes comportant une information de couleur codée sur six bits.More specifically, the subject of the invention is a method for coding the pixels of a color digital image comprising critical symbols represented by critical pixels, each color pixel being coded on three digital components each comprising the same number of bits, characterized in that that the components of the critical pixels comprise on the one hand a color information and on the other hand a marker also called "tag" encoded on at least one bit, said marker being intended to be exploited by generation and prediction functions critical symbols. Advantageously, the components are coded on eight bits, two of the components comprising five-bit color information and one of the components comprising six-bit color information.
Avantageusement, l'information de couleur est codée sur les bits de poids faible ou LSB (Least Signifiant Bit).Advantageously, the color information is coded on the bits of low weight or LSB (Least Significant Bit).
Avantageusement, le procédé est réalisé dans un dispositif de génération d'images numériques comportant une unité de calcul de type GPU comportant au moins une mémoire image, une mémoire dédiée aux « masques » encore appelés « stencils » comportant au moins un plan mémoire et un processeur graphique, et ledit procédé comporte au moins quatre étapes :Advantageously, the method is carried out in a device for generating digital images comprising a GPU type computing unit comprising at least one image memory, a memory dedicated to "masks" also called "stencils" comprising at least one plane memory and a graphics processor, and said method comprises at least four steps:
• Une première étape de génération des symboles non critiques dans la mémoire image ; • Une seconde étape de génération des symboles critiques dans la mémoire image et de génération des marqueurs associés auxdits symboles critiques dans un plan mémoire de la mémoire dédiée aux « masques » ;• A first step of generating non-critical symbols in the image memory; A second step of generating critical symbols in the image memory and generating markers associated with said critical symbols in a memory plane of the memory dedicated to "masks";
• Une troisième étape de création de l'image codée par le processeur graphique en incorporant lesdits marqueurs aux composantes des pixels des symboles critiques ;A third step of creating the image coded by the graphics processor by incorporating said markers into the pixel components of the critical symbols;
• Une quatrième étape de relecture de l'image codée . L'invention concerne également un dispositif électronique de génération d'images numériques comportant une unité de calcul de type GPU (Graphie Processing Unit) caractérisé en ce qu'il comporte un procédé de codage selon l'une des revendications précédentes.• A fourth step of replaying the coded image. The invention also relates to an electronic device for generating digital images comprising a computing unit of GPU type (Graphie Processing Unit) characterized in that it comprises a coding method according to one of the preceding claims.
L'invention sera mieux comprise et d'autres avantages apparaîtront à la lecture de la description qui va suivre donnée à titre non limitatif et grâce aux figures annexées parmi lesquelles :The invention will be better understood and other advantages will become apparent on reading the description which follows given by way of non-limiting example and by virtue of the appended figures among which:
• La figure 1 représente le synoptique général d'un dispositif électronique de génération d'images numérique selon l'invention ;FIG. 1 represents the general block diagram of an electronic device for digital image generation according to the invention;
• La figure 2 représente les principales étapes du procédé selon l'invention ;FIG. 2 represents the main steps of the method according to the invention;
• La figure 3 représente le synoptique général d'un dispositif électronique de sécurisation d'images numériques comportant un dispositif électronique de génération d'images numériques selon l'invention.FIG. 3 represents the general block diagram of an electronic device for securing digital images comprising an electronic device for generating digital images according to the invention.
Le principe de base de l'invention consiste à :The basic principle of the invention consists of:
• Mettre en œuvre un mécanisme de marquage des pixels dans l'image qui couvre dans sa globalité :• Implement a mechanism for marking pixels in the image that covers in its entirety:
• La chaîne de calcul des points caractéristiques de l'image, • L'écriture des points dans le mémoire image, • L'échange encore appelé « swap » et la lecture des mémoires images.• The chain of calculation of the characteristic points of the image, • The writing of the points in the image memory, • The exchange still called "swap" and the reading of the image memories.
• Exploiter uniquement des ressources graphiques génériques disponibles sur les chaînes de génération d'image standard de type OpenGL. OpenGL, acronyme de Open Graphics library, est une interface de programmation multi plate-forme pour la conception d'applications générant des images bi- ou tridimensionnelles. Cette interface regroupe des fonctions différentes qui peuvent être utilisées pour afficher des scènes tridimensionnelles complexes à partir de simples primitives ;• Use only generic graphical resources available on OpenGL standard image generation chains. OpenGL, an acronym for Open Graphics library, is a multi-platform programming interface for designing applications that generate two- or three-dimensional images. This interface groups different functions that can be used to display complex three-dimensional scenes from simple primitives;
• Positionner des marqueurs dans l'image pour chaque pixel de toute primitive graphique identifiée comme appartenant à un symbole critique.• Place markers in the image for each pixel of any graphic primitive identified as belonging to a critical symbol.
Pour que ce procédé de codage puisse être appliqué, il faut que trois conditions soient remplies :In order for this coding process to be applied, three conditions must be met:
• La chaîne de génération graphique fournit l'image sous un format de vidéo numérique dans lequel les couleurs sont représentées par leur trois composantes RVB (Rouge, Vert et Bleu) ;• The graphic generation chain provides the image in a digital video format in which the colors are represented by their three RGB components (Red, Green and Blue);
• II est possible de coder les couleurs utiles utilisées par les éléments constituant l'image sur un nombre de bits inférieur à celui disponible en sortie de la chaîne de génération graphique ; • La chaîne de génération graphique dispose d'une ressource mémoire dédiée à la gestion des masques. A titre d'illustration, dans le standard OpenGL, cette ressource s'appelle les « stencils ». Cette ressource mémoire est utilisée pour la gestion des marqueurs.• It is possible to code the useful colors used by the elements constituting the image on a number of bits less than that available at the output of the graphic generation chain; • The graphic generation chain has a memory resource dedicated to mask management. As an illustration, in the OpenGL standard, this resource is called "stencils". This memory resource is used for marker management.
Ces conditions sont généralement satisfaites dans tous les environnements graphiques standards, et en particulier dans l'environnement openGL. En effet, les sorties vidéo numériques des chaînes actuelles de génération graphique standard proposent huit bits en standard par composante RVB. On appelle classiquement LSB les bits de poids faible, LSB étant l'acronyme de Least Significant Bit et MSB, les bits de poids fort, MSB étant l'acronyme de Most Significant Bit. Or, il est clair que le codage des pixels couleur d'une symbologie ne nécessite pas une gamme de couleur aussi importante que celle d'une image réelle. Généralement, quelques dizaines de couleur suffisent pour coder l'ensemble des caractères et des symboles. On peut, par conséquent, coder les couleurs utiles en n'utilisant qu'un nombre limité de bits de chaque composante. A titre d'exemple, une configuration type peut être :These conditions are generally satisfied in all standard graphical environments, and especially in the openGL environment. In fact, the digital video outputs of the current standard graphic generation channels offer eight bits as standard per RGB component. LSB is conventionally called the least significant bits, LSB being the acronym for Least Significant Bit and MSB, the most significant bits, MSB being the acronym for Most Significant Bit. However, it is clear that the coding of the color pixels of a symbology does not require a range of color as important as that of a real image. Generally, a few dozen colors are enough to encode all the characters and symbols. As a result, useful colors can be encoded using only a limited number of bits of each component. For example, a typical configuration can be:
• 5 bits sur les LSB du Rouge ; • 6 bits sur les LSB du Vert et ;• 5 bits on the Red LSBs; • 6 bits on the LSB of Green and;
• 5 bits sur les LSB du Bleu.• 5 bits on the LSB of the Blue.
Ainsi, au moins trois bits restent disponibles sur au moins deux des composantes. D'autre part, le codage du marqueur ne nécessite qu'un nombre limité de bits, généralement un bit suffit. Ainsi, il est possible de coder sur une même composante à la fois l'information de couleur et l'information de marquage.Thus, at least three bits remain available on at least two of the components. On the other hand, the coding of the marker requires only a limited number of bits, generally one bit is sufficient. Thus, it is possible to code on the same component both the color information and the marking information.
Les différentes étapes du procédé consistent à élaborer la séquence d'opérations graphiques qui conduit à insérer pour chaque pixel le marqueur mémorisé dans la mémoire des masques à l'emplacement des bits non utilisés dans les composantes couleur RVB, en tenant compte des contraintes et des règles particulières liées à l'utilisation des processeurs graphiques.The various steps of the method consist in elaborating the sequence of graphic operations which leads to inserting for each pixel the marker stored in the memory of the masks at the location of the bits not used in the RGB color components, taking into account the constraints and special rules related to the use of graphic processors.
De façon plus détaillée et à titre d'exemple, lorsqu'il est mis en oeuvre dans un GPU, l'ensemble du procédé comprend quatre étapes notées 1 , 2, 3 et 4 qui sont détaillées ci-dessous. Ces différentes étapes sont illustrées par les figures 1 et 2. Sur la figure 1 , le parcours des symboles non critiques SNc est représenté par des flèches pointillées et le parcours des symboles critiques Sc est représenté par des flèches continues :In more detail and by way of example, when implemented in a GPU, the entire process comprises four steps denoted 1, 2, 3 and 4 which are detailed below. These different steps are illustrated in FIGS. 1 and 2. In FIG. 1, the path of the non-critical symbols S N c is represented by dotted arrows and the path of the critical symbols Sc is represented by continuous arrows:
• Etape 1 : Tout symbole non critique SNC est généré classiquement dans la mémoire image 10 du GPU 1 au format RVB, chaque pixel étant codé sur cinq bits sur les LSB du Rouge, six bits sur les LSB du Vert et cinq bits sur les LSB du Bleu ;Step 1: Any non-critical symbol S NC is conventionally generated in the image memory 10 of the GPU 1 in RGB format, each pixel being coded on five bits on the LSBs of the Red, six bits on the LSB of the Green and five bits on the LSB of the Blue;
• Etape 2 : Tout symbole critique Sc est généré simultanément dans la mémoire image 10 au format RVB et dans un plan mémoire 12 dédié aux masques qui a un bit de profondeur.Step 2: Any critical symbol Sc is generated simultaneously in the image memory 10 in RGB format and in a memory plane 12 dedicated to the masks which has a depth bit.
Dans cette étape, tout pixel écrit en mémoire image, et quelle que soit sa couleur, se voit affecté d'un pixel correspondant et positionné à « 1 » dans le plan de masque. Lorsque l'image est entièrement générée, l'image couleur RVB est disponible dans la mémoire image et les marqueurs par pixel sont disponibles dans le plan de masque. Chaque pixel est codé sur cinq bits sur les LSB du Rouge, six bits sur les LSB du Vert et cinq bits sur les LSB du Bleu ;In this step, any pixel written in the image memory, and regardless of its color, is assigned a corresponding pixel and set to "1" in the mask plane. When the image is fully generated, the RGB color image is available in the process image and the pixel markers are available in the mask plane. Each pixel is coded on five bits on the LSBs of the Red, six bits on the LSBs of the Green and five bits on the LSBs of the Blue;
• Etape 3 : Cette étape consiste à insérer au moyen de l'unité de calcul 1 1 du GPU 1 un marqueur dans la mémoire image pour chaque pixel qui dispose d'un correspondant positionné à « 1 » dans le plan de masque. La technique utilisée consiste à tracer une surface ou un ensemble de surfaces : o Qui couvrent la zone de l'image dans laquelle les marqueurs doivent être insérés. A titre d'exemple, selon l'importance de la symbologie générée, une seule surface peut recouvrir toute l'image ou une ou plusieurs surfaces peuvent recouvrir un sous-ensemble de l'image ; o Qui sont affectées d'une couleur dont les bits actifs correspondent aux marqueurs qui sont insérés dans la mémoire image. Ces bits actifs doivent être positionnés sur les bits non utilisés de la mémoire image ; o Qui seront soumises à une loi de mélange de couleur telle que, si un pixel du plan de masque est positionné à• Step 3: This step consists in inserting, by means of the calculation unit 1 1 of the GPU 1, a marker in the image memory for each pixel which has a correspondent positioned at "1" in the mask plane. The technique used is to draw a surface or a set of surfaces: o Which cover the area of the image in which the markers are to be inserted. For example, depending on the importance of the symbology generated, a single surface may cover the entire image or one or more surfaces may cover a subset of the image; o Which are assigned a color whose active bits correspond to the markers that are inserted into the process image. These active bits must be positioned on the unused bits of the process image; o Which will be subject to a color mixing law such as, if a pixel of the mask plane is set to
1 , alors la couleur de la (des) surface(s) tracée(s) sera additionnée à la couleur déjà présente dans la mémoire image.1, then the color of the surface (s) drawn will be added to the color already present in the process image.
• Etape 4 : Cette étape correspond à la relecture de la mémoire image par la chaîne de génération graphique qui fournit alors par pixel sur la sortie vidéo numérique la combinaison de l'information de couleur RVB et de l'information de marquage des pixels. On note IM cette image comportant des marqueurs.• Step 4: This step corresponds to the replay of the image memory by the graphical generation chain which then provides per pixel on the digital video output the combination of RGB color information and pixel marking information. We note I M this image with markers.
Une portion de chaîne de génération graphique sécurisée mettant en œuvre le procédé selon l'invention est décrite en figure 3. Elle comporte essentiellement :A portion of secure graphical generation chain implementing the method according to the invention is described in FIG. 3. It essentially comprises:
• Une unité de calcul graphique de type GPU 1 ;A graphical computing unit of GPU type 1;
• Une unité de calcul de prédiction 2 ; • Une unité d'extraction et de comparaison 3.• A prediction calculation unit 2; • An extraction and comparison unit 3.
Le principe de fonctionnement est le suivant : l'unité de calcul de prédiction calcule la position des symboles critiques dans l'image. Ces calculs sont comparés au moyen de l'unité d'extraction et de comparaison aux positions des symboles critiques repérés par leurs marqueurs. On sait ainsi si la chaîne de génération graphique fonctionne correctement.The operating principle is as follows: the prediction calculation unit calculates the position of the critical symbols in the image. These calculations are compared by means of the extraction and comparison unit at the positions of the critical symbols identified by their markers. So we know if the graphical generation chain is working properly.
Les avantages apportées par la mise en œuvre d'un tel mécanisme de marquage de pixels en sortie d'une chaîne de génération graphique par rapport aux méthodes précédentes sont essentiellement :The advantages provided by the implementation of such a pixel marking mechanism at the output of a graphic generation chain compared with the preceding methods are essentially:
• Le procédé s'applique à tous les types de primitives graphiques qui peuvent être des vecteurs ou des surfaces ;• The method applies to all types of graphic primitives that can be vectors or surfaces;
• Le procédé prend en compte les fonctions de gestion des superposition ou de priorité des symboles, fonctions appelées en langage OpenGL fonctions « clipping »,The method takes into account the superposition management or symbol priority functions, functions called in OpenGL functions "clipping",
« stencil » ou« scissor ». Par conséquent, une primitive non tracée ne générera pas de marqueurs ; De plus, le procédé est indépendant :"Stencil" or "scissor". Therefore, an untagged primitive will not generate markers; In addition, the process is independent:
• Du mélange des couleurs nécessaires pour les fonctions dites « anti aliasing », ou « blending » ;• The mixture of colors necessary for the so-called "anti-aliasing" or "blending" functions;
• Des méthodes de tracé de type « vecteurs », « quads textures », ... ;• Drawing methods such as "vectors", "quads textures", ...;
• De l'ordre de tracé des symboles,• From the order of drawing of the symbols,
• De l'utilisation du « Z-Buffer » qui définit les règles de priorité entre symboles ; • Du type de GPU compatible OpenGL utilisé.• The use of the "Z-Buffer" which defines the rules of priority between symbols; • The type of OpenGL compatible GPU used.
Le procédé est également performant :The process is also efficient:
• II permet l'écriture simultanée dans la mémoire image et le plan de masque sans impact sur la performance requise ;• It allows simultaneous writing in the process image and the mask plane without impact on the required performance;
• II est possible d'optimiser la surface de la zone de mélange additif en la limitant aux zones contenant les symboles critiques.• It is possible to optimize the surface of the additive mixing zone by limiting it to areas containing the critical symbols.
La solution apportée est extensible à un nombre N de plans de masque. Dans le cas de symboles critiques non superposés, il est ainsi possible de gérer 2N marqueurs ou tags. Dans le cas de symboles critiques superposés, il est alors possible de gérer N tags différents.The solution provided is extensible to a number N of mask planes. In the case of non-overlapping critical symbols, it is thus possible to manage 2N markers or tags. In the case of superimposed critical symbols, it is then possible to manage N different tags.
La solution apportée est compatible d'une génération automatique de code en incluant des portions de code de la façon suivante :The solution provided is compatible with automatic code generation by including portions of code as follows:
• Portion de code à insérer en début de tracé d'un symbole pour déclencher la mémorisation dans le plan de masque,• Portion of code to be inserted at the beginning of the drawing of a symbol to trigger the memorization in the mask plane,
• Portion de code à insérer en fin de tracé d'un symbole pour inhiber la mémorisation dans le plan de masque,• Portion of code to insert at the end of the drawing of a symbol to inhibit the memorization in the mask plane,
• Portion de code à insérer en fin de tracé d'image pour déclencher le mélange additif.• Portion of code to be inserted at the end of the image trace to trigger the additive mixture.
Ce nouveau mécanisme permet de garantir l'intégrité des nouvelles technologies de visualisation autant basées sur des solutions propriétaires que sur des solutions du commerce dites COTS, acronyme de Component Of The Shelf. This new mechanism ensures the integrity of new visualization technologies, both based on proprietary solutions and on so-called COTS solutions, which stands for Component Of The Shelf.

Claims

REVENDICATIONS
1. Procédé de codage des pixels d'une image numérique couleur générée par un système de cockpit embarqué sur aéronef, ladite image comportant des symboles critiques représentés par des pixels critiques, un symbole critique étant un symbole affichant une information critique pour le pilotage de l'aéronef, chaque pixel coloré étant codé sur trois composantes numériques comportant chacune le même nombre de bits, caractérisé en ce que les composantes des pixels critiques comporte d'une part une information de couleur et d'autre part un marqueur encore appelé « tag » codé sur au moins un bit, ledit marqueur étant destiné à être exploité par des fonctions de génération et de prédiction des symboles critiques.A method of coding the pixels of a color digital image generated by an aircraft-borne cockpit system, said image comprising critical symbols represented by critical pixels, a critical symbol being a symbol displaying critical information for piloting the aircraft. aircraft, each color pixel being coded on three digital components each comprising the same number of bits, characterized in that the components of the critical pixels comprises on the one hand a color information and on the other hand a marker also called "tag" encoded on at least one bit, said marker being intended to be exploited by functions for generating and predicting critical symbols.
2. Procédé de codage selon la revendication 1 , caractérisé en ce que les composantes sont codées sur huit bits, deux des composantes comportant une information de couleur codée sur cinq bits et une des composantes comportant une information de couleur codée sur six bits.Coding method according to claim 1, characterized in that the components are coded on eight bits, two of the components comprising five-bit coded color information and one of the components comprising six-bit coded color information.
3. Procédé de codage selon l'une des revendications 1 ou 2, caractérisé en ce que l'information de couleur est codée sur les bits de poids faible ou LSB (Least Signifiant Bit).3. Encoding method according to one of claims 1 or 2, characterized in that the color information is encoded on the least significant bits or LSB (Least Significant Bit).
4. Procédé de codage selon l'une des revendications précédentes réalisé dans un dispositif de génération d'images numériques comportant une unité de calcul de type GPU comportant au moins une mémoire image, une mémoire dédiée aux « masques » encore appelés « stencils » comportant au moins un plan mémoire et un processeur graphique, caractérisé en ce que ledit procédé comporte au moins quatre étapes :4. Encoding method according to one of the preceding claims made in a digital image generation device comprising a GPU type computing unit having at least one image memory, a memory dedicated to "masks" also called "stencils" comprising at least one memory plane and a graphics processor, characterized in that said method comprises at least four steps:
• Une première étape de génération des symboles non critiques dans la mémoire image ;• A first step of generating non-critical symbols in the image memory;
• Une seconde étape de génération des symboles critiques dans la mémoire image et de génération des marqueurs associés auxdits symboles critiques dans un plan mémoire de la mémoire dédiée aux « masques » ; • Une troisième étape de création de l'image codée par le processeur graphique en incorporant lesdits marqueurs aux composantes des pixels des symboles critiques ;A second step of generating critical symbols in the image memory and generating markers associated with said critical symbols in a memory plane of the memory dedicated to "masks"; A third step of creating the image coded by the graphics processor by incorporating said markers into the pixel components of the critical symbols;
• Une quatrième étape de relecture de l'image codée .• A fourth step of replaying the coded image.
5. Dispositif électronique de génération d'images numériques comportant une unité de calcul de type GPU (Graphie Processing Unit) caractérisé en ce qu'il comporte un procédé de codage selon l'une des revendications précédentes. 5. An electronic device for generating digital images comprising a computing unit type GPU (Graphie Processing Unit) characterized in that it comprises a coding method according to one of the preceding claims.
EP07765287A 2006-06-06 2007-05-29 Method of coding of a digital color image including marking information Withdrawn EP2025143A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0605002A FR2901946B1 (en) 2006-06-06 2006-06-06 METHOD FOR ENCODING A COLOR DIGITAL IMAGE HAVING MARKING INFORMATION
PCT/EP2007/055201 WO2007141162A1 (en) 2006-06-06 2007-05-29 Method of coding of a digital color image including marking information

Publications (1)

Publication Number Publication Date
EP2025143A1 true EP2025143A1 (en) 2009-02-18

Family

ID=37564089

Family Applications (1)

Application Number Title Priority Date Filing Date
EP07765287A Withdrawn EP2025143A1 (en) 2006-06-06 2007-05-29 Method of coding of a digital color image including marking information

Country Status (4)

Country Link
US (1) US20090243893A1 (en)
EP (1) EP2025143A1 (en)
FR (1) FR2901946B1 (en)
WO (1) WO2007141162A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2963690B1 (en) 2010-08-06 2012-08-03 Thales Sa SECURE CLIENT-SERVER COMPUTER SYSTEM FOR INTERACTIVE APPLICATIONS
US10118436B2 (en) 2015-01-26 2018-11-06 Crayola, Llc Pixel art crayon and marker photo array assembly and kit
US10471617B2 (en) 2015-01-26 2019-11-12 Crayola Llc Pixel art crayon and marker photo array assembly and kit
WO2017026932A1 (en) * 2015-08-12 2017-02-16 Saab Ab Method and system for monitoring output data of graphics processing unit
FR3120721B1 (en) 2021-03-10 2023-02-10 Airbus Helicopters Method for testing a portable electrical device
FR3133259B1 (en) * 2022-03-04 2024-04-19 Safran Electronics & Defense Critical and non-critical information display system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4682215A (en) * 1984-05-28 1987-07-21 Ricoh Company, Ltd. Coding system for image processing apparatus
FR2723797B1 (en) * 1994-08-19 1996-09-20 Sextant Avionique IMAGE MEMORY CODING METHOD
US6025818A (en) * 1994-12-27 2000-02-15 Pioneer Electronic Corporation Method for correcting pixel data in a self-luminous display panel driving system
US5914725A (en) * 1996-03-07 1999-06-22 Powertv, Inc. Interpolation of pixel values and alpha values in a computer graphics display device
US5982937A (en) * 1996-12-24 1999-11-09 Electronics For Imaging, Inc. Apparatus and method for hybrid compression of raster data
EP0978816B1 (en) * 1998-08-07 2002-02-13 Deutsche Thomson-Brandt Gmbh Method and apparatus for processing video pictures, especially for false contour effect compensation
AU7783900A (en) * 1999-09-29 2001-04-30 Thomson Licensing S.A. Data processing method and apparatus for a display device
FR2900527B1 (en) * 2006-04-26 2008-09-26 Thales Sa METHOD FOR ENCODING A COLOR DIGITAL IMAGE HAVING WEIGHTING INFORMATION

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2007141162A1 *

Also Published As

Publication number Publication date
FR2901946A1 (en) 2007-12-07
US20090243893A1 (en) 2009-10-01
WO2007141162A1 (en) 2007-12-13
FR2901946B1 (en) 2008-11-21

Similar Documents

Publication Publication Date Title
US10964038B2 (en) Method and apparatus for mapping three-dimensional point cloud data, and storage medium
Bianchi et al. Image forgery localization via block-grained analysis of JPEG artifacts
EP2025143A1 (en) Method of coding of a digital color image including marking information
US20100156919A1 (en) Systems and methods for text-based personalization of images
CN107341438A (en) The method and apparatus of in-car safety monitoring based on computer vision
CN105577684A (en) Anti-crawling methods, server, client and system
EP3756130B1 (en) Image hidden information detector
CN1763786A (en) Method for hardware accelerated anti-aliasing in 3D
CN110572369A (en) picture verification method and device, computer equipment and storage medium
US8025235B2 (en) Progressively degrading synthetic markers
CN1848179B (en) Efficient z testing
US10542176B2 (en) Enhancing graph visualization with supplemental data
EP2791778A1 (en) Method for real-time processing of a video sequence on mobile terminals
RU2331085C2 (en) Two-component integration of messages into image
US6724392B1 (en) System and method for placing labels on a computer-generated map
US9536281B2 (en) Image scaling for images including low resolution text
CN102385760A (en) Method and system used for protecting model data
CN114707135A (en) Graphic code processing method and device, electronic equipment and storage medium
CN110427891B (en) Method, apparatus, system and medium for identifying contract
CN111626244A (en) Image recognition method, image recognition device, electronic equipment and medium
WO2007122202A1 (en) Method for coding a colour digital image comprising weighting information
CN109784454A (en) A kind of information concealing method based on two dimensional code, device and electronic equipment
FR2989804A1 (en) Method for reconstructing seismic data from color images to identify presence of oil fields, involves extracting geographical position of image pixels and colors within color space to realize reconstruction of data from image
CN113139163B (en) Method and device for generating watermark information on application program interface
US20220351323A1 (en) Steganographic techniques for tracking video access events

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20081208

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK RS

RIN1 Information on inventor provided before grant (corrected)

Inventor name: CAPIRCIO, PATRICE

Inventor name: FILLIATRE, ERIC

RBV Designated contracting states (corrected)

Designated state(s): BE DE FR GB NL

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20121201