FR2834362A1 - An adaptive inverse transformation - Google Patents
An adaptive inverse transformation Download PDF
FR2834362A1
FR2834362A1 FR0116998A FR0116998A FR2834362A1 FR 2834362 A1 FR2834362 A1 FR 2834362A1 FR 0116998 A FR0116998 A FR 0116998A FR 0116998 A FR0116998 A FR 0116998A FR 2834362 A1 FR2834362 A1 FR 2834362A1
FR0116998A
Sorolla Carolina Miro
Juliette Dhuisme
2001-12-28 Priority to FR0116998A priority Critical patent/FR2834362A1/en
2003-07-04 Publication of FR2834362A1 publication Critical patent/FR2834362A1/en
<P>La présente invention concerne un dispositif de transformation inverse de données transformées (X) en données inversement transformées (x) via une matrice de transformation inverse décomposable en sous-matrices le long d'une diagonale de la matrice. <P> This invention relates to an inverse transformation device transformed data (X) into inversely transformed data (x) via a decomposable inverse transformation matrix into submatrices along a diagonal of the matrix. Ledit dispositif comprend des moyens de permutation (11), aptes à réordonner les données transformées selon un nombre de données à traiter. Said apparatus comprises switching means (11) adapted to reorder the data processed according to a number of data to be processed. Il comprend également des modules de calcul échelonnables (12, 13, 14, 15), aptes à effectuer un produit de données transformées réordonnées et d'une sous-matrice. It also includes scalable calculation modules (12, 13, 14, 15) able to perform a transformed data rearranged product and a sub-matrix. Il comprend enfin des moyens de combinaison linéaire (16, 17, 18), aptes à combiner linéairement les données issues des modules de calcul échelonnables selon le nombre de données à traiter. It finally comprises the linear combination means (16, 17, 18) adapted to linearly combine the data from the scalable calculation modules according to the number of data to be processed. </P> </ P>
La présente invention concerne un procédé et un dispositif de transformation inverse de données transformées en données inversement transformées via une matrice de transformation inverse. The present invention relates to a method and an inverse data transformation device transformed into inversely transformed data via an inverse transform matrix.
Elle concerne également un procédé et un dispositif de transformation de données d'origine en données transformées via une matrice de transformation. It also relates to a method and an original data transformation device transformed data via a transformation matrix.
Elle trouve son application dans le domaine de la compression/ décompression de données numériques vidéo, ces données étant, par exemple, de type MPEG (de l'anglais 'Motion Picture Expert Groupe, notamment pour des appareils tels que des postes de télévisions numériques, des codeurs et décodeurs vidéo de type MPEG2 ou MPEG4, des dispositifs de stockage de données ou des téléphones mobiles. It finds application in the field of compression / decompression of digital video data, this data being, for example, MPEG type (from the English 'Motion Picture Expert Group, in particular for devices such as digital TV sets, encoders and decoders MPEG2 video or MPEG4, data storage devices or mobile phones.
Les propriétés de la transformation en cosinus discrète ou DCT lui font jouer un rôle primordial dans le domaine de la compression de séquence d'images. The properties of the discrete cosine transform or DCT make it play a key role in the area of ​​the image sequence compression. Inversement, du côté du décodeur vidéo, la reconstruction de la séquence d'images est assurée grâce à une transformation en cosinus discrète inverse ou IDCT. Conversely, the side of the video decoder, reconstruction of the sequence of images is ensured by a discrete cosine transform or inverse IDCT. Les transformations en cosinus discrète directe et inverse sont utilisées dans de nombreux standards vidéo tels que JPEG, MPEG-1, MPEG-2, MPEG-4, ou H263 pour ne citer qu'eux. Changes in direct and inverse discrete cosine are used in many video standards such as JPEG, MPEG-1, MPEG-2, MPEG-4 or H263 to name a few.
La demande internationale de brevet W099/10818 décrit un exemple d'implémentation d'une transformation en cosinus discrète inverse à deux dimensions. The international patent application W099 / 10818 describes an example implementation of a discrete cosine transform inverse two-dimensional. Selon cet état de la technique, un bloc de NxN données est inversement transformé, colonnes par colonnes, grâce à un premier processeur apte à effectuer une transformation en cosinus discrète inverse unidimensionnelle. According to this prior art, a block of NxN data is inversely transformed by vertical columns, with a first processor capable of performing a discrete cosine transform dimensional inverse. Les résultats intermédiaires issus de ce premier processeur sont ensuite stockés temporairement dans une mémoire de transposition. Interim results from this first processor are then temporarily stored in a transposition memory.
Lorsque toutes les colonnes ont été traitées, les résultats intermédiaires sont inversement transformés lignes par lignes grâce à un second processeur apte à effectuer une transformation en cosinus discrète inverse unidimensionnelle. When all the columns have been processed, the intermediate results are inversely transformed in units of lines with a second processor adapted to perform a discrete cosine transform dimensional inverse. Les résultats issus du second processeur constituent le résultat final de la transformation en cosinus discrète inverse à deux dimensions. The results from the second processor are the end result of the transformation inverse discrete cosine in two dimensions. Dans le mode de réalisation décrit dans la demande internationale de brevet, les blocs à traiter comprennent 16 lignes de 16 données, et sont décomposés en blocs de taille réduite, respectivement de 8 x 8, 4 x 4, et 2 x 2 données. In the embodiment described in the international patent application, the blocks to be treated include 16 lines of data 16, and are divided into blocks of smaller size, respectively of 8 x 8, 4 x 4 and 2 x 2 data. Une structure de calcul de type papillon permet ensuite de simplifier le calcul de la transformation en cosinus discrète inverse à deux dimensions du bloc de 16 x 16 données. A structure of the butterfly type calculation then simplifies the calculation of the discrete cosine inverse transformation of two-dimensional block of 16 x 16 data.
Les nouvelles applications vidéo introduisent de nouvelles fonctionnalités qui augmentent la complexité de la mise en #uvre matérielle des transformations en cosinus discrète. New video applications are introducing new features that increase the complexity of the hardware implementation of #uvre discrete cosine transformations. Cette mise en #uvre doit permettre d'effectuer, le cas échéant en parallèle pour différents flux vidéo, de telles transformations sur des blocs de taille différente, par exemple, de 2 x 2 données pour un codeur/décodeur de mosaïques, de 4 x 4 données pour un codeur/décodeur H26L, de 8 x 8 données pour un codeur/décodeur MPEG-2 ou 4, et de 16 x 16 données pour un codeur/décodeur JPEG2000 ou pour certains algorithmes de posttraitement. This setting #uvre must allow to carry out, if necessary in parallel for different video stream, such transformations on blocks of different sizes, for example, 2 x 2 data to an encoder / decoder mosaics, 4 x 4 data for a coder / decoder H26L, 8 x 8 data to an encoder / MPEG-2 decoder or 4, and 16 x 16 data for a coder / decoder or JPEG2000 for some algorithms aftertreatment. De plus, la mise en #uvre matérielle doit être simple de manière à tenir compte de la faible puissance de certaines applications bas débits telles que les téléphones mobiles. In addition, the material #uvre layout should be simple to take into account the low power of certain low flow applications such as mobile phones.
Or, l'état de la technique antérieure n'est pas adapté pour effectuer de façon simple une transformation en cosinus discrète inverse échelonnable, ie sur des blocs de taille différente. Or, the state of the prior art is not adapted to perform in a simple manner a discrete cosine transformation inverse scalable, ie on blocks of different size. Certaines entrées du dispositif implémentant la transformation en cosinus discrète inverse pourraient éventuellement être utilisées pour calculer des transformations de blocs de 2 x 2 données, de 4 x 4 données ou de 8x 8 données, mais il faudrait alors effectuer toutes les étapes de calcul pour avoir le résultat final même pour une transformation IDCT 2 x 2. Il en résulterait une complexité trop importante pour le calcul d'une telle transformation en cosinus discrète inverse. Certain inputs of the device that implements the inverse discrete cosine transform could possibly be used to calculate changes in blocks of 2 x 2 data of 4 x 4 data or 8x 8 data, but it would then perform all the steps of calculating for the same end result for IDCT 2 x 2. This would result in too much complexity for the calculation of such a transformation inverse discrete cosine.
La présente invention a pour but de proposer un procédé et un dispositif de transformation directe ou inverse via une matrice de transformation, qui permettent d'effectuer une transformation sur des blocs de taille différente avec de faibles ressources de calcul. The present invention aims to provide a method and a direct or inverse transformation device via a transformation matrix, which can perform a transformation on blocks of different sizes with low computing resources.
A cet effet, le dispositif de transformation inverse selon l'invention utilise une matrice de transformation inverse décomposée en sous-matrices le long d'une diagonale de la matrice, et comprend : - des moyens de permutation, aptes à réordonner les données transformées selon un nombre de données à traiter, - des modules de calcul échelonnables, aptes à effectuer un produit de données transformées réordonnées et d'une sous-matrice, - des moyens de combinaison linéaire, aptes à combiner linéairement les données issues des modules de calcul échelonnables selon le nombre de données à traiter. To this end, the inverse transform device of the invention uses an inverse transformation matrix decomposed into sub-matrices along a diagonal of the matrix, and comprises: - permutation means able to reorder the transformed data according a number of data to be processed, - scalable calculation modules, adapted to carry a product reordered transformed data and a sub-matrix, - linear combination means able to linearly combine the data from the scalable calculation modules depending on the number of data to be processed.
A cet effet, le dispositif de transformation selon l'invention utilise une matrice de transformation décomposée en sous-matrices le long d'une diagonale de la matrice, et comprend : - des moyens de combinaison linéaire, aptes à combiner linéairement les données d'origine, To this end, the transforming device of the invention uses a transformation matrix decomposed into sub-matrices along a diagonal of the matrix, and comprises: - a linear combination of means capable of linearly combining data from origin,
- des modules de calcul échelonnables, aptes à effectuer un produit de données issues des moyens de combinaisons linéaires et d'une sous-matrice, - des moyens de permutation, aptes à réordonner les données issues des modules de calcul échelonnables selon un nombre de données à traiter, afin de fournir les données transformées. - scalable computing modules capable of performing data produced from means of linear combinations and a sub-matrix, - permutation means able to reorder the data from the scalable calculation modules according to a number of data to be treated, to provide the transformed data.
En symétrisant la matrice de transformation, le calcul d'une transformation bidimensionnelle revient à des calculs matriciels modulaires selon le nombre de données à traiter et à de simples combinaisons linéaires. In the symmetrizing transformation matrix, calculating a two-dimensional transform back to modular matrix calculations according to the number of data to process and simple linear combinations. Ainsi, un tel dispositif de transformation effectue un nombre d'opérations proportionnel à taille du bloc à traiter et donc à la complexité de la transformation. Thus, such a transformation device performs a number of operations proportional to the block size to be processed and thus the complexity of the processing. Cette solution est simple et ne nécessite que de faibles ressources de calcul. This solution is simple and requires only low computing resources. En outre, le fait que le dispositif de transformation soit apte à effectuer des calculs modulaires, permet de calculer des transformations bidimensionnelles échelonnables et rend le dispositif de transformation intégrable dans un décodeur multistandard. In addition, the fact that the processing device is able to perform modular calculations, to calculate two-dimensional transformations scalable and makes the integrated processing device in a multi-standard decoder.
Ces aspects de l'invention ainsi que d'autres aspects plus détaillés apparaîtront plus clairement grâce à la description suivante de plusieurs modes de réalisation de l'invention, donnés à titre d'exemples non limitatifs et en regard des dessins annexés parmi lesquels : - la Fig. These aspects of the invention as well as other more detailed aspects will become clearer through the following description of embodiments of the invention, given as non-limiting examples and the attached drawings among which: - Fig. 1 représente la structure d'un dispositif de transformation inverse selon l'invention, - les Figs. 1 shows the structure of an inverse conversion device according to the invention, - Figs. 2a, 2b, 2c et 2d représentent les moyens de permutation du dispositif de transformation inverse selon l'invention pour différentes configurations, - les Figs. 2a, 2b, 2c and 2d represent the permutation means of the inverse transform device of the invention for different configurations, - Figs. 3a, 3b et 3c représentent des modules de calcul échelonnables du dispositif de transformation inverse selon l'invention, respectivement pour le calcul d'une IDCT 3a, 3b and 3c show scalable calculation modules of the inverse transforming device according to the invention, respectively for calculating an IDCT
2 x 2, 4 x 4 et 8 x 8, - les Figs. 2 x 2, 4 x 4 and 8 x 8, - Figs. 4a et 4b représentent des moyens de combinaison linéaire, respectivement pour le calcul d'une IDCT 4 x 4 et 8 x 8, - la Fig. 4a and 4b represent the linear combination means respectively for calculating an IDCT 4 x 4 and 8 x 8, - Fig. 5 représente un dispositif de décompression de données numériques vidéo compressées comprenant un dispositif de transformation inverse selon l'invention, et - la Fig. 5 shows a compressed digital video data decompression apparatus comprising an inverse conversion device according to the invention, and - Fig. 6 représente un dispositif de compression de données numériques vidéo comprenant un dispositif de transformation directe selon l'invention. 6 shows a digital video data compression apparatus comprising a direct conversion device according to the invention.
Dans ce qui suit, la présente invention est décrite dans le cas de transformations en cosinus discrète directe et inverse. In the following, the present invention is described in the case of transformations and inverse discrete cosine. Cependant, il apparaîtra à l'homme du métier que l'invention est applicable à toute transformation de type Fourier ou équivalent, à partir du However, it will be apparent to those skilled in the art that the invention is applicable to any Fourier transform or equivalent type, from the
moment où la matrice de transformation est décomposable en sous-matrices le long d'une diagonale de la matrice de transformation. when the transformation matrix is ​​decomposed into sub-matrices along a diagonal of the transformation matrix.
Considérons tout d'abord le cas d'une transformation en cosinus discrète inverse bidimensionnelle. Consider first the case of a discrete cosine transform two-dimensional inverse. Ladite transformation permet de transformer des données du domaine fréquentiel - on les appellera par la suite données transformées (X) - dans le domaine temporel - on les appellera par la suite données inversement transformées (x) - à partir de l'équation suivante : Said transformation transforms the frequency domain data - they will be called subsequently transformed data (X) - in the time domain - will be called the subsequently inversely transformed data (x) - from the following equation:
Comme le dispositif de transformation en cosinus discrète inverse est situé dans un produit à destination du public, il doit être conçu pour fonctionner à vitesse élevée, avec une grande souplesse et une complexité minimale. As the transformation device inverse discrete cosine is in a product for the public, it must be designed to operate at high speed, with great flexibility and minimal complexity.
Pour cela, la matrice de transformation inverse Mi peut être décomposée en sousmatrices le long d'une diagonale de ladite matrice, selon le procédé suivant, décrit dans le cas d'une matrice de transformation inverse 8 x 8 . For this, the Mi inverse transformation matrix can be decomposed into submatrices along a diagonal of said matrix, by the following method, described in the case of an inverse transform 8 x 8 matrix.
Originellement, la matrice de transformation inverse Mi8xest la suivante : Originally, the inverse transformation matrix Mi8xest as follows:
Cette matrice est simplifiée en utilisant la valeur cos() =et en factorisant par 4 #2 1/@, ce qui donne : @/#2, qUi onde: This matrix is ​​simplified by using the value cos () = and factoring on 4 2 1 # / @, which gives: @ / # 2 which wave:
Les deuxième et cinquième colonnes sont alors permutées, de même que les quatrième et septième colonnes, ce qui donne Mi8 x 8=A8x8.P8 avec As x8 telle que : The second and fifth columns are then permuted as well as the fourth and seventh columns, which gives Mi8 x 8 = x8 A8x8.P8 with As such that:
En exploitant les symétries de la matrice As 8, la matrice de transformation Mis xs By exploiting the symmetries of the As 8 matrix, the transformation matrix Mis xs
peut se décomposer de la façon suivante : Misxs = S8,$ .54,s . can be broken down as follows: Misxs = S8, $ .54, s. 6s,s . 6s, s. # P8 avec : # P8 with:
où 04,4 et I4x4sont respectivement la matrice nulle et la matrice identité de 4 lignes par 4 colonnes, et : where 04.4 and I4x4sont respectively the zero matrix and the identity matrix of 4 rows by 4 columns, and:
La même décomposition en sous-matrices est effectuée sur une matrice de The same decomposition into submatrices is performed on a matrix
transformation inverse 16 x 16 : Mi16x16 - 516,16 -S8/16 ig -B16xl6 Pis avec inverse transformation 16 x 16: Mi16x16 - 516.16 -S8 / 16 ug -B16xl6 Pis with
La Fig. Fig. 1 représente la structure d'un dispositif de transformation inverse selon l'invention. 1 shows an inverse transformation device structure according to the invention. Ce dispositif met en #uvre une transformation en cosinus discrète inverse IDCT échelonnable, apte à traiter des blocs de 2 x 2, 4 x 4,8 x 8 et 16 x 16 données. This device is able to implement a discrete cosine transformation IDCT scalable, adapted to process blocks of 2 x 2, 4 x 4,8 x 8 and 16 x 16 data. Pour cela, il comprend : - des moyens de permutation PER (11), aptes à réordonner les données transformées (X) selon un nombre de données à traiter, qui peut être 2,4, 8 ou 16 selon la taille du bloc à traiter ; For that, it comprises: - PER permutation means (11) adapted to reorder the transformed data (X) according to a number of data to be processed, which may be 2,4, 8 or 16 according to the block size to be treated ; - des modules de calcul échelonnables DA1 à DA4 (12,13,14,15), aptes à effectuer un produit de données transformées réordonnées et d'une sous-matrice, le module DA1 traitant les blocs de 2 x 2 données transformées à l'aide de la sous-matrice Ml, les modules DA1 et DA2 traitant les blocs de 4 x 4 données transformées à l'aide respectivement des sousmatrices Ml et M2, les modules DA1, DA2 et DA3 traitant les blocs de 8 x 8 données transformées à l'aide respectivement des sous-matrices Ml, M2 et M3, et les modules DA1, - calculation modules scalable DA1 to DA4 (12,13,14,15) adapted to carry a product reordered transformed data and a sub-matrix, DA1 module processing the blocks of 2 × 2 data converted to using the sub-matrix Ml, the modules DA1 and DA2 processing the blocks of 4 x 4 data transformed in respectively using submatrices Ml and M2, the modules DA1, DA2 and DA3 processing the blocks of 8 x 8 transform data to respectively using submatrices Ml, M2 and M3, and DA1 modules,
DA2, DA3 et DA4 traitant les blocs de 16 x 16 données transformées à l'aide respectivement des sous-matrices Ml, M2, M3 et M4 ; DA2, DA3 and DA4 processing the blocks of 16 x 16 data transformed in respectively using submatrices Ml, M2, M3 and M4; - des moyens de combinaison linéaire LC4 à LC16 (16,17,18), aptes à combiner linéairement les données issues des modules de calcul échelonnables selon le nombre de données à traiter, les moyens LC4 mettant en #uvre la matrice S4,4 et combinant linéairement les sorties des modules DA1 et DA2, les moyens LC8 mettant en #uvre la matrice S8,8 et combinant linéairement les sorties du module DA3 et des moyens LC4, et les moyens LC16 mettant en #uvre la matrice Si6,i6 et combinant linéairement les sorties du module DA4 et des moyens LC8 ; - means linear LC4 combination LC16 (16,17,18) adapted to linearly combine the data from the scalable calculation modules according to the number of data to be processed, the setting means LC4 #uvre the matrix and S4,4 linearly combining the outputs DA1 and DA2 modules, LC8 engaging means #uvre the matrix S8,8 and linearly combining the outputs of the module DA3 and LC4 means and the engaging means LC16 #uvre Si6 the matrix, and combining i6 linearly outputs DA4 module and LC8 means; - des moyens de sélection SEL (19), aptes à sélectionner les données issues du premier module de calcul échelonnable DA1 (12), des moyens de combinaison linéaire LC4, LC8 et LC16 (16,17,18) selon le nombre de données à traiter, afin de fournir respectivement des blocs de 2 x 2,4 x 4, 8 x 8, 16 x 16 données inversement transformées. - selection means SEL (19) adapted to select data from the first module scalable DA1 (12), linear combining means LC4, LC8 and LC16 (16,17,18) depending on the number of data process to provide respective blocks of 2 x 2.4 x 4, 8 x 8, 16 x 16 inversely transformed data.
Les Figs. Figs. 2a à 2d représentent les moyens de permutation du dispositif de transformation inverse selon l'invention, dans différentes configurations. 2a to 2d represent the permutation of the inverse transforming device means according to the invention in different configurations. Le produit de la matrice de permutation P16 par une colonne d'un bloc de 16 x 16 données transformées X résulte en une colonne d'un bloc de données intermédiaires Y. Dans ce cas d'une transformation IDCT de 16 x 16 données transformées X, la permutation des données est réalisée par un circuits d'interconnexions représenté en Fig. The product of the permutation matrix P16 through a column of a block of 16 x 16 transformed data X results in a column of an intermediate block of data Y. In this case of an IDCT 16 x 16 transformed data X , the data swapping is performed by an interconnection circuit shown in Fig. 2a, YO correspondant à XO, Yl correspondant à X8, Y2 à X4 et ainsi de suite. 2a, YO corresponding to XO, Yl corresponding to X8, X4 and Y2 so on. Elle est reprise par des flèches grisées sur les Fig. It is taken by the shaded arrows in Fig. 2b à 2d. 2b to 2d.
Les moyens de permutation permettent également de réordonner les données transformées quel que soit le nombre de données à traiter. The permutation means also allow reordering the transformed data regardless of the number of data to be processed. Ainsi, dans le cas d'une transformation IDCT 8 x 8, les données en entrée des moyens de permutation sont réparties une toutes les deux entrées selon le schéma de la Fig. Thus, in the case of an 8 x 8 IDCT transform, the input data permutation means are distributed one every two inputs according to the diagram of Fig. 2b. 2b. Ainsi, le cablage des moyens de permutation reste identique, YO correspondant à XO, Y1 correspondant maintenant à X4, Y2 à X2 et ainsi de suite. Thus, the wiring of the switching means remains the same, YO corresponding to XO, Y1 corresponding now to X4, Y2 X2 and so on. Selon un principe similaire, les données en entrée des moyens de permutation sont réparties une toutes les quatre entrées selon le schéma de la Fig. According to a similar principle, the input data permutation means are distributed one every four inputs according to the diagram of Fig. 2c dans le cas d'une transformation IDCT 4 x 4. Ainsi, YO correspond à XO, Y1 à X2, Y2 à XI et Y3 à X3. 2c in the case of an IDCT transformation 4 x 4. Thus, YO corresponds to XO, Y1 to X2, Y2 and Y3 to XI to X3. Enfin, les données en entrée des moyens de permutation sont réparties une toutes les huit entrées selon le schéma de la Fig. Finally, the input data permutation means are distributed one every eight inputs according to the diagram of Fig. 2d dans le cas d'une transformation IDCT 2 x 2, YO correspondant à XO et Y1 à XI. 2d in the case of a 2 x 2 transformation IDCT, and XO YO corresponding to Y1 to XI.
Les Figs. Figs. 3a, 3b et 3c représentent des modules de calcul échelonnables du dispositif de transformation inverse selon l'invention, respectivement pour le calcul d'une transformation IDCT 2 x 2,4 x 4 et 8 x 8. Ces moyens de calcul échelonnables sont basés 3a, 3b and 3c show scalable calculation modules of the inverse transforming device according to the invention, respectively for calculating a transformation IDCT 2 x 2.4 x 4 and 8 x 8. These scalable computing means are based
sur des algorithmes d'arithmétique distribuée. on distributed arithmetic algorithms. Selon un premier principe, basé sur une mémoire ROM de type en lecture seule (en anglais 'read only memory'), ces algorithmes permettent d'effectuer séquentiellement des décalages vers la droite et des additions de valeurs. According to a first principle, based on a read-only type of ROM (in English 'read only memory), these algorithms are used to sequentially perform shifts to the right and additions values. L'avantage de cette technique est la réduction de la complexité de calcul puisque les multiplieurs ont été supprimés. The advantage of this technique is to reduce the computational complexity since the multipliers have been removed. Cependant, la mise en #uvre de la mémoire ROM peut être problématique dans le cas de matrices de transformation de grande taille. However, setting #uvre the ROM can be problematic in the case of large transformation matrices. Selon un second principe plus avantageux, les algorithmes d'arithmétique distribuée sont basés sur une suite de décalages et d'accumulations. In a second more advantageous principle, distributed arithmetic algorithms are based on a series of shifts and accumulations.
Dans le cas d'une transformation IDCT 2 x 2, le module de calcul échelonnable DA1 (12) est représenté à la Fig. In the case of an IDCT 2 x 2, the module scalable DA1 (12) is shown in Fig. 3a. 3a. Il reçoit les données YO et Yl et implémente leur produit avec la sous-matrice Ml. It receives YO and Yl data and implements their product with the submatrix Ml. Pour cela, il comprend simplement un additionneur (31) effectuant la somme ZO de YO et Yl et un soustracteur (32) effectuant la soustraction Z1=YO-Y1. For this, it simply comprises an adder (31) effecting the sum of ZO YO and Yl and a subtractor (32) performing subtraction Z1 = YO-Y1.
Dans le cas d'une transformation IDCT 4 x 4, le module de calcul échelonnable DA2 (13) est représenté à la Fig. In the case of a 4 x 4 IDCT, the module scalable DA2 (13) is shown in Fig. 3b. 3b. Il reçoit les données Y2 et Y3 et implémente leur produit avec la sous-matrice M2. It receives the data Y2 and Y3 and implements their product with the submatrix M2. Pour cela, il comprend un inverseur (33) apte à inverser Y3, un additionneur (31) apte à ajouter Y2 et Y3, deux multiplexeurs MUX (34) aptes à sélectionner une entrée parmi leurs différentes entrées Y2, Y3, Y2+Y3 et-Y3. For this purpose, it comprises an inverter (33) capable of inverting Y3, an adder (31) adapted to add Y2 and Y3, two multiplexers MUX (34) adapted to select input from their different Y2 inputs, Y3, Y2 + Y3 and -Y3. Il comprend enfin deux ensembles d'un additionneur (31) et d'un registre à décalage (35), aptes à calculer un résultat final (Z2, Z3) selon le principe de décalages et d'accumulations. Finally, it includes two sets of an adder (31) and a shift register (35), adapted to compute a final result (Z2, Z3) according to the principle of shifts and accumulations.
Par exemple, si on veut calculer le produit suivant : For example, if you want to calculate the following product:
Le produit de la première ligne par la première colonne implique le calcul de : A1Y2 + A2Y3 A1 et A2 sont calculés selon leur valeur binaire en code complément à 2. Par exemple, si on a A1 = 1011101001 et A2 = 0100101000, il faut donc calculer : Y2*2 + Y3*2-1 + Y2*2i-2 + Y2*2-3 + (Y2+Y3)*2-4 + (Y2+Y3)*2-6 + Y2*2-9. The product of the first row by the first column involves computing: A1Y2 + A2Y3 A1 and A2 are calculated according to their binary value in addition to code 2. For example, if we have A1 = A2 = 1011101001 and 0100101000, it is necessary calculate: Y2 + Y3 * 2 * 2-1 * Y2 + 2i-2 + 2-3 + Y2 * (Y2 + Y3) * 2-4 + (Y2 + Y3) + Y2 * 2-6 * 2-9.
L'opération à effectuer est donc la suivante : Y2 + (Y3 + (Y2 + (Y2 + ((Y2+Y3) + (0 + ((Y2+Y3) + (0 + (0 + (Y2*2-1))*2-1)*2-1)*2-1)*2- 1) *2-1)*2-1)*2-1)*2-1. The operation to be performed is as follows: Y2 + (Y3 + (Y2 + (Y2 + ((Y2 + Y3) + (0 + ((Y2 + Y3) + (0 + (0 + (Y2 * 2-1 )) * 2-1) * 2-1) * 2-1) * 2- 1) * 2-1) * 2-1) * 2-1) * 2-1.
Le multiplexeur MUX permet de choisir ici une entrée parmi Xi, X4, Xi + X4 et 0. Il fournit à sa sortie tout d'abord la donnée ayant la puissance la plus petite, soit ici Y2, puis la donnée est décalée de 1 bit vers la droite, ce qui revient à effectuer un produit de Y2 par 2-1. The multiplexer MUX selects by an input from Xi, X4, X4 and Xi + 0. It provides at its first output the data having the smallest power is here Y2, then the data is shifted by 1 bit to the right, which is to make a product Y2 2-1. Puis, lors des deux cycles d'horloge suivant, le multiplexeur fournit la valeur nulle ; Then, during the two cycles following clock, the multiplexer provides the value zero; le résultat intermédiaire est alors Y2*2-3. the intermediate result is then Y2 * 2-3. Puis, il fournit la donnée Y2+Y3 lors du quatrième cycle d'horloge et ainsi de suite jusqu'à obtention du résultat final Y2*2 + Y3*2-1 + Y2*2-2 + Y2*2-3 + (Y2+Y3)*2-4 + (Y2+Y3)*2-6 + Y2*2-9 à une sortie du module de calcul échelonnable. He then provides the data Y2 Y3 + in the fourth clock cycle and so on until the final result Y2 Y3 + 2 * * 2-1 * 2-2 + Y2 + Y2 * 2-3 + ( Y2 + Y3) * 2-4 + (Y2 + Y3) + Y2 * 2-6 * 2-9 to an output of the scalable module.
Dans le cas d'une transformation IDCT 8 x 8, le module de calcul échelonnable DA3 (13) est représenté à la Fig. In the case of an 8 x 8 IDCT, the module scalable DA3 (13) is shown in Fig. 3c. 3c. Il reçoit les données Y4 à Y7 et implémente leur produit avec la sous-matrice M3. It receives the data Y4 to Y7 and implements their product with the submatrix M3. Pour cela, la sous-matrice M3 est encore décomposée en un produit de 4 sous-matrices M31, M32, M33 et M34 telles que : For this, the sub-matrix M3 is further decomposed into a product of 4 sub-matrices M31, M32, M33 and M34 such that:
Le module de calcul échelonnable DA3 (14) comprend 4 étages en cascade, chaque étage correspondant à une des sous-matrices M31, M32, M33 et M34. The scalable DA3 module (14) comprises four cascaded stages, each stage corresponding to one of submatrices M31, M32, M33 and M34. Le premier étage (301) reçoit les données Y4 à Y7 et implémente leur produit avec la sous-matrice M31. The first stage (301) receives the Y4 to Y7 data and implements their product with the submatrix M31. Il comprend deux multiplexeurs (34), recevant respectivement Y5 et la valeur nulle d'une part et Y6 et la valeur nulle d'autre part, reliés chacun à un ensemble d'un additionneur (31) et d'un registre à décalage (35). It comprises two multiplexers (34), respectively receiving Y5 and the zero value on the one hand and Y6 and the zero value on the other hand, each connected to a set of an adder (31) and a shift register ( 35). Le deuxième étage (302) implémente la sous-matrice M32 et comprend un additionneur (31) et un soustracteur (32). The second stage (302) implements the submatrix M32 and comprises an adder (31) and a subtractor (32). Le troisième étage (303) implémente la sous-matrice M33 et comprend deux additionneurs (31) et deux soustracteurs (32). The third stage (303) implements the submatrix M33 and comprises two adders (31) and two subtractors (32). Enfin, le quatrième étage (304) implémente la sous-matrice M34 et comprend deux additionneurs (31) et deux inverseurs (33) permettant de fournir jusqu'à quatre données en entrée de quatre multiplexeurs MUX (34). Finally, the fourth stage (304) implements the submatrix M34 and comprises two adders (31) and two inverters (33) for providing up to four input data of four multiplexers MUX (34). Chaque multiplexeur MUX est relié à un ensemble d'un additionneur et d'un registre à décalage, apte à fournir un résultat final (Z4 à Z7). Each multiplexer MUX is connected to a set of an adder and a shift register, adapted to provide a final result (Z4 to Z7).
Les Figs. Figs. 4a et 4b représentent respectivement des moyens de combinaison linéaire respectivement pour le calcul d'une IDCT 4 x 4 et 8 x 8. 4a and 4b respectively represent linear combination means for respectively calculating an IDCT 4 x 4 and 8 x 8.
Selon le schéma de la Fig. According to the diagram in Fig. 4a, les moyens de combinaison linéaire LC4 (16) correspondent à la matrice S4,4 précédemment décrite. 4a, the means LC4 linear combination (16) correspond to the previously described matrix S4,4. Ils comprennent deux additionneurs (31) qui ont pour résultats TO=ZO+Z3 et Tl=Zl+Z2, et deux soustracteurs qui ont pour résultats T2=Zl-Z2 et T3=ZO-Z4. They comprise two adders (31) whose results TO = ZO + Z3 and Tl = Zl + Z2, and two subtracters whose results T2 = Zl-Z2 and T3 = ZO-Z4.
Selon le schéma de la Fig. According to the diagram in Fig. 4b, les moyens de combinaison linéaire LC8 (17) correspondent à la matrice S8,8 précédemment décrite. 4b, the means LC8 linear combination (17) correspond to the previously described matrix S8,8. Ils comprennent quatre additionneurs (31) qui ont pour résultats UO=TO+Z7, U1=T1+Z6, U2=T2+Z5 et U3=T3+Z4. They include four adders (31) whose results UO = TO + Z7, Z6 U1 = T1 +, T2 + U2 = U3 Z5 and Z4 = T3 +.
Ils comprennent également quatre soustracteurs qui ont pour résultats U4=T3-Z4, U5=T2Z5, U6=T1-Z6 et U7=TO-Z7. It also includes four subtractors whose results U4 = T3-Z4, U5 = T2Z5, T1 = U6 and U7-Z6 = TO-Z7.
Les moyens de sélection SEL (19) permettent alors de sélectionner : - les données xO=ZO et xl=Zl issues du premier module de calcul échelonnable DA1 (12) pour une transformation IDCT 2 x 2 ; SEL selection means (19) are then used to select - xO = xl = ZO and Zl data from the first module scalable DA1 (12) to an IDCT transformation 2 x 2; - les données x=T issues des moyens de combinaison linéaire LC4 (16) pour une transformation IDCT 4 x 4 ; - data from x = T means LC4 linear combination (16) for a 4 x 4 IDCT transformation; les données x=U issues des moyens de combinaison linéaire LC8 (17) pour une transformation IDCT 8 x 8 ; data from x = U means LC8 linear combination (17) for an 8 x 8 IDCT; ou les données x issues des moyens de combinaison linéaire LC16 (18) pour une transformation IDCT 16 x 16. or data from x means LC16 linear combination (18) for transformation IDCT 16 x 16.
Considérons maintenant le cas d'une transformation en cosinus discrète directe. Now consider the case of a direct discrete cosine transform.
Ladite transformation permet de transformer des données du domaine temporel dans le domaine fréquentiel à partir de l'équation suivante : Said transformation transforms the time domain data in the frequency domain from the following equation:
Pour cela, la matrice de transformation M peut être décomposée en sous-matrices le long d'une diagonale de ladite matrice, de la façon suivante, ceci pour une transformation DCT 16 x 16 : M16x16 = P16#B16x16#S4,16#S8,16#S16,16 For this, the M transformation matrix can be decomposed into sub-matrices along a diagonal of said matrix, as follows, this for a 16 x 16 DCT: P16 = M16x16 b16x16 # # # S8 S4,16 16 # S16,16
Le dispositif de transformation directe de données d'origine (x) en données transformées (X) selon l'invention, symétrique du dispositif de transformation inverse, comprend ainsi : - des moyens de combinaison linéaire (16,17,18), aptes à combiner linéairement les données d'origine, - des modules de calcul échelonnables (12,13,14,15), aptes à effectuer un produit de données issues des moyens de combinaison linéaire et d'une sous-matrice, - des moyens de permutation (11), aptes à réordonner les données issues des modules de calcul échelonnables selon un nombre de données à traiter, afin de fournir les données transformées. The direct conversion device of original data (x) in the transformed data (X) according to the invention, the symmetrical inverse transformation device and comprises: - a linear combination means (16,17,18) capable of linearly combining the original data, - scalable calculation modules (12,13,14,15), adapted to perform a data product resulting from the linear combination means and of a submatrix, - permutation means (11), adapted to reorder the data from the scalable calculation modules according to a number of data to be processed to provide the transformed data.
La Fig. Fig. 5 représente un dispositif de décompression de données numériques vidéo compressées (ES) en données numériques vidéo décompressées (DS), ledit dispositif comprenant un dispositif de transformation inverse selon l'invention. 5 shows a digital video data decompression device compressed (ES) in the decompressed digital video data (DS), said apparatus comprising an inverse conversion device according to the invention.
Le dispositif de décompression comprend : The pressure relief device comprises:
des moyens de décodage à longueur variable VLD (51) des données numériques compressées, aptes à fournir des données quantifiées, des moyens de quantification inverse IQ (52) des données quantifiées, aptes à fournir des données transformées, un dispositif de transformation en cosinus discrète inverse IDCT (53) de données transformées en données inversement transformées, tel que précédemment décrit. means for variable-length decoding VLD (51) of compressed digital data, suitable for producing quantized data, IQ inverse quantization means (52) the quantized data, suitable for supplying transformed data, a processing device Discrete Cosine IDCT (53) of transformed data into inversely transformed data, as described above.
Le dispositif de décompression comprend en outre une étape de reconstruction REC (54) de l'image bloc de données par bloc de données, grâce à une mémoire d'image MEM (55), en vue de son affichage sur un écran DIS (56). The decompression device further comprises a reconstruction step REC (54) of the image data block by data block, with an image memory MEM (55), with a view to its display on a screen DIS (56 ).
La Fig. Fig. 6 représente un dispositif de compression de données numériques vidéo d'entrée (IN) en données vidéo numériques compressées (ES). 6 shows an input digital video data compression device (IN) into compressed digital video data (ES). Ledit dispositif comprend une unité de codage comportant : un dispositif de transformation en cosinus discrète directe DCT (61) de données numériques vidéo en données transformées, tel que précédemment décrit, des moyens de quantification Q (52) des données transformées, aptes à fournir des données quantifiées, et des moyens de codage à longueur variable VLC (63) des données quantifiées, aptes à fournir des données compressées. Said apparatus comprises a coding unit comprising: a discrete cosine transformation device forward DCT (61) of digital video transformed data data, as described above, quantizing means Q (52) of transformed data, suitable for producing quantized data, and coding means VLC variable length (63) of quantized data, suitable for providing compressed data.
Le dispositif de compression comprend éventuellement une unité de prédiction comprenant en séries : des moyens de quantification inverse IQ (52) des données quantifiées, aptes à fournir des données transformées, un dispositif de transformation en cosinus discrète inverse IDCT (53) de données transformées en données inversement transformées, tel que précédemment décrit, un additionneur (64) des données issues du dispositif de transformation IDCT et d'un dispositif de compensation de mouvement MC (66), une mémoire d'images MEM (65), apte à stocker les images utilisées par le dispositif de compensation de mouvement MC et un dispositif d'estimation de mouvement ME (67), le dispositif de compensation de mouvement MC, et un soustracteur (60), apte à soustraire les données issues du dispositif de compensation de mouvement des données vidéo numériques d'entrée (IN), le résultat de ce soustracteur étant délivré au dispositif de transformation DCT. The compression device optionally includes a prediction unit comprising in series: inverse quantizing means IQ (52) of quantized data, suitable for supplying transformed data, a discrete cosine transforming device IDCT (53) of transformed data inversely transformed data, as previously described, an adder (64) data from the IDCT processing device and a MC motion compensation device (66), a ROM image memory (65), adapted to store the images used by the MC motion compensation device and a motion estimation device ME (67), the MC motion compensation device, and a subtractor (60) adapted to subtract the data from the motion compensation device input digital video data (iN), the result of this subtraction is supplied to the DCT device.
Aucun signe de référence entre parenthèses dans le présent texte ne doit être interprété de façon limitative. No reference sign between parentheses in the present text should be construed limited to. Le verbe "comprendre" et ses conjugaisons doivent également être interprétés de façon large, c'est à dire comme n'excluant pas la présence non The verb "comprise" and its conjugations should also be interpreted broadly, that is, as not excluding the presence not
seulement d'autres éléments ou étapes que ceux listés après ledit verbe, mais aussi d'une pluralité d'éléments ou d'étapes déjà listés après ledit verbe et précédés du mot "un" ou "une". only other elements or steps than those listed after said verb but also a plurality of elements or steps already listed after said verb and preceded by the word "a" or "an".
REVENDICATIONS 1. Dispositif de transformation inverse de données transformées (X) en données inversement transformées (x) via une matrice de transformation inverse décomposable en sous-matrices le long d'une diagonale de la matrice, ledit dispositif comprenant : - des moyens de permutation (11), aptes à réordonner les données transformées selon un nombre de données à traiter, - des modules de calcul échelonnables (12,13,14,15), aptes à effectuer un produit de données transformées réordonnées et d'une sous-matrice, - des moyens de combinaison linéaire (16,17,18), aptes à combiner linéairement les données issues des modules de calcul échelonnables selon le nombre de données à traiter. 1. A device for inverse transformation of the transformed data (X) into inversely transformed data (x) via a decomposable inverse transformation matrix into submatrices along a diagonal of the matrix, said device comprising: - means for permutation (11) capable of reordering the transformed data in a number of data to be processed, - scalable calculation modules (12,13,14,15) adapted to carry a product reordered transformed data and a sub-matrix - linear combination means (16,17,18) adapted to linearly combine the data from the scalable calculation modules according to the number of data to be processed.
2. Dispositif de traitement de données transformées selon la revendication 1, caractérisé en ce que les moyens de calcul échelonnables sont basés sur des algorithmes d'arithmétique distribuée. 2. A data processing processed according to claim 1, characterized in that the means of calculation are scalable based on distributed arithmetic algorithms.
3. Dispositif de traitement de données transformées selon la revendication 1, caractérisé en ce qu'il comprend en outre des moyens de sélection (19), aptes à sélectionner les données issues d'un premier module de calcul échelonnable (12) ou des moyens de combinaison linéaire (16,17,18) selon le nombre de données à traiter, afin de fournir les données inversement transformées. 3. A data processing processed according to claim 1, characterized in that it further comprises selection means (19) adapted to select the data from a first scalable calculation module (12) or means linear combination (16,17,18) depending on the number of data to be processed to provide the inversely transformed data.
4. Dispositif de transformation de données d'origine (x) en données transformées (X) via une matrice de transformation décomposable en sous-matrices le long d'une diagonale de la matrice, ledit dispositif comprenant : - des moyens de combinaison linéaire (16,17,18), aptes à combiner linéairement les données d'origine, - des modules de calcul échelonnables (12,13,14,15), aptes à effectuer un produit de données issues des moyens de combinaison linéaire et d'une sous-matrice, - des moyens de permutation (11), aptes à réordonner les données issues des modules de calcul échelonnables selon un nombre de données à traiter, afin de fournir les données transformées. 4. The device of original data transformation (s) in the transformed data (X) via a decomposable transformation matrix into submatrices along a diagonal of the matrix, said device comprising: - a linear combination means ( 16,17,18) adapted to linearly combine the original data, - scalable calculation modules (12,13,14,15), adapted to perform a data product resulting from the linear combination means and a submatrix, - permutation means (11) adapted to reorder the data from the scalable calculation modules according to a number of data to be processed to provide the transformed data.
5. Dispositif de décompression de données numériques compressées comprenant des moyens de décodage à longueur variable (51) des données numériques compressées, aptes à fournir des données quantifiées, des moyens de quantification inverse (52) des données quantifiées, aptes à fournir des données transformées (X) et un dispositif de transformation 5. A digital data decompressing compressed comprising variable length decoding means (51) of compressed digital data, suitable for producing quantized data, inverse quantizing means (52) the quantized data, suitable for supplying transformed data (X) and a transformation device
inverse (53) de données transformées en données inversement transformées (x) selon l'une des revendications 1 à 3. reverse (53) of transformed data into inversely transformed data (x) according to one of claims 1 to 3.
6. Dispositif de compression de données numériques comprenant un dispositif de transformation (61) de données d'origine (x) en données transformées (X) selon la revendication 4. 6. A digital data compression comprising a transform means (61) for original data (x) in the transformed data (X) according to claim 4.
7. Dispositif de compression de données numériques selon la revendication 6, comprenant en outre des moyens de prédiction comportant un dispositif de transformation inverse (53) de données transformées (X) en données inversement transformées (x) selon l'une des revendications 1 à 3. 7. Device for compressing digital data according to claim 6, further comprising prediction means having an inverse transformation device (53) of transformed data (X) into inversely transformed data (x) according to one of claims 1 to 3.
8. Procédé de transformation inverse de données transformées (X) en données inversement transformées (x) via une matrice de transformation inverse, caractérisé en ce qu'il comprend les étapes de : - décomposition de la matrice de transformation inverse en sous-matrices le long d'une diagonale de la matrice, - calcul, destinée à effectuer un produit de données transformées et d'une sous-matrice, - combinaison linéaire, destinée à combiner linéairement les données issues de l'étape de calcul. 8. A method for inverse transforming the transformed data (X) into inversely transformed data (x) via an inverse transformation matrix, characterized in that it comprises the steps of: - decomposition of the inverse transformation matrix submatrices along a diagonal of the matrix, - calculating, for performing a transformed data product and a sub-matrix, - linear combination, for linearly combining the data from the calculating step.
9. Procédé de transformation de données d'origine (x) en données transformées (X) via une matrice de transformation, caractérisé en ce qu'il comprend les étapes de : - décomposition de la matrice de transformation en sous-matrices le long d'une diagonale de la matrice, - de combinaison linéaire, destinée à combiner linéairement les données d'origine, - calcul, destinée à effectuer un produit de données issues de l'étape de combinaison linéaire et d'une sous-matrice. 9. A method of processing original data (x) in the transformed data (X) via a transformation matrix, characterized in that it comprises the steps of: - decomposition of the transformation matrix into submatrices along a diagonal of the matrix, - linear combination, intended to linearly combine the original data, - calculating, for performing a data product from linear combination step and a sub-matrix.
FR0116998A 2001-12-28 2001-12-28 An adaptive inverse transformation Withdrawn FR2834362A1 (en)
FR0116998A FR2834362A1 (en) 2001-12-28 2001-12-28 An adaptive inverse transformation
EP20020080378 EP1324210A1 (en) 2001-12-28 2002-12-19 Apparatus for adaptive inverse transform
US10/326,019 US20030133507A1 (en) 2001-12-28 2002-12-20 Adaptive inverse transformation device
CN 02128168 CN1428719A (en) 2001-12-28 2002-12-26 Self-adaptive reverse mapping device
KR10-2002-0084902A KR20030057425A (en) 2001-12-28 2002-12-27 An adaptive inverse transformation device
JP2002381765A JP2003281115A (en) 2001-12-28 2002-12-27 Device and method for adaptive inverse data transformation and data transformation
FR2834362A1 true FR2834362A1 (en) 2003-07-04
ID=8871062
FR0116998A Withdrawn FR2834362A1 (en) 2001-12-28 2001-12-28 An adaptive inverse transformation
US (1) US20030133507A1 (en)
EP (1) EP1324210A1 (en)
JP (1) JP2003281115A (en)
KR (1) KR20030057425A (en)
CN (1) CN1428719A (en)
FR (1) FR2834362A1 (en)
CN102404569B (en) * 2011-11-08 2014-01-08 复旦大学 Universal method capable of being used for various video standards and multi-size two-dimensional integer cosine inverse transform
2001-12-28 FR FR0116998A patent/FR2834362A1/en not_active Withdrawn
2002-12-19 EP EP20020080378 patent/EP1324210A1/en not_active Withdrawn
2002-12-20 US US10/326,019 patent/US20030133507A1/en not_active Abandoned
2002-12-26 CN CN 02128168 patent/CN1428719A/en not_active Application Discontinuation
2002-12-27 JP JP2002381765A patent/JP2003281115A/en not_active Withdrawn
2002-12-27 KR KR10-2002-0084902A patent/KR20030057425A/en not_active Application Discontinuation
ARTIERI A ET AL: "A ONE CHIP VLSI FOR REAL TIME TWO-DIMENSIONAL DISCRETE COSINE TRANSFORM" PROCEEDINGS OF THE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS. ESPOO, FINLAND, JUNE 7 - 9, 1988, NEW YORK, IEEE, US, vol. 1 CONF. 21, 7 juin 1988 (1988-06-07), pages 701-704, XP000093138 ISBN: 951-721-239-9 *
DEMASSIEUX N ET AL: "AN OPTIMIZED VLSI ARCHITECTURE FOR A MULTIFORMAT DISCRETE COSINE TRANSFORM" INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH & SIGNAL PROCESSING. ICASSP. DALLAS, APRIL 6 - 9, 1987, NEW YORK, IEEE, US, vol. 1 CONF. 12, 6 avril 1987 (1987-04-06), pages 547-550, XP000039814 *
THUYEN LE ET AL: "Flexible architectures for DCT of variable-length targeting shape-adaptive transform" IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, DEC. 2000, IEEE, USA, vol. 10, no. 8, pages 1489-1495, XP002210971 ISSN: 1051-8215 *
JP2003281115A (en) 2003-10-03
KR20030057425A (en) 2003-07-04
US20030133507A1 (en) 2003-07-17
CN1428719A (en) 2003-07-09
EP1324210A1 (en) 2003-07-02
JP2672302B2 (en) 1997-11-05 Conversion circuit
US8606023B2 (en) 2013-12-10 Reduction of errors during computation of inverse discrete cosine transform
JP2003333598A (en) 2003-11-21 2-d transform for image and video coding
Bouguezel et al. 2008 Low-complexity 8× 8 transform for image compression
JP2003204552A5 (en) 2006-12-14