FR2903271A1 - Procede de codage en mode trame ou bitrame - Google Patents

Procede de codage en mode trame ou bitrame Download PDF

Info

Publication number
FR2903271A1
FR2903271A1 FR0605969A FR0605969A FR2903271A1 FR 2903271 A1 FR2903271 A1 FR 2903271A1 FR 0605969 A FR0605969 A FR 0605969A FR 0605969 A FR0605969 A FR 0605969A FR 2903271 A1 FR2903271 A1 FR 2903271A1
Authority
FR
France
Prior art keywords
frame
mode
image
activity
macroblocks
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.)
Pending
Application number
FR0605969A
Other languages
English (en)
Inventor
Julien Haddad
Dominique Thoreau
Philippe Guillotel
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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing 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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to FR0605969A priority Critical patent/FR2903271A1/fr
Priority to CN200780025056.0A priority patent/CN101485207B/zh
Priority to US12/308,907 priority patent/US8428132B2/en
Priority to JP2009517168A priority patent/JP5148605B2/ja
Priority to EP07786845A priority patent/EP2036356A1/fr
Priority to PCT/EP2007/056366 priority patent/WO2008000737A1/fr
Publication of FR2903271A1 publication Critical patent/FR2903271A1/fr
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/112Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/172Methods 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 picture, frame or field
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Abstract

Le procédé comporte les étapes suivantes :- calcul de l'activité spatiale de chaque macrobloc et de l'activité temporelle entre les macroblocs constituant un groupe de macroblocs en mode trame,- calcul d'un indice d'activité relative du groupe qui est une fonction croissante de l'activité temporelle et une fonction décroissante de l'activité spatiale du groupe,- comparaison (10) de l'indice d'activité relative du groupe à un seuil prédéfini pour le définir comme groupe avec activité (11),- codage de l'image en mode trame ou bitrame (15, 16) en fonction du nombre de groupes de macroblocs détectés avec activité (14) par rapport au nombre de groupes de macro blocs dans l'image.Les applications concernent la compression de données, en particulier le standard H 264

Description

L'invention concerne un procédé et un dispositif de codage d'une image en
mode trame ou bitrame, le mode bitrame pouvant exploiter localement dans l'image, pour un groupe de macroblocs, le mode trame.
La vidéo entrelacée est le format le plus utilisé pour la télévision. Une image bitrame ou frame en anglais se compose de deux trames paire et impaire aussi appelées haute et basse, top field et bottom field en anglais, qui représentent respectivement les lignes paires et impaires de l'image. La trame haute et la trame basse étant acquises à deux instants différents, certaines images d'une séquence présentent des artefacts d'entrelacement dus à un mouvement entre les deux acquisitions. Pour mieux supporter ce format, le standard MPEG 4 ou H264 permet de coder une image selon trois mode différents : bitrame , trame , MBAFF selon l'acronyme de l'expression anglaise Macro Block Adaptive Field Frame . En mode bitrame, l'image est codée telle quelle, en mode trame, les deux trames sont codés séparément. Le mode MBAFF peut être utilisé en addition du mode bitrame pour améliorer ce mode en permettant de séparer localement les trames de l'image. La figure 1 représente un groupe de macroblocs d'une image ou SuperMacroBloc SMB constitué de deux macroblocs MB verticaux, codé en mode trame ou en mode bitrame. Le codage du supermacrobloc en mode bitrame consiste à coder des macroblocs référencés 1 et 2 constitués chacun d'une alternance de lignes d'une première et d'une deuxième trame. Le codage du supermacrobloc en mode trame consiste à coder des macroblocs référencés 3 et 4 constitués chacun d'une succession de lignes appartenant respectivement à la première et à la deuxième trame. La figure 2 représente une image référencée 5 pour laquelle un balayage image est effectué par paire de macroblocs ou supermacrobloc référencé 6 permettant ce choix de codage en local. Se pose donc le problème de la sélection du mode, mode de codage trame ou bitrame pour l'image et, pour le mode de codage bitrame de l'image, mode de codage trame ou bitrame des supermacroblocs de l'image, qui permet d'optimiser la compression d'un point de vue débit/qualité de l'image. Deux types de solutions existent actuellement pour résoudre ce problème, celles qui reposent sur un critère a posteriori et celles qui reposent sur un critère a priori. Dans le cadre d'un algorithme a posteriori, le codage s'effectue en deux passes, une en mode trame et l'autre en mode bitrame ou bitrame + MBAFF. Le codeur mémorise alors les résultats obtenus après chacune des passes puis les compare à 2903271 2 l'aide d'une fonction d'optimisation basée sur un compromis débit/qualité de l'image. L'inconvénient de ce type de méthode est son coût en temps de calcul. Plusieurs approches a priori existent: Une première approche à priori est décrite dans le document intitulé Fast 5 decision on picture adaptive frame /field coding for H.264 , auteurs P. Yin, A. Tourapis, J. Boyce. L'algorithme décrit se propose de résoudre le problème dans le cas où le codeur a le choix entre les modes bitrame et trame uniquement. Il est basé sur l'hypothèse que les zones d'une image qui sont en mouvement sont très souvent mieux codées en mode trame qu'en mode bitrame.
10 L'idée principale est de détecter les supermacroblocs, constitués de 2 macroblocs verticaux, qui appartiennent à une région en mouvement, en utilisant le filtre de détection de mouvement présenté dans le document intitulé "A Robust Motion Detection and Estimation Filter For Video Signais", auteurs M. Latzel, J. K. Tsotsos, Proceedings of the 2003 SPIE Conf. on Image and Video Communication and 15 Processing, Jan. 2003. Si l'image est majoritairement composée de macroblocs en mouvement , l'algorithme prend la décision de la coder en mode trame, en mode bitrame dans l'autre cas. Le filtre détecteur de mouvement utilisé est donné par ses coefficients 20 KBP = [ù1,2,ù3,4,ù3,2,ù1]. Ce filtre est appliqué verticalement à l'imagel(x,y), c'est à dire aux valeurs de luminance de l'image, pour, en sortie, donner l'image IBP (x, y). Une image de masque est ensuite construite de la manière suivante: 1 si Il BP (x, y)l > Tl 0 sinon 25 avec T1, seuil prédéfini. Un supermacrobloc est considéré en mouvement si les pixels x,y de ce supermacrobloc SMB sont tels que: E M(x, y) > T2 x,yeSMB 30 avec T2, seuil prédéfini. Le ratio S de supermacroblocs en mouvement par rapport aux supermacroblocs dans l'image est alors calculé ainsi que la moyenne de la valeur absolue de la différence D en luminance entre l'image courante et sa référence. La décision bitrame/trame est prise pour toute l'image, comme suit: 35 - si l'image est de type intra et si S<0,5, codage en mode bitrame sinon, codage en mode trame, M(x, y) = 2903271 3 -sinon, si l'image est de type prédictif bidirectionnel et si S<0,6, codage en mode bitrame sinon, codage en mode trame - sinon, si l'image est de type prédictif unidirectionnel, 5 et si ((S>0,5) OU ((S>0,3 ET D>4,5) ET (D<10,0))), codage en mode trame, sinon codage en mode bitrame. Les termes en majuscules ET et OU sont les opérateurs logiques. Est également proposé dans le document une détermination automatique des 10 différents seuils. L'inconvénient de cette méthode est qu'elle n'est pas optimisée car elle ne tient pas compte de l'exploitation locale possible du mode trame ou bitrame. Elle n'est pas adaptée au mode MBAFF. Une autre approche est proposée dans la demande de brevet européenne 15 publiée sous le numéro EP1494483 et intitulée Video coder with control of GOP structure by spatial and temporal activity déposée le 5 janvier 2005, inventeurs X. Ducloux, P Alexandre et L Noblet, dans laquelle est décrit un algorithme se basant cette fois sur un critère global. La comparaison de deux métriques calculées sur toute l'image permet la sélection bitrame/trame.
20 Les deux métriques sont les suivantes: Le gradient de luminance intra-trame est la somme des valeurs absolues des différences entre deux lignes consécutives et est calculé 16 lignes par 16 lignes dans la trame : j = 8k + 7 i=nbpels -1 FLADIntran [k]= I FYn(i,2 j) ûFYn(i,2j +1) j = 8k i=0 25 où FYn(i, j) représente la valeur de luminance du pixel de coordonnée horizontale i et de coordonnée verticale j de la k ième rangée de blocs 16x16 dans la trame n, l'indice k variant de k=0 à k= (nombre de lignes de la trame)/16 - 1. Les gradients de luminance inter-trame sont donnés par la somme des valeurs absolues des différences entre pixels colocalisés de deux trames séparées par des 30 périodes de 1T, 2T, xT et sont calculés 16 lignes par 16 lignes dans la trame : j=16k+15i=nbpelsû1 FLADInterlTn [k] = E I FYn(i, j) ûFYn -1(i, j) j =16k i=0 j =16k +15 i=nbpels -1 FLADInter2Tn [k]_ E FYn(i, j) ûFYn û 2(i, j) j =16k i=0 35 2903271 4 j =16k +15 i=nbpels -1 FLADInterxTn [k] = E I FYn(i, j) ùFYn ù x(i, j) j =16k i=0 Les dénominations FLADIntra et FLADInter sont à rapprocher de l'expression 5 anglaise FieLd Absolute Difference. Les gradients globaux intra-trame FLADIntraSumn et inter-trame FLADInter1Tn sont donnés, pour la trame n,, par : k = nblines /16 -1 FLADIntraSumn = E FLADIntran [k] k=0 k = nblines /16 -1 FLA.DInterlTSumn = E FLADInterlTn [k] k=0 En supposant que la trame n-1 soit la trame haute de l'image et n la trame basse, le critère de sélection est donné par l'activité spatiale: 1 + min(FLADInterlTSumn_1, FLADInterlTSumn ) SPAct = 2 + 0.5 * max(picture ù size, (FLADIntraSum n_1 + FLADIntraSumn )) Si SPAct est supérieur à un seuil prédéfini, l'image est codée en mode trame, sinon l'image est codée en utilisant le mode bitrame + MBAFF.
20 Enfin, une troisième approche consiste à coder toutes les images B, de type prédictif bidirectionnel, en mode bitrame et les images P de type prédictif unidirectionnel en mode trame. Ce simple algorithme provient de la constatation que ce sont les modes les plus utilisés par l'algorithme a posteriori pour chaque type d'image.
25 Concernant cet art antérieur, le filtre détecteur de mouvement nécessite des traitements sur l'image complète, des calculs et mémorisation de masques. Les solutions de filtrage ne sont pas optimisées, en particulier pour le choix du mode de codage au niveau du macrobloc ou supermacrobloc. De même, le calcul de gradients globaux ne permet pas d'optimiser la 30 compression, le choix du mode de codage étant effectué pour l'image complète. La dernière solution, si elle est simple de mise en oeuvre, n'est pas optimisée en terme de taux de compression, à qualité de restitution donnée.
10 15 2903271 5 Un des buts de l'invention est de pallier les inconvénients précités. L'invention a pour objet un procédé de codage d'images en mode trame ou bitrame, le mode bitrame image pouvant exploiter localement dans l'image, pour un groupe de macroblocs, le mode trame, 5 caractérisé en ce qu'il comporte les étapes suivantes : - calcul, pour un groupe de macroblocs en mode trame, des activités spatiales de chaque macrobloc le constituant et de l'activité temporelle entre les macroblocs de chaque trame le constituant, - calcul d'un indice d'activité relative du groupe qui est une fonction croissante 10 de l'activité temporelle et une fonction décroissante des activités spatiales calculées, - comparaison de l'indice d'activité relative du groupe à un seuil prédéfini pour le définir comme groupe avec activité, - codage de l'image en mode trame ou bitrame en fonction du nombre de groupes de macroblocs détectés avec activité par rapport au nombre de groupes de 15 macroblocs dans l'image. Selon une mise en oeuvre particulière, l'activité temporelle est une fonction du gradient inter-trame entre les macroblocs trames du groupe de macroblocs en mode trame et l'activité spatiale est une fonction du gradient intra-trame entre les lignes prises deux à deux de chacun des macroblocs trames du groupe de macroblocs en mode 20 trame. Selon une mise en oeuvre particulière, l'indice d'activité est une fonction croissante du gradient inter-trame et une fonction décroissante de la somme des gradients intra-trame. Selon une mise en oeuvre particulière, le dit groupe de macroblocs est un 25 supermacrobloc et le mode trame ou bitrame au niveau du groupe de macroblocs est le mode MBAFF, acronyme de l'anglais MacroBlock Adaptive Field Frame. Selon une mise en oeuvre particulière, l'activité relative a pour valeur : R= FLADInterMB 1 + FLADIntraMB n + FLADIntraMB n-1 15 15 avec FLADInterMB = E E I FYn(i, j) ûFYn -1(i, j) I , j=o i=o 7 15 30 FLADIntraMBn = E FYn(i,2 j) ûFYn(i,2 j +1) I , =o ;=o FYn(i, j) représentant la valeur de luminance du pixel de coordonnée horizontale i et de coordonnée verticale j de la trame n du supermacrobloc. Selon une mise en oeuvre particulière, si le rapport du nombre de groupes de macroblocs déclarés avec activité sur le nombre total de groupes de macroblocs est 35 supérieur à un seuil prédéterminé, l'image est codée en mode trame, l'image étant codée en mode bitrame MBAFF dans le cas contraire.
2903271 6 Selon une mise en oeuvre particulière, le seuil prédéterminé est Y2. L'invention concerne également un dispositif pour la mise en oeuvre du procédé, comprenant un circuit de préanalyse pour effectuer un algorithme de décision de codage, relié à un circuit de codage pour le codage proprement dit d'une image en 5 mode trame ou bitrame, caractérisé en ce que le circuit de codage reçoit du circuit de préanalyse une information de codage en mode trame ou bitrame en fonction du nombre de groupes de macroblocs détectés avec activité, dans l'image. L'invention, en adaptant la détection de mouvement ou d'activité aux entités de 10 codage et aux modes de codage possible, c'est à dire au groupe de macroblocs et au mode trame et bitrame, et en améliorant cette détection, permet d'optimiser le choix du mode de codage trame ou bitrame pour l'image. La compression de données, ou la qualité de l'image pour un débit donné, est améliorée. D'autres particularités et avantages de l'invention apparaîtront clairement dans 15 la description suivante donnée à titre d'exemples non limitatifs et faite en regard des figures annexées qui représentent : - la figure 1, un groupe de macrobloc en mode bitrame et trame, - la figure 2, un codage d'image utilisant le mode MBAFF, - la figure 3, un algorithme de codage selon l'invention.
20 Le principe consiste à utiliser la métrique gradient dans une approche locale. Il s'agit de détecter des supermacroblocs SMB de l'image répondant à un critère particulier relatif aux gradients. Une phase de préanalyse permet de calculer leur ratio afin de décider du mode de codage bitrame/trame au niveau image.
25 Dans la suite de la description, on appellera activité spatiale ou complexité spatiale d'un bloc, une grandeur qui est directement liée à la corrélation spatiale à l'intérieur de ce bloc. Lorsque la complexité spatiale est grande, la corrélation est faible et inversement. De même, la complexité temporelle est liée à la corrélation temporelle, en général entre deux blocs colocalisés d'images ou trames successives d'une 30 séquence d'images. Le fait d'exploiter l'activité spatiale verticale dans la trame pour la sélection du mode de codage des supermacroblocs permet de relativiser l'information de mouvement correspondant à la différence inter-trames. L'intérêt du codage MBAFF est en effet moindre s'il s'agit de zones homogènes en mouvement ou de zones texturées 35 stables. Dans cette situation, à savoir encodage de l'image en trames séparées ou en bi-trame avec la possibilité de MBAFF, l'essentiel est d'une part de prendre la décision judicieuse trame ou bi-trame et de pouvoir utiliser le codage MBAFF là où cela est nécessaire. Ainsi, si on considère la formulation précédente : 2903271 7 SPAct = 1 + min(FLADInterlTSum n-1, FLADInterlTSum ) 2 + 0.5 * max(picture û size, (FLADIntraSum n_1 + FLADIntraSumn )) on peut s'apercevoir que la valeur SPAct résulte d'un calcul global sur toute l'image, la décision trame/bi-trame étant prise par rapport à un seuil. En réalité, ce calcul global, de par le moyennage, a tendance à diluer les mesures locales relatives aux paires de 5 macroblocs. Comme cela est évoqué plus loin dans le document, l'invention propose dans un premier temps de prendre localement une décision, trame/bi-trame, et, dans un deuxième temps, d'en faire une analyse plus globale, cette analyse s'opérant à partir de l'ensemble des décisions locales. Des résultats de simulation, présentés dans le document, montrent la pertinence de cette approche.
10 La figure 3 représente un organigramme du procédé selon l'invention. Les données relatives à une trame n-1 et à une trame n sont transmises à l'entrée de l'organigramme. Chaque supermacrobloc, constitué d'un macrobloc de la trame n-1 et d'un macrobloc de la trame n est traité successivement.
15 L'étape 7 effectue le calcul intra de FLADIntraMBn correspondant à la différence en valeur absolue des lignes, prises deux à deux, à l'intérieur du macrobloc 16 x 16 de la trame n.
7 15 FLADIntraMBn = E E I FYn(i,2 j) -FYn(i,2 j + 1) j=0 i=0 De même pour le calcul de FLADIntraMBn_1 correspondant au macrobloc 16 x 20 16 de la trame n-1 : 7 15 FLADIntraMBn_1 = E E I FYn - i(i,2j) ûFYn -1(i,2 j +1) I j=0 i=0 FYn(i, j) représente la valeur de luminance du pixel de coordonnée horizontale i et de coordonnée verticale j de la trame n du supermacrobloc. On suppose que la trame n-1 est la trame haute de l'image et n la trame basse de l'image du supermacrobloc.
25 L'étape 8 effectue la calcul inter de FLADinterMB correspondant à la différence en valeur absolue entre le macrobloc de la trame n et celui de la trame n-1.
15 15 FLADInterMB = E E I FYn(i, j) ûFYn j) I j=0 i=0 Pour chaque supermacrobloc constitué des lignes du macrobloc de la trame n et des lignes du macrobloc correspondant de la trame n-1, le gradient vertical du bloc 30 16x32, lorsqu'il est en configuration bitrame, est comparé au gradient vertical du bloc 16x32 lorsqu'il est en configuration trame. L'étape 9 calcule ainsi le rapport R appelé indice d'activité relative: R= FLADInterMB 1 + FLADIntraMBn + FLADIntraMBn-1 2903271 8 D'une autre manière, le rapport R représente au numérateur le gradient de macroblocs trames 16 x 16 entre deux trames successives n-1 et n et au dénominateur la somme à 1 des gradients de macroblocs trames 16 x 16 entre lignes successives prises deux à deux, de la trame n et de la trame n-1.
5 L'étape suivante 10 compare cette valeur calculée R à un seuil T1 prédéfini, qui peut être déterminé de manière empirique. Si le rapport R est supérieur au seuil T1, le supermacrobloc est considéré comme appartenant à une région en mouvement ou en activité et est appelé supermacrobloc avec activité. Si R est supérieur au seuil T1, une étape 11 incrémente un compteur 10 NbMBtrame permettant de connaître le nombre de macroblocs de l'image répondant à cette condition. Si R est inférieur au seuil T1, l'étape suivante est l'étape 12 qui vérifie s'il s'agit du dernier supermacrobloc de l'image. S'il ne s'agit pas du dernier supermacrobloc, l'étape 12 est rebouclée sur 15 l'étape 7 par l'intermédiaire d'une étape 13 qui remplace le supermacrobloc courant par le supermacrobloc suivant selon le sens de balayage. S'il s'agit du dernier supermacrobloc, c'est à dire lorsque l'image a été entièrement traitée, l'étape suivante 14 compare la valeur NbMBtrame au nombre de macroblocs dans l'image divisé par deux. Si cette valeur est supérieure à ce nombre, c'est à dire si le ratio de 20 supermacroblocs en mouvement aux supermacroblocs de l'image dépasse 50%, l'image est codée en mode trame, étape 15. Si cette valeur est inférieure ou égale, l'image est codée en mode bitrame, exploitant le mode MBAFF, étape 16. L'algorithme mis en oeuvre se base sur un critère a priori. Si, lors de la préanalyse, le nombre de macroblocs déclarés en mouvement, ou avec activité spatiale 25 et temporelle, est supérieur à un seuil, dans l'exemple la moitié du nombre de macroblocs dans l'image, il est avantageux de forcer le codage de tous les macroblocs de l'image en mode trame, c'est à dire de coder l'image en mode trame. Dans le cas contraire, l'image est codée en mode bitrame, laissant le choix, pour le codage au niveau du supermacrobloc, au mode trame ou bitrame.
30 Le procédé selon l'invention a été comparé à ceux précédemment mentionnés, à savoir celui exploitant un algorithme du gradient et celui exploitant l'algorithme de codage des images P de type prédictif en mode trame et des images B de type bidirectionnelles en mode bitrame, sur quelques séquences usuelles connues pour être 35 exploitées en tant que séquences de test pour la détermination de qualité d'un codage. Les résultats sont donnés dans le tableau ci-dessous en comparant avec un algorithme a posteriori, qui est l'algorithme de référence donnant les meilleurs résultats. Les chiffres indiqués représentent des pourcentages de perte en terme de débit/distorsion d'un algorithme par rapport au meilleur algorithme marqué d'une 2903271 9 croix. Il s'agit du rapport des aires sous la courbe distorsion=f(débit). Cette manière de comparer des algorithmes de codage vidéo correspond à celle actuellemnt utilisée dans la communauté de la compression vidéo, plus connue sous le nom de la mesure Bjontegaard et décrite dans le document de Gisle Bjontegaard, "Calculation of 5 average PSNR differences between RD curves", document VCEG-M33, ITU-T Video Coding Experts Group (VCEG) Meeting, April 2001. Algorithme a Algorithme P Algorithme du Algorithme posteriori en trame, B Gradient Proposé en bitrame auto+ x -24.88 -22.93 -19.83 ski+ x -17.17 -21.24 -21.04 tennis+ x -16.46 -15.77 -15.77 bigdil+ x -13.46 -14.43 -18.73 defile-garde_720_576 x -20.55 -19.17 -19.17 patinx -23.49 -26.32 -21.47 vitesse1 720 576 patin- x -19.04 -25.82 -19.4 vitesse2 _ 720 576 _ mobcal 720x480 x -19.09 --1414.81.58 -14.81 flower+ x -18.86 -14.58 ferris+ x -18.07 -17.19 -15.99 Exception faite d'une seule séquence (bigdil), l'algorithme selon l'invention 10 conduit à des résultats meilleurs ou au moins équivalent à celui du gradient. L'invention concerne également un dispositif pour la mise en oeuvre du procédé. II comporte un circuit de préanalyse et un codeur proprement dit. Le circuit de préanalyse exploite l'algorithme de décision trame-bitrame précédemment décrit.
15 L'information relative au mode de codage trame-bitrame est transmise au codeur pour la réalisation effective du codage de la séquence d'images. Les exemples ont été donnés pour de macroblocs de taille 16 x 16. Bien entendu, l'invention s'applique à des macroblocs de taille quelconque.
20 L'invention s'applique à tout type de standard exploitant le mode MBAFF, en particulier le standard MPEG4 AVC ou H 264.

Claims (8)

REVENDICATIONS
1. Procédé de codage d'images (5) en mode trame ou bitrame, le mode bitrame 5 image (1,
2) pouvant exploiter localement dans l'image, pour un groupe de macroblocs, le mode trame (3, 4), caractérisé en ce qu'il comporte les étapes suivantes : - calcul, pour un groupe de macroblocs en mode trame, des activités spatiales de chaque macrobloc le constituant et de l'activité temporelle entre les macroblocs de 10 chaque trame le constituant, - calcul d'un indice d'activité relative du groupe qui est une fonction croissante de l'activité temporelle et une fonction décroissante des activités spatiales calculées, - comparaison (10) de l'indice d'activité relative du groupe à un seuil prédéfini pour le définir comme groupe avec activité (11), 15 - codage de l'image en mode trame ou bitrame (15, 16) en fonction du nombre de groupes de macroblocs détectés avec activité (14) par rapport au nombre de groupes de macroblocs dans l'image. 2. Procédé selon la revendication 1, caractérisé en ce que l'activité temporelle 20 est une fonction du gradient inter-trame (8) entre les macroblocs trames du groupe de macroblocs en mode trame et en ce que l'activité spatiale est une fonction du gradient intra-trame (7) entre les lignes prises deux à deux de chacun des macroblocs trames du groupe de macroblocs en mode trame. 25
3. Procédé selon la revendication 2, caractérisé en ce que l'indice d'activité est une fonction croissante du gradient inter-trame et une fonction décroissante de la somme des gradients intra-trame.
4. Procédé selon la revendication 1, caractérisé en ce que le dit groupe de 30 macroblocs est un supermacrobloc et en ce que le mode trame ou bitrame au niveau du groupe de macroblocs est le mode MBAFF, acronyme de l'anglais MacroBlock Adaptive Field Frame.
5. Procédé selon la revendication 4, caractérisé en ce que l'activité relative a 35 pour valeur : FLADInterMB 1 + FLADIntrrMBä + FLADIntraMBä_1 15 15 avec FLADInterMB =: E E I FYn(i, j) ùFYn -1(i, j) 1, j=o i=o R= 2903271 11 ~7+ 15 FLADIntraMBn = !~ FYn(i,2 j) -FYn(i,2j + 1) 1, j=0 i=0 FYn(i, j) représentant la valeur de luminance du pixel de coordonnée horizontale i et de coordonnée verticale j de la trame n du supermacrobloc.
6. Procédé selon la revendication 1, caractérisé en ce que, si le rapport du nombre de groupes de macroblocs déclarés avec activité sur le nombre total de groupes de macroblocs est supérieur à un seuil prédéterminé (14), l'image est codée en mode trame (15), l'image étant codée en mode bitrame MBAFF (16) dans le cas contraire.
7. Procédé selon la revendication 6, caractérisé en ce que le seuil prédéterminé (14) est Y2.
8. Dispositif pour la mise en oeuvre du procédé selon la revendication 1, comprenant un circuit de préanalyse pour effectuer un algorithme de décision de codage, relié à un circuit de codage pour le codage proprement dit d'une image en mode trame ou bitrame, caractérisé en ce que le circuit de codage reçoit du circuit de préanalyse une information de codage en mode trame ou bitrame en fonction du nombre de groupes de macroblocs détectés avec activité, dans l'image.
FR0605969A 2006-06-30 2006-06-30 Procede de codage en mode trame ou bitrame Pending FR2903271A1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR0605969A FR2903271A1 (fr) 2006-06-30 2006-06-30 Procede de codage en mode trame ou bitrame
CN200780025056.0A CN101485207B (zh) 2006-06-30 2007-06-26 帧模式或场模式的编码方法和设备
US12/308,907 US8428132B2 (en) 2006-06-30 2007-06-26 Frame or field mode coding method
JP2009517168A JP5148605B2 (ja) 2006-06-30 2007-06-26 フレーム・モード又はフィールド・モードの符号化方法
EP07786845A EP2036356A1 (fr) 2006-06-30 2007-06-26 Procede de codage en mode trame ou bitrame
PCT/EP2007/056366 WO2008000737A1 (fr) 2006-06-30 2007-06-26 Procede de codage en mode trame ou bitrame

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0605969A FR2903271A1 (fr) 2006-06-30 2006-06-30 Procede de codage en mode trame ou bitrame

Publications (1)

Publication Number Publication Date
FR2903271A1 true FR2903271A1 (fr) 2008-01-04

Family

ID=37907138

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0605969A Pending FR2903271A1 (fr) 2006-06-30 2006-06-30 Procede de codage en mode trame ou bitrame

Country Status (6)

Country Link
US (1) US8428132B2 (fr)
EP (1) EP2036356A1 (fr)
JP (1) JP5148605B2 (fr)
CN (1) CN101485207B (fr)
FR (1) FR2903271A1 (fr)
WO (1) WO2008000737A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784107A (en) * 1991-06-17 1998-07-21 Matsushita Electric Industrial Co., Ltd. Method and apparatus for picture coding and method and apparatus for picture decoding
EP1494483A2 (fr) * 2003-07-04 2005-01-05 Nextream France Codeur vidéo avec controle de la structure de GOP selon l'activité spatiale et temporelle
WO2006033915A2 (fr) * 2004-09-16 2006-03-30 Thomson Licensing Procede et appareil de codage rapide de trame et de champ video

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2828997B2 (ja) * 1988-07-22 1998-11-25 株式会社日立製作所 適応型変換符号化装置
JP3125145B2 (ja) * 1990-08-29 2001-01-15 日立電子株式会社 画像データの高能率符号化方法及びその装置
JP2684941B2 (ja) * 1992-11-25 1997-12-03 松下電器産業株式会社 画像符号化方法及び画像符号化装置
JP3092280B2 (ja) * 1991-07-30 2000-09-25 ソニー株式会社 画像信号の高能率符号化及び復号化装置
JP2991833B2 (ja) * 1991-10-11 1999-12-20 松下電器産業株式会社 インターレス走査ディジタルビデオ信号の符号化装置及びその方法
US6259733B1 (en) * 1998-06-16 2001-07-10 General Instrument Corporation Pre-processing of bit rate allocation in a multi-channel video encoder
GB9928022D0 (en) * 1999-11-26 2000-01-26 British Telecomm Video coding and decording
JP4222274B2 (ja) * 2004-08-20 2009-02-12 日本ビクター株式会社 符号化モード選択装置及び符号化モード選択プログラム
JP2006080925A (ja) * 2004-09-09 2006-03-23 Toshiba Corp 動画符号化装置、動画符号化方法および動画符号化プログラム
US8045618B2 (en) * 2005-08-05 2011-10-25 Lsi Corporation Method and apparatus for MPEG-2 to VC-1 video transcoding
US7701508B2 (en) * 2005-11-30 2010-04-20 Lsi Corporation Accurate motion detection for the combination of motion adaptive and motion compensation de-interlacing applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784107A (en) * 1991-06-17 1998-07-21 Matsushita Electric Industrial Co., Ltd. Method and apparatus for picture coding and method and apparatus for picture decoding
EP1494483A2 (fr) * 2003-07-04 2005-01-05 Nextream France Codeur vidéo avec controle de la structure de GOP selon l'activité spatiale et temporelle
WO2006033915A2 (fr) * 2004-09-16 2006-03-30 Thomson Licensing Procede et appareil de codage rapide de trame et de champ video

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GUERRERO M A ET AL: "Fast Macroblock-Adaptive Frame/Field Coding Selection in H.264", INTERNET CITATION, 8 March 2005 (2005-03-08), XP002396280, Retrieved from the Internet <URL:http://scien.stanford.edu/2005projects/ee398/projects.htm> [retrieved on 20060823] *
YANMEI QU ET AL: "A fast MBAFF mode prediction strategy for H.264/AVC", SIGNAL PROCESSING, 2004. PROCEEDINGS. ICSP '04. 2004 7TH INTERNATIONAL CONFERENCE ON BEIJING, CHINA AUG. 31 - SEPT 4, 2004, PISCATAWAY, NJ, USA,IEEE, 31 August 2004 (2004-08-31), pages 1195 - 1198, XP010810613, ISBN: 0-7803-8406-7 *

Also Published As

Publication number Publication date
US20090304079A1 (en) 2009-12-10
EP2036356A1 (fr) 2009-03-18
CN101485207A (zh) 2009-07-15
JP2009542145A (ja) 2009-11-26
WO2008000737A1 (fr) 2008-01-03
CN101485207B (zh) 2013-01-30
JP5148605B2 (ja) 2013-02-20
US8428132B2 (en) 2013-04-23

Similar Documents

Publication Publication Date Title
US10587880B2 (en) Zero block detection using adaptive rate model
KR101000926B1 (ko) 영상의 불연속성을 제거하기 위한 필터 및 필터링 방법
US10091507B2 (en) Perceptual optimization for model-based video encoding
Xiong et al. A fast HEVC inter CU selection method based on pyramid motion divergence
JP5364820B2 (ja) フィルタを選択する装置及び方法
US9313526B2 (en) Data compression for video
US20170070745A1 (en) Perceptual Optimization for Model-Based Video Encoding
US8363728B2 (en) Block based codec friendly edge detection and transform selection
US20100027905A1 (en) System and method for image and video encoding artifacts reduction and quality improvement
EP3175618A1 (fr) Optimisation de la perception pour codage vidéo à base de modèles
US20140301460A1 (en) Intra rate control for video encoding based on sum of absolute transformed difference
KR101863397B1 (ko) 디블로킹을 위한 효율적인 결정
FR2872973A1 (fr) Procede ou dispositif de codage d&#39;une sequence d&#39;images sources
WO2013074365A1 (fr) Optimisation de paramètres de filtre de déblocage
Liu et al. Block-based adaptive compressed sensing for video
Reibman et al. Characterizing packet-loss impairments in compressed video
KR20040060980A (ko) 압축되지 않은 디지털 비디오로부터 인트라-코딩된화상들을 검출하고 인트라 dct 정확도 및매크로블록-레벨 코딩 파라메터들을 추출하는 방법 및시스템
FR2857205A1 (fr) Dispositif et procede de codage de donnees video
Tagliasacchi et al. Blind estimation of the QP parameter in H. 264/AVC decoded video
EP2890128A1 (fr) Codeur vidéo avec fusion de bloc et procédés d&#39;utilisation associés
FR2903271A1 (fr) Procede de codage en mode trame ou bitrame
US9654775B2 (en) Video encoder with weighted prediction and methods for use therewith
Singam Coding estimation based on rate distortion control of h. 264 encoded videos for low latency applications
KR101247024B1 (ko) 루프 내 전처리 필터링을 이용한 움직임 추정 및 보상 방법
Miličević et al. Analysis of high efficiency video coding (HEVC) test model HM-16.18 for P frame processing