FR3046711A1 - Compression et decompression de donnees video - Google Patents

Compression et decompression de donnees video Download PDF

Info

Publication number
FR3046711A1
FR3046711A1 FR1650160A FR1650160A FR3046711A1 FR 3046711 A1 FR3046711 A1 FR 3046711A1 FR 1650160 A FR1650160 A FR 1650160A FR 1650160 A FR1650160 A FR 1650160A FR 3046711 A1 FR3046711 A1 FR 3046711A1
Authority
FR
France
Prior art keywords
data
designated
block
component
components
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1650160A
Other languages
English (en)
Other versions
FR3046711B1 (fr
Inventor
Marina Nicolas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STMicroelectronics Grenoble 2 SAS
Original Assignee
STMicroelectronics Grenoble 2 SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by STMicroelectronics Grenoble 2 SAS filed Critical STMicroelectronics Grenoble 2 SAS
Priority to FR1650160A priority Critical patent/FR3046711B1/fr
Priority to US15/223,221 priority patent/US10531128B2/en
Priority to CN201610797159.XA priority patent/CN106961601B/zh
Publication of FR3046711A1 publication Critical patent/FR3046711A1/fr
Application granted granted Critical
Publication of FR3046711B1 publication Critical patent/FR3046711B1/fr
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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/423Methods 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
    • H04N19/426Methods 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 using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data

Abstract

Procédé et dispositif de compression d'un bloc de données (10) comportant respectivement des jeux de composantes homologues, comprenant une sélection (20) dans lesdites données du bloc d'une composante (13) dite composante désignée, une compression (21, 22) avec perte mesurable inférieure ou égale à un seuil des composantes non-désignées (11, 12) et une compression (23) de la composante désignée (13) comprenant au moins une sélection de valeurs particulières prises parmi les valeurs des composantes désignées homologues associées aux données du bloc.

Description

Compression et décompression de données vidéo L’invention concerne la compression et la décompression de données, en particulier dans le cadre du stockage d’images de données vidéo. Généralement, dans le contexte de traitement d’image, une trame d’image à afficher sur un écran, par exemple un écran de téléviseur, est représentée par une structure matricielle d’information numérique représentant une grille de données ou pixels. A chaque pixel sont affectées plusieurs composantes couleur possédant chacune un niveau ou amplitude pour le pixel considéré, par exemple des composantes de rouge R, de vert G et de bleu B dans le domaine colorimétrique RGB ou de luminosité Y et de chrominance Cr et Cb dans le domaine colorimétrique YCbCr. Une telle structure de pixels ou « bitmap », correspond donc pixel par pixel à l’image, chaque pixel étant repéré dans le plan de l’image par son adresse.
Dans le domaine colorimétrique YCbCr, un sous-échantillonnage des composantes de chrominance est généralement réalisée, et est usuellement exprimé par la désignation YCbCr-J:a:b (par exemple YCbCr-4:2:0). La notation J:a:b désigne le nombre de composantes de chrominance dans une région conceptuelle de J colonnes et deux lignes de pixels, où a est le nombre de d’échantillons des composantes de chrominance dans la première ligne de J pixels, et b est le nombre d’échantillons des composantes de chrominance dans la seconde ligne de J pixels.
Une teinte est définie par un échantillon des composantes de chrominances.
Des exemples d’échantillonnage YCbCr sont représentés en figure 1, sur laquelle les pixels sont représentés par des carrés et une teinte, pouvant être commune à plusieurs pixels dans le cas d’un sous-échantillonnage, est représentée par un cercle ou une ellipse.
Dans les systèmes de transcodage, un signal vidéo est reçu dans un format encodé, par exemple selon les normes H264 ou HEVC, puis est décodé dans un format d’images du type RGB ou YCbCr, plus volumineux en espace mémoire.
Divers traitements sont usuellement appliqués aux images décodées avant d’être transmises à un système d’affichage. Entre chaque traitement, les images sont stockées, par exemple dans des mémoires tampons, dans le format décodé.
Afin de pouvoir transcoder des signaux vidéo de haute résolution, les mémoires des systèmes doivent être de grande capacité. Cela présente des inconvénients par exemple en matière de consommation énergétique ou de place occupée dans un circuit électronique.
Ainsi il peut être avantageux de réaliser une compression des images décodées avant stockage puis une décompression lors de la lecture dans la mémoire avant traitement. Une telle mise en œuvre de compression/décompression doit ne pas introduire de dégradation des images, et doit être peu complexe pour pouvoir être réalisée en temps réel.
Afin de limiter la dégradation, le facteur de compression ne peut pas être trop élevé, allant par exemple jusqu’à 5. De plus, la limitation de la complexité interdit par exemple 1 ’utilisation de méthodes de compensation de mouvement et d’informations des images voisines ou des régions de l’image éloignées du bloc de données traité.
Dans les compressions et décompressions habituelles réalisées indépendamment sur les trois composantes d’une donnée, il est possible que des pixels erronés apparaissent occasionnellement à cause d’incohérences dans les quantifications des différentes composantes d’un même pixel.
Les corrélations potentielles entre composantes ne sont pas prises en compte et il s’avère que la compression globale pourrait être plus efficace en tenant compte desdites corrélations potentielles.
Il est possible d’appliquer un second traitement de compression afin de supprimer les redondances entre deux composantes, mais au prix du calcul d’une première compression indépendante sur chaque composante.
Il est possible d’ajouter un prétraitement des données afin de se placer dans un domaine colorimétrique plus avantageux, offrant par exemple une distribution homogène des différences notables sur les trois composantes, mais ce type de prétraitement requiert généralement des transformations non-linéaires complexes. D’autre part, il existe des méthodes dites méthodes asymétriques, dans lesquelles une compression plus forte est réalisée sur une composante considérée comme moins importante que les autres, mais ce type de compression produit de très mauvaises performances là où la composante sacrifiée est localement pertinente.
Les méthodes de compression/décompression connues présentent soit des facteurs de compression mineurs, soit des dégradations de données, soit des complexités très élevées et s’appliquent difficilement en entrée/sortie des mémoires de systèmes de transcodages.
Ainsi, selon un mode de mise en œuvre, il est proposé des procédés de compression et de décompression d’un bloc de données, augmentant le facteur de compression moyen d’une donnée, conservant une bonne qualité d’image tout en étant de moindre complexité.
Il est notamment proposé de réaliser la compression et la décompression d’une composante, dite composante désignée, en utilisant seulement certaines valeurs de cette composante et d’effectuer la décompression de cette composante désignée en tenant compte des valeurs des autres composantes des données du bloc.
On met ainsi en œuvre un calcul de reconstruction de la composante désignée à partir des valeurs des autres composantes, extrêmement moins complexe que les calculs mis en œuvre par les prédictions habituelles utilisées pour les autres composantes.
Il est ainsi possible d’augmenter significativement le facteur de compression moyen des composantes, tout en engendrant de bons résultats en matière de similarité de structures SSIM (acronymes venant du terme anglo-saxon « Structural SIMilarity »). Le terme SSIM désigne une mesure de la qualité visuelle d'une image compressée, par rapport à l'image originale, structurellement et non pixel à pixel.
Ainsi, selon un aspect, il est proposé un procédé de compression d’un bloc de données, les données étant respectivement affectées de jeux de composantes homologues, comprenant une sélection d’une composante dite composante désignée, une compression avec perte mesurable inférieure ou égale à un seuil des composantes non-désignées et une compression de la composante désignée comprenant au moins une sélection de valeurs particulières prises parmi les valeurs des composantes désignées homologues associées aux données du bloc.
Deux composantes homologues associées à deux données sont les composantes relatives à une même grandeur physique mais pouvant avoir des valeurs différentes pour les deux données. Ainsi, à titre d’exemple, si les données sont des pixels, les composantes R par exemple, associées à ces deux pixels sont des composantes homologues.
Le procédé de compression peut notamment être adapté à la compression d’un signal d’images numériques, dans lequel chaque donnée est un pixel d’une image et chaque jeu de composante associée à un pixel comporte trois composantes représentatives de l’espace colorimétrique du pixel. L’homme du métier est capable de mesurer la perte subie lors d’une compression, par exemple en reconstruisant par décompression les valeurs desdites composantes et en comparant les valeurs d’origine des composantes avec les valeurs reconstruites en appliquant un critère de signal sur bruit.
Pour mesurer ladite perte subie on peut aussi appliquer une mesure du type SSIM. L’homme du métier saura adapter la valeur du seuil en fonction notamment de l’application envisagée et de la qualité souhaitée.
Ainsi plus le seuil est bas, voire nul, plus la compression est de haute qualité, voire sans perte (contexte conservatif) si le seuil est nul.
Le procédé selon cet aspect met notamment en œuvre une compression préférentiellement de haute qualité sur les composantes non-désignées d’une donnée et une compression de complexité très réduite sur une composante désignée d’une donnée, avec une sélection de la composante désignée qui s’adapte localement à un bloc de données.
Le procédé de compression selon cet aspect peut être appliqué dans un contexte conservatif, en réalisant une compression des composantes non-désignées adaptée à un contexte conservatif.
Dans un contexte conservatif, c’est-à-dire sans perte d’information dans l’image restituée suite à une compression/décompression, les compressions sont généralement de qualité suffisamment haute pour que l’erreur résiduelle sur les composantes soit quantifiée par une technique s’appuyant sur une distribution statistique de l’erreur.
Le procédé de compression selon cet aspect peut également être appliqué dans un contexte non-conservatif, c’est-à-dire avec pertes d’informations par rapport à l’original, mais avec une image restituée en revanche voisine. En effet la compression selon cet aspect peut n’introduire que des pertes imperceptibles ou peu gênantes d’un point de vue visuel, en fonction du seuil choisi.
Le procédé proposé selon cet aspect est applicable directement dans les domaines colorimétriques usuels du type RGB et YCbCr, évitant des transformations superflues vers un autre domaine colorimétrique.
Par exemple, deux des trois composantes (RGB ou YCbCr) suivent une compression prédictive habituelle, par exemple du type JPEG ou du type PFC par exemple décrite dans la demande de brevet FR 3 001 600(A1). Dans le domaine RGB, la troisième composante, i.e. la composante désignée, est compressée en considérant que ses variations sont proportionnelles aux variations des deux autres composantes. Dans domaine YCbCr, la composante désignée est une composante de chrominance Cb ou Cr, et la compression est réalisée en considérant que les variations de la composante désignée sont proportionnelles aux variations de l’autre composante de chrominance. La compression peut aussi être réalisée en considérant que les variations de la composante désignée sont proportionnelles aux variations des deux composantes, comme dans le domaine RGB, mais en ne considérant la composante de luminance Y seulement où une chrominance est présente (dans le cas d’un éventuel sous-échantillonnage, comme par exemple dans le mode YCbCr-4:2:0).
Selon l’hypothèse que le gradient des valeurs de la composante désignée est proportionnel au gradient des valeurs d’une ou des composante(s) non-désignée(s), et en ayant connaissance des valeurs des composantes non-désignées sur le bloc de données, il suffit par exemple de connaître les maximum et minimum de la composante désignée pour pouvoir effectuer une reconstruction fiable de la composante désignée.
Cette hypothèse est généralement vérifiée dans le cas d’un bloc de suffisamment petite taille d’une image naturelle.
Par exemple, dans une image 4K (c’est-à-dire par exemple d’une définition de 4 096 x 2 160 pixels) les pixels d’un bloc de 4*4 pixels ont typiquement des teintes similaires.
Ainsi, selon un mode de mise en œuvre, lesdites valeurs particulières sont les extrema des valeurs des composantes homologues désignées associées aux données du bloc.
Seulement deux valeurs sont donc transmises pour reconstruire toutes les composantes désignées du bloc de données, ces valeurs pouvant être légèrement quantifiées pour assurer un facteur de compression en accord avec des contraintes d’architecture.
La compression de la composante désignée peut comprendre une identification des adresses des données du bloc comportant lesdits extrema de valeurs. L’identification desdites adresses permet une performance plus élevée, au prix d’une occupation plus importante de la mémoire par la composante désignée compressée.
La compression de la composante désignée peut comprendre une élaboration d’une indication de dépendance représentative d’une corrélation entre la composante désignée et au moins une composante non-désignée.
La sélection de la composante désignée est basée sur une estimation du risque minimum de générer une erreur sur cette composante lors de ladite compression/décompression.
Ainsi, selon un mode de mise en œuvre, la composante désignée est la composante dont les valeurs sur l’ensemble des données du bloc présentent la plage de variation la plus faible.
En effet, la composante de plus faible entropie, c’est-à-dire la composante dont la plage de variation est la plus faible, présente généralement le moins de risque de générer des erreurs sur la teinte des pixels du bloc. Généralement il n’y a pas plus de deux teintes significativement différentes dans un tel bloc, et seulement dans le cas où le bloc comprend le contour d’un objet. De plus, dans une large majorité des cas où deux teintes sont présentes, il s’avère que l’une des composantes varie peu quoi qu’il en soit.
En outre, dans le domaine RGB, il est connu de manière générale que c’est la composante G qui supporte le plus d’information sur la luminance du pixel, et par conséquence la composante désignée est sélectionnée parmi les composantes R ou B. De même, dans le domaine YCbCr, la composante désignée est sélectionnée parmi les composantes de chrominance Cb ou Cr. D’autre part, il est courant que les méthodes de compressions usuelles mettent en œuvre une sélection basée sur des paramètres pouvant être le niveau d’entropie. Ainsi la sélection de la composante désignée n’introduit pas de traitement supplémentaire par rapport à la compression mise en œuvre sur les composantes non-désignées.
Selon un mode de mise en œuvre, le procédé comprend une quantification de l’erreur résiduelle de ladite compression de la composante désignée.
Une quantification de l’erreur résiduelle, par exemple au moyen de techniques usuelles s’appuyant sur une distribution statistique de l’erreur, tel qu’un code exponentiel-Golomb, permet notamment de mettre en œuvre le procédé selon l’invention dans un contexte conservatif.
Selon un autre aspect, il est proposé un procédé de décompression d’un bloc de données compressé selon le procédé de compression tel que défini ci-avant, le procédé de décompression comprenant, pour chaque donnée du bloc, une décompression des composantes non-désignées, une reconstruction de la valeur la composante désignée tenant compte desdites valeurs particulières et des valeurs des composantes non-désignées décompressées.
Ce procédé est notamment adapté à la décompression d’un signal d’images numériques dans lequel chaque donnée est un pixel d’une image et chaque jeu de composante associée à un pixel comporte trois composantes représentatives de l’espace colorimétrique du pixel.
Selon un mode de mise en œuvre, la reconstruction de la valeur de la composante désignée comprend une limitation par lesdites valeurs particulières.
Les valeurs des composantes désignées décompressées sont donc bornées par lesdites valeurs particulières. Ce mécanisme permet notamment d’avoir une continuité de teinte aux bordures de deux blocs voisins lorsque plus d’une teinte est présente sur un bloc.
La décompression de la composante désignée prend avantageusement en considération une possible corrélation entre ladite composante désignée et au moins une composante non-désignée.
Plus précisément, la décompression est basée sur l’hypothèse que la composante désignée suit l’allure d’une ou plusieurs composante(s) non-désignées, dans l’idée que la teinte est sensiblement constante sur le bloc. Cette hypothèse est généralement vérifiée dans le cas d’un bloc de suffisamment petite taille d’une image naturelle.
Ainsi, selon un mode de mise en œuvre, pour chaque donnée du bloc, ladite reconstruction de la valeur de la composante désignée comprend une combinaison linéaire entre les valeurs des composantes non-désignées décompressées de ladite donnée, lesdites valeurs particulières de la composante désignée des données du bloc et les valeurs des composantes non-désignées décompressées de données choisies.
En d’autres termes, selon ce mode de mise en œuvre, le gradient des valeurs de la composante désignée des données décompressées du bloc est proportionnel au gradient des valeurs des composantes non-désignées des données décompressées du bloc.
En outre, une combinaison linéaire entre des valeurs connues est extrêmement simple à mettre en œuvre, ce qui permet de minimiser la complexité du procédé de décompression.
Dans le cas où les adresses des données comportant les extrema des composantes désignées sont identifiées lors de la compression des données du bloc, les données choisies peuvent être les données du bloc comportant lesdites valeurs particulières de la composante désignée.
Cependant, les données choisies peuvent être les données du bloc comportant les extrema des valeurs de chaque composante non-désignées décompressées des données du bloc.
Selon un mode de mise en œuvre, la combinaison linéaire est effectuée selon une combinaison définie par l’indication de dépendance.
Ce mode de mise en œuvre correspond avantageusement à une application de l’invention à une décompression d’image codée dans le domaine RGB.
Selon un mode de mise en œuvre, la reconstruction de la composante désignée comprend une compensation d’erreur utilisant ladite quantification d’erreur résiduelle.
Une quantification de l’erreur résiduelle permet notamment de mettre en œuvre le procédé selon l’invention dans un contexte conservatif.
Selon un autre aspect, il est proposé un dispositif électronique adapté pour compresser un bloc de données, les données étant respectivement affectées de jeux de composantes homologues, comprenant un moyen de sélection configuré pour sélectionner une composante dite composante désignée, un moyen de compression configuré pour compresser avec perte mesurable inférieure ou égale à un seuil les composantes non-désignées et pour compresser la composante désignée au moins en sélectionnant des valeurs particulières prises parmi les valeurs des composantes désignées homologues associées aux données du bloc.
Le dispositif est notamment adapté pour compresser un signal d’images numériques, dans lequel chaque donnée est un pixel d’une image et chaque jeu de composante associée à un pixel comporte trois composantes représentatives de l’espace colorimétrique du pixel.
Selon un mode de réalisation, le moyen de de compression est configuré pour sélectionner les extrema des valeurs des composantes homologues désignées associées aux données du bloc en tant que valeurs particulières.
Le moyen de compression peut être configuré pour identifier les adresses des données du bloc comportant lesdits extrema de valeurs.
Le moyen de compression peut être configuré pour élaborer une indication de dépendance représentative d’une corrélation entre la composante désignée et au moins une composante non-désignée.
Selon un mode de réalisation, le moyen de sélection est configuré pour sélectionner la composante dont les valeurs sur l’ensemble des données du bloc présentent la plage de variation la plus faible en tant que composante désignée.
Le moyen de compression peut être configuré pour établir une quantification d’erreur résiduelle de ladite compression de la composante désignée.
Selon un autre aspect de l’invention, il est proposé un dispositif électronique de décompression adapté pour décompresser un bloc de données compressé selon le procédé de compression précédemment décrit et/ou par un dispositif électronique de compression précédemment décrit, comprenant un moyen de décompression configuré pour décompresser les composantes non-désignées pour chaque donnée du bloc, et un moyen de reconstruction configuré pour reconstruire la valeur de la composante désignée pour chaque donnée du bloc en tenant compte desdites valeurs particulières et des valeurs des composantes non-désignées décompressées.
Le dispositif selon cet aspect est notamment adapté à la décompression d’un signal d’images numériques dans lequel chaque donnée est un pixel d’une image et chaque jeu de composante associée à un pixel comporte trois composantes représentatives de l’espace colorimétrique du pixel.
Selon un mode de réalisation, le moyen de reconstruction est configuré pour limiter la valeur de la composante désignée par lesdites valeurs particulières.
Le moyen de reconstruction peut être configuré pour réaliser, pour chaque donnée du bloc, une combinaison linéaire entre les valeurs des composantes non-désignées décompressées de ladite donnée, lesdites valeurs particulières de la composante désignée des données du bloc et les valeurs des composantes non-désignées décompressées de données choisies.
Selon un mode de réalisation, le moyen de reconstruction est configuré pour réaliser ladite combinaison linéaire avec, en tant que données choisies, les données du bloc comportant lesdites valeurs particulières de la composante désignée.
Selon un autre mode de réalisation, le moyen de reconstruction est configuré pour réaliser ladite combinaison linéaire avec, en tant que données choisies, les données du bloc comportant les extrema de chaque composante non-désignées sur le bloc de données.
Le moyen de reconstruction peut être configuré pour effectuer ladite combinaison linéaire selon une combinaison définie par ladite indication de dépendance.
Selon un mode de réalisation, le moyen de reconstruction est configuré pour compenser une erreur en utilisant ladite quantification d’erreur résiduelle.
Il est également proposé un appareil de traitement de données comprenant un dispositif électronique de compression et un dispositif électroniques de décompression tels que définis ci-avant. L’appareil de traitement de données selon cet aspect peut être par exemple un système de transcodage tel qu’un décodeur TV.
Selon un autre aspect, il est proposé un produit programme d’ordinateur chargeable directement dans une mémoire d’un système informatique, comprenant des portions de code de logiciel pour l’exécution du procédé de compression décrit précédemment ou du procédé de décompression décrit précédemment, lorsque ledit programme est exécuté sur ledit système informatique.
En outre, selon un autre aspect, il est proposé un support lisible par un système informatique, ayant des instructions exécutables par ordinateur adaptées pour provoquer l’exécution par le système informatique du procédé de compression décrit précédemment, ou du procédé de décompression décrit précédemment.
Ces différents aspects peuvent ainsi apporter des améliorations significatives dans de nombreux dispositifs et méthodes de compression, avec un facteur de compression moyen nettement supérieur aux facteurs des méthodes actuellement connues. D’autres avantages et caractéristiques de l’invention apparaîtront à l’examen de la description détaillée de modes de mise en œuvre, nullement limitatifs, et des dessins annexés sur lesquels : - la figure 1, déjà décrite, représente des exemples d’échantillonnages de chrominance du domaine YCbCr ; - les figures 2 à 6 représentent schématiquement des modes de mise en œuvre et de réalisation des différents aspects de l’invention ; - la figure 7 représente un exemple de décodeur numérique comprenant un mode de réalisation de l’invention.
La figure 2 représente schématiquement des étapes de compression d’un mode de mise en œuvre de l’invention.
Une phase de sélection 20 sélectionne une composante désignée 13 parmi les composantes non-compressées (ou d’origine) 10 des pixels d’un bloc d’une image, selon un critère d’entropie minimale.
Le bloc de pixels est relativement petit par rapport à l’image globale, afin de s’assurer que la variété de teintes sur ce bloc est faible.
Les autres composantes 11, 12 sont compressées en composantes non-désignées compressées 31, 32 et la composante désignée est compressée en composante désignée compressées 33 par le biais de calculs respectifs 21, 22, 23.
Les pixels peuvent être codés dans le domaine colorimétrique RGB ou YCbCr.
Dans le domaine RGB, le choix de la composante désignée 13 s’effectue avantageusement entre les deux composantes R et B, car la composante G est statistiquement la plus caractérisante de luminance d’un pixel.
De même, dans le domaine YCbCr, le choix est fait avantageusement sur les deux composantes de chrominance.
La composante désignée est sélectionnée localement sur le bloc, sur la base d’une estimation du risque de générer une erreur sur cette composante.
Ainsi la composante présentant la gamme de variation la plus faible parmi les trois composantes des données du bloc est sélectionnée en tant que composante désignée 13.
Les compressions 21, 22 des composantes non-désignées 11, 12 sont préférablement réalisées selon une méthode de compression avec perte mesurable inférieure ou égale à un seuil. A titre indicatif la perte pourra être mesurée par une mesure de type SSIM et on choisira par exemple un seuil de 2%, correspondant à une SSIM de 98%, correspondant sur la majorité des images à une très bonne fidélité générale avec l’apparition d’artefacts très localisés. Ce seuil correspond à un rapport signal sur bruit d’environ 42dB sur une moyenne d’images.
Une telle compression peut être obtenue par exemple selon une méthode PFC (acronyme tiré du terme anglo-saxon « parametric functional compression » soit « compression paramétrique fonctionnelle »), réutilisant avantageusement une partie des calculs déjà réalisés lors de la sélection 20. Une telle méthode est bien connue de l’homme du métier qui pourra par exemple se référer à la demande de brevet français publiée sous le numéro 3 001 600.
Les composantes non-désignées décompressées 31, 32 issues d’une compression puis d’une décompression du type PFC sont visuellement fidèles aux composantes non-désignées non-compressées 11, 12. L’identification de la composante désignée peut être codée sur un seul bit, mais généralement, lors de la compression/décompression des composantes non-désignées, les composantes sont identifiées notamment grâce à des paramètres de reconstruction prédictifs, ainsi il n’est pas nécessaire de transmettre un bit d’identification de la composante désignée.
De même, les valeurs des composantes non-désignées sont récupérées lors de la décompression des composantes non-désignées compressées 3 1, 32.
Ainsi, les valeurs des extrema de la composante désignée seules sont suffisantes pour reconstruire toutes les composantes désignées des données du bloc.
Cependant, lors d’une mise en œuvre appliquée à un espace colorimétrique RGB, il est avantageux de transmettre une information de dépendance sur deux bits afin de pouvoir reconstruire la composante désignée.
En effet, sur un bloc de données, le sens de variation de la composante désignée peut être du même sens ou de sens inverse que le sens de variation des composantes non-désignées, ou encore du même sens que l’un et du sens inverse de l’autre. Cela représente quatre cas possibles, traduisibles sur deux bits, par exemple au moyen d’une table de données.
En pratique, par exemple dans le cas où la composante désignée est B, l’indication de dépendance indique si R(XBmin> yBmin) — R(xBmax, yBmax) 6t
Si G(XBmin> yBmin) — G(XBmax, yBmax)> avec R(x,y) et G(x,y) les valeurs respectives des composantes non-désignées de la donnée dont l’adresse est (x,y) et (xBmin, yBmin) et (xBmax, yBmax) respectivement l’adresse de la donnée comportant la valeur minimale Bmin de la composante désignée B, et l’adresse de la donnée comportant la valeur maximale Bmax de la composante désignée B.
Dans un mode de mise en œuvre de performance optimale mais nécessitant un espace de stockage supplémentaire, les adresses (xBmin, yBmin) et (xBmax, yBmax) des données comportant les extrema sur le bloc Bmin, Bmax de la composante désignée B peuvent être utilisées pour reconstruire la composante désignée. L’information de dépendance n’est pas nécessaire dans ce mode de mise en œuvre.
En outre, et notamment dans un contexte conservatif, une quantification de l’erreur résiduelle de la compression de la composante désignée peut être souhaitable, auquel cas ladite erreur résiduelle est compressée.
La compression de l’erreur est réalisée en général par une méthode de quantification s’appuyant sur une distribution statistique de l’erreur, les erreurs les plus courantes étant codées par des chaînes de caractères courtes et les erreurs les plus rares par des chaînes de caractères plus longues. Par exemple l’utilisation d’un code exponentiel-Golomb est courante dans la compression d’erreurs résiduelle de ce type.
La figure 3 représente schématiquement des étapes de décompression de modes de mise en œuvre de l’invention.
Les composantes non-désignées compressées 31, 32 sont décompressées selon une méthode de décompression 41, 42 associée par exemple à la méthode de compression PFC. Les valeurs des composantes non-désignées décompressées 51, 52 sont fidèles visuellement aux valeurs initiales des composante non-désignées 11, 12 avant compression.
Pour chaque donnée du bloc, la composante désignée compressée 33 est décompressée selon une mise en œuvre 43 comprenant une combinaison linéaires des valeurs des composantes non-désignées décompressées 51, 52 de ladite donnée, des valeurs des extrema de la composante désignée 33 et des valeurs des composantes non-désignées de données choisies.
Les données choisies sont des données dont les valeurs des composantes non-désignées sont utilisées pour la reconstruction de la composante désignée de chaque donnée du bloc.
Les données choisies sont soit les données correspondant aux valeurs minimales et maximales des composantes non-désignées, soit, le cas échéant, les données dont l’adresse a été transmise, c’est-à-dire les données correspondant aux valeurs minimale et maximale de la composante désignée.
Dans le cas d’une mise en œuvre sur des données codées sur le domaine colorimétrique RGB, considérer qu’une unique teinte est présente sur le bloc est équivalent à considérer que la composante désignée peut être exprimée comme une combinaison linéaire des composantes non-désignées de la manière suivante :
Brec(x,y) = a*Rdec(x,y) + b*Gdec(x,y)
En considérant ici que B est la composante désignée 13, Brec est la reconstruction 53 de la composante désignée B, Rdec et Gdec sont les composantes non-désignées décompressées 51, 52. (x,y) représente l’adresse du pixel qui comporte la composante en question. a et b sont des coefficients exprimées notamment en fonction des valeurs des composantes non-désignées des données choisies.
Le contrôle du sens de variation de la composante désignée avec le sens de variation des composantes non-désignées est réalisé lors des étapes de compression, et l’indication de dépendance permet d’associer les extrema de la composante désignée aux valeurs des composantes non-désignées des données choisies.
Ainsi, si R(xBmin, yemin) < R(xBmax, yBmax), alors la valeur minimale Bmin de la composante désignée B est associée à la valeur minimale de Rdec, et la valeur maximale Bmax de la composante désignée B est associée à la valeur maximale de Rdec.
Sinon, Bmin est associée à la valeur maximale de Rdec, et Bmax est associée à la valeur minimale de Rdec.
Si G(xBmin, YBmin) < G(xBmax, YBmax), alors Bmin est associée à la valeur minimale de Gdec, et Bmax est associée à la valeur maximale de Gdec.
Sinon, Bmin est associée à la valeur maximale de Gdec, et Bmax est associée à la valeur minimale de Gdec.
Ainsi, lors de la décompression 43 et afin que les composantes désignées reconstruites soient bornées et suivent la tendance des composantes non-désignées, les coefficients a et b peuvent être calculés de la manière suivante : a = (l/p)*(Bmin*Gdec2-Bmax*Gdecl) si p Φ 0, sinon a = 1/2 b = (l/p)*(Bmax*Rdecl-Bmin*Rdec2) si p Φ 0, sinon b = 1/2 avec p = Rdecl*Gdec2 - Rdec2*Gdecl,
Rdecl la valeur de la première composante non-désignée à être associée à Bmin,
Rdec2 la valeur de la première composante non-désignée à être associée à Bmax,
Gdecl la valeur de la seconde composante non-désignée à être associée à Bmin,
Gdec2 la valeur de la seconde composante non-désignée à être associée à Bmax,
Dans le cas où les adresses des extrema de la composante désignée B sont transmises, alors il est directement associé aux extrema Bmin, Bmax de la composante désignée B :
Rdecl = Rdec (XBmin, YBmin),
Rdec2 — RdeC (XBmax, YBmax),
Gdecl — GdeC (XBmin, YBmin),
Gdec2 — GdeC (XBmax, YBmax)·
Dans les équations précédentes, Rdecl, Rdec2, Gdecl, Gdec2 sont les différentes valeurs des composantes non-désignées décompressées de données choisies.
Les valeurs reconstruites des composantes désignées des données décompressées du bloc sont ensuite bornées par les valeurs extrêmes de la composante désignée non compressée.
Ainsi, même si l’approximation de proportionnalité entre le gradient des composantes n’est pas idéale, l’erreur est limitée à un niveau acceptable par la limitation.
Dans le cas d’une mise en œuvre sur des données du domaine colorimétrique YCbCr, le même principe est appliqué.
Il est possible et avantageux, dans le domaines colorimétrique YCbCr, de reconstruire les valeurs de la composante désignée U(x,y) en se basant uniquement sur l’autre composante de chroma décompressée Vdec(x,y), la combinaison linéaire de la reconstruction pouvant s’écrire ainsi :
Urec(x,y) = c + d*Vdec(x,y) Où Urec est la reconstruction de la composante désignée et Vdec l’autre composante de chroma décompressée.
Le contrôle de la proportionnalité de la composante désignée est réalisé directement en fonction des valeurs extrêmes de Urec et Vdec lors des étapes de décompression, en prenant en compte le fait que, sur un repère Cb/Cr tel que représenté sur la figure 4 et référencé par le chiffre 1, les pixels de teintes similaires sont sensiblement alignés avec l’origine dans le repère 1.
Ainsi, en fonction de la position des points représentant les valeurs extrêmes des composantes de chroma dans les quadrants Ql, Q2 du repère 1, il est possible de savoir si U varie dans le même sens que V (quadrants Ql) ou dans le sens inverse (quadrant Q2). La valeur minimale de Urec est alors associée à la valeur minimale ou maximale de Vdec, la valeur maximale de Urec est associée à la valeur maximale ou minimale de Vdec.
Le terme de décalage « c » permet de compenser de légères dérives de teinte dans le bloc.
Ainsi, lors de la décompression 43, les coefficients c et d peuvent être calculés de la manière suivante : c = (l/q)*(Umin* Vdec2 - Umax*Vdecl) si q Φ 0, sinon c= 1/2, d = (l/q)*(Umax - Umin) si q Φ 0, sinon d= 1/2, avec q = Vdec2 - Vdecl,
Umin la valeur minimale de la composante désignée sur le bloc, Umax la valeur maximale de la composante désignée sur le bloc,
Vdecl la valeur de la composante non-désignée de chroma à être associée à Umin,
Vdec2 la valeur de la composante non-désignée de chroma à être associée à Umax.
Dans le cas où les adresses des données correspondant aux extrema de U sont transmises,
Vdecl = Vdec(xumin, yumin),
Vdec2 — Vdec(xumax, yUmax)·
Dans les équations précédentes, Vdecl et Vdec2 sont les différentes valeurs des composantes non-désignées décompressées de données choisies.
Comme vu précédemment, toutes les valeurs reconstruites des composantes désignées décompressées sont bornées par les valeurs extrêmes de la composante désignée non compressée.
En outre, si l’erreur résiduelle a été quantifiée lors de la compression de la composante désignée, il est possible de compenser les potentielles erreurs de reconstruction grâce à l’information contenue dans ladite quantification. A titre d’exemple, la mise en œuvre d’une méthode PFC sur un bloc de 4*4 pixels dont chaque composante est codée sur 10 bits permet d’obtenir un facteur de compression de 1,7 (les composantes compressées sont codées sur 92 bits, 160/92=1,7).
Les similarités de structures (SSIM) entre les composantes compressées et les composantes décompressées sont supérieures ou égales à 99% dans une méthode PFC.
Selon une mise en œuvre précédemment décrite, avec les deux composantes non-désignées compressées codées sur 92 bits, et la composante désignée compressée codée sur 20bits (2*10 bits pour les extrema de la composante désignée), un facteur de compression supérieur à 2 est obtenu, avec une SSIM supérieure ou égale à 98% sur la composante désignée. A titre de comparaison, les compressions connues atteignant un facteur de compression égal à 2 présentent une perte de SSIM de 5% sur les trois composantes pour une méthode indépendante par composante, et une perte de SSIM de 10% à 20% sur la composante désignée pour une méthode asymétrique.
La figure 5 représente schématiquement un dispositif de compression CMP comprenant une entrée El recevant un bloc de données comportant un jeu de composantes 10, par exemples trois composantes R, G, B.
Le dispositif de compression CMP comprend un moyen de sélection MSEL configuré pour sélectionner localement sur le bloc de données une composante désignée 13.
Le moyen de sélection MSEL est configuré pour sélectionner la composante de plus faible entropie comme composante désignée 13.
La composante désignée 13 et les deux autres composantes, dites composantes non-désignées 11, 12, sont transmises à un moyen de compression MCMP configuré pour réaliser sur les composantes non-désignées 11, 12 une compression avec perte mesurable inférieure à un seuil.
Une telle compression peut être réalisée par exemple selon une méthode de PFC.
Le moyen de compression MCMP est également configuré pour isoler les extrema de la composante désignée, par exemple au moyen de comparateurs numériques.
Le moyen de compression MCMP est configuré pour inclure les valeurs desdits extrema et, si l’espace mémoire est disponible, les adresses des données les contenant dans les informations contenues par la composante désignée compressée 33.
Le moyen de compression MCMP est configuré pour comparer les variations des composantes non-désignées 11, 12 avec la composante désignée 13, identifier une corrélation entre lesdites variations et générer sur deux bits une indication de dépendance, codée par exemple au moyen d’une table de données.
Par exemple, dans le cas où la composante désignée est B et avec les même notation que précédemment détaillées, les deux bits de l’indication de dépendance peuvent indiquer le résultat des tests logiques respectifs « si R(xBmin, yBmin) < R(XBmax, yBmax) » et « si G(xBmin, yBmin) ^ G(xBmax> yBmax) »·
Le moyen de compression MCMP est configuré pour inclure l’indication de dépendance dans les informations contenues par la composante désignée compressée 33.
Le moyen de compression peut également être configuré pour réaliser une quantification de l’erreur résiduelle et l’inclure dans les informations contenues par la composante désignée compressée 33.
Les composantes non-désignées compressées 31, 32 et la composante désignée compressée 33 sont ensuite multiplexées 35 au moyen d’un multiplexeur MUX1, pour par exemple être transmises via un bus de données.
La sortie SI du multiplexeur MUX1 forme la sortie du dispositif de compression CMP.
En outre, et notamment dans un contexte conservatif, le moyen de compression MCMP peut être configuré pour effectuer une quantification de l’erreur résiduelle, en appliquant par exemple une méthode s’appuyant sur une distribution statistique de l’erreur, par exemple au moyen d’un code exponentiel-Golomb.
La figure 6 représente schématiquement un dispositif de décompression DCMP comprenant une entrée E2 recevant un bloc de données compressées comportant un jeu de composantes 35, par exemples trois composantes compressées issues de la mise en œuvre d’un dispositif du type de celui représenté par la figure 5.
Le dispositif de décompression DCMP comprend un démultiplexeur DMUX2 séparant les données compressées 35 en deux composantes non-désignées compressées 31, 32 et une référence désigné compressée 33.
Les composantes non-désignées compressées 31, 32 sont transmises à un moyen de décompression MDEC configuré pour décompressées les composantes non-désignées compressées 31, 32 en composantes non-désignées décompressées 51, 52.
Les informations contenues dans la composante désignée compressée 33 sont les valeurs des extrema de la composante désignée des données non compressées, et également par exemple les adresses des données comportant lesdits extrema ou une indication de dépendance codée sur 2 bits. Les informations contenues dans la composante désignée compressée peuvent comprendre également une quantification de l’erreur résiduelle.
Le moyen de reconstruction MREC est configuré pour reconstruire les composantes désignées de chaque donnée du bloc, en leur assignant une valeur bornée par lesdits extrema, à partir des valeurs des composantes non-désignées décompressées 51, 52 et des valeurs desdits extrema contenus dans les informations 33 de la données compressées.
Le moyen de reconstruction MREC peut également être configuré pour compenser une erreur de reconstruction grâce à une quantification de l’erreur résiduelle.
Les composantes non-désignées décompressées 51, 52 et la composante désignée compressée 53 sont ensuite multiplexées au moyen d’un multiplexeur MUX2, pour par exemple être transmises via un bus de données.
Les différents moyens du dispositif de compression CMP et du dispositif de décompression DCMP peuvent être réalisés par exemple de façon logicielle au sein de microprocesseur(s).
La figure 7 représente schématiquement un appareil de traitement de données BOX, par exemple un transcodeur numérique tel qu’un décodeur TV, comprenant une entrée vidéo IN, un décodeur DEC, des moyens de traitement MTR, un moyen de mémoire MM, un étage de sortie ES, une sortie vidéo OUT, un dispositif de compression CMP selon l’invention et un dispositif de décompression DCMP selon l’invention.
Le signal entrant sur l’entrée IN est un signal vidéo encodé par exemple selon une norme H264 ou HEVC, transmis par exemple par une antenne satellite ou terrestre, un câble coaxial, ou encore une connexion Ethernet.
Le décodeur DEC est configuré pour décoder le signal vidéo entrant vers un format d’image de type « bitmap » par exemple dans les formats RGB ou YCbCr.
Le signal vidéo décodé est envoyé en entrée du dispositif de compression CMP, qui met en œuvre une compression selon l’invention des images décodées.
Les données compressées sont stockées dans le moyen de mémoire MM.
Les moyens de traitement MTR agissent sur des images décodées dans des formats du type RGB ou YCbCr. Les moyens de traitement d’images MTR peuvent par exemple mettre en œuvre des déchiffrages de données protégées, ou des améliorations de rendu graphique.
Les données à traiter par les moyens de traitement MTR sont d’abord décompressées par le dispositif de décompression DCMP selon une mise en œuvre de l’invention, à partir des données compressées stockées dans le moyen de mémoire MM.
Les données traitées par les moyens de traitement MTR, en format du type RGB ou YCbCr, sont ensuite compressées par le dispositif de compression CMP puis stockées dans le moyen de mémoire MM.
Les données stockées dans le moyen de mémoire MM sont décompressées par le dispositif de décompression DCMP avant d’être transmises par l’étage de sortie ES vers un système d’affichage connecté à la sortie OUT de l’appareil de traitement de donnée BOX. L’étage de sortie est configuré pour encoder le signal au format du type RGB ou YCbCr dans un format du type HDMI ou DVI.

Claims (31)

  1. REVENDICATIONS
    1. Procédé de compression d’un bloc de données (10), les données étant respectivement affectées de jeux de composantes homologues, comprenant une sélection (20) d’une composante (13) dite composante désignée, une compression avec perte mesurable inférieure ou égale à un seuil (21, 22) des composantes non-désignées (11, 12) et une compression (23) de la composante désignée (13) comprenant au moins une sélection de valeurs particulières prises parmi les valeurs des composantes désignées homologues associées aux données du bloc.
  2. 2. Procédé selon la revendication 1, dans lequel chaque donnée est un pixel d’une image et chaque jeu de composante associée à un pixel comporte trois composantes (11, 12, 13) représentatives de l’espace colorimétrique du pixel.
  3. 3. Procédé selon l’une quelconque des revendications 1 ou 2, dans lequel lesdites valeurs particulières sont les extrema des valeurs des composantes homologues désignées (13) associées aux données du bloc (10).
  4. 4. Procédé selon la revendication 3, dans lequel ladite compression de la composante désignée (13) comprend une identification des adresses des données du bloc comportant lesdits extrema de valeurs.
  5. 5. Procédé selon l’une quelconque des revendications précédentes, dans lequel ladite compression de la composante désignée (13) comprend une élaboration d’une indication de dépendance représentative d’une corrélation entre la composante désignée (13) et au moins une composante non-désignée (11, 12).
  6. 6. Procédé selon l’une quelconque des revendications précédentes, dans lequel la composante désignée (13) est la composante dont les valeurs sur l’ensemble des données du bloc (10) présentent la plage de variation la plus faible.
  7. 7. Procédé selon l’une quelconque des revendications précédentes, comprenant une quantification de l’erreur résiduelle de ladite compression de la composante désignée (13).
  8. 8. Procédé de décompression d’un bloc de données compressé selon le procédé selon l’une des revendications 1 à 7, comprenant, pour chaque donnée du bloc, une décompression (41, 42) des composantes non-désignées (31, 32), une reconstruction (43) de la valeur de la composante désignée (33) tenant compte desdites valeurs particulières et des valeurs des composantes non-désignées décompressées (51, 52).
  9. 9. Procédé selon la revendication 8, dans lequel la reconstruction (43) de la valeur de la composante désignée (53) comprend une limitation par lesdites valeurs particulières.
  10. 10. Procédé selon l’une quelconque des revendications 8 ou 9, dans lequel, pour chaque donnée du bloc, ladite reconstruction (43) de la valeur de la composante désignée comprend une combinaison linéaire entre les valeurs des composantes non-désignées décompressées (51, 52) de ladite donnée, lesdites valeurs particulières de la composante désignée (33) des données du bloc et les valeurs des composantes non-désignées décompressées (51, 52) de données choisies.
  11. 11. Procédé selon la revendication 10, le bloc de données ayant été compressé par le procédé selon l’une quelconque des revendications 1 à 7 prise en combinaison avec la revendication 4, dans lequel lesdites données choisies sont les données du bloc comportant lesdites valeurs particulières de la composante désignée (33).
  12. 12. Procédé selon la revendication 10, dans lequel lesdites données choisies sont les données du bloc comportant les extrema des valeurs de chaque composante non-désignées décompressées (51, 52) des données du bloc.
  13. 13. Procédé selon la revendication 12, le bloc de données ayant été compressé par le procédé selon l’une quelconque des revendications 1 à 7 prise en combinaison avec la revendication 5, dans lequel ladite combinaison linéaire est effectuée selon une combinaison définie par ladite indication de dépendance.
  14. 14. Procédé selon l’une quelconque des revendications 8 à 13, le bloc de données ayant été compressé par le procédé selon la revendication 7, dans lequel ladite reconstruction de la composante désignée (13) comprend une compensation d’erreur utilisant ladite quantification d’erreur résiduelle.
  15. 15. Dispositif électronique de compression (CMP) adapté pour compresser un bloc de données (10), les données étant respectivement affectées de jeux de composantes homologues (11, 12, 13), comprenant un moyen de sélection (MSEL) configuré pour sélectionner une composante (13) dite composante désignée, un moyen de compression (MCMP) configuré pour compresser avec perte mesurable inférieure ou égale à un seuil les composantes non-désignées (11, 12) et pour compresser la composante désignée (13) au moins en sélectionnant des valeurs particulières prises parmi les valeurs des composantes désignées homologues associées aux données du bloc.
  16. 16. Dispositif selon la revendication 15, dans lequel chaque donnée est un pixel d’une image et chaque jeu de composante associée à un pixel comporte trois composantes (11, 12, 13) représentatives de l’espace colorimétrique du pixel.
  17. 17. Dispositif selon l’une quelconque des revendications 15 ou 16, dans lequel le moyen de compression (MCMP) est configuré pour sélectionner les extrema des valeurs des composantes homologues désignées (13) associées aux données du bloc en tant que valeurs particulières.
  18. 18. Dispositif selon la revendication 17, dans lequel le moyen de compression (MCMP) est configuré pour identifier les adresses des données du bloc comportant lesdits extrema de valeurs.
  19. 19. Dispositif selon l’une quelconque des revendications 15 à 18, dans lequel le moyen de compression (MCMP) est configuré pour élaborer une indication de dépendance représentative d’une corrélation entre la composante désignée (13) et au moins une composante non-désignée (11, 12).
  20. 20. Dispositif selon l’une quelconque des revendications 15 à 19, dans lequel le moyen de sélection (MSEL) est configuré pour désigner la composante dont les valeurs sur l’ensemble des données du bloc présentent la plage de variation la plus faible en tant que composante désignée (13).
  21. 21. Dispositif selon l’une quelconque des revendications 15 à 20, dans lequel le moyen de compression (MCMP) est configuré pour établir une quantification d’erreur résiduelle de ladite compression de la composante désignée (13).
  22. 22. Dispositif électronique de décompression (DCMP) adapté pour décompresser un bloc de données (35) compressé par un dispositif selon l’une des revendications 15 à 21, comprenant un moyen de décompression (MDEC) configuré pour décompresser les composantes non-désignées (31, 32) pour chaque donnée du bloc, et un moyen de reconstruction (MREC) configuré pour reconstruire la valeur de la composante désignée (33) pour chaque donnée du bloc en tenant compte desdites valeurs particulières et des valeurs des composantes non-désignées décompressées (51, 52).
  23. 23. Dispositif selon la revendication 22, dans lequel le moyen de reconstruction (MREC) est configuré pour limiter la valeur de la composante désignée (53) par lesdites valeurs particulières.
  24. 24. Dispositif selon l’une quelconque des revendications 22 ou 23, dans lequel le moyen de reconstruction (MREC) est configuré pour réaliser, pour chaque donnée du bloc, une combinaison linéaire entre les valeurs des composantes non-désignées décompressées (51, 52) de ladite donnée, lesdites valeurs particulières de la composante désignée (33) des données du bloc et les valeurs des composantes non-désignées décompressées (51, 52) de données choisies.
  25. 25. Dispositif selon la revendication 24, le bloc de données (35) ayant été compressé par le dispositif selon l’une des revendications 15 à 21 prise en combinaison avec la revendication 18, dans lequel le moyen de reconstruction (MREC) est configuré pour réaliser ladite combinaison linéaire avec, en tant que données choisies, les données du bloc comportant lesdites valeurs particulières de la composante désignée (33).
  26. 26. Dispositif selon la revendication 24, dans lequel le moyen de reconstruction (MREC) est configuré pour réaliser ladite combinaison linéaire avec, en tant que données choisies, les données du bloc comportant les extrema de chaque composante non-désignées (51, 52) sur le bloc de données.
  27. 27. Dispositif selon la revendication 26, le bloc de données (35) ayant été compressé par le dispositif selon l’une des revendications 15 à 21 prise en combinaison avec la revendication 18, dans lequel le moyen de reconstruction (MREC) est configuré pour effectuer ladite combinaison linéaire selon une combinaison définie par ladite indication de dépendance.
  28. 28. Dispositif selon l’une quelconque des revendications 22 à 27, le bloc de données (35) ayant été compressé par le dispositif selon la revendication 21, dans lequel le moyen de reconstruction (MREC) est configuré pour compenser une erreur en utilisant ladite quantification d’erreur résiduelle.
  29. 29. Appareil de traitement de données (BOX) comprenant un dispositif électronique de compression (CMP) selon l’une quelconque des revendications 15 à 21 et un dispositif électronique de décompression (DCMP) selon l’une quelconque des revendications 22 à 28.
  30. 30. Produit programme d’ordinateur chargeable directement dans une mémoire d’un système informatique, comprenant des portions de code de logiciel pour l’exécution du procédé de compression selon l’une des revendications 1 à 7 ou du procédé de décompression selon l’une des revendications 9 à 14, lorsque ledit programme est exécuté sur ledit système informatique.
  31. 31. Support lisible par un système informatique, ayant des instructions exécutables par ordinateur adaptées pour provoquer l’exécution par le système informatique du procédé de compression selon l’une des revendications 1 à 7, ou du procédé de décompression selon l’une des revendications 9 à 14.
FR1650160A 2016-01-08 2016-01-08 Compression et decompression de donnees video Expired - Fee Related FR3046711B1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR1650160A FR3046711B1 (fr) 2016-01-08 2016-01-08 Compression et decompression de donnees video
US15/223,221 US10531128B2 (en) 2016-01-08 2016-07-29 Compression and decompression of video data
CN201610797159.XA CN106961601B (zh) 2016-01-08 2016-08-31 数据块压缩和解压缩的方法、装置、设备及介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1650160 2016-01-08
FR1650160A FR3046711B1 (fr) 2016-01-08 2016-01-08 Compression et decompression de donnees video

Publications (2)

Publication Number Publication Date
FR3046711A1 true FR3046711A1 (fr) 2017-07-14
FR3046711B1 FR3046711B1 (fr) 2018-02-16

Family

ID=56369039

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1650160A Expired - Fee Related FR3046711B1 (fr) 2016-01-08 2016-01-08 Compression et decompression de donnees video

Country Status (3)

Country Link
US (1) US10531128B2 (fr)
CN (1) CN106961601B (fr)
FR (1) FR3046711B1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10965315B2 (en) * 2018-08-09 2021-03-30 Andrew Kamal Data compression method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070177033A1 (en) * 2006-01-30 2007-08-02 Microsoft Corporation Bayesian demosaicing using a two-color image
WO2014121219A1 (fr) * 2013-02-04 2014-08-07 Qualcomm Incorporated Mode mixte pour la compression d'un tampon de trames
WO2015020773A1 (fr) * 2013-08-09 2015-02-12 Apple Inc. Format de compression de données vidéo

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1241184B (it) * 1990-03-02 1993-12-29 Cselt Centro Studi Lab Telecom Perfezionamenti ai sistemi ibridi di codifica di segnali video.
US5434623A (en) * 1991-12-20 1995-07-18 Ampex Corporation Method and apparatus for image data compression using combined luminance/chrominance coding
US5357352A (en) * 1993-10-04 1994-10-18 Xerox Corporation Image-dependent color shifting of strongly color shifted images
US6366614B1 (en) * 1996-10-11 2002-04-02 Qualcomm Inc. Adaptive rate control for digital video compression
JP3432392B2 (ja) * 1997-04-07 2003-08-04 三菱電機株式会社 画像符号化装置、画像符号化方法および画像蓄積/伝送装置
JP4837965B2 (ja) * 2005-09-28 2011-12-14 ソニー株式会社 色調整装置、表示装置及び印刷装置
CN101009842B (zh) * 2006-01-11 2012-02-01 华为技术有限公司 可分级视频压缩中插值的方法与装置
US8625663B2 (en) * 2007-02-20 2014-01-07 Pixar Home-video digital-master package
US8861879B2 (en) * 2009-09-17 2014-10-14 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image based on skip mode
FR2963713A1 (fr) * 2010-08-04 2012-02-10 St Microelectronics Grenoble 2 Procede de chiffrement d'un flux de donnees
US8472517B2 (en) * 2010-10-20 2013-06-25 Harris Corporation Systems and methods for reducing the total number of bits required to be transferred over a communications link for an image
CN102629379B (zh) * 2012-03-02 2014-03-26 河海大学 一种基于视觉特性的图像质量评价方法
CN103581675A (zh) * 2012-08-07 2014-02-12 上海算芯微电子有限公司 视频数据的压缩/解压缩方法及系统
FR3001600B1 (fr) * 2013-01-29 2016-05-06 Stmicroelectronics (Grenoble 2) Sas Procede et dispositif de compression d'un signal d'image et procede et dispositif correspondant de decompression
US9036908B2 (en) * 2013-09-30 2015-05-19 Apple Inc. Backwards compatible extended image format

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070177033A1 (en) * 2006-01-30 2007-08-02 Microsoft Corporation Bayesian demosaicing using a two-color image
WO2014121219A1 (fr) * 2013-02-04 2014-08-07 Qualcomm Incorporated Mode mixte pour la compression d'un tampon de trames
WO2015020773A1 (fr) * 2013-08-09 2015-02-12 Apple Inc. Format de compression de données vidéo

Also Published As

Publication number Publication date
FR3046711B1 (fr) 2018-02-16
CN106961601A (zh) 2017-07-18
CN106961601B (zh) 2020-08-11
US20170201771A1 (en) 2017-07-13
US10531128B2 (en) 2020-01-07

Similar Documents

Publication Publication Date Title
US8660345B1 (en) Colorization-based image compression using selected color samples
FR2948845A1 (fr) Procede de decodage d&#39;un flux representatif d&#39;une sequence d&#39;images et procede de codage d&#39;une sequence d&#39;images
EP4030755A1 (fr) Procédé de décodage d&#39;images, dispositif de décodage d&#39;images, et programme d&#39;ordinateur correspondant
EP3349446A1 (fr) Procédé et dispositif d&#39;encodage dynamique contrôlé d&#39;un signal numérique multidimensionnel, en particulier un signal d&#39;image et procédé et dispositif correspondant de décodage
US8447102B2 (en) Vector embedded graphics coding
EP2380352A2 (fr) Procede d&#39;encodage par segmentation d&#39;une image
CA2774940C (fr) Codage graphique integre scalaire combine pour images couleur
FR2676608A1 (fr) Procede de codage d&#39;images en couleurs a fort taux de compression sans filtrage, procede de decodage, codeur, decodeur et application correspondants.
EP2716045B1 (fr) Procédé de codage et de décodage d&#39;images, dispositif de codage et de décodage d&#39;images et programmes d&#39;ordinateur correspondants
FR3046711A1 (fr) Compression et decompression de donnees video
US20180176579A1 (en) Methods and devices for encoding and decoding frames with a high dynamic range, and corresponding signal and computer program
CN111491163A (zh) 基于对图像块的像素域预处理操作的图像块编码
WO2018220311A1 (fr) Procédés et dispositifs de codage et de décodage d&#39;un flux de données représentatif d&#39;au moins une image
WO2017129880A1 (fr) Procédé de codage et décodage de données, dispositif de codage et décodage de données et programmes d&#39;ordinateur correspondants
EP2084910A1 (fr) Procede et dispoitif d&#39;optimisation de la compression d&#39;un flux video
FR3047381A1 (fr) Procede et dispositif d&#39;encodage d&#39;un signal numerique multidimensionnel, en particulier un signal d&#39;image, et procede et dispositif correspondants de decodage
US11943458B2 (en) Methods for decoding and encoding an image, associated devices and signal
EP3272122A1 (fr) Codage d&#39;images par quantification vectorielle
EP2914005B1 (fr) Générateur de flux vidéo
FR2813001A1 (fr) Procede de conversion de format couleur d&#39;une sequence d&#39;images
FR2916931A1 (fr) Procede de selection d&#39;une donnee de codage et dispositif de codage implementant ledit procede
FR2717927A1 (fr) Procédé et appareil de compression, de palettisation, d&#39;émission et de réception d&#39;images en couleur.
FR3098070A1 (fr) Procédé d’encodage et de décodage vidéo par signalisation d’un sous-ensemble de candidat
FR3010605A1 (fr) Procede de codage et de decodage de donnes flottantes d&#39;un bloc d&#39;image et dispositifs associes
EP2015584A2 (fr) Système et procédé de codage vidéo

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20170714

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 5

ST Notification of lapse

Effective date: 20210905