FR2619461A1 - METHOD AND VIDEO COMPRESSION CIRCUIT FOR BIT CARD DISPLAY - Google Patents

METHOD AND VIDEO COMPRESSION CIRCUIT FOR BIT CARD DISPLAY Download PDF

Info

Publication number
FR2619461A1
FR2619461A1 FR8810746A FR8810746A FR2619461A1 FR 2619461 A1 FR2619461 A1 FR 2619461A1 FR 8810746 A FR8810746 A FR 8810746A FR 8810746 A FR8810746 A FR 8810746A FR 2619461 A1 FR2619461 A1 FR 2619461A1
Authority
FR
France
Prior art keywords
row
data
state
bitmap
bit
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.)
Granted
Application number
FR8810746A
Other languages
French (fr)
Other versions
FR2619461B1 (en
Inventor
William Atkinson
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.)
Apple Inc
Original Assignee
Apple Computer Inc
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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of FR2619461A1 publication Critical patent/FR2619461A1/en
Application granted granted Critical
Publication of FR2619461B1 publication Critical patent/FR2619461B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related 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/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Abstract

Le procédé de l'invention réduit le nombre de bits qui doivent être physiquement mémorisés pour mémoriser une image vidéo. Les étapes principales de l'algorithme consistent à enrichir 4 en zéros une carte de bits de l'image vidéo et à coder 5 l'image enrichie en séquences de zéros et d'octets de données. L'enrichissement en zéros de l'image vidéo est réalisé en exécutant une autocorrélation (décalage puis exécution d'un ou exclusif) pour les lignes horizontales et verticales. Le nombre de zéros résultant de chaque corrélation est compté jusqu'à ce que l'on puisse déterminer celle des combinaisons qui produit les zéros les plus riches. La carte de bits de lignes enrichies en zéros est ensuite codée en séquences de zéros et d'octets de données. On reconnaît 1 les cas particuliers, comme par exemple une rangée constituée uniquement de zéros ou une rangée constituée uniquement de uns, ou une concidence avec la rangée qui se trouve juste au-dessus ou avec celle qui se trouve deux rangées au-dessus, ou encore le fait qu'un code est répété un certain nombre de fois.The method of the invention reduces the number of bits that must be physically stored to store a video image. The main steps of the algorithm consist in enriching 4 with zeros a bit map of the video image and in encoding 5 the enriched image in sequences of zeros and bytes of data. The zeros enrichment of the video image is carried out by performing an autocorrelation (shift then execution of one or exclusive) for the horizontal and vertical lines. The number of zeros resulting from each correlation is counted until one can determine which of the combinations produces the richest zeros. The zeros-enriched row bitmap is then encoded in sequences of zeros and data bytes. We recognize 1 special cases, such as for example a row consisting only of zeros or a row consisting only of ones, or a coincidence with the row which is just above or with the one which is two rows above, or again the fact that a code is repeated a certain number of times.

Description

La présente invention concerne le domaine des algorithmes de compressionThe present invention relates to the field of compression algorithms

vidéo, et plus précisément le domaine des algorithmes de compression pour affichages graphiques sous  video, and more precisely the field of compression algorithms for graphical displays under

forme de carte de bits.Bitmap shape.

On connait de nombreux procédés de compression de données pour systèmes informatiques, et de compression de données pour les affichages vidéo ou les affichages graphiques sous forme de carte de bits. Cependant, tous ces procédés souffrent d'un ou plusieurs inconvénients. On souhaiterait disposer d'un procédé qui permette de mémoriser les données sous forme comprimée après qu'elles aient été reçues d'un afficheur graphique sous forme de carte de bits ou d'un autre dispositif semblable. Les données devraient être mémorisées d'une façon qui permette de les décoder en utilisant un minimum de ressources du processus de décodage. En outre, les données devraient être mémorisées sous une forme aussi  Numerous data compression methods for computer systems, and data compression for video displays or graphic displays in the form of a bitmap are known. However, all these processes suffer from one or more disadvantages. It would be desirable to have a method for storing data in compressed form after it has been received from a graphics display in the form of a bitmap or other similar device. The data should be stored in a manner that allows them to be decoded using a minimum of resources of the decoding process. In addition, data should be stored in a form that is also

compacte que possible.as compact as possible.

La présente invention propose un procédé et un circuit pour comprimer des informations vidéo provenant d'un afficheur graphique sous forme de carte de bits ou d'un appareil similaire. Le procédé réduit le nombre de bits qui doivent être physiquement mémorisés pour mémoriser une image vidéo. Les étapes principales de l'algorithme consistent à enrichir en zéros une carte de bits de l'image vidéo et à coder l'image enrichie en séquences de zéros et d'octets de données. L'enrichissement en zéros de l'image vidéo est réalisé en exécutant une autocorrélation (décalage puis exécution d'un OU EXCLUSIF) pour les lignes horizontales et verticales. Le nombre de zéros résultant de chaque corrélation est compté jusqu'à ce que l'on puisse déterminer celle des combinaisons  The present invention provides a method and circuit for compressing video information from a graphics display in the form of a bitmap or similar apparatus. The method reduces the number of bits that must be physically stored to store a video image. The main steps of the algorithm are to zero-enrich a bitmap of the video image and to encode the enriched image into sequences of zeros and bytes of data. The zeros enhancement of the video image is performed by performing an autocorrelation (shifting and then executing an EXCLUSIVE OR) for the horizontal and vertical lines. The number of zeros resulting from each correlation is counted until we can determine the number of combinations

qui produit les zéros les plus riches.  which produces the richest zeros.

La carte de bits de lignes enrichies en zéros est ensuite codée en séquences de zéros et d'octets de données. On reconnaît les cas particuliers, comme par exemple une rangée constituée uniquement de zéros ou une rangée constituée uniquement de uns, et on leur attribue un code spécial. En outre, on affecte des codes spéciaux dans le cas de coïncidence zéro avec la rangée qui se trouve juste au-dessus ou avec celle qui se trouve deux rangées au-dessus. On attribue également des codes spéciaux pour indiquer qu'un code est répété un certain nombre de fois. On verra d'autres  The zeros-enriched bit map is then encoded into zeros and bytes of data sequences. We recognize special cases, such as a row consisting only of zeros or a row consisting of only one, and we assign them a special code. In addition, special codes are assigned in the case of zero coincidence with the row which is just above or with that which is two rows above. Special codes are also assigned to indicate that a code is repeated a number of times. We will see others

utilisations de codes spéciaux dans la description détaillée  Uses of special codes in the detailed description

qui suivra de la présente invention.  which will follow from the present invention.

La présente invention propose également un procédé de reconstruction des données comprimées. Ce procédé permet de lire des données codées et de recréer les données non comprimées. Il est prévu divers procédés pour optimiser la vitesse de ce processus, notamment l'utilisation d'une table  The present invention also provides a method for reconstructing compressed data. This method reads encoded data and recreates uncompressed data. Various methods are provided to optimize the speed of this process, including the use of a table

pour décoder certaines données codées.  to decode certain coded data.

La présente invention a également pour objet un circuit de système informatique pour la mise en oeuvre de ce procédé, comprenant: des premiers moyens de mémorisation, pour mémoriser une image vidéo sous forme de carte de bits; des premiers moyens de comparaison, pour déterminer si l'une des conditions d'un jeu de conditions prédéterminées est vérifiée par une première rangée de cette image vidéo sous forme de carte de bits; des moyens décaleurs, pour décaler cette première rangée de l'image vidéo sous forme de carte de bits; des seconds moyens comparateurs, pour comparer cette première rangée de l'image vidéo sous forme de carte de bits à une seconde rangée de cette même image vidéo sous forme de carte de bits, ces premiers moyens comparateurs, moyens décaleurs et seconds moyens comparateurs permettant d'obtenir une information permettant de coder ladite image vidéo sous forme de carte de bits; et des seconds moyens de  The present invention also relates to a computer system circuit for implementing this method, comprising: first storage means for storing a video image in the form of a bitmap; first comparing means for determining whether one of the conditions of a predetermined set of conditions is verified by a first row of that video image as a bit map; shifter means for shifting said first row of the video image as a bit map; second comparator means, for comparing this first row of the video image as a bit map to a second row of the same bit map video image, said first comparing means, staggering means and second comparator means for obtaining information for encoding said video image as a bit map; and second means of

mémorisation, pour mémoriser une information vidéo codée.  storage, for storing encoded video information.

D'autres caractéristiques et avantages de la présente  Other features and benefits of this

invention apparaîtront à la lecture de la description  invention will appear on reading the description

détaillée ci-dessous, faite en référence aux dessins annexés sur lesquels: - la figure 1 est un organigramme décrivant les étapes impliquées par le codage des données vidéo qui pourront être utilisées pour la mise en oeuvre de la présente invention, - la figure 2A illustre un dispositif d'affichage avec en son centre un carré noir qui pourra être comprimé par le procédé de la présente invention, - la figure 2B illustre l'affichage du carré noir après une première étape de compression qui pourra être exécutée par le procédé de la présente invention, - la figure 2C illustre l'affichage du carré noir après une seconde étape de compression qui pourra être exécutée par le procédé de la présente invention, - la figure 3 illustre un espace adressable de codes opératoires qui pourront être utilisés pour la mise en oeuvre de la présente invention, - la figure 4A illustre des rangées de données qui pourront être comprimées par le procédé de la présente invention, - la figure 4B illustre une étape d'exécution d'un OU EXCLUSIF sur des rangées de données qui pourra être exécutée par le procédé de la présente invention pendant la compression des données, - la figure 4C illustre des rangées de données et leur code de compression associé qui pourront être utilisées pour la mise en oeuvre de la présente invention, - la figure 5 est un organigramme illustrant les tests préliminaires à exécuter sur des rangées de données pendant le codage qui pourront être exécutés par le procédé de la présente invention, - la figure 6 est un organigramme illustrant un procédé de détermination du procédé optimal d'enrichissement en zéros qui pourra être mis en oeuvre par la présente invention, - la figure 7 est un organigramme illustrant un procédé pour reconstruire des données vidéo à partir de données comprimées qui pourra être mis en oeuvre par la présente invention, - la figure 8 est un organigramme illustrant un procédé de traitement d'un code opératoire de début de rangée qui pourra être mis en oeuvre par la présente invention, - la figure 9 est un organigramme illustrant un processus de décodage de rangées codées par décalage et exécution d'un OU EXCLUSIF qui pourra être mis en oeuvre par la présente invention. On va décrire un procédé de compression et de  DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a flowchart describing the steps involved in coding the video data that may be used for the implementation of the present invention. FIG. a display device with a black square in its center which can be compressed by the method of the present invention; - Figure 2B illustrates the display of the black square after a first compression step which can be executed by the method of the FIG. 2C illustrates the display of the black square after a second compression step that can be performed by the method of the present invention; FIG. 3 illustrates an addressable space of operating codes that can be used for the implementation of the present invention; 4A illustrates rows of data which can be compressed by the method of the pre-processing method. FIG. 4B illustrates a step of executing an EXCLUSIVE OR on rows of data that may be executed by the method of the present invention during data compression; FIG. 4C illustrates data rows and their associated compression code which may be used for the implementation of the present invention; FIG. 5 is a flowchart illustrating the preliminary tests to be performed on rows of data during coding which may be executed by the method of the present invention; FIG. 6 is a flowchart illustrating a method for determining the optimal method of zero enrichment that can be implemented by the present invention; FIG. 7 is a flowchart illustrating a method for reconstructing video data from compressed data that can be implemented by the present invention, - Figure 8 is a flowchart illus a method of processing a row start operation code which may be implemented by the present invention; - Fig. 9 is a flowchart illustrating a decoded row decoding process and execution of an EXCLUSIVE OR which may be implemented by the present invention. We will describe a method of compression and

recontruction de données vidéo. Dans la description qui va  recontruction of video data. In the description that will

suivre, on a donné de nombreux détails particuliers tels que des codes opératoires, des étapes particulières, etc. afin de permettre une compréhension complète de la présente invention. Il est bien évident, cependant, que pour l'homme du métier la présente invention peut être mise en oeuvre sans ces détails particuliers. Inversement, des structures et des techniques bien connues n'ont pas été décrites en détail afin  follow, we have given many special details such as operating codes, special steps, etc. to allow a complete understanding of the present invention. It is obvious, however, that for those skilled in the art the present invention can be implemented without these particular details. Conversely, well-known structures and techniques have not been described in detail to

de de ne pas alourdir inutilement la description de la  not to unnecessarily burden the description of the

présente invention.present invention.

La présente invention comprend un procédé de compression d'information vidéo, informations provenant typiquement d'un afficheur sous forme de carte de bits ou d'un dispositif semblable, ainsi qu'un procédé pour reconstruire l'information vidéo comprimée afin de permettre un réaffichage des données. La présente invention est basée sur la constatation du fait qu'une image vidéo typique sous forme de carte de bits comporte principalement soit des "zones blanches" soit des motifs de données. Un motif purement aléatoire de zones blanches et noires sur un affichage vidéo  The present invention includes a method of compressing video information, information typically from a bit map display or similar device, and a method for reconstructing the compressed video information to allow redisplaying Datas. The present invention is based on the recognition that a typical video image in bit map form mainly comprises either "white areas" or data patterns. A purely random pattern of white and black areas on a video display

sous forme de carte de bits est rare.  in the form of bitmap is rare.

Par conséquent, la présente invention tire parti de ces observations en enrichissant encore en zéros une carte de bits d'une image vidéo en exécutant une autocorrélation des lignes verticales et horizontales. L'enrichissement en zéros est dû à la quantité importante de "surfaces blanches" sur l'écran avant le processus d'enrichissement, et aux motifs qui existaient dans l'image vidéo. La présente invention essaye plusieurs corrélations différentes en comptant le nombre de zéros produit par chaque corrélation, et utilise la  Therefore, the present invention takes advantage of these observations by further zeroing a bitmap of a video image by performing autocorrelation of the vertical and horizontal lines. Enrichment in zeros is due to the large amount of "white surfaces" on the screen before the enrichment process, and the patterns that existed in the video image. The present invention attempts several different correlations by counting the number of zeros produced by each correlation, and uses the

corrélation qui produit le mélange de zéros le plus riche.  correlation that produces the richest zeros.

L'affichage enrichi en zéros est ensuite codé, et l'on reconnait des combinaisons répétitives codées puis on leur attribue des codes spéciaux afin de pouvoir comprimer encore  The display enriched with zeros is then coded, and coded repetitive combinations are recognized and then assigned special codes in order to be able to compress again.

plus les données.plus the data.

Si l'on se réfère maintenant à la figure 1, on y a représenté le procédé permettant de comprimer des données utilisées par le mode de réalisation préféré de la présente invention. Le procédé exécute d'abord plusieurs tests préliminaires (bloc 1) sur chaque rangée en entrée. Ces tests seront décrits plus en détail à propos de la figure 5. Ces tests servent notamment à examiner si une rangée est constituée uniquement de zéros ou si la rangée est constituée uniquement de uns, etc. Si l'une quelconque de plusieurs conditions préliminaires est vérifiée (embranchement 2), on  Referring now to FIG. 1, there is shown the method for compressing data used by the preferred embodiment of the present invention. The method first performs several preliminary tests (block 1) on each input row. These tests will be described in more detail in relation to FIG. 5. These tests are used in particular to examine whether a row consists entirely of zeros or whether the row consists of only one, and so on. If any of several preliminary conditions are satisfied (branch 2),

mémorise un code et on reçoit en entrée la rangée suivante.  memorizes a code and receives the following row as input.

Si aucune des conditions préliminaires n'est vérifiée (embranchement 3), on essaye plusieurs procédés afin d'enrichir en zéros les données (bloc 4) . Ceci sera décrit plus en détail à propos de la figure 6. On code ensuite (bloc ) la rangée enrichie en zéros. On exécute alors un test pour déterminer si les données comprimées utilisent moins de place que les informations non comprimés. Dans la négative (embranchement 7), on mémorise les informations non comprimées (bloc 9). Dans l'affirmative (branche 8), on mémorise les informations comprimées (bloc 10). On soumet ensuite au même processus la rangée de données suivante de  If none of the preliminary conditions are verified (branch 3), several methods are tried in order to enrich the data (block 4) with zeros. This will be described in more detail with reference to FIG. 6. Then, the block enriched in zeros is coded (block). A test is then run to determine if the compressed data uses less space than the uncompressed information. In the negative (branch 7), the uncompressed information (block 9) is stored. In the affirmative (branch 8), the compressed information is memorized (block 10). The following row of data is then submitted to the same process

l'affichage graphique sous forme de carte de bits.  the graphic display in the form of a bitmap.

La figure 2A illustre un exemple de données qui peuvent être mémorisées en utilisant le procédé de la présente invention. Il sera évident, pour l'homme de l'art, que le procédé de la présente invention permet de traiter, avec un niveau d'efficacité variable, n'importe quelle donnée affichée sur un affichage graphique sous forme de carte de bits. La figure 2A illustre un rectangle noir 21 affiché sur un afficheur vidéo. L'un des procédés de compression des donnés sur la figure 2A consiste à exécuter un OU EXCLUSIF de chaque rangée avec la rangée qui se trouve juste au-dessus d'elle. Le résulat est représenté sur la figure 2B. La mise en oeuvre d'un processus o l'on exécute un OU EXCLUSIF sur chaque rangée de données de l'affichage produit deux lignes: la ligne 23 et la ligne 24. La ligne 23 se trouve sur la même rangée que le côté supérieur du rectangle 21 de la figure 2 A. La ligne 24 se trouve une rangée au- dessous du côté  Figure 2A illustrates an example of data that can be stored using the method of the present invention. It will be apparent to those skilled in the art that the method of the present invention makes it possible to process, with a variable level of efficiency, any data displayed on a graphic display in the form of a bitmap. Figure 2A illustrates a black rectangle 21 displayed on a video display. One of the data compression methods in Fig. 2A is to execute an EXCLUSIVE OR of each row with the row just above it. The result is shown in Figure 2B. Implementing a process that executes an EXCLUSIVE OR on each row of data in the display produces two lines: line 23 and line 24. Line 23 is on the same row as the top row rectangle 21 of Figure 2 A. Line 24 is one row below the side

inférieur du rectangle 21.lower rectangle 21.

La figure 2C illustre le résultat de l'utilisation d'un processus semblable o l'on exécute un OU EXCLUSIF sur les deux lignes 23 et 24 de la figure 2B. Dans ce cas, on a exécuté des OU EXCLUSIF sur les lignes verticales de l'affichage, avec exécution d'un OU EXCLUSIF entre chaque  Figure 2C illustrates the result of using a similar process where an EXCLUSIVE OR is performed on both lines 23 and 24 of Figure 2B. In this case, EXCLUSIVE ORs were executed on the vertical lines of the display, with an EXCLUSIVE OR executed between each

ligne verticale et la ligne située immédiatement à sa gauche.  vertical line and the line immediately to the left.

Le résultat consiste en quatre pixels 26, 27, 28 et 29 qui restent noirs. Deux des pixels, 26 et 29, sont les pixels d'extrême gauche des rangées 23 et 24. Les deux autres pixels, 27 et 28, sont situés sur la ligne verticale  The result consists of four pixels 26, 27, 28 and 29 which remain black. Two of the pixels, 26 and 29, are the leftmost pixels of rows 23 and 24. The other two pixels, 27 and 28, are located on the vertical line

adjacente aux pixels d'extrême droite des lignes 23 et 24.  adjacent to the far right pixels of lines 23 and 24.

Ces figures 2A, 2B et 2C illustrent le procédé utilisé par la présente invention pour enrichir en zéros des données sous forme de carte de bits. Cependant, on verra que le mode de réalisation préféré utilise plusieurs variations de ce procédé afin d'optimiser à la fois la mémorisation et la  These FIGS. 2A, 2B and 2C illustrate the method used by the present invention to enrich bit map data in zeros. However, it will be seen that the preferred embodiment uses several variations of this method to optimize both storage and

récupération des données.data recovery.

Le mode. de réalisation préféré de la présente invention utilise, pour comprimer les données, un jeu de codes sur un octet (huit bits). Ces codes sont illustrés plus en détail en relation avec la figure 3. Les codes peuvent être répartis en cinq types principaux: les séquences normales 31, les codes divers 32, les codes de répétition 33, les données de grande taille 34 et les zéros de grande taille 35. Les codes de séquences normales 31 utilisent les valeurs hexadécimales 00 à 7F. Le format d'un code de séquence normale, dans le mode de réalisation préféré de la présente invention, est Odddzzzz, ddd étant une valeur de compte d'octets de données qui suivent cet octet de code et zzzz étant une valeur de compte de zéros comprise entre O et 15. Par exemple, une chaîne de données consistant en huit zéros suivis par deux octets de données, l'un étant représenté par la valeur hexadécimale FF, ce qui correspond à une portion entièrement noire, et le second octet étant représenté par la valeur AA ou étant constitué d'un gris, peut être codé par la valeur hexadécimale 28 FF AA. Ainsi, on a comprimé quatre octets de  The mode. In order to compress the data, a preferred embodiment of the present invention uses a one-byte (eight-bit) code set. These codes are illustrated in more detail in connection with FIG. 3. The codes can be divided into five main types: normal sequences 31, miscellaneous codes 32, repetition codes 33, large data 34 and zeros of FIG. 35. The normal sequence codes 31 use the hexadecimal values 00 to 7F. The format of a normal sequence code, in the preferred embodiment of the present invention, is Odddzzzz, where ddd is a data byte count value that follows this code byte and zzzz is a zero count value. between 0 and 15. For example, a data string consisting of eight zeros followed by two bytes of data, one represented by the hexadecimal value FF, which corresponds to a completely black portion, and the second byte being represented by the value AA or consisting of a gray, can be encoded by the hexadecimal value 28 FF AA. Thus, four bytes of

données en trois octets de données.  data in three bytes of data.

On utilise, avec la présente invention, un certain nombre de codes divers pour mémoriser les informations concernant les rangées qui ont rempli les conditions préliminaires décrites à propos de la figure 1 et de la figure 5, et pour mémoriser des informations concernant celui des procédés qui  With the present invention, a number of different codes are used for storing the information about the rows which have fulfilled the preliminary conditions described with reference to FIG. 1 and FIG. 5, and for storing information concerning that of the processes which

a procuré la meilleure rangée de données enrichie en zéros.  provided the best row of data enriched with zeros.

Le mode de réalisation préféré de la présente invention utilise pour les code divers les valeurs hexadécimales 80 à  The preferred embodiment of the present invention uses for various codes the hexadecimal values 80 to

9F indiquées ci-dessous.9F shown below.

Codes diversVarious codes

Code DescriptionCode Description

$80 Compression impossible $81 Rangée entièrement formée de zéros $82 Rangée entièrement formée de uns $83 Donnée de remplissage $84 Donnée de remplissage identique $85 Reproduire une ligne au-dessus $86 Reproduire deux lignes au-dessus $87 Inutilisé $88 (dh,dv) = (16,0) $89 (dh,dv) = (0, 0) $8A (dh,dv) = (0,1) $8B (dh,dv) = (0,2) $8C (dh,dv) = (1,0) $8D (dh,dv) = (1,1) $8E (dh,dv) = (2,2) $8F (dh,dv) = (8,0) $90 à 9F Inutilisés Le code hexadécimal 80 indique que les données ne peuvent être comprimées sans utiliser plus d'espace que les données originelles; les données non comprimées suivent le code. Le code hexadécimal 81 indique que la rangée était entièrement formée de zéros. Le code hexadécimal 82 indique que la rangée était entièrement formée de uns. Le code hexadécimal 83 indique que la rangée était formée d'octets de données qui se répétaient; dans ce cas, le code est suivi d'un unique octet de donnée indiquant l'octet de donnée qui se répête. Le code hexadécimal 84 indique que cette rangée reproduit le même octet de données que celui qui était répété dans la rangée précédente. Le code hexadécimal 85 indique que cette rangée est identique à la rangée qui se trouve juste au-dessus d'elle. Le code hexadécimal 86 indique que cette rangée est identique à la rangée qui se trouve deux rangées au-dessus d'elle. Le code hexadécimal 87 n'est actuellement pas utilisé dans le mode de réalisation préféré. Les codes hexadécimaux 88 à 8F indiquent ceux des divers intervalles horizontaux (dh) et intervalles verticaux (dv) qui ont été utilisés pour obtenir la meilleure rangée enrichie en zéros. Dans le mode de réalisation préféré, les codes hexadécimaux 90 à 9F ne  $ 80 Compression impossible $ 81 Row made entirely of zeros $ 82 Row formed entirely of ones $ 83 Filling data $ 84 Identical filling data $ 85 Plotting a line above $ 86 Plotting two lines above $ 87 Unused $ 88 (dh, dv) = (16, 0) $ 89 (dh, dv) = (0, 0) $ 8A (dh, dv) = (0,1) $ 8B (dh, dv) = (0,2) $ 8C (dh, dv) = (1 , 0) $ 8D (dh, dv) = (1,1) $ 8E (dh, dv) = (2,2) $ 8F (dh, dv) = (8,0) $ 90 to 9F Not used The hex code 80 indicates that the data can not be compressed without using more space than the original data; Uncompressed data follows the code. Hex code 81 indicates that the row was entirely made up of zeros. Hex code 82 indicates that the row was entirely formed of ones. Hex code 83 indicates that the row consisted of bytes of data that were repeated; in this case, the code is followed by a single byte of data indicating the data byte which is repeated. Hex code 84 indicates that this row reproduces the same byte of data as was repeated in the previous row. Hex code 85 indicates that this row is identical to the row just above it. Hex code 86 indicates that this row is identical to the row that is two rows above it. Hex code 87 is not currently used in the preferred embodiment. Hex codes 88 to 8F indicate which of the various horizontal (dh) and vertical (dv) intervals were used to obtain the best zero-enriched row. In the preferred embodiment, hexadecimal codes 90 to 9F do not

sont actuellement pas utilisés.are not currently used.

Chacun de ces divers codes 80 à 9F ne sont utilisés que lorsque l'on analyse une rangée, en début de cette rangée. De la sorte, ces codes ne sont pas utilisés lorsque l'on mémorise des données à l'intérieur d'une rangée, et ils pourront être utilisés à l'intérieur d'une rangée pour des  Each of these various codes 80 to 9F are used only when analyzing a row at the beginning of this row. In this way, these codes are not used when storing data within a row, and they can be used within a row for

perfectionnements ultérieurs.further refinements.

Les codes A0 à BF indiquent que le précédent code opératoire d'un octet se répète entre zéro et trente et une fois. Le format de ces codes est lOnnnnn2, nnnnn étant une valeur comprise entre 010 et 3110. Par exemple si le code opératoire précédent était 81 et que l'on détecte un code de répétition A6, le résultat sera l'affichage de six lignes  The codes A0 to BF indicate that the preceding operating code of a byte is repeated between zero and thirty-one times. The format of these codes is lOnnnnn2, where nnnnn is a value between 010 and 3110. For example, if the previous operation code was 81 and a repetition code A6 is detected, the result will be the display of six lines

blanches.white.

Les codes CO à DF indiquent que suit une chaine d'octets de données. Le format de ces codes, en valeur binaire, est lllddddd, ddddd étant une valeur de compte, divisée par huit, des octets de données qui suivent. Par exemple si l'on doit représenter une chaine de seize octets de données, on mémorise un code hexadécimal C2 (16 - 8 = 2), suivi par les  The codes CO to DF indicate that a chain of bytes of data follows. The format of these codes, in binary value, is lllddddd, where ddddd is an account value, divided by eight, of the data bytes that follow. For example, if a string of sixteen bytes of data is to be represented, a hexadecimal code C2 (16 - 8 = 2) is stored, followed by

seize octets de données.sixteen bytes of data.

Les codes EO à FF indique qu'il existe dans les données une chaine de zéros. le format de ce code est lllzzzzz, zzzzz étant une valeur de compte, divisée par 16, des zéros. Par exemple, si l'on a trouvé une chaine de 160 zéros dans une rangée de données, on mémorise un code de valeur hexadécimale CA (160 - 16 = 10,, ou A16). Les figures 4A à 4C ilustrent ce procédé de codage des données. Sur la figure 4A, on a représenté un ensemble de rangées de données qui pourront être comprimées par le procédé de la présente invention. Les données consistent en une rangée 41 ne contenant que des zéros, suivie par quatre rangées 42 qui correspondraient à l'affichage d'un rectangle noir, puis une autre rangée 43 uniquement constituée de zéros. La première rangée 41 peut être représentée par le code 81, correspondant à une rangée constituée uniquement en zéros. La rangée n 2 peut être décalée d'un bit vers la droite et on peut lui faire subir un OU EXCLUSIF avec elle-même. Ceci est représenté sur la figure 4B. La rangée n 2 44 subit un OU EXCLUSIF avec une copie d'elle-même décalée d'un bit vers la droite (rangée 45), donnant la rangée 46 comme résultat. Cette rangée est optimisée en ce qui concerne les zéros. Un code opératoire 8C est mémorisé, avec le mode de réalisation préféré de la présente invention, pour indiquer un intervalle de décalage horizontal vers la droite d'un bit et un intervalle vertical de zéro bit lors de l'exécution du OU EXCLUSIF. Les rangées n 3, 4 et 5 peuvent être représentées par le code 85, qui indique qu'elles sont des répliques des lignes qui se trouvent juste au-dessus d'elles. La rangée n 6 peut être représenté par le code 81 indiquant qu'elle est constituée uniquement de zéros. La figure 4C illustre les rangées n 1 à 6 et les codes  The codes EO to FF indicate that there is a string of zeros in the data. the format of this code is lllzzzzz, zzzzz being an account value, divided by 16, zeros. For example, if a string of 160 zeros has been found in a row of data, a hexadecimal value code CA (160 - 16 = 10, or A16) is stored. Figures 4A to 4C illustrate this method of encoding the data. In FIG. 4A, there is shown a set of rows of data that can be compressed by the method of the present invention. The data consists of a row 41 containing only zeros, followed by four rows 42 which correspond to the display of a black rectangle, then another row 43 consisting only of zeros. The first row 41 may be represented by the code 81, corresponding to a row consisting solely of zeros. The row n 2 can be shifted one bit to the right and can be subjected to an EXCLUSIVE OR with itself. This is shown in Figure 4B. Row No. 44 undergoes an EXCLUSIVE OR with a copy of itself shifted one bit to the right (row 45), giving row 46 as a result. This row is optimized for zeros. An operating code 8C is stored, with the preferred embodiment of the present invention, to indicate a horizontal shift interval to the right of a bit and a vertical zero bit interval when executing the EXCLUSIVE OR. Rows 3, 4, and 5 may be represented by the code 85, which indicates that they are replicas of the lines just above them. Row No. 6 may be represented by the code 81 indicating that it consists only of zeros. FIG. 4C illustrates the rows 1 to 6 and the codes

résultants 50.resulting 50.

Si l'on se réfère à la figure 5, on y a représenté un organigramme illustrant les tests préliminaires exécutés, dans le mode de réalisation préféré de la présente invention, lors de la compression des données. On commence par tester une rangée pour déterminer si elle est constituée entièrement de blancs ou de zéros et, si tel est le cas, on prend l'embranchement 55 et on enregistre le code indiquant qu'elle  Referring to FIG. 5, there is shown a flowchart illustrating the preliminary tests performed, in the preferred embodiment of the present invention, during data compression. We start by testing a row to determine if it consists entirely of blanks or zeros and, if so, we take branch 55 and record the code indicating that it

est entièrement blanche.is entirely white.

On exécute ensuite un test pour déterminer si la rangée est entièrement noire ou constituée de uns et, si tel est le cas, on prend l'embranchement 56 et on enregistre un code indiquant qu'elle est entièrement noire. On exécute ensuite un test pour déterminer si la rangée répète le même octet de données sur toute la longueur de la rangée. Si tel est le cas, on prend l'embranchement 57. Si l'on a pris l'embranchement 57, on exécute un test pour voir si la rangée répète le même octet que celui qui avait été répété par la rangée précédente et, si tel est le cas, on prend l'embranchement 54 et on mémorise un code indiquant qu'elle répète le même code. Si tel n'est pas le cas, on mémorise un code indiquant qu'elle répète un octet, et on  A test is then run to determine whether the row is entirely black or made up of ones, and if so, take branch 56 and record a code indicating that it is entirely black. A test is then run to determine if the row is repeating the same byte of data over the entire length of the row. If this is the case, take branch 57. If we take branch 57, we run a test to see if the row repeats the same byte as the one that was repeated by the previous row and, if this is the case, take the branch 54 and memorize a code indicating that it repeats the same code. If this is not the case, we memorize a code indicating that it repeats a byte, and we

mémorise cet octet.memorize this byte.

On exécute ensuite une vérification pour déterminer si la rangée coïncide avec la rangée qui se trouve juste au-dessus d'elle et, si tel est le cas, on prend l'embranchement 58 et on mémorise un code indiquant que la rangée est une réplique  A check is then made to determine if the row coincides with the row just above it and, if so, take the branch 58 and memorize a code indicating that the row is a replica.

de la rangée qui se trouve juste au-dessus d'elle.  from the row just above her.

On exécute ensuite un test pour déterminer si la rangée coïncide avec la rangée qui se trouve deux rangées au-desssus d'elle et, si tel est le cas, on prend l'embranchement 59 et on mémorise un code indiquant que la rangée coïncide avec la  A test is then run to determine if the row coincides with the row which is two rows above it and, if so, take the branch 59 and memorize a code indicating that the row coincides with the

rangée qui se trouve deux rangées au-desssus d'elle.  row that lies two rows above her.

Comme décrit précédemment à propos de la figure 1, si aucune de ces conditions préliminaires n'est vérifiée, on effectue une détermination de celui qui, parmi plusieurs procédés de décalage et d'exécution d'un OU EXCLUSIF sur des rangées de données, produira une rangée qui soit optimisée en ce qui concerne les zéros. Si l'on se réfère maintenant à la figure 6, on y a représenté un organigramme d'un processus permettant de déterminer le procédé optimal en ce qui concerne l'enrichissement en zéros, tel qu'il est utilisé  As described above with respect to FIG. 1, if none of these preliminary conditions are satisfied, a determination is made of which one of several methods of shifting and executing an EXCLUSIVE OR on rows of data will produce a row that is optimized for zeros. Referring now to Figure 6, there is shown a flowchart of a process for determining the optimal method for zero enrichment as used.

dans le mode de réalisation préféré de la présente invention.  in the preferred embodiment of the present invention.

Ce procédé consiste à tout d'abord initialiser plusieurs variables, notamment le positionnement d'une variable, appelée 'meilleur compte', à la valeur du nombre de mots non à zéro dans la rangée courante (bloc 60). On détermine ensuite ceux des mots qui ne sont pas les mêmes dans la rangée courante et la rangée qui se trouve juste au-dessus d'elle (bloc 61). Si ce compte de mots non égaux est inférieur à la valeur 'meilleur compte', on prend l'embranchement 62 et on mémorise la valeur '0' comme étant le meilleur intervalle horizontal, on mémorise la valeur '1' comme étant le meilleur intervalle vertical et l'on mémorise la valeur du compte comme étant 'meilleur compte'. En d'autres termes, s'il s'agit du pocédé optimal l'exécution d'un OU EXCLUSIF sera faite avec comme entrée la rangée précédant immédiatement la rangée courante et la rangée courante, sans décaler vers la droite la rangée courante. On effectue alors une vérification pour voir si la valeur 'meilleur compte' est inférieure à une valeur de seuil, la valeur de seuil étant calculée comme étant égale à deux, plus la valeur de compte divisée par huit des mots du tampon de rangée. Si 'meilleur compte' est inférieur à la valeur de seuil, on suppose qu'il s'agit du procédé optimal pour enrichir en zéros cette rangée de données. Si tel n'est pas  This method first of all initializes several variables, in particular the positioning of a variable, called 'best account', to the value of the number of non-zero words in the current row (block 60). Then we determine which of the words are not the same in the current row and the row just above it (block 61). If this count of non-equal words is less than the value 'best count', take branch 62 and store the value '0' as the best horizontal interval, store the value '1' as the best interval vertical and we memorize the value of the account as being 'better account'. In other words, if it is the optimal process the execution of an EXCLUSIVE OR will be done with as input the row immediately preceding the current row and the current row, without shifting the current row to the right. A check is then made to see if the 'best count' value is less than a threshold value, the threshold value being calculated as two, plus the count value divided by eight of the row buffer words. If 'best count' is less than the threshold value, it is assumed that this is the optimal method to zerosize this row of data. If this is not

le cas, on prend l'embranchement 75.  the case, we take the branch 75.

Si l'on a pris soit l'embranchement 63 soit l'embranchement 75, l'étape suivante consiste à déterminer la valeur du compte des mots qui ne sont pas les mêmes dans la rangée courante et la rangée qui se trouve deux rangées au-dessus d'elle (bloc 64). Si ce compte est inférieur à la valeur 'meilleur compte', on prend l'embranchement 65 et l'on mémorise '0' comme meilleure valeur d'intervalle horizontal et '2' comme meilleure valeur d'intervalle vertical. La valeur de compte est alors mémorisée comme étant 'meilleur compte' (bloc 76). Si 'meilleur compte' est inférieur à la valeur de seuil, on prend l'embranchement 77 et l'on suppose que le procédé optimal d'enrichissement en zéros est celui utilisant en entrée d'un OU EXCLUSIF la rangée courante et la rangée qui se trouve deux rangées au-dessus de la rangée courante. Si tel n'est pas le cas, on prend l'embranchement 78. Si l'on a pris soit l'embranchement 66 soit l'embranchement 78, on exécute une boucle pour déterminer, parmi plusieurs, celle des combinaisons d'intervalle vertical et d'intervalle horizontal qui donnera le meilleur procédé d'enrichissement des zéros. Dans le mode de réalisation préféré de la présente invention, ces combinaisons comportent un intervalle horizontal égal à 1 avec un intervalle vertical égal à 0, c'est-à-dire un décalage d'un bit vers la droite de la rangée courante et l'utilisation de la rangée décalée et de la rangée courante comme valeurs d'entréed'un OU EXCLUSIF, un intervalle horizontal égal à 1 avec un intervalle vertical égal à 1, un intervalle horizontal égal à 2 avec un intervalle vertical égal à 2, un intervalle horizontal égal à 8 avec un intervalle vertical égal à 0, et un intervalle  If we take either branch 63 or branch 75, the next step is to determine the value of the count of words that are not the same in the current row and the row that is two rows apart. above her (block 64). If this count is less than the 'best count' value, take branch 65 and store '0' as the best horizontal interval value and '2' as the best vertical interval value. The account value is then stored as 'best account' (block 76). If 'best count' is less than the threshold value, take branch 77 and assume that the optimal process of zero enrichment is that using as input of an EXCLUSIVE OR the current row and the row which is two rows above the current row. If this is not the case, take branch 78. If we take either branch 68 or branch 78, we execute a loop to determine, among several, that of vertical interval combinations. and horizontal interval that will give the best method of enriching zeros. In the preferred embodiment of the present invention, these combinations comprise a horizontal interval equal to 1 with a vertical interval equal to 0, that is, a shift of one bit to the right of the current row and the use of the shifted row and the current row as input values of an EXCLUSIVE OR, a horizontal interval equal to 1 with a vertical interval equal to 1, a horizontal interval equal to 2 with a vertical interval equal to 2, a horizontal interval equal to 8 with a vertical interval equal to 0, and an interval

horizontal égal à 16 avec un intervalle vertical égal à 0.  horizontal equal to 16 with a vertical interval equal to 0.

Pour chacune de ces combinaisons on détermine une valeur de compte des mots non à zéro (bloc 67). Si cette valeur de compte est inférieure à la valeur 'meilleur compte' (embranchement 69), on mémorise cette combinaison comme étant celle correspondant au meilleur intervalle horizontal et au meilleur intervalle vertical. Si la valeur de compte n'est pas inférieure à la valeur 'meilleur compte' (embranchement ), on essaye la combinaison (dh,dv) suivante (embranchement 71). S'il n'y a pas d'autre combinaison (dh,dv), on suppose que les meilleures valeurs de dh et dv qui ont été mémorisées sont les valeurs optimales pour enrichir en zéros cette rangée. La figure 7 est un organigramme montrant un processus utilisé pour le décodage de l'information vidéo comprimée, qui peut être utilisé avec le procédé de la présente invention. Tout d'abord, on initialise plusieurs variables (bloc 81). Ceci comprend l'initialisation à zéro d'une variable nommée 'valeur de compte de répétition'. On entre ensuite dans une boucle qui est exécutée pour chaque code mémorisé de l'image vidéo. La première étape consiste à déterminer si 'valeur de compte de répétition' est supérieure à zéro et, si tel est le cas, on prend l'embranchement 82 et on positionne le code opératoire à la valeur précédente de code opératoire, c'est-à-dire que l'on répète le code opératoire et l'on décrémente 'valeur de compte de répétition' (bloc 84). Si 'valeur de compte de répétition' est égale à zéro (embranchement 83), on lit le code opératoire suivant (bloc 85). On effectue alors une vérification pour déterminer si ce code opératoire indique le début d'une rangée de données. Si tel n'est pas le cas (embranchement 86), on décomprime l'information de rangée  For each of these combinations, a count value of the non-zero words (block 67) is determined. If this count value is less than the 'best count' value (branch 69), this combination is stored as the one corresponding to the best horizontal interval and the best vertical interval. If the account value is not less than the value 'best account' (branching), the next combination (dh, dv) is tried (branch 71). If there is no other combination (dh, dv), it is assumed that the best values of dh and dv that have been stored are the optimal values to enrich this row with zeros. Fig. 7 is a flowchart showing a process used for decoding the compressed video information, which may be used with the method of the present invention. First, we initialize several variables (block 81). This includes initialization to zero of a variable named 'repetition count value'. Then one enters a loop that is executed for each stored code of the video image. The first step is to determine if 'repetition count value' is greater than zero and, if so, take branch 82 and set the operating code to the previous operating code value, that is, that is, the operating code is repeated and the 'repetition count value' (block 84) is decremented. If 'repetition count value' equals zero (branch 83), the following operating code (block 85) is read. A check is then made to determine if this operating code indicates the beginning of a row of data. If this is not the case (branch 86), the row information is decompressed

(bloc 88).(block 88).

Si le code indique qu'il s'agit du début d'une rangée, on prend l'embranchement 87. On exécute un test pour déterminer  If the code indicates that it is the beginning of a row, we take branch 87. We run a test to determine

si le code opératoire est un code opératoire de répétition.  if the operative code is a repetition procedure code.

Si tel est le cas (embranchement 89), 'valeur de compte de répétition' est positionnnée à la valeur de compte de répétition du code opératoire de répétition, et le code opératoire suivant est mémorisé comme étant le code  If this is the case (branch 89), the 'repetition count value' is set to the repetition count value of the repetition operation code, and the following operation code is stored as the code

opératoire à répéter (bloc 91).operative to repeat (block 91).

Si le code opératoire n'est pas égal au code opératoire de répétition, on prend l'embranchement 90 et on exécute le  If the operating code is not equal to the repetition procedure code, take branch 90 and execute

traitement d'un code opératoire de début de rangée (bloc 92).  processing a row start operation code (block 92).

Le traitement d'un code opératoire de début de rangée sera expliqué plus en détail à propos des figures 8 et 9. Les données sont alors mises dans un tampon (bloc 93). On exécute un test pour déterminer s'il y a d'autres codes opératoires à traiter. Si tel est le cas, on prend l'embranchement 94. Dans  The processing of a row start operation code will be explained in more detail with reference to FIGS. 8 and 9. The data is then put into a buffer (block 93). A test is run to determine if there are other operating codes to be processed. If this is the case, take branch 94. In

le cas contraire, on prend l'embranchement 95.  if not, take branch 95.

Le traitement d'un code opératoire de début de rangée, tel qu'il est exécuté dans le mode de réalisation préféré de la présente invention, est représenté sur la figure 8. La première étape du traitement d'un code opératoire de début de rangée consiste à rechercher un code qui indique que les données ne sont pas comprimées. Si les données ne sont pas comprimées (embranchement 101), les données non comprimées  The processing of a row start operation code, as performed in the preferred embodiment of the present invention, is shown in FIG. 8. The first step of processing a row start operation code is to look for a code that indicates that the data is not compressed. If the data is not compressed (branch 101), the uncompressed data

sont recopiées dans un tampon (bloc 110).  are copied into a buffer (block 110).

Si les données sont comprimées, on exécute un test pour déterminer si le code opératoire indique que la rangée doit être remplie par des zéros (c'est-à-dire s'il s'agit d'une rangée blanche). Si la rangée dQit être remplie par des zéros (embranchement 102), on exécute une opération pour remplir la rangée de zéros (bloc 111). Dans le cas contraire, on exécute un test pour déterminer si la rangée doit être remplie de uns (c'est-àdire s'il s'agit d'une rangée noire). Si tel est le cas, on prend l'embranchement 103 et on remplit la rangée de uns (bloc 112). Dans le cas contraire, on effectue une vérification pour déterminer si le code indique qu'un octet de données est répété sur toute la rangée. Si tel est le cas, on prend l'embranchement 104, on lit l'octet de données considéré et on leduplique sur toute la rangée (bloc 113). Ensuite, on exécute un test pour déterminer si le code opératoire indique que l'octet répété le long de la rangée précédente doit être répété le long de cette rangée. Si tel est le cas, on prend l'embranchement 105 et on duplique l'octet de données sur  If the data is compressed, a test is run to determine if the operation code indicates that the row should be padded with zeros (i.e., a white row). If the row is filled with zeros (branch 102), an operation is performed to fill the row of zeros (block 111). If not, perform a test to determine if the row is to be filled with one (ie if it is a black row). If this is the case, take the branch 103 and fill the row of ones (block 112). If not, a check is made to determine if the code indicates that one byte of data is repeated throughout the row. If this is the case, we take the branch 104, we read the data byte considered and leduuplicate over the entire row (block 113). Then, a test is run to determine if the opcode indicates that the byte repeated along the preceding row should be repeated along that row. If this is the case, take branch 105 and duplicate the byte of data on

toute la rangée (bloc 114).the entire row (block 114).

Dans le cas contraire, on effectue un test pour déterminer si la rangée courante est une recopie de la rangée qui se trouve juste au-dessus et, si tel est le cas, on prend l'embranchement 106. On effectue alors une recopie de la rangée qui se trouve juste au-dessus (bloc 115). Enfin, on effectue un test pour déterminer si le code indique que la rangée est une réplique exacte de la rangée qui se trouve deux rangées au-dessus d'elle et, si tel est le cas, on prend l'embranchement 107. Dans ce cas, on recopie la rangée qui se trouve deux rangées au-dessus de la rangée courante (bloc 116). Si tous les tests précédents se sont révélés négatifs, on exécute une série de tests pour déterminer quel intervalle horizontal et quel intervalle vertical devront être utilisés pour cette rangée dans le processus de décalage et  In the opposite case, a test is made to determine if the current row is a copy of the row which is just above it and, if this is the case, take the branch 106. This is followed by a copy of the row just above (block 115). Finally, a test is made to determine if the code indicates that the row is an exact replica of the row that is two rows above it and, if so, take the branch 107. In this case, In this case, we copy the row that is two rows above the current row (block 116). If all previous tests were negative, a series of tests are performed to determine which horizontal and vertical intervals should be used for this row in the offset process and

d'exécution du OU EXCLUSIF (bloc 117).  executing the EXCLUSIVE OR (block 117).

Après avoir établi les valeurs courantes d'intervalle horizontal et d'intervalle vertical, on effectue le processus de décalage et d'exécution du OU EXCLUSIF. La première étape peut consister & déterminer pour la rangée de données l'intervalle horizontal approprié et à décaler vers la gauche, d'un nombre d'octets égal à la valeur de l'intervalle, une copie de la rangée. On exécute alors un OU EXCLUSIF avec en entrée la rangée de données courante d'origine et la copie décalée de cette rangée. On effectue ensuite des tests pour déterminer si la rangée résultante doit être soumise à un OU EXCLUSIF soit avec la rangée qui se trouve juste au-dessus d'elle, soit avec celle qui se trouve  After setting the current values of horizontal interval and vertical interval, the EXCLUSIVE OR shifting and execution process is performed. The first step may consist in determining for the data row the appropriate horizontal interval and shifting to the left, by a number of bytes equal to the value of the interval, a copy of the row. An EXCLUSIVE OR is then executed with the input of the original current data row and the offset copy of this row. Then, tests are made to determine if the resulting row is to be EXCLUSIVE-OR with the row directly above it or with the row

deux rangées au-dessus.two rows above.

Si l'on se réfère maintenant à la figure 9, on effectue tout d'abord, dans le mode de réalisation préféré de la présente invention, un contrôle pour voir si l'intervalle horizontal de la rangée courante vaut '1'. Si tel est le cas, on prend l'embranchement 121. On utilise, dans le mode de réalisation préféré de la présente invention, une table pour transformer la rangée de données mémorisée en la rangée de données à afficher. L'utilisation de la table augmente la vitesse de traitement de des données. La table est constituée  Referring now to Fig. 9, first, in the preferred embodiment of the present invention, a check is made to see if the horizontal interval of the current row is '1'. If so, take branch 121. In the preferred embodiment of the present invention, a table is used to transform the stored data row into the data row to be displayed. Using the table increases the processing speed of data. The table is constituted

par les valeurs transformées de chaque valeur codée possible.  by the transformed values of each possible coded value.

Par exemple, dans cette table, on a une valeur 110 située à un décalage relatif de 141. Ceci est dû au fait que la valeur 1110 (10112) décalée vers la droite d'une position (01012), utilisée comme entrée pour l'exécution d'un OU EXCLUSIF avec l'autre entrée qui est 1110, donne comme résultat 1410 (10112 E 10102 = 11102). De la sorte, la rangée codée présentera une valeur 1410 retransformée en 1110, grâce à cette table. La table contient des valeurs de transformation semblable pour les autres valeurs, situées aux  For example, in this table, there is a value 110 located at a relative offset of 141. This is because the value 1110 (10112) shifted to the right of a position (01012), used as an input for the executing an EXCLUSIVE OR with the other input which is 1110, gives as result 1410 (10112 E 10102 = 11102). In this way, the coded row will present a value 1410 retransformed in 1110, thanks to this table. The table contains similar transformation values for the other values, located at

adresses de décalages appropriées.  appropriate offset addresses.

Si l'intervalle horizontal vaut '2', on prend l'embranchement 124 et on utilise une table semblable pour obtenir les codes transformés (bloc 123). Si l'intervalle horizontal vaut '8', on prend l'embranchement 125, on décale de huit octets la rangée et on la soumet à un OU EXCLUSIF pour obtenir les données originelles. Enfin, si l'intervalle horizontal vaut '16', on prend l'embranchement 127, on décale la rangée de 16 octets et on la soumet à un OU EXCLUSIF (bloc 128). Après avoir traité les' intervalles horizontaux, on effectue une vérification pour déterminer si l'intervalle vertical vaut '1'. Si tel est le cas, on utilise l'embranchement 130. La rangée courante et la.rangée qui se trouve juste au-dessus d'elle sont utilisées en entrée pour l'exécution d'un OU EXCLUSIF afin d'obtenir la valeur originelle de la rangée courante (bloc 131). Dans le cas contraire, on effectue une vérification pour déterminer si l'intervalle vertical vaut '2'. Si tel est le cas, on prend l'embranchement 132 et on soumet la rangée courante à un OU EXCLUSIF avec la rangée qui se trouve deux rangées au-dessus d'elle, le résultat étant la valeur originelle de cette  If the horizontal interval is '2', take branch 124 and use a similar table to obtain the transformed codes (block 123). If the horizontal interval is '8', take branch 125, shift the row by eight bytes and submit it to an EXCLUSIVE OR to obtain the original data. Finally, if the horizontal interval is '16', take branch 127, move the row by 16 bytes and submit it to an EXCLUSIVE OR (block 128). After having processed the horizontal intervals, a check is made to determine if the vertical interval is '1'. If this is the case, branch 130 is used. The current row and the string just above it are used as input to execute an EXCLUSIVE OR to obtain the original value. of the current row (block 131). In the opposite case, a check is made to determine if the vertical interval is '2'. If this is the case, we take branch 132 and subject the current row to an EXCLUSIVE OR with the row that is two rows above it, the result being the original value of this row.

rangée (bloc 133).row (block 133).

17 261946117 2619461

Claims (23)

REVENDICATIONS 1. Un procédé pour comprimer une information, caractérisé en ce qu'il comprend les étapes suivantes: - enrichissement d'une carte de bits de cette information en un premier-état binaire, et - codage de cette carte de bits enrichie,  A method for compressing information, characterized in that it comprises the following steps: - enriching a bit map of this information in a first-bit state, and - encoding this enriched bitmap, de manière à comprimer ladite information.  to compress said information. 2. Le procédé de la revendication 1, dans lequel l'étape de codage de la carte de bits enrichie comporte les étapes suivantes: - détermination du fait qu'une première rangée de la carte de bits remplit ou non l'une des conditions d'un jeu de conditions prédéterminé, et - si l'une de ces conditions du jeu prédéterminé de conditions est remplie, mémorisation d'un code appartenant à  The method of claim 1, wherein the step of encoding the enriched bitmap comprises the steps of: determining whether or not a first row of the bitmap fulfills one of the conditions of a set of predetermined conditions, and - if one of these conditions of the predetermined set of conditions is fulfilled, storing a code belonging to un premier jeu de codes prédéterminé.  a first predetermined code set. 3. Le procédé de la revendication 2, dans lequel ledit jeu de conditions prédéterminé comporte: - le fait que la première rangée se trouve ou non entièrement audit premier état binaire, - le fait que ladite première rangée se trouve ou non entièrement à un second état binaire, - le fait qu'un premier groupe de bits se répète ou non dans ladite première rangée, et - le fait que ladite première rangée est identique ou non  The method of claim 2, wherein said predetermined set of conditions includes: - whether or not the first row is wholly in said first bit state, - whether or not said first row is entirely in a second state binary state, - the fact that a first group of bits repeats itself or not in said first row, and - the fact that said first row is identical or not à une seconde rangée de la carte de bits.  to a second row of the bitmap. 4. Le procédé de la revendication 1, dans lequel l'enrichissement de la carte de bits comporte les étapes suivantes: (a) copie d'une première rangée de la carte de bits, (b) décalage de cette copie de la première rangée d'un nombre prédéterminé de bits dans un premier sens, (c) exécution d'un OU EXCLUSIF en utilisant comme valeurs d'entrée ladite première rangée de données et ladite copie de cette première rangée de données, le résultat ainsi obtenu étant une seconde rangée de données, (d) détermination du nombre de mots de données de cette seconde rangée de données qui se trouvent audit premier état binaire, (e) si ledit nombre de mots se trouvant à cet état binaire est supérieur à une première valeur, mémorisation de ce nombre de mots comme première valeur et mémorisation dudit nombre prédéterminé comme seconde valeur, et (f) répétition des étapes (b) à (e) pour chacun des  The method of claim 1, wherein the bit map enhancement comprises the steps of: (a) copying a first row of the bit map, (b) shifting that copy of the first row of a predetermined number of bits in a first direction, (c) execution of an EXCLUSIVE OR using as input values said first row of data and said copy of said first row of data, the result thus obtained being a second data row, (d) determining the number of data words of this second row of data that are in said first bit state, (e) if said number of words in said bit state is greater than a first value, storing of this number of words as the first value and storing said predetermined number as a second value, and (f) repeating steps (b) to (e) for each of the nombres d'un premier jeu de nombres prédéterminés.  numbers of a first set of predetermined numbers. 5. Le procédé de la revendication 4, dans lequel l'enrichissement de la carte de bits comporte en outre les étapes suivantes: (a) exécution d'un OU EXCLUSIF en utilisant comme valeurs d'entrée ladite première rangée de données et une troisième rangée de données, cette troisième rangée de données étant décalée d'un nombre prédéterminé de rangées par rapport à ladite première rangée de données, le résultat ainsi obtenu étant une quatrième rangée de données, (b) détermination du nombre de mots de données de cette quatrième rangée de données qui se trouvent audit premier état binaire, (c) si ledit nombre de mots se trouvant à cet état binaire est supérieur à une troisième valeur, mémorisation de ce nombre de mots comme troisième valeur et mémorisation dudit nombre prédéterminé comme quatrième valeur, et (d) répétition des étapes (a) à (c) pour chacun des  The method of claim 4, wherein the bitmap enrichment further comprises the steps of: (a) executing an EXCLUSIVE OR using as input values said first row of data and a third row of data, this third row of data being shifted by a predetermined number of rows from said first row of data, the result so obtained being a fourth row of data, (b) determining the number of data words of that row of data. fourth row of data in said first bit state, (c) if said number of words in said bit state is greater than a third value, storing said number of words as third value and storing said predetermined number as fourth value , and (d) repetition of steps (a) through (c) for each of nombres d'un second jeu de nombres prédéterminés.  numbers of a second set of predetermined numbers. 6. Le procédé de la revendication 5, dans lequel ledit premier jeu de nombres prédéterminés comprend les valeurs un,  The method of claim 5, wherein said first set of predetermined numbers comprises the values one, deux, huit et seize.two, eight and sixteen. 7. Le procédé de la revendication 6, dans lequel ledit second jeu de nombres prédéterminés comprend les valeurs  The method of claim 6, wherein said second set of predetermined numbers comprises the values zéro, un et deux.zero, one and two. 8. Le procédé de la revendication 1, comprenant en outre  The process of claim 1, further comprising une étape de décodage de ladite information codée.  a step of decoding said coded information. 9. Le procédé de la revendication 8, dans lequel le décodage de ladite information codée comporte les étapes de: (a) lecture d'un code opératoire, (b) détermination, à partir de ce code opératoire, du fait que le code opératoire indique ou non le début d'une première rangée de données, et (c) si ce code opératoire indique un tel début de première rangée de données, exécution de ce code opératoire, (d) dans le cas contraire, décompression de ladite  9. The method of claim 8, wherein the decoding of said coded information comprises the steps of: (a) reading an operating code, (b) determining, from this operating code, that the operating code whether or not to indicate the beginning of a first row of data, and (c) if this operating code indicates such a beginning of first row of data, execution of this operating code, (d) otherwise, decompression of said première rangée de données.first row of data. 10. Le procédé de la revendication 9, dans lequel le traitement du code opératoire de début de rangée comporte les étapes suivantes: (a) si le code opératoire indique que les données ne sont pas comprimées, copie des données non comprimées, (b) si le code opératoire indique que ladite première rangée est composée de bits qui sont tous à un premier état binaire, remplissage de cette première rangée avec des bits à ce premier état binaire, (c) si le code opératoire indique que ladite première rangée est composée de bits qui sont tous à un second état binaire, remplissage de cette première rangée avec des bits à ce second état binaire, (d) si le code opératoire indique que les données répètent un bloc de données, remplissage de ladite première rangée avec des répliques de bloc de données, et (e) si le code opératoire indique que ladite première rangée est la même qu'une seconde rangée décalée d'un nombre prédéterminé de rangées par rapport à cette première rangée,  The method of claim 9, wherein the processing of the row start operation code comprises the following steps: (a) if the operation code indicates that the data is not compressed, copying uncompressed data, (b) if the operating code indicates that said first row is composed of bits which are all at a first bit state, filling of that first row with bits at that first bit state, (c) if the operating code indicates that said first row is composed bits that are all at a second bit state, filling that first row with bits at that second bit state, (d) if the operating code indicates that the data is repeating a data block, filling said first row with replicas data block, and (e) if the operating code indicates that said first row is the same as a second row offset by a predetermined number of rows per report t in this first row, copie de cette seconde rangée.copy of this second row. 11. Le procédé de la revendication 10, dans lequel la décompression desdites données comporte l'étape d'utilisation d'une table comportant des valeurs prédéterminées permettant  The method of claim 10, wherein the decompression of said data includes the step of using a table having predetermined values permitting de décomprimer ces données.to decompress these data. 12. Le procédé de la revendication 1, dans lequel le codage de la carte de bits enrichie comporte l'étape de représentation de cette carte de bits enrichie par des codes représentant des séquences de bits se trouvant audit premier état binaire et des séquences de bits se trouvant à un second  The method of claim 1, wherein the encoding of the enriched bitmap includes the step of representing said enriched bitmap with codes representing bit sequences at said first bit state and bit sequences. being at a second état binaire.binary state. 13. Le procédé de la revendication 1, dans lequel ledit  The process of claim 1 wherein said premier état binaire est un état bas.  first binary state is a low state. 14. Un procédé pour comprimer et réafficher une information vidéo à partir d'un dispositif d'affichage sous forme de carte de bits, caractérisé en ce qu'il comprend les étapes suivantes: - détermination du fait que l'une des conditions d'un premier jeu de conditions prédéterminées est ou non vérifiée par une première rangée de données, - si l'une des conditions de ce premier jeu de conditions prédéterminées est vérifiée, mémorisation de l'un des codes d'un premier jeu de codes, - enrichissement de la carte de bits de ladite information en un premier état binaire par décalage et exécution d'un OU EXCLUSIF, - codage de cette carte de bits enrichie par représentation de cette carte de bits sous forme de séquences de ce premier état binaire et de séquences d'un second état binaire, et décodage de cette information par lecture d'une pluralité de codes opératoires et reconstruction de la carte de bits à partir de ces codes opératoires,  14. A method for compressing and redisplaying video information from a bitmap display device, characterized in that it comprises the following steps: - determining that one of the conditions of a first set of predetermined conditions is or not verified by a first row of data, - if one of the conditions of this first set of predetermined conditions is satisfied, storing one of the codes of a first set of codes, - enriching the bit map of said information in a first binary state by shifting and executing an EXCLUSIVE OR, - encoding this bitmap enriched by representing this bit map in the form of sequences of this first bit state and of sequences of a second binary state, and decoding this information by reading a plurality of operating codes and rebuilding the bit map from these operating codes, de manière à comprimer et réafficher ladite information.  so as to compress and redisplay said information. 15. Le procédé de la revendication 14, dans lequel le premier jeu de conditions prédéterminées comporte: - le fait que tous les bits de ladite première rangée de ladite information se trouvent ou non audit premier état binaire, - le fait que tous les bits de ladite première rangée de ladite information se trouvent ou non audit second état binaire, - le fait qu'un premier groupe de bits se répète ou non dans cette première rangée, et - le fait que cette première rangée est identique ou non  The method of claim 14, wherein the first set of predetermined conditions includes: - whether all bits of said first row of said information are at said first bit state or not, - all bits of said first row of said information is or is not in said second bit state, - whether or not a first group of bits repeats in that first row, and - whether said first row is identical or not à une seconde rangée de la carte de bits.  to a second row of the bitmap. 16. Le procédé de la revendication 14, dans lequel la décompression desdites données comporte l'étape d'utilisation d'une table de transformation comportant des valeurs  The method of claim 14, wherein decompressing said data includes the step of using a transformation table having values prédéterminées permettant de décomprimer ces données.  predetermined ways to decompress these data. 17. Le procédé de la revendication 15, dans lequel le  17. The method of claim 15, wherein the premier état binaire est un état bas.  first binary state is a low state. 18. Le procédé de la revendication 17, dans lequel le  18. The method of claim 17, wherein the second état binaire est un état haut.  second binary state is a high state. 19. Un circuit de système informatique pour comprimer des informations vidéo sous forme de carte de bits, caractérisé par: - des premiers moyens de mémorisation, pour mémoriser une image vidéo sous forme de carte de bits, - des premiers moyens de comparaison, pour déterminer si l'une des conditions d'un jeu de conditions prédéterminées est vérifiée par une première rangée de cette image vidéo sous forme de carte de bits, - des moyens décaleurs, pour décaler cette première rangée de l'image vidéo sous forme de carte de bits, - des seconds moyens comparateurs, pour comparer cette première rangée de l'image vidéo sous forme de carte de bits à une seconde rangée de cette même image vidéo sous forme de carte de bits, ces premiers moyens comparateurs, moyens décaleurs et seconds moyens comparateurs permettant d'obtenir une  19. A computer system circuit for compressing video information in the form of a bitmap, characterized by: - first storage means, for storing a video image in the form of a bit map, - first comparison means, for determining if one of the conditions of a set of predetermined conditions is verified by a first row of this video image in the form of a bitmap, - shifting means, to shift this first row of the video image as a bitmap. bits, second comparing means, for comparing this first row of the video image in the form of a bitmap to a second row of this same video image in the form of a bitmap, these first comparator means, staggering means and second means. comparators to obtain a 22 261946122 2619461 information permettant de coder ladite image vidéo sous forme de carte de bits, et - des seconds moyens de mémorisation, pour mémoriser une  information making it possible to code said video image in the form of a bit map, and - second storage means, for storing a information vidéo codée.encoded video information. 20. Le circuit de la revendication 19, dans lequel ledit jeu de conditions prédéterminées comporte: - le fait que tous les bits de ladite première rangée de ladite image vidéo se trouvent ou non à un premier état binaire, - le fait que tous les bits de ladite première rangée de ladite information vidéo se trouvent ou non à un second état binaire, - le fait qu'un premier groupe de bits se répète ou non dans ladite première rangée de ladite information vidéo, et - le fait que ladite première rangée est identique ou non à ladite seconde rangée de ladite image vidéo sous forme de  The circuit of claim 19, wherein said set of predetermined conditions comprises: - whether all the bits of said first row of said video frame are at a first bit state, - the fact that all the bits of said first row of said video information is or is not in a second bit state, - whether or not a first group of bits repeats in said first row of said video information, and - said first row is identical or not to said second row of said video image in the form of carte de bits.bitmap. 21. Le circuit de la revendication 20, dans lequel le  21. The circuit of claim 20, wherein the premier état binaire est un état bas.  first binary state is a low state. 22. Le circuit de la revendication 21, dans lequel le  22. The circuit of claim 21, wherein the second état binaire est un état haut.  second binary state is a high state. 23. Le circuit de la revendication 19, dans lequel lesdits seconds moyens comparateurs permettent l'exécution  23. The circuit of claim 19, wherein said second comparator means allows execution d'un OU EXCLUSIF.an EXCLUSIVE OR.
FR8810746A 1987-08-11 1988-08-09 VIDEO COMPRESSION METHOD AND CIRCUIT FOR BIT CARD DISPLAY Expired - Fee Related FR2619461B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US8430987A 1987-08-11 1987-08-11

Publications (2)

Publication Number Publication Date
FR2619461A1 true FR2619461A1 (en) 1989-02-17
FR2619461B1 FR2619461B1 (en) 1994-04-01

Family

ID=22184140

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8810746A Expired - Fee Related FR2619461B1 (en) 1987-08-11 1988-08-09 VIDEO COMPRESSION METHOD AND CIRCUIT FOR BIT CARD DISPLAY

Country Status (8)

Country Link
JP (1) JPS6467086A (en)
AU (1) AU613938B2 (en)
CA (1) CA1336015C (en)
DE (1) DE3827131C2 (en)
FR (1) FR2619461B1 (en)
GB (1) GB2208059B (en)
HK (1) HK26392A (en)
SG (1) SG592G (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02122959A (en) * 1988-11-01 1990-05-10 Seiko Epson Corp Character pattern data storage device and character pattern generation device
US5179711A (en) * 1989-12-26 1993-01-12 International Business Machines Corporation Minimum identical consecutive run length data units compression method by searching consecutive data pair comparison results stored in a string
JPH05183765A (en) * 1991-12-27 1993-07-23 Canon Inc Data processing system and device usable for the system
AU3238295A (en) * 1995-08-03 1997-03-05 Michael L. Cole Recursive data compression
EP3619810A4 (en) * 2017-07-31 2020-12-23 Hewlett-Packard Development Company, L.P. Xor processing of voxels of three-dimensional models
CN117118456B (en) * 2023-10-25 2024-01-26 山东德源电力科技股份有限公司 Magnetic control switch control data processing method based on depth fusion

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3992572A (en) * 1973-08-31 1976-11-16 Kokusai Denshin Denwa Kabushiki Kaisha System for coding two-dimensional information
US4058674A (en) * 1973-03-27 1977-11-15 Kabushiki Kaisha Ricoh Graphic information compression method and system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4071855A (en) * 1976-03-03 1978-01-31 Xerox Corporation Encoder and decoder for bandwidth compression
DE2615486C2 (en) * 1976-04-09 1983-12-08 Philips Patentverwaltung Gmbh, 2000 Hamburg Method and arrangement for the transmission of facsimile image signals
CA1128646A (en) * 1978-11-22 1982-07-27 Yasuhiro Yamazaki Coding method for facsimile signal
JPS57124970A (en) * 1981-01-26 1982-08-04 Fujitsu Ltd Video information coding system
US4546385A (en) * 1983-06-30 1985-10-08 International Business Machines Corporation Data compression method for graphics images
EP0132455A1 (en) * 1983-07-29 1985-02-13 DR.-ING. RUDOLF HELL GmbH Method and apparatus for the high definition display of line graphics
DE3483521D1 (en) * 1984-01-16 1990-12-06 Ibm METHOD FOR CODING AND DECODING A DIGITAL IMAGE.
US4631521A (en) * 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
JPS6276364A (en) * 1985-09-27 1987-04-08 Matsushita Graphic Commun Syst Inc Picture information communication equipment
EP0308464B1 (en) * 1987-03-17 1992-04-29 Digital Equipment Corporation System for producing dithered images from continuous-tone image data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4058674A (en) * 1973-03-27 1977-11-15 Kabushiki Kaisha Ricoh Graphic information compression method and system
US3992572A (en) * 1973-08-31 1976-11-16 Kokusai Denshin Denwa Kabushiki Kaisha System for coding two-dimensional information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN. vol. 26, no. 5, Octobre 1983, NEW YORK US pages 2412 - 2413; R.C. GRENNHALGH: 'gray scale image compression algorithm' *

Also Published As

Publication number Publication date
SG592G (en) 1992-05-15
CA1336015C (en) 1995-06-20
FR2619461B1 (en) 1994-04-01
JPS6467086A (en) 1989-03-13
GB2208059B (en) 1991-09-25
DE3827131A1 (en) 1989-02-23
AU2049288A (en) 1989-02-16
AU613938B2 (en) 1991-08-15
HK26392A (en) 1992-04-16
GB2208059A (en) 1989-02-15
DE3827131C2 (en) 1997-05-15
GB8814862D0 (en) 1988-07-27

Similar Documents

Publication Publication Date Title
EP0484259B1 (en) Binary coding method with uniform switching rate of the binary elements and incrementation/decrementation method therefor
Kawaguchi et al. Principles and applications of BPCS steganography
EP0142439B1 (en) Method of compressing a train of digital information, and apparatus therefor
FR2716587A1 (en) Image compression method and apparatus.
FR2631182A1 (en) DYNAMICALLY VARIABLE BINARY CODE READABLE BY A MACHINE AND METHOD FOR READING AND PRODUCTION THEREOF
FR2691271A1 (en) Compression and decompression without loss of data in video images - involves treating blocks of colour images in increments of blocks of pixels, establishing list of colours and mapping blocks of pixels with list of colours
EP0661846A1 (en) Method for authenticating at least one identification device by a verification device using a zero-knowledge protocol
FR2554256A1 (en) APPARATUS AND METHOD FOR REGENERATING A HIGH-SPEED WORKING RANGE BUFFER
EP0416985A1 (en) Method of multiplexing a sound signal with an analogue video signal and corresponding distribution system for still images with sound
FR2702914A1 (en) Device for coding series of images consisting of film-type images and of video-type images, and corresponding decoding device
WO2005088902A2 (en) Method and system for the secure distribution of compressed digital texts
FR2808948A1 (en) SYSTEM AND METHOD FOR UNIQUE AUTHENTICATION OF EACH REPRODUCTION OF A GROUP OF ELECTRONIC DOCUMENTS
FR2619461A1 (en) METHOD AND VIDEO COMPRESSION CIRCUIT FOR BIT CARD DISPLAY
FR2792150A1 (en) Video image digital signal coding-decoding method, storing signal sub signal decompressed images first position and performing iterative process to determine optimum decoding techniques
FR2605473A1 (en) METHOD AND APPARATUS FOR ENCODING AND DECODING BINARY INFORMATION
EP2785039A1 (en) Method and device for tattooing an image sequence, method and device for authenticating a sequence of tattooed images and corresponding computer program
FR2591050A1 (en) METHOD AND DEVICE FOR COMPRESSION BY CONDITIONAL CODING OF DIGITAL IMAGES WITHOUT LOSS OF INFORMATION
WO1989010042A1 (en) Method for coding and decoding information, by frames, and coding and decoding devices for implementing such method
EP0123573B1 (en) Method for the adaptive coding and decoding of a television picture, and device for carrying out such a method
EP0063990B1 (en) Method for image transmission with reduced data rate; transmission system for executing this method
FR2524740A1 (en) METHOD OF COMPRESSING A DIGITIZED IMAGE
FR2755564A1 (en) Image data coding using adjacent pixels in successive scan lines
EP0020980B1 (en) Segmented-display device
EP1522168B1 (en) Method, system and computerized medium for making secure message transmission
EP0911760B1 (en) Iterated image transformation and decoding apparatus and methods

Legal Events

Date Code Title Description
ST Notification of lapse