FR2846837A1 - Data e.g. fixed images, video, sound sample coding process, involves determining basic list of samples that are to be coded and modifying samples in order to arrange them in decreasing amplitude - Google Patents
Data e.g. fixed images, video, sound sample coding process, involves determining basic list of samples that are to be coded and modifying samples in order to arrange them in decreasing amplitude Download PDFInfo
- Publication number
- FR2846837A1 FR2846837A1 FR0213823A FR0213823A FR2846837A1 FR 2846837 A1 FR2846837 A1 FR 2846837A1 FR 0213823 A FR0213823 A FR 0213823A FR 0213823 A FR0213823 A FR 0213823A FR 2846837 A1 FR2846837 A1 FR 2846837A1
- Authority
- FR
- France
- Prior art keywords
- samples
- list
- coding
- data
- lists
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000003247 decreasing effect Effects 0.000 title claims abstract description 14
- 230000008569 process Effects 0.000 title abstract description 5
- 230000004048 modification Effects 0.000 claims description 12
- 238000012986 modification Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 5
- 230000001502 supplementing effect Effects 0.000 claims 1
- 230000009466 transformation Effects 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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 an image region, e.g. an object
- H04N19/176—Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
La présente invention concerne d'une manière générale le codage de signalThe present invention relates generally to signal coding
numérique et propose à cette fin un dispositif et un procédé de digital and offers for this purpose a device and a method of
codage d'un signal numérique.coding of a digital signal.
Le codage a pour but de compresser le signal, ce qui permet de transmettre, respectivement mémoriser, le signal numérique en réduisant le 15 temps de transmission, ou le débit de transmission, respectivement en The purpose of coding is to compress the signal, which makes it possible to transmit, respectively memorize, the digital signal by reducing the transmission time, or the transmission rate, respectively by
réduisant la place mémoire utilisée. reducing the memory space used.
L'invention se situe dans le domaine de la compression avec perte de signaux numériques. Les signaux numériques considérés ici sont de nature quelconque, par exemple des images fixes, de la vidéo, du son, des données The invention relates to the field of compression with loss of digital signals. The digital signals considered here are of any kind, for example still images, video, sound, data
2 0 informatiques.2 0 IT.
Dans la suite, on considère plus particulièrement le codage et le In the following, we consider more particularly the coding and the
décodage d'une image fixe.decoding of a still image.
Dans ce contexte, certains modes de codage utilisent un parcours établi parmi un ensemble d'échantillons numériques. Par exemple, les 25 demandes de brevet français no 01 06933, 01 12064 et 01 13922 concernent In this context, certain coding modes use an established route among a set of digital samples. For example, the 25 French patent applications Nos 01 06933, 01 12064 and 01 13922 concern
de tels modes de codage.such coding modes.
Pour que le codage soit efficace, c'est-à-dire qu'il présente un bon rapport débit-distorsion, il est nécessaire de déterminer le parcours de manière adaptée. Il existe des techniques pour déterminer un parcours parmi un ensemble d'échantillons. Ces techniques sont connues sous le nom de techniques de résolution du problème du voyageur de commerce. Une revue de ces techniques est par exemple exposée dans l'ouvrage de Gerhard Reinelt intitulé " The traveling salesman, computational solutions for TSP In order for the coding to be effective, that is to say that it has a good bit-distortion ratio, it is necessary to determine the path in an appropriate manner. There are techniques for determining a route among a set of samples. These techniques are known as traveling salesperson problem solving techniques. A review of these techniques is for example exposed in the work of Gerhard Reinelt entitled "The traveling salesman, computational solutions for TSP
applications ", Springer-Verlag, 1994. applications ", Springer-Verlag, 1994.
Ces techniques utilisent le calcul évolutionnaire, qui fournit une solution optimale au problème mais nécessite un temps de calcul élevé. La présente invention vise à remédier aux inconvénients de la technique antérieure, en fournissant un procédé et un dispositif de codage de données numérique selon lesquels un parcours est déterminé plus rapidement These techniques use evolutionary computation, which provides an optimal solution to the problem but requires a high computation time. The present invention aims to remedy the drawbacks of the prior art, by providing a method and a device for coding digital data according to which a path is determined more quickly.
que selon la technique antérieure.than according to the prior art.
A cette fin, l'invention propose un procédé de codage d'échantillons numériques d'un ensemble de données représentatives de grandeurs physiques, le codage incluant la détermination d'un modèle d'amplitude et d'un parcours parmi les échantillons de l'ensemble, caractérisé en ce qu'il comporte les étapes de: - détermination d'un nombre d'échantillons à coder, - construction d'une liste comportant le nombre déterminé To this end, the invention proposes a method of coding digital samples of a set of data representative of physical quantities, the coding including the determination of an amplitude model and of a path among the samples of the set, characterized in that it comprises the steps of: - determination of a number of samples to be coded, - construction of a list comprising the determined number
d'échantillons, classés par amplitude décroissante. of samples, classified by decreasing amplitude.
L'invention permet de déterminer plus rapidement le parcours parmi 2 0 les échantillons que selon la technique antérieure. La dégradation des performances de compression (débit et distorsion) est faible et généralement négligeable. Selon un premier mode préféré de réalisation, le procédé comporte les étapes de: - détermination d'une liste initiale d'échantillons, - calcul d'un cot de codage en fonction de la liste d'échantillons, - modification de la liste d'échantillons, les étapes de calcul et modification étant réitérées pour trouver un The invention makes it possible to more quickly determine the route among the samples than according to the prior art. The degradation of compression performance (throughput and distortion) is low and generally negligible. According to a first preferred embodiment, the method comprises the steps of: - determining an initial list of samples, - calculating a coding cost as a function of the list of samples, - modifying the list of samples, the calculation and modification steps being repeated to find a
cot de codage minimal.minimum coding cost.
Ainsi, selon ce mode de réalisation, une liste d'échantillons est déterminée. Selon une caractéristique préférée, le procédé comporte en outre l'étape de codage de l'ensemble de données à partir de la liste d'échantillons Thus, according to this embodiment, a list of samples is determined. According to a preferred characteristic, the method further comprises the step of coding the data set from the list of samples
qui fournit le cot de codage minimal. which provides the minimum coding cost.
La liste déterminée selon l'invention est ainsi utilisée pour coder les données. Selon une caractéristique préférée, la liste initiale d'échantillons The list determined according to the invention is thus used to code the data. According to a preferred characteristic, the initial list of samples
comporte tous les échantillons de l'ensemble de données. contains all the samples in the data set.
Selon une caractéristique préférée, la modification de la liste According to a preferred characteristic, the modification of the list
d'échantillons comporte le retrait de l'échantillon de plus faible amplitude. of samples involves removal of the lower amplitude sample.
Ainsi, les listes envisagées auront un nombre d'échantillons Thus, the lists envisaged will have a number of samples
décroissant au fur et à mesure des itérations. decreasing as iterations progress.
Selon des caractéristiques préférées qui peuvent être combinées, le cot de codage comporte le débit des données codées et le cot de codage comporte la distorsion des données codées. Le débit et la distorsion sont 15 couramment pris en compte lors de la compression de données. Parmi les listes envisagées, celle qui a le cot de codage le plus faible est retenue pour coder les données. La détermination de cette liste est rapide, et par According to preferred characteristics which can be combined, the coding cost comprises the bit rate of the coded data and the coding cost comprises the distortion of the coded data. Bit rate and distortion are commonly taken into account when compressing data. Among the lists envisaged, the one with the lowest coding cost is used to code the data. Determining this list is quick, and by
construction son cot de codage est faible. construction its coding cost is low.
2 0 Selon un second mode de réalisation, l'invention concerne un procédé tel que précédemment présenté, comportant une initialisation d'algorithme évolutionnaire selon laquelle une population de listes d'échantillons est déterminée, la population comportant un nombre prédéterminé de listes, caractérisé en ce que la détermination de la population 25 comporte les étapes de: - détermination d'une première liste d'échantillons classés par amplitude décroissante, - modification de la première liste par retrait d'un nombre prédéterminé d'échantillons de plus faible amplitude, pour former une seconde 3 0 liste, les étapes de détermination et modification étant réitérées en prenant la seconde liste d'une itération comme première liste pour l'itération suivante, tant que le nombre prédéterminé de listes n'est pas atteint et que la According to a second embodiment, the invention relates to a method as previously presented, comprising an initialization of an evolutionary algorithm according to which a population of lists of samples is determined, the population comprising a predetermined number of lists, characterized in what the determination of the population comprises the steps of: - determining a first list of samples classified by decreasing amplitude, - modification of the first list by removing a predetermined number of samples of lower amplitude, for forming a second list, the determination and modification steps being repeated by taking the second list of an iteration as the first list for the next iteration, as long as the predetermined number of lists is not reached and the
seconde liste a un nombre d'échantillons non nul. second list has a non-zero number of samples.
Selon ce mode de réalisation, c'est l'initialisation du calcul évolutionnaire qui est simplifiée et rendue plus rapide à exécuter. En outre, les 5 listes créées selon l'invention sont généralement meilleures que des listes tirées aléatoirement, ce qui signifie que la convergence du calcul évolutionnaire According to this embodiment, it is the initialization of the evolutionary calculation which is simplified and made faster to execute. In addition, the 5 lists created according to the invention are generally better than randomly drawn lists, which means that the convergence of evolutionary calculus
est favorisée.is favored.
Selon une caractéristique préférée, la population est complétée par According to a preferred characteristic, the population is supplemented by
des listes tirées aléatoirement, si la seconde liste formée a un nombre 10 d'échantillons nul avant que le nombre prédéterminé de listes ne soit atteint. lists drawn at random, if the second list formed has a number of samples zero before the predetermined number of lists is reached.
Selon une caractéristique préférée, l'ensemble de données est un According to a preferred characteristic, the data set is a
bloc d'échantillons formé dans un ensemble plus vaste de données. block of samples formed in a larger data set.
Selon une caractéristique préférée, les données sont une image numérique. Corrélativement, l'invention concerne un dispositif de codage d'échantillons numériques d'un ensemble de données représentatives de grandeurs physiques, comportant des moyens de détermination d'un modèle d'amplitude et d'un parcours parmi les échantillons de l'ensemble, caractérisé en ce qu'il comporte: - des moyens de détermination d'un nombre d'échantillons à coder, - des moyens de construction d'une liste comportant le nombre According to a preferred characteristic, the data is a digital image. Correlatively, the invention relates to a device for coding digital samples of a set of data representative of physical quantities, comprising means for determining an amplitude model and a path among the samples of the set, characterized in that it comprises: - means for determining a number of samples to be coded, - means for constructing a list comprising the number
déterminé d'échantillons, classés par amplitude décroissante. determined samples, classified by decreasing amplitude.
Le dispositif selon l'invention comporte des moyens de mise en oeuvre des caractéristiques précédemment présentées et présente des The device according to the invention comprises means for implementing the characteristics previously presented and has
2 5 avantages analogues à ceux précédemment présentés. 2 5 advantages similar to those previously presented.
L'invention concerne aussi un appareil numérique incluant le dispositif selon l'invention ou des moyens de mise en oeuvre du procédé selon l'invention. Cet appareil numérique est par exemple un appareil photographique numérique, un caméscope numérique, un scanner, une imprimante, un 3 0 photocopieur, un télécopieur. Les avantages du dispositif et de l'appareil The invention also relates to a digital device including the device according to the invention or means for implementing the method according to the invention. This digital camera is for example a digital camera, a digital camcorder, a scanner, a printer, a photocopier, a fax machine. The advantages of the device and the device
numérique sont identiques à ceux précédemment exposés. digital are identical to those previously exposed.
Un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au dispositif, éventuellement amovible, A means of storing information, readable by a computer or by a microprocessor, integrated or not in the device, possibly removable,
mémorise un programme mettant en oeuvre le procédé selon l'invention. stores a program implementing the method according to the invention.
Un programme d'ordinateur lisible par un microprocesseur et 5 comportant une ou plusieurs séquence d'instructions est apte à mettre en oeuvre les procédés selon l'invention. A computer program readable by a microprocessor and comprising one or more sequence of instructions is capable of implementing the methods according to the invention.
Les caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture d'un mode préféré de réalisation 10 illustré par les dessins ci-joints, dans lesquels: - la figure 1 est un mode de réalisation d'un dispositif mettant en oeuvre l'invention, - la figure 2 représente un dispositif de codage selon l'invention et un dispositif de décodage correspondant, - la figure 3 représente un premier mode de réalisation de procédé de codage selon l'invention, - la figure 4 représente un modèle d'amplitude utilisé selon la présente invention, The characteristics and advantages of the present invention will appear more clearly on reading a preferred embodiment 10 illustrated by the attached drawings, in which: - Figure 1 is an embodiment of a device implementing the invention, - figure 2 represents a coding device according to the invention and a corresponding decoding device, - figure 3 represents a first embodiment of coding method according to the invention, - figure 4 represents a model d amplitude used according to the present invention,
- la figure 5 représente un second mode de réalisation de procédé 20 de codage selon l'invention. FIG. 5 represents a second embodiment of the coding method according to the invention.
Selon le mode de réalisation choisi et représenté à la figure 1, un dispositif mettant en oeuvre l'invention est par exemple un microordinateur 10 connecté à différents périphériques, par exemple une caméra numérique 107 25 (ou un scanner, ou tout moyen d'acquisition ou de stockage d'image) reliée à According to the embodiment chosen and represented in FIG. 1, a device implementing the invention is for example a microcomputer 10 connected to different peripherals, for example a digital camera 107 (or a scanner, or any means of acquisition or image storage) connected to
une carte graphique et fournissant des informations à traiter selon l'invention. a graphics card and providing information to be processed according to the invention.
Le dispositif 10 comporte une interface de communication 112 reliée à un réseau 113 apte à transmettre des données numériques à traiter ou inversement à transmettre des données traitées par le dispositif. Le dispositif 30 10 comporte également un moyen de stockage 108 tel que par exemple un disque dur. Il comporte aussi un lecteur 109 de disque 110. Ce disque 110 peut être une disquette, un CD-ROM ou un DVD-ROM, par exemple. Le disque 110 comme le disque 108 peuvent contenir des données traitées selon l'invention ainsi que le ou les programmes mettant en oeuvre l'invention qui, une fois lu par le dispositif 10, sera stocké dans le disque dur 108. Selon une variante, le programme permettant au dispositif de mettre en oeuvre l'invention, pourra être 5 stocké en mémoire morte 102 (appelée ROM sur le dessin). En seconde variante, le programme pourra être reçu pour être stocké de façon identique à celle décrite précédemment par l'intermédiaire du réseau de communication 113. The device 10 includes a communication interface 112 connected to a network 113 capable of transmitting digital data to be processed or, conversely, of transmitting data processed by the device. The device 10 also includes a storage means 108 such as for example a hard disk. It also includes a disc drive 109. This disc 110 can be a floppy disk, a CD-ROM or a DVD-ROM, for example. The disk 110 like the disk 108 can contain data processed according to the invention as well as the program or programs implementing the invention which, once read by the device 10, will be stored in the hard disk 108. According to a variant, the program allowing the device to implement the invention may be stored in read-only memory 102 (called ROM in the drawing). In a second variant, the program can be received to be stored in an identical manner to that described previously via the communication network 113.
Le dispositif 10 est relié à un microphone 111. Les données à traiter 10 selon l'invention seront dans ce cas du signal audio. The device 10 is connected to a microphone 111. The data to be processed 10 according to the invention will in this case be an audio signal.
Ce même dispositif possède un écran 104 permettant de visualiser les données à traiter ou de servir d'interface avec l'utilisateur qui peut ainsi paramétrer certains modes de traitement, à l'aide du clavier 114 ou de tout This same device has a screen 104 making it possible to view the data to be processed or to serve as an interface with the user who can thus configure certain processing modes, using the keyboard 114 or any
autre moyen (souris par exemple).other means (mouse for example).
s L'unité centrale 100 (appelée CPU sur le dessin) exécute les instructions relatives à la mise en òuvre de l'invention, instructions stockées dans la mémoire morte 102 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes de traitement stockés dans une mémoire non volatile, par exemple la ROM 102, sont transférés dans la mémoire vive 20 RAM 103 qui contiendra alors le code exécutable de l'invention ainsi que des registres pour mémoriser les variables nécessaires à la mise en oeuvre de l'invention. De manière plus générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au 25 dispositif, éventuellement amovible, mémorise un programme mettant en The central unit 100 (called CPU in the drawing) executes the instructions relating to the implementation of the invention, instructions stored in the read-only memory 102 or in the other storage elements. During power-up, the processing programs stored in a non-volatile memory, for example the ROM 102, are transferred to the random access memory RAM 103 which will then contain the executable code of the invention as well as registers for memorizing the variables necessary for the implementation of the invention. More generally, a means of storing information, readable by a computer or by a microprocessor, integrated or not in the device, possibly removable, memorizes a program putting in
ceuvre le procédé selon l'invention. the process according to the invention.
Le bus de communication 101 permet la communication entre les Communication bus 101 allows communication between the
différents éléments inclus dans le micro-ordinateur 10 ou reliés à lui. La représentation du bus 101 n'est pas limitative et notamment l'unité centrale 100 30 est susceptible de communiquer des instructions à tout élément du microordinateur 10 directement ou par l'intermédiaire d'un autre élément du microordinateur 10. various elements included in the microcomputer 10 or connected to it. The representation of the bus 101 is not limiting and in particular the central unit 100 30 is capable of communicating instructions to any element of the microcomputer 10 directly or through another element of the microcomputer 10.
En référence à la figure 2, un mode de réalisation de dispositif de codage 3 selon l'invention est destiné à coder un signal numérique dans le but de le compresser. Le dispositif de codage est intégré dans un appareil, qui est 5 par exemple un appareil photographique numérique, un caméscope numérique, un scanner, une imprimante, un photocopieur, un télécopieur, un Referring to Figure 2, an embodiment of coding device 3 according to the invention is intended to code a digital signal in order to compress it. The coding device is integrated into an apparatus, which is for example a digital camera, a digital camcorder, a scanner, a printer, a photocopier, a fax machine, a
système de gestion de base de données ou encore un ordinateur. database management system or even a computer.
Un appareil photographique numérique 1 effectue l'acquisition d'une A digital camera 1 acquires a
image numérique IM. L'image est transmise à un dispositif de codage 2 dont le 10 fonctionnement sera détaillé dans la suite à l'aide d'algorithmes. digital image IM. The image is transmitted to an encoding device 2, the operation of which will be detailed below using algorithms.
Le dispositif de codage comporte un module de transformation 21. The coding device comprises a transformation module 21.
Selon l'invention, il comporte: - des moyens 22 de détermination d'un nombre d'échantillons à coder, - des moyens 23 de construction d'une liste comportant le nombre According to the invention, it comprises: - means 22 for determining a number of samples to be coded, - means 23 for constructing a list comprising the number
déterminé d'échantillons, classés par amplitude décroissante. determined samples, classified by decreasing amplitude.
Il comporte enfin un module 24 de codage proprement dit. Finally, it includes a coding module 24 proper.
L'image codée peut être transmise par un module de transmission 3 dont le fonctionnement est classique vers un dispositif de décodage 4. En 20 variante, l'image codée est simplement mémorisée pour être décodée ultérieurement. L'image décodée IM' est par exemple transmise à un dispositif The coded image can be transmitted by a transmission module 3, the operation of which is conventional, to a decoding device 4. As a variant, the coded image is simply stored to be decoded later. The decoded image IM 'is for example transmitted to a device
d'affichage 5.display 5.
La figure 3 représente un premier mode de réalisation de procédé de codage d'une image, selon l'invention. Ce procédé est mis en oeuvre dans le FIG. 3 represents a first embodiment of an image coding method according to the invention. This process is implemented in the
dispositif de codage et comporte des étapes El à El 1. coding device and comprises steps E1 to E1.
Le procédé comporte globalement une transformation du signal à coder, puis la détermination d'un modèle d'amplitude des coefficients issus de 30 la transformation. Les emplacements de ces coefficients sont ensuite codés The method generally comprises a transformation of the signal to be coded, then the determination of an amplitude model of the coefficients resulting from the transformation. The locations of these coefficients are then coded
selon une méthode qui utilise un parcours établi parmi les coefficients. according to a method which uses a path established among the coefficients.
Un tel procédé de codage est décrit par exemple dans la demande Such a coding method is described for example in the application
de brevet français n' 01 06933.French Patent No. 01 06933.
Le procédé est réalisé sous la forme d'un algorithme qui peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information 5 capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette ou un CD-ROM (disque The method is carried out in the form of an algorithm which can be stored in whole or in part in any information storage means 5 capable of cooperating with the microprocessor. This storage means can be read by a computer or by a microprocessor. This storage means is integrated or not to the device, and can be removable. For example, it may include a magnetic tape, a floppy disk or a CD-ROM (disk
compact à mémoire figée).compact with frozen memory).
L'étape El est une transformation linéaire ou non linéaire d'une Step E1 is a linear or non-linear transformation of a
image numérique IM à traiter selon l'invention. digital image IM to be processed according to the invention.
Dans le mode préféré de réalisation de l'invention, la transformation est une transformation en cosinus discrète (DCT) par blocs, telle que celle In the preferred embodiment of the invention, the transformation is a discrete cosine transformation (DCT) by blocks, such as that
appliquée dans la norme JPEG.applied in the JPEG standard.
En variante, une autre transformation est utilisée, par exemple une Alternatively, another transformation is used, for example a
transformation en ondelettes discrète, comme dans la norme JPEG2000. transformation into discrete wavelets, as in the JPEG2000 standard.
Le traitement suivant est réalisé bloc par bloc, puisque la transformation DCT génère des blocs. Si la transformation ne génère pas de The following processing is carried out block by block, since the DCT transformation generates blocks. If the transformation does not generate
bloc, le traitement est appliqué globalement à toute l'image. block, the processing is applied globally to the entire image.
L'étape suivante E2 est une initialisation à laquelle est considéré un The next step E2 is an initialization to which a
premier bloc.first block.
L'étape suivante E3 est un classement des coefficients du bloc The next step E3 is a classification of the coefficients of the block
courant par amplitude décroissante. Le résultat est une liste P de coefficients. current in decreasing amplitude. The result is a list P of coefficients.
L'étape suivante E4 est la détermination d'un modèle d'amplitude. 25 Pour cela, une fonction d'approximation de la suite des coefficients classés est déterminée. Cette fonction est par exemple une exponentielle décroissante définie par un jeu de paramètres qui sont déterminés par régression. La The next step E4 is the determination of an amplitude model. 25 For this, an approximation function of the sequence of classified coefficients is determined. This function is for example a decreasing exponential defined by a set of parameters which are determined by regression. The
demande de brevet français n' 01 06933 décrit en détail cette étape. French patent application No. 01 06933 describes this step in detail.
La figure 4 représente un exemple de modèle d'amplitude A. A chaque valeur entière k en abscisse correspond une valeur A(k) fournie par le modèle d'amplitude. La valeur A(k) est une approximation de l'amplitude du FIG. 4 represents an example of an amplitude model A. To each integer value k on the abscissa corresponds a value A (k) supplied by the amplitude model. The value A (k) is an approximation of the amplitude of the
kème coefficient classé par ordre décroissant. kth coefficient classified in descending order.
L'étape suivante E5 est la détermination du cot de codage associé 5 à la liste P. Le cot de codage d'un bloc est la fonction C = R + X.D, dans laquelle R représente le débit de transmission de la forme codée du bloc, D représente la distorsion générée dans le bloc reconstruit après codage et décodage, par rapport au bloc d'origine et X est un paramètre de réglage entre The next step E5 is the determination of the coding cost associated with the list P. The coding cost of a block is the function C = R + XD, in which R represents the transmission rate of the coded form of the block , D represents the distortion generated in the reconstructed block after coding and decoding, compared to the original block and X is an adjustment parameter between
compression de l'image et distorsion générée par le codage. image compression and distortion generated by coding.
Il est à noter que la distorsion est calculée en effectuant la somme des erreurs quadratiques entre l'amplitude de chaque coefficient du bloc et It should be noted that the distortion is calculated by performing the sum of the quadratic errors between the amplitude of each coefficient of the block and
l'amplitude qu'il aura après décodage. the amplitude it will have after decoding.
L'étape suivante E6 est la mémorisation de la liste P comme liste optimale Pcpt, si le cot de codage C calculé à l'étape précédente est inférieur 15 au cot de codage de la liste optimale P0pt précédemment mémorisé. Lors du premier passage par cette étape, la liste courante est mémorisée en tant que The next step E6 is the storage of the list P as the optimal list Pcpt, if the coding cost C calculated in the previous step is less than the coding cost of the optimal list P0pt previously stored. During the first passage through this step, the current list is memorized as
liste optimale.optimal list.
L'étape suivante E7 est un test pour déterminer si la liste courante P The next step E7 is a test to determine whether the current list P
a une longueur nulle.has zero length.
Si la réponse est négative, cette étape est suivie de l'étape E8 à laquelle la liste courante P est modifiée. Le dernier échantillon est retiré de la liste, ce qui a pour résultat une nouvelle liste. L'étape E8 est suivie de l'étape If the answer is negative, this step is followed by step E8 to which the current list P is modified. The last sample is removed from the list, which results in a new list. Step E8 is followed by step
E5 précédemment décrite.E5 previously described.
Si la réponse est positive à l'étape E7, cette étape est suivie de 25 l'étape E9 qui est le codage du bloc courant avec la liste Popt c'est-àdire avec la liste qui fournit le plus petit cot de codage. Cette étape est également If the response is positive in step E7, this step is followed by step E9 which is the coding of the current block with the list Popt, that is to say with the list which provides the lowest coding cost. This step is also
détaillée dans la demande de brevet n' 01 06933. detailed in patent application No. 01 06933.
Cette étape comporte le codage des emplacements des coefficients à partir de la liste P0,pt. Pour cela, un parcours est déterminé par un coefficient 3 o initial et la liste des vecteurs joignant les autres coefficients. Chaque coefficient du parcours différent du coefficient initial est représenté par un vecteur décrivant son emplacement par rapport au coefficient précédent dans le parcours. Il est à noter que le parcours ne passe pas forcement par tous les coefficients du bloc courant. En effet, il est possible de ne coder qu'une partie des coefficients et de mettre les autres coefficients à la valeur zéro lors du This step involves coding the locations of the coefficients from the list P0, pt. For this, a path is determined by an initial coefficient 3 o and the list of vectors joining the other coefficients. Each coefficient of the course different from the initial coefficient is represented by a vector describing its location with respect to the previous coefficient in the course. It should be noted that the course does not necessarily go through all the coefficients of the current block. In fact, it is possible to code only part of the coefficients and to set the other coefficients to zero when
décodage ultérieur.subsequent decoding.
Une fois le parcours déterminé, les coordonnées du coefficient initial sont codées par un codage binaire et les vecteurs sont codés par un codage entropique. La forme codée d'un bloc de l'image comporte un modèle Once the route has been determined, the coordinates of the initial coefficient are coded by binary coding and the vectors are coded by entropy coding. The coded form of a block of the image includes a model
d'amplitude qui fournit une approximation de l'amplitude des coefficients et un 10 parcours qui fournit une suite ordonnée des emplacements des coefficients. of amplitude which provides an approximation of the amplitude of the coefficients and a path which provides an ordered sequence of the locations of the coefficients.
L'emplacement du keme coefficient de cette suite est déterminé par le parcours et son amplitude est déterminée par l'ordonnée correspondant à l'abscisse k The location of the keme coefficient of this sequence is determined by the path and its amplitude is determined by the ordinate corresponding to the abscissa k
selon le modèle d'amplitude.according to the amplitude model.
L'étape suivante E10 est un test pour déterminer si le bloc courant 15 est le dernier bloc de l'image à coder. The next step E10 is a test to determine whether the current block 15 is the last block of the image to be coded.
Si la réponse est négative, cette étape est suivie de l'étape El 1 à laquelle un bloc suivant est considéré. L'étape El 1 est suivie de l'étape E3 If the answer is negative, this step is followed by step El 1 in which a next block is considered. Step E11 is followed by step E3
précédemment décrite.previously described.
Si la réponse est positive à l'étape E10, alors le codage de l'image 2o est terminé. If the response is positive in step E10, then the coding of the image 20 is finished.
La figure 5 représente un second mode de réalisation de procédé de codage d'une image, selon l'invention. Ce procédé est mis en oeuvre dans le FIG. 5 represents a second embodiment of an image coding method according to the invention. This process is implemented in the
dispositif de codage et comporte des étapes E20 à E28. coding device and comprises steps E20 to E28.
Là aussi, le procédé comporte globalement une transformation du signal à coder, puis la détermination d'un modèle d'amplitude des coefficients issus de la transformation. Les emplacements de ces coefficients sont ensuite Again, the method generally comprises a transformation of the signal to be coded, then the determination of an amplitude model of the coefficients resulting from the transformation. The locations of these coefficients are then
codés selon une méthode qui utilise un parcours établi parmi les coefficients. coded according to a method which uses an established path among the coefficients.
Un tel procédé de codage est décrit par exemple dans la demande 30 de brevet français n' 01 06933. Such a coding method is described for example in French patent application No. 01 06933.
il L'invention concerne ici l'initialisation du calcul évolutionnaire, et plus particulièrement la détermination d'une population initiale de listes de The invention here relates to the initialization of evolutionary calculus, and more particularly to the determination of an initial population of lists of
coefficients. Cette population comporte un nombre prédéterminé d'individus. coefficients. This population includes a predetermined number of individuals.
Le procédé est réalisé sous la forme d'un algorithme qui peut être 5 mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette ou un CD-ROM (disque 10 compact à mémoire figée). The method is carried out in the form of an algorithm which can be stored in whole or in part in any information storage means capable of cooperating with the microprocessor. This storage means can be read by a computer or by a microprocessor. This storage means is integrated or not to the device, and can be removable. For example, it may include a magnetic tape, a floppy disk or a CD-ROM (compact disk 10 with frozen memory).
On considère ici le codage d'un bloc de l'image. Le bloc considéré We consider here the coding of a block of the image. The block considered
comporte L coefficients.has L coefficients.
L'étape E20 est une initialisation à laquelle le nombre N de coefficients de la liste à construire est initialisé à la valeur L. L'étape suivante E21 est la construction d'une liste de coefficients qui comporte les N plus grands coefficients du bloc, classés par ordre Step E20 is an initialization to which the number N of coefficients of the list to be constructed is initialized to the value L. The next step E21 is the construction of a list of coefficients which comprises the N largest coefficients of the block, sorted by order
décroissant d'amplitude.decreasing in amplitude.
L'étape suivante E22 est l'ajout de la liste courante P à la population The next step E22 is the addition of the current list P to the population
initiale de l'algorithme évolutionnaire. initial of the evolutionary algorithm.
L'étape suivante E23 est un test pour déterminer si la population The next step E23 is a test to determine if the population
initiale comporte le nombre souhaité d'individus, qui sont ici des listes. initial contains the desired number of individuals, which are lists here.
Si la réponse est négative, cette étape est suivie de l'étape E24 qui If the answer is negative, this step is followed by step E24 which
est un test pour déterminer si la liste courante P a une longueur nulle. is a test to determine if the current list P has zero length.
Si la réponse est négative à l'étape E24, cette étape est suivie de 25 l'étape E25 qui est une modification du nombre N de coefficients de la liste. Par If the answer is negative in step E24, this step is followed by step E25 which is a modification of the number N of coefficients of the list. Through
exemple, le nombre N est diminué de 10 % et arrondi à l'entier le plus proche. for example, the number N is reduced by 10% and rounded to the nearest integer.
L'étape E25 est suivie de l'étape E21 précédemment décrite. Step E25 is followed by step E21 previously described.
Si la réponse est positive à l'étape E24, il n'est plus possible de construire des listes avec les coefficients du bloc de la manière exposée ci30 dessus et cette étape est suivie de l'étape E26 à laquelle la population est If the answer is positive in step E24, it is no longer possible to construct lists with the coefficients of the block as explained above and this step is followed by step E26 in which the population is
complétée avec des listes tirées aléatoirement. supplemented with randomly drawn lists.
L'étape suivante E27 est le calcul d'une liste de coefficients par calcul évolutionnaire, à partir des listes construites par les étapes précédentes comme population initiale de listes. Ce calcul est réalisé comme dans la The next step E27 is the calculation of a list of coefficients by evolutionary calculation, from the lists constructed by the previous steps as the initial population of lists. This calculation is carried out as in the
demande de brevet français n001 06933 et ne sera pas décrit ici. French patent application n001 06933 and will not be described here.
Si la réponse est positive à l'étape E23, cela signifie que le nombre de listes de la population initiale est atteint. Cette étape est alors suivie de If the answer is positive in step E23, this means that the number of lists of the initial population has been reached. This step is then followed by
l'étape E27 précédemment décrite. step E27 previously described.
L'étape E27 est suivie de l'étape E28 qui est le codage du bloc Step E27 is followed by step E28 which is the coding of the block
courant à partir de la liste obtenue à l'étape E27. Là aussi, ce codage est 10 réalisé comme dans la demande de brevet français n'0106933. current from the list obtained in step E27. Again, this coding is carried out as in French patent application n'0106933.
Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits et représentés, mais englobe, bien au contraire, Of course, the present invention is in no way limited to the embodiments described and shown, but includes, on the contrary,
toute variante à la portée de l'homme du métier. any variant within the reach of the skilled person.
Claims (25)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0213823A FR2846837B1 (en) | 2002-11-05 | 2002-11-05 | CODING DIGITAL DATA WITH DETERMINATION OF A ROUTE AMONG THE DATA |
US10/699,152 US20040117935A1 (en) | 1998-05-08 | 2003-10-31 | Ergonomically shaped hand held device |
US10/701,018 US7463782B2 (en) | 2002-11-05 | 2003-11-05 | Data encoding with an amplitude model and path between the data and corresponding decoding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0213823A FR2846837B1 (en) | 2002-11-05 | 2002-11-05 | CODING DIGITAL DATA WITH DETERMINATION OF A ROUTE AMONG THE DATA |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2846837A1 true FR2846837A1 (en) | 2004-05-07 |
FR2846837B1 FR2846837B1 (en) | 2005-04-29 |
Family
ID=32104457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0213823A Expired - Fee Related FR2846837B1 (en) | 1998-05-08 | 2002-11-05 | CODING DIGITAL DATA WITH DETERMINATION OF A ROUTE AMONG THE DATA |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2846837B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748786A (en) * | 1994-09-21 | 1998-05-05 | Ricoh Company, Ltd. | Apparatus for compression using reversible embedded wavelets |
-
2002
- 2002-11-05 FR FR0213823A patent/FR2846837B1/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748786A (en) * | 1994-09-21 | 1998-05-05 | Ricoh Company, Ltd. | Apparatus for compression using reversible embedded wavelets |
Non-Patent Citations (3)
Title |
---|
NEAGOE V-E: "PREDICTIVE ORDERING AND LINEAR APPROXIMATION FOR IMAGE DATA COMPRESSION", IEEE TRANSACTIONS ON COMMUNICATIONS, IEEE INC. NEW YORK, US, vol. 36, no. 10, 1 October 1988 (1988-10-01), pages 1179 - 1182, XP000039407, ISSN: 0090-6778 * |
NILL N B: "A visual model weighted cosine transform for image compression and quality assessment", IEEE TRANSACTIONS ON COMMUNICATIONS, IEEE INC. NEW YORK, US, vol. COM-33, no. 6, June 1985 (1985-06-01), pages 551 - 557, XP002249890, ISSN: 0090-6778 * |
RAMCHANDRAN K ET AL: "RATE-DISTORTION OPTIMAL FAST THRESHOLDING WITH COMPLETE JPEG/MPEG DECODER COMPATIBILITY", IEEE TRANSACTIONS ON IMAGE PROCESSING, IEEE INC. NEW YORK, US, vol. 3, no. 5, 1 September 1994 (1994-09-01), pages 700 - 704, XP000476844, ISSN: 1057-7149 * |
Also Published As
Publication number | Publication date |
---|---|
FR2846837B1 (en) | 2005-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2009027606A1 (en) | Encoding/decoding by symbol planes with dynamic calculation of probability tables | |
FR2816154A1 (en) | INSERTION OF ADDITIONAL INFORMATION INTO DIGITAL DATA | |
FR2817440A1 (en) | INSERTION OF MESSAGES IN DIGITAL DATA | |
US7463782B2 (en) | Data encoding with an amplitude model and path between the data and corresponding decoding | |
FR2889382A1 (en) | Multidimensional digital signal e.g. digital image, filtering method for e.g. coding device, involves obtaining filtering value of filtered sample in selecting one value among simulated filtering values of sample based on preset criterion | |
FR2849982A1 (en) | Coded digital image decoding method, involves decoding image to preset resolution based on determined preset resolution quantity of data, and selecting decoded image based on relation between selected and preset resolutions | |
FR2825224A1 (en) | METHOD AND DEVICE FOR COMPRESSING AND / OR INDEXING DIGITAL IMAGES | |
FR2782861A1 (en) | GEOMETRIC TRANSCODING OF A DIGITAL SIGNAL | |
FR2846837A1 (en) | Data e.g. fixed images, video, sound sample coding process, involves determining basic list of samples that are to be coded and modifying samples in order to arrange them in decreasing amplitude | |
FR2796778A1 (en) | Method for block compression of fixed or moving digital image data, allowing real-time compression in videophone via computer networks | |
FR2812506A1 (en) | ALARM METHOD AND DEVICE DURING THE PROGRESSIVE DECODING OF A DIGITAL IMAGE CODED WITH A REGION OF INTEREST | |
FR2835665A1 (en) | CODING AND DECODING OF DIGITAL SIGNALS | |
FR2844935A1 (en) | Transcoding of digital data coded according to a first coding mode to digital data coded according to a second coding mode, in particular for digital image | |
FR2846836A1 (en) | Data e.g. video coding method, involves estimating number of coefficients that are to be coded according to criterion of coding and performing approximation of coefficients taken on estimation number and in order of calculation | |
FR2846180A1 (en) | Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population | |
EP3520416B1 (en) | Method for encoding an image and associated decoding method, devices, terminal equipment and computer programs | |
FR2853476A1 (en) | Digital signal e.g. video image, coding process for e.g. printer, involves selecting code vectors dictionary from set comprising preset number of code vectors depending on length of path, and code vector in selected dictionary | |
FR2846772A1 (en) | Data e.g. digital images coding method for digital camera and scanner, involves determining amplitude mode of data set coefficients, sequencing coefficients arranged in zigzag path based on their respective positions in set | |
FR2831729A1 (en) | Digital signal processing method e.g. for video signals, involves determining minimum distance between two samples and between copies of one sample and other sample | |
FR2832875A1 (en) | Method and device for coding and decoding of digital signal, in particular for still images with compression | |
CN118694818B (en) | Tourism service information push method and system based on artificial intelligence | |
FR2834832A1 (en) | Fixed image/sound/video lossy digital signal compression having each element occurrences determined/null occurrences modified and associated rate function calculated following occurrence number | |
FR2862449A1 (en) | Coding/decoding digital signals for image compression having signals divided/entropic code found then symbols number determined quantification steps then signals generated/coded | |
FR2827408A1 (en) | Genetic algorithm digital signal coding scheme | |
FR2846834A1 (en) | Data e.g. digital image coding method for photocopier and scanner, involves forming vector between two sample slots of successive data based on slot of intermediate data that have not been already coded by vector |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20140731 |