Brevet FR2684833A1 — publié le 19930611

Cette invention se rapporte à un dispositif et à des procédés pour contrôler la quantification de données vidéo. La reproduction d'images vidéo peut être grandement améliorée si l'information image est prévue dans un format numérique Cependant, les signaux vidéo codés numériquement en temps réel occupent nettement plus de largeur de bande que les signaux vidéo analogiques. De plus, les débits de données disponibles dans les canaux de transmission actuels sont limités à des débits nominalement insuffisants pour traiter les signaux vidéo bruts de codage numérique Par conséquent, les signaux vidéo numériques sont comprimés avant transmission. Les données vidéo comprimées arrivent à vitesses variables, c'est à dire que les trames respectives incluent différentes quantités de données comprimées. Il est souhaitable de transmettre les données compri- mées à une vitesse constante équivalente à la capacité du canal pour réaliser une utilisation efficace du canal Des tampons de vitesse sont installés pour effectuer la conversion de vitesse variable en vitesse constante La quantité de données fournie aux tampons est régulée en fonction de l'occupation des tampons. Ceci est effectué en contrôlant l'occupation des tampons pour générer des signaux de commande Les compresseurs incluent typiquement des dispositifs qui quantifient de façon variable les données comprimées selon une certaine fonction des signaux de commande, pour réguler la quantité de données comprimées fournie aux tampons de vitesse. Un premier procédé connu de façon courante qui peut être utilisé pour calculer le niveau de quantification requis pour compresser les données vidéo à une vitesse particulière, calcule une niveau d'étape de quantification qui est appliqué à une trame entière. Ce procédé fournit une image quantifiée uniformément sur les trames respectives mais il est difficile de déterminer les niveaux de quantification qui fournissent les données à la vitesse précisément souhaitée Une second procédé divise chaque trame en blocs et génère des niveaux de quantification sur une base de bloc Ce procédé fournit des données comprimées plus proches de la vitesse souhaitée, cependant, parce que différentes surfaces de l'image sont quantifiées différemment, l'image peut ne pas être reproduite avec une qualité uniforme. La présente invention inclut un dispositif pour quantifier un signal vidéo sur une base de bloc par bloc pour fournir des données à une vitesse rela- tivement constante et qui ne tend pas à introduire des défauts d'uniformité dans la qualité de l'image. La présente invention est réalisée dans un dispositif pour commander de façon adaptative la quantification de macroblocs de données du signal vidéo comprimées Le dispositif inclut un quantificateur qui reçoit les macroblocs de données pour quantifier les données codées selon une fonction de quantification prédéterminée sur une base de macrobloc par macrobloc. Le quantificateur est sensible à un signal de contrôle de complexité pour modifier la fonction de quanti- fication Il est également prévu des moyens qui sont sensibles aux blocs à l'intérieur des et adjacents aux J. macroblocs respectifs de données pour générer des signaux de contrôle de complexité pour les macroblocs respectifs. La Figure 1 est un schéma fonctionnel d'un dispositif codeur de signaux vidéo incluant un quanti- ficateur réalisant la présente invention. Les Figures l B et 1 C sont des représentations par blocs des trames du signal vidéo codées selon la séquence des modes de codage associés avec la compression de type MPEG. Les Figures 2 et 3 sont des schémas imagés représentant le format de codage d'un signal du type MPEG. La Figure 4 est un schéma de fonctionnement plus détaillé d'une partie du compresseur de type MPEG de la Figure 1. La Figure 5 est une représentation imagée schématique partielle d'un dispositif et d'une fonction de quantification. La Figure 6 illustre la position relative des blocs de données utilisés en générant le signal de complexité de la quantification pour des macroblocs associés. L'invention sera décrite dans l'environnement d'un codeur de signaux de télévision à haute définition mais elle est en général applicable à tout système de codage de signaux vidéo qui fournit des blocs de données comprimées soumis à quantification, comme par exemple, un système CD-I Pour les objectifs de cette description, les données vidéo seront comprimées en format du type MPEG Ce qui est signifié par "type MPEG" est un format de codage semblable au format de codage établi par l'Organisation Internationale de Normalisation Le format est décrit dans le document "ISO IEC JT ( 1/SC 2/WG 1), Coding of Moving Pictures and Associated Audio,MPEG 90/176 Rev 2, 18 Déc 1990. Dans le système MPEG, les champs impairs de trames vidéo successives sont comprimés selon un des trois types d'algorithme de compression, codés intra- trames (I), codés avec prédiction (P), codés avec prédiction bidirectionnelle (B) Les champs pairs sont séparés Un exemple dont les trames successives sont codées par des algorithmes respectifs est illustré en Figure 1 B En F Igure 1 B, les cases numérotées correspondent aux intervalles de trames successifs respectifs Les lettres au-dessus de chaque case correspondent au type de codage appliqué à la trame voisine. La Figure 1 illustre un dispositif de TVHD typique pour coder un signal vidéo dans un format de type MPEG Dans le système de TVHD montré, à la fois les champs pairs et impairs de chaque trame sont codés. La Figure 1 montre le système traitant un signal vidéo d'entrée unique mais il doit être compris que les composantes de luminance et de chrominance sont comprimées séparément et que les vecteurs de déplacement de luminance sont utilisés pour générer des composantes de chrominance comprimées Les composantes de luminance et de chrominance comprimées sont entrelacées afin de former des macroblocs pour la transmission. Une séquence champs/trames d'image comme pour la Figure 1 B est appliquée à un compresseur 10 qui génère une séquence comprimée de trames (Figure 1 C) qui sont codées selon un format de type MPEG Les nombres dans les cases représentent les trames succes- sives et les lettres I, P, B indiquent le mode de compression appliquée à la trame associée La séquence I, P, B de codage illustrée pour les trames 1 à 15 se répète de façon cyclique. Le format hiérarchique MPEG, illustré en forme abrégée en Figure 3 A, inclut une pluralité de couches, chacune ayant une information d'en-tête respective De façon nominale chaque en-tête inclut un code de début, des données relatives à la couche respective et la réserve pour ajouter des extensions d'en-tête Beaucoup de l'information d'en-tête (comme indiqué dans le document MPEG en référence) est requis pour des objectifs de synchronisation dans un environ- nement de système MPEG Dans le but de fournir un signal vidéo comprimé pour un système d'émission relayée de TVHD numérique, seulement l'information d'en- tête descriptive est requise, c'est à dire que les codes de début et d'extensions éventuelles peuvent être exclus Les couches respectives du signal vidéo codé sont illustrées de façon imagée en Figure 2. Quand on se réfère au signal de type MPEG produit par le présent système ce qui signifie que a) des champs/trames successifs du signal vidéo sont codés selon une séquence de codage I,P,B et b) les données codées au niveau de l'image sont codées en tranches de type MPEG ou groupe de blocs bien que le nombre de tranches par champ/trame puisse différer et que le nombre de macroblocs par tranche puisse différer. Le signal de sortie codé du présent système est segmenté en groupes de champs/trames (GOF) illustrés par la ligne de cases Ll (Figure 3) Chaque GOF (L 2) inclut un en-tête suivi par les segments de données d'image L'en-tête du GOF inclut des données relatives à la dimension de l'image horizontale et verticale, au format, à la vitesse des champs/trames, au débit binaire, etc. Les données d'image (L 3) correspondant aux champs/trames respectifs incluent un en- tête suivi par les données des tranches (L 4) L'en-tête d'image inclut un nombre de champ/trame et un type de code d'image. Chaque tranche (L 4) inclut un en-tête suivi d'une pluralité de blocs de données M Bi L'en-tête des tranches inclut un nombre de groupes et un paramètre de quanti- fication. Chaque bloc M Bi (L 5) représente un macrobloc et inclut un en-tête suivi des vecteurs de déplacement et des coefficients codés Les en-têtes des M Bi incluent une adresse des macroblocs, un type de macrobloc et un paramètre de quantification Les coefficients codés sont illustrés en couche L 6 Remarquez que chaque macrobloc est composé de 6 blocs, incluant quatre blocs de luminance, un bloc de chrominance U et un bloc de chrominance V Voir la Figure 2 UN bloc représente une matrice de pixels, par exemple 8 x 8 sur laquelle une transformée en cosinus discrète (DCT) est effectuée. Les quatre blocs de luminance sont des matrices 2 x 2 de blocs de luminance contigus représentant par exemple une matrice de pixels de 16 x 16 Les blocs de chromi- nance (U et V) représentent la même surface totale que les quatre blocs de luminance C'est à dire que le signal de chrominance est sous-échantillonné d'un facteur de deux horizontalement et verticalement rela- tivement à la luminance avant compression Une tranche de données correspond aux données représentant une partie rectangulaire d'une image correspondant à une surface représentée par un groupe contigu de macroblocs. Les coefficients de blocs sont prévus un bloc à la fois avec le coefficient DCT, DC arrivant en premier suivi des coefficients DCT AC respectifs dans l'ordre de leur importance relative Un code de fin de bloc EOB est ajouté à la fin de chaque bloc de données arrivant successivement. La quantité de données fournie par le compresseur 10 est déterminée par l'élément de commande de vitesse 18 Commeil est bien connu, les données vidéo comprimées arrivent selon des vitesses variables. Des tampons de vitesse 13 et 14 effectuent une conversion de la vitesse variable des données en vitesse constante Les tampons 13 et 14 incluent des circuits pour indiquer leurs niveaux d'occupation respectifs Ces indications sont appliquées au contrôleur de vitesse 18 pour ajuster la vitesse moyenne des données fournie par le compresseur 10 L'ajustement est accompli en réglant la quantification appliquée aux coefficients de DCT. Les données vidéo comprimées formatées hiérarchiquement comme indiqué en Figure 3 sont couplées à l'élément de sélection de priorité 11 qui partage les données codées entre un canal de haute priorité HP et un canal de faible priorité LP L'information de haute priorité est constituée du minimum des données nécessaire pour créer une image, bien moindre que pour une image parfaite L'information de faible priorité est l'information restante. Les données vidéo comprimées HP et LP sont couplées à un processeur de transmission 12 qui a) segmente les trains de données HP et LP en blocs de transmission, b) effectue un contrôle de parité ou de redondance cyclique sur chaque bloc de transmis- sion et y ajoute les bits de contrôle de parité appropriés et c) mutiplexe les données auxiliaires avec les données vidéo HP et LP. Les trains de données HP et LP venant du processeur de transmission 12 sont appliqués aux tampons de vitesse respectifs 13 et 14 qui convertissent les données vidéo comprimées de vitesse variable venant du processeur 12 en données arrivant à une vitesse sensiblement constante Les données HP et LP de vitesse réglée sont couplées aux éléments d'autocodage d'erreur 15 et 16 qui a) effectuent un codage d'auto- correction d'erreur REED SOLOMON indépendamment des trains de données respectifs; b) entrelacent les blocs de données pour éviter que de larges paquets d'erreurs n'altèrent une grande surface contig e d'une image reproduite; et c) ajoutent, par exemple, des codes Barker aux données pour synchroniser les trains de données au niveau du récepteur Après cela, les signaux sont couplés à un modem de transmission 17 dans lequel l'amplitude en quadrature des données du canal HP module une première porteuse et l'amplitude en quadrature des données du canal LP module une seconde porteuse déplacée de la première porteuse d'environ 2,88 M Hz La largeur de bande à 6 d B des première et seconde porteuses modulées est respectivement d'environ 0,96 M Hz et 3,84 M Hz. La compression dans le mode I inclut de diviser la trame désignée I, par exemple, en blocs de 8 x 8 pixels et d'effectuer une transformée en cosinus discrète DCT, sur les pixels des blocs respectifs. Après cela, une quantification est réalisée sur les coefficients générés par la DCT lesquels coefficients quantifiés constituent l'information image comprimée pour la trame codée I. La compression dans le mode P inclut A) de diviser une trame respective désignée P en macro- blocs de, par exemple, 4 blocs 8 x 8 contigus de pixels; b) de rechercher la dernière trame P ou I survenant dans le GOF pour un macrobloc contenant une information image similaire; C) de générer des vecteurs de déplacement pour translater le macrobloc trouvé dans la trame I ou P précédente vers la position du macrobloc similaire dans la trame P à comprimer; D) de générer une trame prédite à partir de la trame précédente en utilisant les vecteurs de déplacement; E) de soustraire la trame prédite de la trame P à comprimer sur une base de bloc par bloc pour générer des blocs de restes F) d'effectuer des DCT sur les blocs de restes; G) de quantifier les coefficients desblocs de restes transformés; et H) de concaténer les coefficients de restes quantifiés et les vecteurs de déplacement pour former un signal vidéo comprimé. La compression des trames désignées B est semblable à la compression des trames désignées P sauf que les vecteurs de déplacement et par conséquent les trames B prédites sont formées par rapport aux trames désignées I et/ou P entre lesquelles la trame B est disposée dans la séquence C'est à dire que les trames désignées P sont comprimées en relation avec seulement la toute dernière trame désignée P ou I sur- venant tandis que les trames désignées B sont comprimées en relation avec non seulement la toute dernière trame désignée I ou P, mais aussi avec la trame désignée I ou P suivante Comme telles les trames désignées P sont prédites vers l'avant et les trames B sont prédites vers l'avant et vers l'arrière. En fonction du système particulier et de la compression souhaitée, les coefficients quantifiés et les vecteurs de déplacement peuvent être soumis à une réduction supplémentaire des données via un codage statistique ou un codage DPCM ou les deux, par exemple. La Figure 4 montre le compresseur 10 en légèrement plus détaillé Le compresseur inclut un élément de compression 30 qui génère des vecteurs de déplacement et des coefficients de DCT et peut être semblable au dispositif de compression décrit dans le brevet U S N O 4 972 260 intitulé "APPARATUS FOR CODING A MOVING PICTURE SIGNAL" Les coefficients de DCT sont couplés à un élément de quantification 32 et les vecteurs de déplacement sont appliqués à un codeur 34 Les coefficients de DCT quantifiés issus de l'élément 32 sont couplés au codeur 34 dans lequel ils sont multi- plexés avec les vecteurs de déplacement et les données d'en-tête pour former le signal vidéo comprimé. Le quantificateur reçoit les coefficients de DCT selon une représentation matricielle prédéter- minée pour chaque bloc de pixels, laquelle représentation est illustrée par la case 44 en F Igure 5 Le carré supérieur du coin gauche appelé DC représente la valeur moyenne de l'amplitude de tous les pixels associés avec le bloc Les carrés appelés A 1-A 63 correspondent aux coefficients AC ou différents spectres de fréquences Les coefficients aux nombres ordinaux plus élevés sont généralement de moindre importance pour la reproduction d'image Les flèches indiquent la séquence selon laquelle les coefficients arrivent Le quantificateur reçoit également une information de contrôle de quantification telle qu'une valeur de quantification globale GLOBAL-QUANT et un facteur de complexité de macrobloc, MB-comp. Le quantificateur inclut un schéma général de quantification (par exemple, bloc 45 et Figure 5) qui est une matrice des valeurs relatives de quantification associées avec les coefficients respectifs de la matrice DCT, à savoir g O, gl, g 2, g 3 sont associés avec les coefficients DC, Ai, A 2, A 3 etc Les valeurs de quanti- fication, GLOBAL-QUANT et MB-comlp sont combinées selon l'équation: il Gi = MB-comp * GLOBAL QUANT* gi et les valeurs respectives Gi sont utilisées pour contrôler la quantification des coefficients DC et Ai En F Igure 5 la valeur Gi est fournie par le multiplieur 42 et appliquée au quantificateur 43 Le quantificateur 43 est agencé pour fournir la fonction de quantification souhaitée Un exemple de fonction de quantification particulière est donné par: Q Ai = ( 16 * Ai + 8) Il ( 2 * Gi); Ai > O Q Ai = ( 16 * Ai -8) ( 2 Gi); Ai O Q Ai = O Ai = O o Q Ai est la version quantifiée du coefficient Ai et I spécifie une division de nombres entiers. L'opération de quantification peut fournir différentes fonctions pour des trames ou macroblocs codés selon les différents modes Par exemple, diffé- rentes matrices de valeurs relatives de quantification, gi, peuvent être utilisées pour les trames respectives I, P et B Cependant, ceci n'est pas l'objet de la présente invention Ce que la présente invention essaie de réaliser est de fournir un contrôle de quantification à un quantificateur de façon que la qualité de l'image sur une trame ne soit pas affectée non uniformément à cause de la quantification tout en quantifiant en même temps, relativement rigoureusement, ceux des macroblocs de coefficients qui sont relativement complexes à coder. Ceci est réalisé en établissant une valeur cible de la quantité de données comprimées pour les trames respectives à partir de laquelle les valeurs de quanti- fication globale sont calculées et en générant un facteur de complexité pour chaque macrobloc dans une trame par lequel les valeurs de quantification globale peuvent être modifiées sur une base de macrobloc. Générer le facteur de complexité sera d'abord considéré Ici, ce qui est considéré est la complexité d'un macrobloc relativement aux blocs à l'intérieur du macrobloc respectif et aux blocs entourant le macrobloc Si tous les macroblocs sont également complexes, ils peuvent être quantifiés de façon égale sans provoquer d'effets de quantification non uniformes. Autrement, si des macroblocs également complexes sont quantifiés différemment, des effets de quantification non- uniformes peuvent se produire Afin de réaliser une compression importante, cependant, il est nécessaire de quantifier inégalement des blocs ou des macroblocs à l'intérieur d'une trame Le problème alors est de déterminer o les effets de quantification peuvent survenir mais seront les moins visibles Ceci est réalisé comme suit Pour chaque trame un processus à deux passages est effectué Pendant le premier passage de chaque trame, la trame est comprimée en mode intra- trames et les coefficients sont quantifiés avec une valeur constante qui peut, par exemple, être la valeur de quantification moyenne de la trame précédente Le nombre de bits (valeur de comptage) des coefficients AC quantifiés, comprimés pour chaque bloc est enregistré (les mots codes présents sont écartés) Puis, pour chaque macrobloc, la valeur de comptage M Bx pour le bloc (à partir d'un groupe associatif de blocs) ayant le nombre le plus bas de bits codés, est déterminée Après que tous les M Bx de la trame sont déterminés,la valeur moyenne M Bxa des t 1 'B x est calculée Le facteur de complexité, MB_ comp, pour chaque macrobloc est calculé par la relation: M Bcompi = ((Kl)(MB_xi) + (K 3)(MB_xa))/((K 2)(M Bxa)+ (K 4)(MB_xi) o Kl, K 2,K 3 et K 4 sont des constantes qui sont déter- minées empiriquement Il a été trouvé que les valeurs de Kl = 2; K 2 = 2; K 3 = 1; et K 4 = 1 fournissent de bons résultats Pour K 3 et K 4 égaux à un, la valeur de MB_comp varie de 1/K 2 (dans les régions d'image les moins complexes) à Ki (dans les régions d'image les plus complexes) Remarquez que pour les images de texture uniforme, m Bcomp sera égal à un pour chaque macro- bloc. Les blocs associés à partir desquels MB_x est sélectionné pour un macrobloc respectif sont illustrés en Figure 6 E, F Igure 6, la matrice de grands carrés correspond aux macroblocs et les plus petits carrés correspondent aux blocs individuels de données codées Le grand carré central incluant les blocs BK 4, BK 5, BK 8 et BK 9, représente le macrobloc à examiner. MB_x est sélectionné à partir de l'ensemble de blocs BK 1 BK 12 Si l'un quelconque des blocs voisins (BK 1, BK 2, BK 3, BK 6, BK 7, BK 10, BK 11, BK 12) est simple (c'est à dire présente un comptage faible de bits de mot code), il est probable qu'au moins un bloc de macrobloc sera également simple, même si chacun des autres blocs du macrobloc est complexe Dans cette situation, le macro- bloc est supposé être de faible complexité et ne doit pas être soumis à un haut niveau de quantification. Un haut niveau de complexité est associé seulement avec des macroblocs o tous les blocs associés sont complexes (présentent un fort comptage de bits de mots codes) Un niveau plus élevé de quantification peut être appliqué aux blocs plus complexes sans conduire à des artefacts visibles. Le contrôleur de vitesse 18 inclut un compteur et une mémoire et pendant le premier passage au codage, initié par la commande du système, il compte la quantité de bits quantifiés fournis par le quantificateur 32, pour chaque bloc de la trame et mémorise les valeurs de comptage respectives Le contrôleur de vitesse examine, après cela, les valeurs de comptage des groupes de blocs associés avec chaque macrobloc pour déterminer le bloc de chaque groupe ayant la plus faible valeur de comptage et enregistre cette valeur comme M Bxi Une fois que toutes les M Bxi ont été déterminées, le contrôleur 18 détermine leur moyenne, MB_xa, et calcule les valeurs respectives M Bcomp Pendant le second passage au codage les valeurs MB comp sont appliquées au quantificateur 32 lorsque les macroblocs respectifs sont quantifiés. Les valeurs de quantification globale sont des valeurs utilisées pour une trame entière ou une partie de trame La formation de GLOBAL- QUANT est fondée sur un groupe de trames, à savoir, par exemple la valeur GLOBAL-QUANT 7 pour la trame 7 (Figure 1 B) est calculée par rapport à toutes les trames de la séquence de répétition des codages I, P, B des trames 1-15 Nominalement, la valeur GLOBAL- QUAN Ti sera différente pour les trames des différents modes de codage Pour générer les valeurs GLOBAL-QUANT, d'abord une valeur cible, GOF- TARGET, est calculée pour un groupe de trames Si seulement des données vidéo sont appliquées aux tampons de vitesse, la quantité de données GOF-size pour un groupe de trames sera limitée par la vitesse des données de transmission et sera égale au nombre de trames d'un groupe de trames multiplié par la vitesse des bits de sortie du tampon de vitesse divisé par la -vitesse de trame des données vidéo d'entrée Cette valeur diffère des données réelles passées par les tampons de vitesse puisque des données audio et/ou auxiliaires peuvent être ajoutées aux données transmises et est corrigée en conséquence sur une base de GOF L'ajustement est calculé par rapport aux données générées pendant le précédent GOF. Les valeurs GOF-TARGET sont calculées comme suit; GOF-TARGET = GOF Size-(GOF-TARGET 1-ACTUAL DAT An 2 n o GOF-TARGE Tn et GOF- TARGET N 1 correspond nt aux valeurs TARGET pour les GOF en cours et le tout dernier et ACTUAL DAT An 1 est la quantité présente de données n-i codées appliquées aux tampons de vitesse pendant le tout dernier GOF Au démarrage du système, la valeur GOF-TARGET pour le premier GOF est établie égale à GO Fsize. La valeur GOFTARGET est divisée parmi les trames respectives du g OF selon un rapport et la quantité d'espace de données réellement consommée par les trames précédemment codées dans un GOF Définissons T Size_I, T Size_P, T Size B comme les dimensions de cible pour les trames I,P, B respectivement dans un groupe de trames; L Bits_I, L Bits_P,L Bits B comme les nombres réels de bits codés générés pour les trames précédentes des types de codage respectifs; LQ _I,LQ_P, LQ B comme la valeur moyenne de quanti- fication pour les trames précédentes des types de codage respectifs; N_I, N_P, N_B comme les nombres des trames I,P,B dans un GOF; K_I, K_P, K_B comme des constantes (un rapport représentatif KI: KP: KB est 15: 10: 15): Le rapport sera réellement choisi par le concepteur respectif. Deux valeurs, n_I et n_P, B sont calculées à partir des paramètres précédents selon ce qui suit; n I = (N_I)(L Bits_I)(LQ_I)(K_I) + (NP)(L Bits P)(LQP)(K P)+ (N_B)(L Bits B)(LQ_B)(K_B); Les dimensions de cible pour les types respectifs des trames codées sont calculées à partir de: T Size_I = (GOF-TARGET)(L Bits_I)(LQ-I)(K_I)/n_I; T Size_P≤i GOF_TARGET- L Bits_I)(LB Its_P)(LQ_P)(K_P)/n_P,B; TS Ize B =((GOFTARGET-LB Its I)(LB Its B)(LQB)(KB)/n_P,B. Après que les valeurs cibles ont été déter- minées, les valeurs E Quant_I, E Quant_P, E Quant_B qui sont les valeurs moyennes de quantification attendues pour les trames suivantes codées I,P, et B sont calculées selon les relations suivantes: E Quant_P = (LQ_P)(LB Its_P)/T Size_P;: E Quant_B = (LQ_B)(L Bits_B)/T Size_B; E Quant I = (LQP)(KP)/K_I. Les valeurs respectives BS_I, BSP et BSB sont générées en multipliant les valeurs de quanti- fication attendues par les constantes respectives R_I, R P et R B, à savoir BS_I = (E Quant_I) (R_I); BS_P = (E Quant_P)(R_P); BS_B = (E Quant_B) (RB). La constante R_I peut égaler RP et RB et être proportionnelle à la vitesse des bits du canal divisée par le produit de la vitesse de trame par 1 la valeur de quantification maximale Une valeur de quantification maximale représentative peut être établie à 31. Pendant le processus de codage d'une trame la valeur BS_i peut être actualisée tous les m macroblocs selon la relation: B Sik =BS_ik + m M Bs (m)(T Size_i)/NMB o l'indice i correspond à I,P ou B; BS Ik correspond à la valeur de BS_i courante à générer; BS_ik_ 1 correspond à la dernière valeur de B Si calculée; m M Bs est la taille de la quantité de données pour les m macro- blocs précédents (en bits); m est un nombre entier de macroblocs (de préférence petit); et NMB est le nombre total de macroblocs dans la trame à coder La valeur GLOBAL-QUANT est générée à partir de GLOBAL-QUAN Ti = BS_i/R_i È, o l'indice i correspond à I, P ou B comme il convient Cette valeur est appliquée au quantificateur au début de chaque période de trames respective. En résumé, le paramètre GLOBAL-QUANT est généré en calculant d'abord une valeur cible corres- dant à la quantité d'espace de données disponible pour un GOF Cette valeur cible est proportionnelle à la vitesse des données de transmission divisée par la vitesse de trame et ajustée à l'aide de l'erreur de la valeur cible calculée pour le GOF précédent GOF-TARGET est ensuite proportionné pour générer des valeurs cibles de trame T Sizei pour les différentes trames du GOF selon le type de codage Les valeurs cibles de trame T Sizei sont calculées comme une fonction du nombre de trames de chaque type de codage dans une GOF et de la quantité de données codées générée pour les types respectifs de trames codées du GOF précédent Les valeurs GLOBAL-QUANT pour les trames respectives sont générées à partir des inverses de T Size i et ajustées périodiquement pendant le codage des trames respectives selon la quantité de données codées produites jusqu'ici pour la trame respective. Pendant le second passage au codage, quand le signal vidéo est véritablement codé pour la trans- mission, le contrôleur de vitesse compte le nombre de bits codés fournis par le quantificateur et accumule ces valeurs comme m M Bs et L Bitsi pour actualiser la valeur GLOBAL-QUANT et calculer les valeurs cibles. De plus, le contrôleur de vitesse accumule les valeurs de quantification sur les trames respectives et génère la moyenne L Qi des valeurs de quantification pour t usage dans la fourniture des valeurs suivantes de GLOBAL-QUANT Le paramètre ACTUAL-DATA peut être obtenu en comptant le nombre de bits appliqué aux tampons de vitesse dans les intervalles de GOF respectifs Pour convenance, ces données n'ont pas besoin d'être accumulées sur un seul GOF mais peuvent inclure des données venant de deux GOF adjacents aussi longtemps que le nombre requis et les types de trames sont inclus dans l'intervalle sur lequel les données sont accumulées. 1 O Idéalement, si un bourrage de bits survient dans l'un quelconque des dispositifs de codage entre le quanti fi- cateur et les tampons de vitesse, la quantité du bourrage de bits doit être calculée et soustraite des données accumulées correspondant aux données appliquées aux tampons de vitesse. Dans ce qui précède, il a été noté que le standard MPEG proposé est codé un champ par trame mais quele système de type MPEG de TVHD de l'exemple est codé deux champs par trame L'invention, cependant est applicable aux deux systèmes Ainsi, dans les revendications, o les mots trames ou groupes de trames sont utilisés, ils signifient de se référer à la quantité de données réellement traitée par image ou groupe d'images, qu'elle soit un champ par trame ou deux champs par trame etc. 19 - REVENDICATIONS Dispositif de contr 8 le de quantification de données videoô-dans un système de compression de signaux vidéo du type qui fournit des trames comprimées de données agencées comme des macroblocs de données, lesdits macroblocs incluant une pluralité de blocs de données codées susceptibles de quantification, ledit dispositif de quantification étant caractérisé par: un quantificateur ( 32) récepteur desdits macroblocs de données pour quantifier les données codées selon une fonction de quantification prédéterminée sur une base de macroblocs par monobloc et sensibles à un signal de contrale de complexité pour modifier ladite fonction de quantification et, un moyen ( 18) sensible aux blocs à l'intérieur des, et adjacents aux, macroblocs respectifs de données pour générer lesdits signaux de contr 8 le de complexité pour lesdits macroblocs respectifs. 2 Dispositif selon la revendication 1 caractérisé en ce qu'il comprend en outre des moyens pour adapter ledit quantificateur ( 32) afin de quantifier tous les macroblocs à l'intérieur d'une trame avec la meme fonction de quantification pendant un premier passage de quantification et pour quantifier les macroblocs à l'intérieur de ladite trame avec une fonction de quantification modifiée par ledit. signal de complexité pendant un second passage de quantification et dans lequel ledit moyen ( 18) pour générer lesdits signaux de contr 8 le de complexité est sensible aux blocs de données quantifiées pendant ledit premier passage de quantification. 3 Dispositif selon la revendication 2 caractérisé en ce que ledit moyen ( 18) pour générer lesdits signaux de contrôle de complexité comporte des moyens pour: A) déterminer la quantité de données quantifiées dans les blocs respectifs des trames respectives: B) pour chaque macrobloc, déterminer la quantité de données MB x dans le bloc d'un groupe de blocs associé avec ledit macrobloc, ayant le moins de données; C) calculer la moyenne MB _xa d'une pluralité de MB_x dans une trame et; D) calculer les signaux de contr 8 le de complexité pour les macroblocs respectifs comme une fonction des MB x correspondants 2684833 et de ladite moyenne. 4 Dispositif selon la revendication 3 caractérisé en ce que ledit signal de complexit est calculé selon la relation: ( (Kl) (MB x) + (K 3) (MB xa))/(K 2) rl CB xa) + (K 4) (MB x)) dans laquelle Kl, K 2, K 3 et K 4 sont des constantes prédéterminées. Dispositif selon la revendication 1 dans lequel les trames respectives de données sont codées selon une séquence -cyclique de modes de codage, chaque cycle comprenant une pluralité de trames désignées GOF et caractérisé en ce que ledit dispositif inclut, en outre: des moyens pour calculer une valeur cible correspondant à la quantité de données quantifiées attendues pour les groupes respectifs de trames et qui est une fonction de l'erreur entre la quantité présente de données quantifiées générées pour le précédent GOF et la valeur cible calculée pour ledit précédent GOF; des moyens pour proportionner ladite valeur cible parmi les trames respectives d'un GOF et générer les valeurs de quantifications globales pour les trames respectives d'un groupe de trames; et dans lequel ledit quantificateur est sensible à la fois auxdites valeurs de quantification globales et audit signal de complexité pour modifier ladite fonction de quantification. 6 Dispositif selon la revendication 5 caractérisé en ce que lesdits moyens pour proportionner ladite valeur cible comporte un moyen d'actualisation périodique desdites valeurs de quantification globales dans une trame comme une fonction de la quantité de données quantifiées générée entre les périodes d'ac- tualisation. 7 Dispositif selon la revendication 1 caractérisé en ce que ledit moyen pour générer lesdits signaux de contr 8 le de complexité comprend des moyens pour: A) déterminer la quantité de données dans les blocs respectifs des trames respectives; B) pour chaque macrobloc, déterminer la quantité de données MB_x dans le bloc d'un groupe de blocs associé avec ledit macrobloc, ayant le moins de données; C) calculer la moyenne MB xa d'une pluralité de M Bx dans 21 - une trame; et D) calculer les signaux de contr 8 le de complexité pour les macroblocs respectifs comme une fonction des MB_x correspondants et de ladite moyenne. 8 Dispositif selon la revendication 7 caractérisé en ce que ledit signal de complexité est calculé selon la relation: ((K 1) (MB_x) + ?IB_xa) / ( (K 2) (MB_xa) + M Bx) dans laquelle K 1 et K 2 sont des constantes prédéterminées. 9 Dispositif selon la revendication 7 caractérisé en ce que les blocs associés avec ledit macrobloc comprennent les blocs inclus dans ledit macrobloc et les blocs situés immédiatement à côté de la périphérie dudit macrobloc.