Brevet FR2621194A1 — publié le 19890331

Description gDISPOSITIF DE CODAGE DE SIGNAUX VIDEO NUMERIQUES" La présente invention concerne un dispositif de codage de signaux vidéo numériques comprenant un circuit de réduction de corrélation, qui reçoit lesdits signaux numé- riques représentatifs de la luminance ou de la chrominance d'un certain nombre de points d'une image divisée en blocs, un circuit de conversion de balayage, qui transforme la suite bi- dimensionnelle des valeurs des coefficients Fi(u,v) de sor- tie du circuit de réduction de corrélation en une suite mono- dimensionnelle, un circuit de normalisation, un circuit de quantification, qui convertit chaque valeur normalisée de sor- tie du circuit de normalisation en une valeur entière, un cir- cuit de codage desdites valeurs quantifiées, un circuit de ré- gulation de débit, qui reçoit selon un débit variable lesdites valeurs codées et, d'une part, renvoie une valeur de norme moyenne liée audit débit vers le circuit de normalisation, d'autre part délivre sur la sortie du dispositif de codage des valeurs codées avec un débit constant, un circuit à retard étant éventuellement prévu entre lesdits circuits de réduction de corrélation et de conversion de balayage et un circuit de compression étant éventuellement prévu entre lesdits circuits de conversion de balayage et de normalisation. La numérisation des signaux de télévision, en vue de leur transmission ou de leur enregistrement, est une solution extrêmement utile dans le cas de liaisons o le bruit perturbateur est particulièrement important, les liaisons par satellite notamment. Une image de télévision contient cependant une très grande quantité d'informations, dont la représentation numérique se traduit par un débit élevé. En échantillonnant les composantes du signal de télévision à une fréquence satisfaisant la condition de Shannon et en opérant une quantification uniforme en 256 niveaux, la numérisation directe des composantes de luminance et de chrominance aux fréquences de 13,5 et de 6,75 mégahertz respectivement, impo- sées par les normes, conduirait en effet à un débit de 216 Meb/s. Ce débit est tout à fait prohibitif, notamment dans le cas de dispositifs d'enregistrement magnétique grand public. L'emploi de techniques de réduction de débit est donc néces- saire, et d'autant plus réalisable qu'une redondance relative- ment importante existe dans l'image. Le brevet des Etats-Unis d'Amérique n0 4 394 774 décrit un exemple de dispositif de compression de données qui réalise un codage des signaux vidéo par transformation ortho- gonale. Ce codage est obtenu en découpant chaque image en blocs de taille déterminée, puis en appliquant ladite trans- formation orthogonale à chaque bloc. Les coefficients issus de cette transformation sont alors divisés par un facteur de nor- malisation, puis quantifiés et codés. Un tel dispositif ne tient cependant pas compte des caractéristiques propres de chaque bloc, en particulier de l'activité de ces blocs. L'in- fluence du codage utilisé est telle, par exemple, que celui-ci introduit sur les contours des défauts d'amplitude très diffé- rents selon la position des contours dans le bloc. Le but de l'invention est de proposer un disposi- tif de codage de signaux vidéo qui remédie à ce type d'incon- vénient. A cet effet, l'invention concerne un dispositif caractérisé en ce que ledit circuit de normalisation comprend lui-même: (a) une mémoire de stockage de coefficients de pondération, adressée d'une part par l'indice i de position de chaque valeur Fi(u,v) du bloc courant, présent sur une première connexion d'entrée du circuit de normalisa- tion, et d'autre part par une valeur représentative de l'activité du bloc courant, présente sur une deuxième connexion d'entrée; (b) un circuit de calcul de norme, à partir d'une part de ladite valeur de norme moyenne fournie par le circuit de régulation de débit et d'autre part du coefficient de pondération fourni par ladite mémoire de stockage du circuit de normalisation; (c) un circuit de division de la sortie du circuit de compression, ou, si ce dernier a été omis, de la sortie du circuit de conversion de balayage, par le coefficient Ki correspondant de sortie dudit circuit de calcul de norme. La structure proposée remédie en effet aux imper- fections et distorsions entrainées par le codage, et ce en prévoyant d'opérer une classification sur chaque bloc trans- formé, selon un critère de classification prenant en compte la nature du contenu du bloc à coder. Ce critère peut être par exemple la comparaison entre le maximum de la valeur absolue des coefficients du bloc (hors composante continue) et un cer- tain nombre de seuils. Des essais satisfaisants ont été obte- nus notamment avec quatre classes et trois seuils de valeurs fixées à 10, 25 et 50 pour une dynamique des échantillons nu- mériques comprise entre 0 et 256. Une telle classification réduit bien la visibilité des défauts constatés (visibilité des structures des blocs sur les zones quasi-uniformes et niveau de bruit important le long des contours). La visibilité de la structure des blocs peut encore être réduite sur les zones uniformes: on peut réduire le pas de quantification sur les blocs de ce type (à peu près uniformes) et l'augmenter au contraire sur ceux contenant des coefficients d'amplitude élevée, ou modifier le pas de quantification en fonction de la position du coefficient, en le réduisant pour les blocs de peu d'activité pour bien resti- tuer les coefficients basse fréquence alors que, pour les blocs plus contrastés, une bonne restitution implique une quantification assez fine des hautes fréquences spatiales. L'invention ainsi proposée, en différenciant les traitements en fonction de la nature du contenu des blocs à coder, permet de prendre en compte non seulement des mesures objectives d'activité, mais également des corrélations éta- blies entre ces critères objectifs et des critères psycho- visuels. Les particularités de l'invention apparaîtront maintenant de façon plus détaillée dans la description qui suit et dans les dessins annexés, donnés à titre d'exemples non limitatifs et dans lesquels: - la figure 1 montre un exemple de réalisation du dispositif de codage selon l'invention; - la figure 2a montre une image divisée en N x M blocs, la figure 2b représente la matrice bidimensionnelle des coefficients de transformation d'un de ces blocs d'image, l.a figure 2c met en évidence un type de parcours monodimensionnel pour la lecture et le traitement desdits coefficients, la figure 2d montre un autre type de parcours pour un bloc de 32 points d'image, et la figure 2e montre par rapport à la figure 2c une variante de parcours dans laquelle les coefficients sont successivement lus dans différents blocs; - la figure 3 est une courbe X' = f(Xi) corres- i pondant à l'opération de compression réalisée après la conver- sion de balayage; - - la figure 4 montre un exemple de variation du coefficient de normalisation (et donc du pas de quantifica- tion) en fonction de la position des coefficients et pour différentes classes. Dans l'exemple de réalisation représenté sur la figure 1, le dispositif selon l'invention comprend d'abord un circuit de transformation en cosinus discret 10. Ce circuit 10 reçoit une suite de signaux numériques représentant sous la forme d'une matrice de valeurs la luminance ou la chrominance d'un certain nombre de points ou éléments d'une image divisée en blocs, et délivre pour chaque bloc une suite bidimen- sionnelle de coefficients Fi(u,v). La figure 2a montre une 2 621194 telle image, divisée en M x N blocs. La transformation en cosinus discret est une opération connue, et l'expression de ces.coefficients de transformation obtenus successivement pour chaque bloc ne sera donc pas donnée ici. On rappellera simple- OS ment que de nombreuses mesures statistiques ont permis de mon- trer la très forte corrélation entre points voisins d'une trame ou d'une image, et que l'objet de la transformation est d'obtenir un ensemble de coefficients plus indépendants que les valeurs disponibles avant transformation. Les valeurs Fi(u,v) sont alors fournies, par l'intermédiaire d'un circuit à retard 20, à un circuit de con- version de balayage 30 destiné à convertir la suite bidimen- sionnelle de valeurs Fi(u,v) en une suite monodimension- nelle. Pour un bloc tel que celui de la figure 2b, correspon- dant lui-même à celui indiqué avec des hachures sur la figure 2a, cette suite monodimensionnelle peut être par exemple une suite en zig-zag comme celle indiquée sur la figure 2c qui montre, dans une représentation de la matrice bidimensionnelle des coefficients de transformation du bloc d'image, un type de parcours définissant l'ordre de lecture (C1, C2, C3,.. etc...) et de traitement de ces coefficients. Ce type de parcours pré- sente l'avantage suivant, à savoir qu'il permet, après l'opé- ration de quantification prévue plus loin, de rencontrer de longues plages de valeurs nulles, ce qui contribue à réduire la quantité d'informations à transmettre. Cette suite monodi- mensionnelle pourrait cependant être constituée sur la base d'un autre critère, par exemple selon le type de parcours re- présenté sur la figure 2d pour un bloc de u x v = 32 éléments d'images, ou être d'un autre type que ceux représentés, par exemple être déterminée de façon adaptative en fonction de ca- ractéristiques mesurées sur le signal lui-même. Il est égale- ment possible d'opérer une lecture des coefficients dans dif- férents blocs, par exemple une lecture successive dans chacun des quatre blocs spatialement voisins de la figure 2e, en lisant les coefficients Ci, C2, C3, C4, puis les coefficients C5, CG,etc... et ainsi de suite sur le type de parcours adopté. Un circuit de compression 40 reçoit alors cette suite monodimensionnelle, appelée par exemple Xi, pour déli- vrer une nouvelle suite monodimensionnelle X'i, la suite des X'i étant obtenue à partir des Xi selon une courbe de transformation telle que celle de la figure 3. On va voir plus loin l'existence d'une opération de quantification: si cette opération de quantification s'effectue avec un pas variable, le circuit de compression 40 peut être omis. Si au contraire la quantification est linéaire, la présence du circuit de com- pression permet de reconstituer globalement une transformation à pas variable. Cette compression systématique est, dans l'un ou l'autre cas, justifiée par le fait que les informations vi- suelles essentielles d'une image correspondent aux fréquences spatiales les plus basses, correspondant elles-mêmes aux pre- miers coefficients de la matrice bidimensionnelle des coeffi- cients de transformation, lorsque celle-ci est lue et traitée selon un parcours du type de celui de la figure 2c, ou de la figure 2d. Sans que la quantification soit nécessairement adaptative, il importe en tout cas de noter, comme on le pré- cise plus loin, qu'un tel caractère adaptatif est avantageux. Il permet en effet de modifier le pas de quantification selon la nature plus ou moins uniforme de l'image, ou des blocs de l'image, et influe également sur le codage, une quantification plus rudimentaire entrainant l'utilisation de mots de code plus courts et donc une réduction du débit. En sortie du circuit de compression 40, ou du cir- cuit de conversion de balayage 30 si le circuit 40 est omis, il est ensuite prévu un circuit de normalisation 50. Ce cir- cuit de normalisation 50 comprend, comme indiqué sur la figure 1, un circuit de division 59 de la sortie du circuit de com- pression 40, ou de la sortie du circuit de conversion de ba- layage 30, par un paramètre Ki déterminé comme indiqué ci- après. Ce paramètre Ki est considéré comme dépendant d'une part de la place, dans le bloc courant, du coefficient se pré- sentant sur l'entrée 'dividende' du circuit de division 59, c'est-à-dire du coefficient obtenu une fois la conversion de balayage opérée pour disposer d'une suite monodimensionnelle. Ce paramètre Ki dépend d'autre part de la norme moyenne Nm sur le bloc, c'est-à-dire du taux de remplissage de la mémoire de régulation, prévue, comme indiqué plus loin, dans le cir- cuit de régulation de débit qui constitue l'élément terminal du dispositif de codage selon l'invention. Par ailleurs, tout codeur qui opère sur des blocs introduit généralement deux types de distorsions. Les pre- mières, appelées effet de grillage, se produisent dans les zones quasi-uniformes o les variations d'intensité sont ex- trêmement progressives. Après codage, on observe dans ces zones de soudains changements d'intensité de bloc à bloc, dont l'effet visuel est très gênant. Les secondes résultent des composantes du bruit de codage qui sont en dehors de la bande passante des contours et qui distordent ces contours, alors que les composantes de bruit situées dans la bande spectrale des contours sont, elles, masquées par lesdits contours. Il a donc paru intéressant de réduire la visibi- lité de ces deux types de distorsions, en adaptant la quanti- fication des coefficients de chaque bloc selon que le bloc considéré est uniforme ou quasi-uniforme ou au contraire qu'il contient des contours de plus ou moins fort contraste, c'est- à-dire selon ce qu'on appelle la classe d'activité du bloc. Le paramètre Ki est donc considéré comme dépen- dant de la classe d'activité du bloc courant, qui va traduire l'importance de la luminance moyenne attachée au bloc consi- déré. Plusieurs variantes de définition de la classe peuvent être retenues. Le critère d'activité qui a été ici adopté est de rechercher dans un bloc l'expression max Fi(u,v), avec i = 2 à (u x v), Fi(u,v) étant la valeur du coefficient d'ordre i après transformation en cosinus discret et conver- sion de balayage, et (u x v) étant le nombre total de coeffi- cients du bloc. On exclut en effet de cette recherche le premier coefficient. Ce coefficient, situé en tête de la ma- trice des coefficients de chaque bloc, est en effet codé d'une manière particulière (par exemple, quantification linéaire puis codage par neuf bits) pour éviter que des différences de luminance d'un bloc à l'autre soient perçues par l'oeil. Mais d'autres critères de définition de l'activité pourraient être retenus, par exemple la valeur de la somme des coefficients élevés au carré. La place dans le bloc courant est fournie par l'indice i qui affecte chaque coefficient et qui est fourni au circuit 50 par une connexion 15 provenant de la sortie du cir- cuit de transformation en-cosinus discret 10. La norme moyenne sur le bloc courant, qui est une valeur d'autant plus élevée que la mémoire de régulation est plus remplie, est fournie au circuit 50 par une connexion 85 provenant de la sortie de ladite mémoire de régulation. La classe d'activité, dans l'exemple ici décrit et représenté, est fournie par comparaison, à des seuils, de la valeur absolue des coefficients (à l'exception du premier). Dans le cas présent, trois seuils et donc quatre classes d'ac- tivité ont été retenus. La comparaison est effectuée dans un circuit de détermination de classe 90 prévu en sortie du cir- cuit de transformation en cosinus discret 10 et relié au cir- cuit 50 par une connexion 95. Les seuils introduits dans le circuit 90 ont été préalablement définis, par exemple soit à l'aide de tests subjectifs, en fonction de la classification que l'on estime préférable sur un certain nombre d'images de référence, soit en imposant une équirépartition des blocs dans les différentes classes, l'activité la plus faible correspon- dant donc au cas o le bloc considéré est pratiquement uni- forme, ou avec des contours peu contrastés. En fonction de la classe ainsi définie et de la place dans le bloc fournie par l'indice i, une mémoire 51 du circuit 50 fournit un coefficient Gi qui est envoyé vers un circuit de calcul de norme 52. Ce circuit 52 pondère à l'aide de ce coefficient Gi la valeur de norme moyenne Nm fournie par la connexion 85 et délivre finalement le paramètre Ki qui est envoyé sur l'entrée 'diviseur' du circuit de division 59. Cette pondération contribue & rendre minimales les distor- sions mentionnées précédemment et dues au codage par blocs. Elle permet en effet de faire varier selon la classe la pente de la courbe qui donne en fonction de l'ordre du coefficient le paramètre de normalisation Ki, et donc le pas de quantification. Un exemple de ces courbes est représenté sur la figure 4, dans le cas de quatre classes notées 1 à 4 dans l'ordre des activités croissantes, et l'on peut faire les deux constatations suivantes. D'une part, pour les blocs de faible activité, les basses fréquences sont davantage privilégiées, ce qui permet de réduire notablement la visibilité de l'effet de grillage. D'autre part, pour les blocs de plus forte activité traversés par des contours, les hautes fréquences prennent une importance non négligeable et, en quantifiant de façon plus uniforme l'ensemble des coefficients, on évite une trop forte perte de résolution. 2È Le circuit de normalisation 50 est suivi d'un cir- cuit de quantification 60. L'opération de quantification est destinée, on le sait, à convertir la valeur normalisée de chaque coefficient, exprimée avec une virgule flottante, en une valeur entière, soit par un simple arrondi, soit de préférence par troncature, en prenant la partie entière de la valeur avant quantification. Il est bien évident que, soumises à une telle quantification, un certain nombre de valeurs comprises entre O et 1 sont remplacées par la valeur 0, ce qui diminue le nombre de coefficients significatifs à transmettre et va donc dans le sens de la compression de données recher- chée. Un tel circuit de quantification est connu et ne sera donc pas décrit davantage. On rappellera simplement, comme on l'a vu plus haut, que la quantification peut être linéaire ou au contraire à pas variable. La sortie du circuit de quantification 60 est alors envoyée, de façon. connue, vers un circuit de codage 70, comprenant ici des tables de valeurs codées selon un code de Huffman, pour le codage soit de valeurs de coefficients (codage à longueur variable) soit de longueurs de plages (codage par plages). La sortie du circuit de codage 70 est enfin reliée à l'entrée d'un circuit de régulation de débit , qui reçoit donc selon un débit variable les valeurs ainsi codées et les restitue sur sa sortie principale avec un débit constant. Cette sortie principale constitue la sortie du dis- positif de codage selon l'invention. Une sortie auxiliaire du circuit de régulation de débit renvoie vers le circuit de normalisation 50, par la connexion de retour 85, la valeur de norme moyenne Nm utilisée pour composer la valeur du para- mètre global de normalisation (le paramètre Ki) par lequel est divisée la sortie du circuit de compression 40 (ou du cir- cuit de conversion de balayage si ce circuit 40 est omis). Bien entendu, la présente invention n'est pas li- mitée à l'exemple de réalisation ci-dessus décrit et repré- senté, à partir duquel des variantes peuvent être proposées, sans pour cela sortir du cadre de l'invention. En particulier, il est manifeste que l'invention n'est pas limitée par la forme (carrée ou rectangulaire notamment) ou par les dimen- sions des blocs qui subdivisent l'image. Cependant, comme la corrélation entre points voisins d'une image (ou d'une trame) décroît lorsque la distance entre ces points augmente, il est judicieux d'opérer la transformation cosinus, dans le circuit , sur des blocs de dimensions réduites, par exemple des blocs 8 x 4 comme celui de la figure 2d. Ce choix conduit en outre à faire varier de façon plus fine le paramètre de nor- malisation en fonction de l'activité des blocs. Il est à noter également que la transformation en consinus discret subie par les signaux numériques d'entrée n'est pas la seule possible, bien que ce soit l'une de celles qui conduisent aux meilleures performances du dispositif de décodage. D'autres transformations, telles que par exemple la transformation de Hadamard ou celle de Slant, conduisent, de façon similaire, à une réduction de corrélation des signaux, les coefficients obtenus étant plus indépendants que les va- leurs disponibles avant transformation. Revendications 1. Dispositif de codage de signaux vidéo numériques comprenant un circuit de réduction de corrélation, qui reçoit lesdits signaux numériques représentatifs de la luminance ou de la chrominance d'un certain nombre de points d'une image divisée en blocs, un circuit de conversion de balayage, qui transforme la suite bidimensionnelle des valeurs des coeffi- cients Fi(u,v) de sortie du circuit de réduction de corré- lation en une suite monodimensionnelle, un circuit de normali- sation, un circuit de quantification, qui convertit chaque va- leur normalisée de sortie du circuit de normalisation en une valeur entière, un circuit de codage desdites valeurs quanti- fiées, un circuit de régulation de débit, qui reçoit selon un débit variable lesdites valeurs codées et, d'une part, renvoie une valeur de norme moyenne liée audit débit vers le circuit de normalisation, d'autre part délivre sur la sortie du dispo- sitif de codage des valeurs codées avec un débit constant, un circuit à retard étant éventuellement prévu entre lesdits cir- cuits de réduction de corrélation et de conversion de balayage et un circuit de compression étant éventuellement prévu entre lesdits circuits de conversion de balayage et de normalisa- tion, caractérisé en ce que ledit circuit de normalisation comprend luimême: (a) une mémoire de stockage de coefficients de pondération, adressée d'une part par l'indice i de position de chaque valeur Fi(u,v) du bloc courant, présent sur une première connexion d'entrée du circuit de normalisation, et d'autre part par une valeur représentative de l'activité du bloc courant, présente sur une deuxième connexion d'entrée; (b) un circuit de calcul de norme, à partir d'une part de ladite valeur de norme moyenne fournie par le circuit de régulation de débit et d'autre part du coefficient de pondération fourni par ladite mémoire de stockage du circuit de normalisation; (c) un circuit de division de la sortie du circuit 2 2 1 1 9 4 de compression, ou, si ce dernier a été omis, de la sortie du circuit de conversion de balayage, par le coefficient Ki correspondant de sortie dudit circuit de calcul de norme. 2. Dispositif selon la revendication 1, caractérisé en ce que l'indice i d'adressage de la mémoire de stockage de coefficients de pondération est fourni directement par le cir- cuit de réduction de corrélation, et en ce que la valeur re- présentative de l'activité du bloc courant est également four- nie par ce même circuit mais par l'intermédiaire d'un circuit de détermination de classe prévu en série entre ledit circuit de réduction de corrélation et ladite mémoire de stockage. 3. - Dispositif selon la revendication 2, caractérisé en ce que le circuit de détermination de classe comprend des moyens de comparaison d'une valeur représentative du bloc cou- rant à (n-i) seuils distincts, et des moyens de sélection par- mi n valeurs distinctes de classe, selon le résultat desdites (n-1) comparaisons. 4. Dispositif selon la revendication 3, caractérisé en ce que ladite valeur représentative du bloc courant est la valeur absolue du plus grand des coefficients Fi(u,v) de ce bloc courant, le premier coefficient F(0,O) dudit bloc étant exclu de cette sélection d'une valeur représentative du bloc. 5. Dispositif selon la revendication 3, caractérisé en ce que ladite valeur représentative du bloc courant est la valeur de la somme des coefficients Fi(u,v) élevés au carré, le premier coefficient F(0,0) dudit bloc étant exclu de cette sélection d'une valeur représentative du bloc.