FR2787669A1 - Procede d'adressage pour la memorisation de blocs d'image - Google Patents
Procede d'adressage pour la memorisation de blocs d'image Download PDFInfo
- Publication number
- FR2787669A1 FR2787669A1 FR9816221A FR9816221A FR2787669A1 FR 2787669 A1 FR2787669 A1 FR 2787669A1 FR 9816221 A FR9816221 A FR 9816221A FR 9816221 A FR9816221 A FR 9816221A FR 2787669 A1 FR2787669 A1 FR 2787669A1
- Authority
- FR
- France
- Prior art keywords
- blocks
- image
- block
- memory
- stored
- 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
Classifications
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
- Image Input (AREA)
- Memory System (AREA)
Abstract
Le procédé de mémorisation, dans des pages d'une mémoire, de blocs d'image (h, v) (1, 2) constitués de v lignes de h pixels, pour la lecture de blocs d'image (H, V) (9, 10, 11) constitués de V lignes de H pixels, est caractérisé en ce que le décalage horizontal DI , I+a , en nombre de blocs (h, v), de la frontière d'une page correspondant à une rangée quelconque I de l'image par rapport à la frontière d'une page correspondant à une rangée I + a est égal à : DI, I+a = a D, a entier positif inférieur à RM = INT [(V - 2)/v] + 2, (INT correspondant à la partie entière de la division)la valeur D, qui correspond au décalage entre deux rangées successives étant choisie telle que : D>=(BM -1), avec BM = INT [(H - 2)/h]+ 2, Les applications concernent par exemple l'estimation de mouvement et la compression de mouvement.
Description
L'invention concerne un procédé d'adressage pour la
mémorisation de données dans des mémoires de type SDRAM.
Les traitements numériques vidéo nécessitent de pouvoir stocker en mémoire des images vidéo. Deux types de mémoires sont couramment utilisés: - des mémoires statiques à accès aléatoire ou Static Random Access Memory en anglais (SRAM). Les zones de ces mémoires sont
directement accessibles à partir du bus d'adresse.
- des mémoires dynamiques à accès aléatoire, Dynamic Random Access Memory (DRAM) en anglais, ou, si elles sont synchrones,
Synchronous Dynamic Random Access Memory (SDRAM).
La mémoire dynamique est répartie en pages et un accès à une nouvelle page correspondant à un changement de page nécessite un temps accès appelé "time penalty" en anglais. L'adresse mémoire est composée d'une première partie appelée adresse page ou "row address" et d'une deuxième partie appelée adresse case ou "column address". Les termes anglais ici mentionnés sont les termes couramment utilisés dans les fiches
techniques de composants de type DRAM ou SDRAM.
Des applications de traitement vidéo, de plus en plus courantes, nécessitent d'accéder à des blocs d'images, c'est à dire à un ensemble de
pixels d'une image.
C'est le cas par exemple de la compression de données vidéo numérique selon la norme MPEG, acronyme de l'appellation anglaise Motion Picture Expert Group, o la taille élémentaire de codage est un bloc d'image constituant un macrobloc. Lors de l'estimation de mouvement, un macrobloc d'image courant est comparé à des macroblocs d'image reconstruite et mémorisés dans une mémoire de type SDRAM pour déterminer le macrobloc reconstruit permettant la meilleure corrélation avec le macrobloc
d'image courant.
Dans la norme MPEG, les macroblocs sont des ensembles constitués de quatre blocs de 8 x 8 éléments de données de luminance et,
2 2787669
par exemple pour le format 4: 2: 0, de deux blocs de 8 x 8 éléments de données de chrominance, issus d'une section de 16 x 16 éléments de la
composante de luminance de l'image.
En fait, les calculs d'estimation de mouvement sont effectués sur les seules valeurs de luminance. Les blocs considérés sont alors les seuls blocs de luminance de taille globale 16 x 16. Ces blocs sont mémorisés sous la forme de blocs de 16 pixels x 8 lignes, les blocs luminance de taille globale 16 x 16 étant préalablement séparés en deux blocs de 16 pixels x 8 lignes. Ces blocs correspondent à un premier bloc de la trame supérieure (upper block en anglais) et un deuxième bloc de la trame inférieure (lower block en anglais) en mode image regroupant deux trames (frame picture) ou bien à un premier bloc regroupant les 8 premières lignes (upper block) et un deuxième bloc regroupant les 8 lignes suivantes (lower block) d'une même trame en mode trame (field picture). Ces blocs luminance de 16 pixels x 8 lignes sont appelés, par la suite, demi macroblocs de luminance ou demi macroblocs pour indiquer qu'ils regroupent 2 blocs de luminance de 8 pixels x 8 lignes, le terme macrobloc de luminance étant utilisé pour désigner, dans
la norme MPEG, les 4 blocs de luminance.
Il est généralement nécessaire de récupérer, de la mémoire, des blocs d'image de taille supérieure à ces blocs de 16 pixels x 8 lignes. La
taille des blocs récupérés est en fait définie par l'application.
Par exemple, le calcul des vecteurs mouvement se fait avec une résolution d'un demi pixel nécessitant de traiter des blocs d'image ayant une ligne et une colonne supplémentaire, c'est à dire de dimension 17 pixels x 9
lignes.
Un autre exemple concerne les fenêtres de recherche dans l'image reconstruite, dans lesquelles s'effectue la corrélation des blocs, et qui ont des dimensions plus ou moins importantes selon les procédés utilisés pour l'estimation de mouvement. Pour un procédé désignant, dans une première étape, un emplacement d'une fenêtre de recherche à partir d'un vecteur mouvement, il est généralement nécessaire, dans une deuxième étape, d'affiner la recherche pour effectuer un ajustement local, cet affinage se faisant sur une fenêtre de petite dimension. Dans un exemple, ces fenêtres de recherche ont une dimension de 24 x 12, correspondant à une
3 2787669
excursion horizontale de + 4 et une excursion verticale de + 2 pour des blocs
de 16 x 8 pixels.
Le temps d'accès à l'ensemble d'un bloc de taille supérieure n'est généralement pas optimisé, nécessitant l'accès à plusieurs pages de la mémoire SDRAM pour lire ou écrire les valeurs de pixels constituant ce bloc. La figure 1 représente des macroblocs de luminance de taille 16 x 16, un premier macrobloc 16 x 16 de luminance 1 et un dernier macrobloc 16 x 16 de luminance 2 d'une même rangée horizontale, c'est à dire d'une succession horizontale de macroblocs sur une largeur d'image. Dans le cas général, une rangée de macroblocs correspond à une tranche (ou slice en anglais), telle que définie dans la norme MPEG. Par la suite, le terme rangée sera plus particulièrement utilisé pour définir une succession de blocs ou de demi macroblocs sur une largeur d'image, le terme tranche étant réservé aux
macroblocs.
Sur l'axe des abscisses sont indiqués les numéros de pixels et sur l'axe des ordonnées sont indiqués les numéros de lignes. 16 lignes vidéo sur une largeur d'image de 720 pixels correspondent à 45 macroblocs de 16
pixels (720:16).
Les demi macroblocs sont mémorisés à la suite les uns des
autres selon un balayage de type télévision, comme indiqué ci-après.
La figure 2 représente des pages mémoires 4, 5, 6, 8 telles qu'elles sont successivement adressées lors de la mémorisation des demi macroblocs. Comme indiqué précédemment, les macroblocs 16 x 16 sont mémorisés après séparation en deux parties, les blocs supérieurs ou "upper
blocks" et les blocs inférieurs ou "lower blocks".
Si les blocs supérieurs correspondent à une trame et les blocs inférieurs à la trame suivante, c'est à dire en mode image, les blocs supérieurs sont mémorisés à la suite dans un espace mémoire et les blocs inférieurs à la suite dans un autre espace mémoire, chaque espace mémoire
correspondant ainsi à une trame.
Si les blocs supérieurs et inférieurs correspondent à une même trame, c'est à dire en mode trame, ils sont mémorisés à la suite, c'est à dire d'abord les blocs supérieurs d'une rangée (de demi macroblocs) puis les
4 -2787669
blocs inférieurs correspondant à la rangée suivante. La trame suivante est
mémorisée dans un autre espace mémoire.
Le procédé de mémorisation est décrit pour le mode trame et peut être généralisé sans difficulté au mode image. Il est appliqué à chacun des espaces mémoire, pris séparément, en considérant, pour chacun d'eux, les
seuls demi-macroblocs qui y sont mémorisés.
Une page 4 peut mémoriser, dans notre exemple, 8 demi macroblocs MB référencés 3. La mémorisation des 8 demi macroblocs MB suivants est effectuée dans la page suivante 5 et ainsi de suite. Il y a donc, tous les 8 demi macroblocs, un changement ou saut de page 7 appelé "page miss" dans la littérature technique. Le demi macrobloc n 45 qui correspond à la fin de la première rangée est mémorisé en milieu d'une page référencée 6, plus exactement comme 5ième demi macrobloc parmi les 8 demi
macroblocs de la page.
Le demi macrobloc suivant, qui correspond au demi macrobloc en début de la deuxième rangée de la trame est mémorisé en début d'une nouvelle page 8 dans la mémoire, la mémorisation en début de page d'un demi macrobloc de début de rangée étant la solution la plus simple pour
gérer les adresses.
La figure 3 montre les inconvénients d'un tel art antérieur.
L'espace mémoire est représenté de manière schématique en fonction de la taille des demi macroblocs 13 mémorisés. Les traits 12 représentés en gras correspondent aux frontières de pages, pages de dimension 8 blocs de 16 x 8 pixels. Trois pages complètes superposées sont représentées correspondant à des groupes de demi macroblocs superposés de trois rangées successives dans la trame. Devant accéder à des blocs d'image de dimension supérieure à celle des demi macroblocs mémorisés, il est nécessaire d'accéder à plusieurs pages pour lire un bloc d'image. Ainsi, I'accès au bloc de 17 lignes x 9 pixels référencé 9 nécessite 4 changements de page, I'accès au bloc 10 de même dimension, 2 changements de page et l'accès au bloc 11 de dimension 24 lignes x 12 pixels, 6 changements de page. Il est tenu compte, dans ce calcul, du premier changement de page
qu'il est nécessaire d'effectuer, simplement pour accéder au bloc.
2787669
Dans cette configuration, le nombre maximum de changements de page pour un bloc de dimension 17 x 9 est 4, le nombre maximum de
changements de page pour un bloc de dimension 24 x 12 est 6.
Le dispositif d'écriture/lecture de la mémoire doit être configuré de manière à tenir compte du nombre maximum de changements de page possible. Ainsi, plus ce nombre est important, plus les temps d'accès, même
pour un accès à une seule page, sont importants.
Ces changements de page ou plus exactement ce nombre maximum de changements de page possible nécessite une configuration du système qui pénalise le temps accès aux données mémorisées et qui diminue donc la bande passante du bus mémoire, bande passante qui correspond au nombre de pixels accessible dans une durée donnée. Un changement de page nécessite un certain nombre de cycles d'horloge,
réduisant par là-même le temps accès.
L'invention a pour but de pallier les inconvénients précités.
A cet effet, I'invention a pour objet un procédé de mémorisation de données vidéo numériques d'une image, I'image étant découpée en blocs d'image (h, v) constitués de v lignes de h pixels, I'ensemble des blocs sur une largeur d'image constituant une rangée, les données étant mémorisées par blocs d'images successifs selon un ordre correspondant à un balayage de type télévision, dans des pages successives d'une mémoire vive dynamique à accès aléatoire, pour la lecture de blocs d'image (H, V) constitués de V lignes de H pixels, caractérisé en ce que le décalage horizontal DI, I+a, en nombre de blocs (h, v), de la frontière d'une page correspondant à une rangée quelconque I de l'image par rapport à la frontière d'une page correspondant à une rangée I + a est égal à: Dj, i+a = a D, V a entier positif inférieur à RM = INT [(V - 2) / v] + 2, (INT correspondant à la partie entière de la division) la valeur D, qui correspond au décalage entre deux rangées successives, étant choisie telle que: D> (BM-1), avec BM = INT [(H - 2) / h] + 2, Selon un mode particulier de mise en oeuvre, le procédé est caractérisé en ce que le décalage est obtenu en laissant vides, dans la page
6 2787669
mémorisant les derniers blocs d'une rangée, des espaces mémoire
correspondant à un ou plusieurs blocs (h, v).
L'invention concerne également un procédé d'estimation de mouvement mémorisant des blocs (h, v) de dimensions h, v pour obtenir une image reconstruite dans une mémoire et réalisant une comparaison d'un bloc d'une image courante à des blocs (H, V) de dimension H, V de l'image reconstruite mémorisée, caractérisé en ce que les blocs (h, v) sont mémorisés dans les pages d'une mémoire de type SDRAM selon un des
procédés précédemment décrits.
L'invention concerne également un procédé de corrélation effectuant une mémorisation de blocs d'image (h, v) de dimensions h, v pour obtenir une image reconstruite dans une mémoire, une lecture d'une fenêtre de recherche (H, V) de l'image reconstruite de dimension H, V pour réaliser une corrélation d'un bloc d'une image courante avec un bloc d'image se trouvant dans la fenêtre de recherche, caractérisé en ce que les blocs (h, v) sont mémorisés dans les pages d'une mémoire de type SDRAM selon un
des procédés précédemment décrits.
L'invention concerne aussi un procédé de prédiction d'un bloc d'image dans une image reconstruite effectuant une mémorisation de blocs d'image (h, v) de dimension h, v pour obtenir une image reconstruite, une prédiction à partir d'un vecteur mouvement pour définir un bloc de dimension (H, V) dans l'image reconstruite, une lecture de ce bloc (H, V), caractérisé en ce que les blocs (h, v) sont mémorisés dans les pages d'une mémoire de
type SDRAM selon un des procédés précédemment décrits.
Grâce à l'invention, le nombre de changements de pages maximum est limité et en conséquence la bande passante est améliorée. Le temps accès à un bloc de pixels est optimisé. Le fait de minimiser le temps d'utilisation du bus mémoire, du fait de la diminution du temps de transfert global est particulièrement avantageux, la bande passante étant une limitation importante dans la performance des dispositifs à accès mémoire
mis en oeuvre aujourd'hui.
7 2787669
Les caractéristiques et avantages de la présente invention
ressortiront mieux de la description suivante, donnée à titre d'exemple et en
référence aux figures annexées o: - la figure 1 représente un premier et dernier macrobloc d'une tranche de macroblocs d'une image, - la figure 2 représente la mémorisation de demi macroblocs dans une mémoire, selon l'art antérieur, - la figure 3 représente des blocs à lire dans une mémoire, configurée selon l'art antérieur, - la figure 4 représente une configuration de l'espace mémoire selon l'invention, - la figure 5 représente des blocs à lire dans une mémoire configurée selon l'invention, - la figure 6 représente la mémorisation de demi macroblocs dans
une mémoire selon l'invention.
La figure 4 représente une configuration de l'espace mémoire
selon l'invention.
La dimension des pages est, en reprenant l'exemple donné précédemment, de 8 demi macroblocs de 16 x 8 pixels. D'une rangée de demi macroblocs à celle de dessous, les frontières verticales 14 des pages, représentées en traits gras et correspondant aux sauts de pages, sont décalées d'un espace égal à 2 demi macroblocs (ou à deux macroblocs puisque la largeur est la même). Ainsi, les demi macroblocs d'une trame se trouvant en dessous du premier et deuxième demi macrobloc d'une page
appartiennent à une autre page.
La figure 5 est à rapprocher de la figure 3 et représente les mêmes blocs d'image 9, 10, 11 dans la mémoire. Grâce au décalage des frontières des pages, I'accès au bloc de 17 lignes x 9 pixels référencé 9 nécessite 3 changements de page au lieu de 4, I'accès au bloc 10 de même dimension, 2 changements de page et l'accès au bloc 11 de dimension 24
lignes x 12 pixels, 4 changements de page au lieu de 6.
Dans cette configuration, le nombre maximum de changements de page pour un bloc de dimension 17 x 9 est 3, le nombre maximum de
8 2787669
changements de page pour un bloc de dimension 24 x 12 est 4. Ainsi, grâce à cette configuration, le nombre de changements de pages peut être réduit de deux, soit un gain de 12 cycles d'horloges mémoire dans notre application. Le décalage réalisé est en fait fonction des dimensions des blocs
d'image à lire, relativement à celles des blocs mémorisés.
Les blocs mémorisés sont de dimension h, v, c'est à dire
constitués de v lignes de h pixels et sont appelés blocs (h, v).
Les blocs à lire sont des blocs de dimension H, V, c'est à dire
constitués de V lignes de H pixels et sont appelés blocs (H, V).
Le nombre maximum de rangées de blocs, dans la mémoire, sur lesquelles peut être réparti un bloc (H, V) de dimension verticale V est: RM = INT [(V- 2)/v] + 2
INT (de INTeger) représente la partie entière de la division.
Le nombre maximum de blocs, en horizontal, sur lesquels peut être réparti un bloc (H, V) de dimension horizontale H est: BM = INT [(H - 2) / h] + 2 Les contraintes à observer sur le décalage D horizontal (en nombre de blocs mémorisés) des pages constituant la mémoire sont, entre deux rangées de blocs successives:
D > (BM - 1)
Par exemple, pour le bloc (H, V) référencé 9 ou 10, réparti, en vertical, au maximum sur deux rangées successives (RM = 2) et dont la dimension H est comprise entre 1 et h+1, c'est à dire un bloc réparti en horizontal sur 2 blocs (h, v) au maximum (BM = 2), le décalage D est pris
égal à 1.
Lorsque un bloc (H, V) peut être réparti sur plusieurs rangées, la contrainte est généralisée au nombre maximum de rangées RM calculées pour ce bloc: Soit D la valeur du décalage choisi entre deux rangées successives, cette valeur satisfaisant l'inégalité:
D > (BM - 1)
9 2787669
Soit a une variable entière pouvant évoluer entre 1 et RM-1, la contrainte peut alors s'écrire:
D,+a = a D, V a, RM> a > 1.
avec Dl I+a le décalage entre une rangée quelconque I et une rangée I + a. Par exemple, pour le bloc (H, V) référencé 11, réparti, en vertical, sur trois rangées successives au maximum (RM = 3) et dont la dimension H est comprise entre h+2 et 2h+1, c'est à dire un bloc réparti en horizontal sur 3 blocs (h, v) au maximum (BM =3), le décalage DI, 1.1 est égal à 2 et le
décalage D, 1+2 est égal à 4.
Pour réaliser un tel décalage, des zones non utilisées sont créées dans l'espace mémoire. La figure 6, qui est à rapprocher de la figure 2 représente, sur une ligne continue, une succession de pages mémoire 4, 5, 6, 8 telles qu'elles sont adressées lors de la mémorisation des demi macroblocs. Lorsqu'on arrive au dernier demi macrobloc de la première rangée, qui se trouve être le cinquième demi macrobloc mémorisé dans la page référencée 6, une zone mémoire 15 de dimension correspondant à un demi macrobloc est laissée vide afin d'enregistrer le premier et deuxième demi macroblocs de la rangée suivante au septième et huitième emplacement de demi macrobloc dans la page. Ainsi la page suivante 8 enregistre le troisième demi macrobloc de cette rangée suivante. Le demi macrobloc se trouvant, dans la trame, au dessus de ce premier demi macrobloc dans la page 8, a, quant à lui, été mémorisé comme troisième
demi macrobloc dans la page correspondante 3 de la rangée supérieure.
Un décalage de trois demi macroblocs correspondrait à aucun espace mémoire laissé libre, un décalage d'un seul demi macrobloc
correspondrait à deux espaces mémoire de dimension le demi macrobloc.
D'une manière générale, le nombre de demi macroblocs mémorisés dans la première page de la rangée suivante, la rangée précédente commençant par une nouvelle page, correspond à ce décalage,
un nombre de 8 demi macroblocs correspondant à aucun décalage.
La description a été faite à partir des demi macroblocs
mémorisés. Il s'agit bien sûr d'un exemple de réalisation. et les demi
2787669
macroblocs peuvent être remplacés par tout type de blocs d'image, de toute
dimension, sans que le procédé sorte du domaine de l'invention.
La mémorisation a été décrite au niveau des trames d'une image.
Elle peut être effectuée au niveau de l'image complète, par exemple issue d'un balayage progressif. Le découpage en blocs d'image se fait alors à partir de l'image complète et les blocs d'image sont mémorisés dans un seul
espace mémoire.
Les applications de la présente invention concernent par exemple l'accès à un bloc prédit, à partir d'un vecteur mouvement, dans une image reconstruite, I'accès aux fenêtres de recherche pour la corrélation avec un
bloc courant lors du calcul de l'estimation de mouvement.
Les blocs mémorisés peuvent être des blocs luminance faisant partie des macroblocs définis dans la norme MPEG. Il peut également s'agir des seuls blocs de chrominance ou de l'ensemble des blocs luminance et chrominance. L'invention peut également s'appliquer à la mémorisation des blocs reconstruits dans un décodeur MPEG. Les blocs prédits à lire dans la mémoire et définis par les vecteurs mouvement, sont généralement de dimension supérieure aux blocs mémorisés, par exemple lorsque le vecteur mouvement à une précision au demi-pixel près. Ces blocs lus sont ensuite
redimensionnés par interpolation pour le calcul du bloc d'image courant.
11 2787669
Claims (7)
1 Procédé de mémorisation de données vidéo numériques d'une image, I'image étant découpée en blocs d'image (h, v) (1, 2) constitués de v lignes de h pixels, I'ensemble des blocs sur une largeur d'image constituant une rangée, les données étant mémorisées par blocs d'images successifs (3, 13) selon un ordre correspondant à un balayage de type télévision, dans des pages successives (4, 5, 6, 8) d'une mémoire vive dynamique à accès aléatoire, pour la lecture de blocs d'image (H, V) (9, 10, 11) constitués de V lignes de H pixels, caractérisé en ce que le décalage horizontal DI, +a, en nombre de blocs (h, v), de la frontière d'une page correspondant à une rangée quelconque I de l'image par rapport a la frontière d'une page correspondant à une rangée I + a est égal à: D, I+.a = a D, V a entier positif inférieur à RM = INT [(V - 2) / v] + 2, (INT correspondant à la partie entière de la division) la valeur D, qui correspond au décalage entre deux rangées successives étant choisie telle que: D> (BM-1), avec BM = INT [(H - 2) / h] + 2, 2 Procédé selon la revendication 1, caractérisé en ce que le décalage est obtenu en laissant vides, dans la page mémorisant les derniers blocs d'une rangée (6), des espaces mémoire (15) correspondant à un ou
plusieurs blocs (h, v).
3 Procédé selon la revendication 1 ou 2, caractérisé en ce que les
blocs (h, v) sont partie des macroblocs définis dans la norme MPEG.
4 Procédé selon l'une des revendications précédentes,
caractérisé en ce l'image est une trame paire ou impaire.
Procédé d'estimation de mouvement mémorisant des blocs (h, v) de dimensions h, v pour obtenir une image reconstruite dans une mémoire et réalisant une comparaison d'un bloc d'une image courante à des blocs (H, V) de dimension H, V de l'image reconstruite mémorisée, caractérisé en ce
12 2787669
que les blocs (h, v) sont mémorisés dans les pages d'une mémoire de type
SDRAM selon le procédé de la revendication 1 ou 2.
6 Procédé de corrélation effectuant une mémorisation de blocs d'image (h, v) de dimensions h, v pour obtenir une image reconstruite dans une mémoire, une lecture d'une fenêtre de recherche (H, V) de l'image reconstruite de dimension H, V pour réaliser une corrélation d'un bloc d'une image courante avec un bloc d'image se trouvant dans la fenêtre de recherche, caractérisé en ce que les blocs (h, v) sont mémorisés dans les pages d'une mémoire de type SDRAM selon le procédé de la revendication
1 ou2.
7 Procédé de prédiction d'un bloc d'image dans une image reconstruite effectuant une mémorisation de blocs d'image (h, v) de dimension h, v pour obtenir une image reconstruite, une prédiction à partir d'un vecteur mouvement pour définir un bloc de dimension (H, V) dans l'image reconstruite, une lecture de ce bloc (H, V), caractérisé en ce que les blocs (h, v) sont mémorisés dans les pages d'une mémoire de type SDRAM
selon le procédé de la revendication 1 ou 2.
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9816221A FR2787669B1 (fr) | 1998-12-22 | 1998-12-22 | Procede d'adressage pour la memorisation de blocs d'image |
EP99403116A EP1014716B1 (fr) | 1998-12-22 | 1999-12-10 | Procédé d'adressage pour la mémorisation de blocs d'image |
ES99403116T ES2262297T3 (es) | 1998-12-22 | 1999-12-10 | Proceso de direccionamiento para almacenamiento en memoria de bloques de imagen. |
DE69931017T DE69931017T2 (de) | 1998-12-22 | 1999-12-10 | Addressierungsverfahren zur Speicherung eines Blockenbildes |
CNB991263723A CN1154048C (zh) | 1998-12-22 | 1999-12-17 | 寻址处理方法 |
JP36330699A JP4435918B2 (ja) | 1998-12-22 | 1999-12-21 | 画像ブロックを蓄積するためのアドレッシング処理方法 |
US09/469,117 US6631164B1 (en) | 1998-12-22 | 1999-12-21 | Addressing process for the storage of image blocks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9816221A FR2787669B1 (fr) | 1998-12-22 | 1998-12-22 | Procede d'adressage pour la memorisation de blocs d'image |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2787669A1 true FR2787669A1 (fr) | 2000-06-23 |
FR2787669B1 FR2787669B1 (fr) | 2001-03-02 |
Family
ID=9534309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR9816221A Expired - Fee Related FR2787669B1 (fr) | 1998-12-22 | 1998-12-22 | Procede d'adressage pour la memorisation de blocs d'image |
Country Status (7)
Country | Link |
---|---|
US (1) | US6631164B1 (fr) |
EP (1) | EP1014716B1 (fr) |
JP (1) | JP4435918B2 (fr) |
CN (1) | CN1154048C (fr) |
DE (1) | DE69931017T2 (fr) |
ES (1) | ES2262297T3 (fr) |
FR (1) | FR2787669B1 (fr) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7471298B1 (en) * | 2000-06-26 | 2008-12-30 | S3 Graphics Co., Ltd. | Fetching pixel data with reduced memory bandwidth requirement |
CN100403276C (zh) * | 2002-08-26 | 2008-07-16 | 联发科技股份有限公司 | 存储器存取方法 |
US20080158601A1 (en) * | 2006-12-29 | 2008-07-03 | Steven Tu | Image memory tiling |
US9286696B2 (en) * | 2013-04-08 | 2016-03-15 | Broadcom Corporation | Compression within a set of images |
CN117499664B (zh) * | 2023-12-29 | 2024-03-19 | 南京博润类脑智能技术有限公司 | 一种基于比特替换的图像数据嵌入和提取方法、装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4441295A1 (de) * | 1994-11-21 | 1996-05-23 | Sican Gmbh | Verfahren und Schaltungsanordnung zur Adressierung von Komponenten blockweise organisierter digitaler Bilddaten in einem Speicher mit Page-Adressierung |
US5675387A (en) * | 1994-08-15 | 1997-10-07 | General Instrument Corporation Of Delaware | Method and apparatus for efficient addressing of DRAM in a video decompression processor |
EP0849953A2 (fr) * | 1996-12-20 | 1998-06-24 | Lsi Logic Corporation | Système et méthode pour compenser le déplacement avec un format tuile oblique de mémorisation pour efficacité améliorée |
US5815209A (en) * | 1993-11-09 | 1998-09-29 | Matsushita Electric Industrial Co., Ltd. | Encoding method, an encoding apparatus, a decoding method and a decoding apparatus for a moving picture |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774206A (en) * | 1995-05-10 | 1998-06-30 | Cagent Technologies, Inc. | Process for controlling an MPEG decoder |
US5872577A (en) * | 1996-02-28 | 1999-02-16 | U.S. Philips Corporation | Device for decoding signals of the MPEG-type |
US5912676A (en) * | 1996-06-14 | 1999-06-15 | Lsi Logic Corporation | MPEG decoder frame memory interface which is reconfigurable for different frame store architectures |
JPH10191236A (ja) * | 1996-12-25 | 1998-07-21 | Nec Corp | 画像処理装置及び画像データメモリ配置方法 |
US5883679A (en) * | 1997-02-20 | 1999-03-16 | C-Cube Microsystems, Inc. | Scanning scheme for images stored in dynamic random access memory |
US6088047A (en) * | 1997-12-30 | 2000-07-11 | Sony Corporation | Motion compensated digital video decoding with buffered picture storage memory map |
US6104416A (en) * | 1997-11-18 | 2000-08-15 | Stmicroelectronics, Inc. | Tiling in picture memory mapping to minimize memory bandwidth in compression and decompression of data sequences |
-
1998
- 1998-12-22 FR FR9816221A patent/FR2787669B1/fr not_active Expired - Fee Related
-
1999
- 1999-12-10 ES ES99403116T patent/ES2262297T3/es not_active Expired - Lifetime
- 1999-12-10 EP EP99403116A patent/EP1014716B1/fr not_active Expired - Lifetime
- 1999-12-10 DE DE69931017T patent/DE69931017T2/de not_active Expired - Lifetime
- 1999-12-17 CN CNB991263723A patent/CN1154048C/zh not_active Expired - Lifetime
- 1999-12-21 JP JP36330699A patent/JP4435918B2/ja not_active Expired - Lifetime
- 1999-12-21 US US09/469,117 patent/US6631164B1/en not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5815209A (en) * | 1993-11-09 | 1998-09-29 | Matsushita Electric Industrial Co., Ltd. | Encoding method, an encoding apparatus, a decoding method and a decoding apparatus for a moving picture |
US5675387A (en) * | 1994-08-15 | 1997-10-07 | General Instrument Corporation Of Delaware | Method and apparatus for efficient addressing of DRAM in a video decompression processor |
DE4441295A1 (de) * | 1994-11-21 | 1996-05-23 | Sican Gmbh | Verfahren und Schaltungsanordnung zur Adressierung von Komponenten blockweise organisierter digitaler Bilddaten in einem Speicher mit Page-Adressierung |
EP0849953A2 (fr) * | 1996-12-20 | 1998-06-24 | Lsi Logic Corporation | Système et méthode pour compenser le déplacement avec un format tuile oblique de mémorisation pour efficacité améliorée |
Non-Patent Citations (1)
Title |
---|
WINZKER M ET AL: "ARCHITECTURE AND MEMORY REQUIREMENTS FOR STAND-ALONE AND HIERARCHICAL MPEG2 HDTV-DECODERS WITH SYNCHRONOUS DRAMS", 1995 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS), SEATTLE, APR. 30 - MAY 3, 1995, vol. 1, 30 April 1995 (1995-04-30), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 609 - 612, XP000583293, ISBN: 0-7803-2571-0 * |
Also Published As
Publication number | Publication date |
---|---|
EP1014716A1 (fr) | 2000-06-28 |
EP1014716B1 (fr) | 2006-04-26 |
US6631164B1 (en) | 2003-10-07 |
DE69931017T2 (de) | 2006-09-14 |
CN1258044A (zh) | 2000-06-28 |
DE69931017D1 (de) | 2006-06-01 |
ES2262297T3 (es) | 2006-11-16 |
FR2787669B1 (fr) | 2001-03-02 |
CN1154048C (zh) | 2004-06-16 |
JP2000236506A (ja) | 2000-08-29 |
JP4435918B2 (ja) | 2010-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6295089B1 (en) | Unsampled hd MPEG video and half-pel motion compensation | |
EP1313325B1 (fr) | Filtres d'interpolation de pixels pour un processeur de décompression | |
EP0675652B1 (fr) | Procédé et circuit d'estimation de mouvement entre images à deux trames entrelacées, et dispositif de codage de signaux numériques comprenant un tel circuit | |
FR2552606A1 (fr) | Signal de television de haute definition pour systeme de conversion des standards film-television | |
EP2095643A2 (fr) | Procede de decodage d'un bloc d'une image video | |
FR2462076A1 (fr) | Compensateur de la chute hors limites d'un signal video et procede de formation d'un signal de remplacement dans le cas d'une telle chute hors limites | |
JPH11112885A (ja) | カメラ | |
FR2611103A1 (fr) | Detection d'inversion d'entrelacement pour un generateur de signaux video a image dans l'image | |
US6538688B1 (en) | Method and apparatus for performing an automated inverse telecine process | |
US6850569B2 (en) | Effective motion estimation for hierarchical search | |
FR2613570A1 (fr) | Correcteur d'inversion d'entrelacement pour un generateur de signaux video a image dans l'image | |
JP2009164725A (ja) | 画像記録装置および画像再生装置 | |
EP0732857A1 (fr) | Décodeur MPEG à capacité mémoire réduite | |
EP0717372A1 (fr) | Procédé de sélection de vecteurs de mouvement et dispositif de traitement d'images mettant en oeuvre ledit procédé | |
FR2787669A1 (fr) | Procede d'adressage pour la memorisation de blocs d'image | |
EP1718065A1 (fr) | Methode et appareil pour le traitement de données d'images | |
FR2703802A1 (fr) | Dispositif d'estimation de mouvement entre des images successives d'une séquence d'images animées subdivisées en blocs bidimensionnels d'éléments d'image. | |
FR2728092A1 (fr) | Procede pour le decodage d'images comprimees | |
US8325813B2 (en) | Moving image coding apparatus | |
FR2662283A1 (fr) | Procede de correction d'images issues de capteur provoquant un bruit periodique, et dispositif de mise en óoeuvre. | |
EP0674444B1 (fr) | Filtre de matrices de pixels | |
EP1714498B1 (fr) | Procede de recherche de la directon de prediction en codage video intra-image | |
WO2021214395A1 (fr) | Procédés et dispositifs de codage et de décodage d'une séquence vidéo multi-vues | |
EP0321357B1 (fr) | Procédé de sous-échantillonnage dans l'axe du mouvement d'une séquence d'images électroniques | |
EP0431699B1 (fr) | Procédé et dispositif de décodage d'images animées |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |