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

Procede de codage en mode trame ou bitrame

Info

Publication number
EP2036356A1
EP2036356A1 EP07786845A EP07786845A EP2036356A1 EP 2036356 A1 EP2036356 A1 EP 2036356A1 EP 07786845 A EP07786845 A EP 07786845A EP 07786845 A EP07786845 A EP 07786845A EP 2036356 A1 EP2036356 A1 EP 2036356A1
Authority
EP
European Patent Office
Prior art keywords
frame
mode
macroblocks
image
activity
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.)
Withdrawn
Application number
EP07786845A
Other languages
German (de)
English (en)
Inventor
Philippe Guillotel
Dominique Thoreau
Julien Haddad
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
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
Publication of EP2036356A1 publication Critical patent/EP2036356A1/fr
Withdrawn 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

Definitions

  • the invention relates to a method and a device for encoding an image in a frame or bit frame mode, the bitrame mode being able to locally exploit the frame mode for a group of macroblocks.
  • Interlaced video is the most used format for television.
  • a bitrame or "frame” image in English consists of two even and odd fields also called high and low, "top field” and “bottom field” in English, which represent respectively the even and odd lines of the image. Since the high and low frames are acquired at two different times, some images in a sequence show interlacing artifacts due to movement between the two acquisitions.
  • the standard MPEG 4 or H264 can encode an image in three different modes: "bitrame”,
  • Block Adaptive Field Frame In bit-frame mode, the image is encoded as is, in frame mode, the two frames are coded separately.
  • the mode is, in frame mode, the two frames are coded separately.
  • MBAFF can be used in addition to the bitrame mode to improve this mode by allowing to locally separate the frames of the image.
  • FIG. 1 represents a group of macroblocks of an image or SuperMacroBloc SMB consisting of two vertical macroblocks MB, coded in frame mode or in bitrame mode.
  • the coding of the supermacroblock in bitrame mode consists in coding macroblocks referenced 1 and 2 each consisting of an alternation of lines of a first and a second frame.
  • the encoding of the supermacroblock in raster mode consists of coding macroblocks referenced 3 and 4 each consisting of a succession of lines respectively belonging to the first and the second frame.
  • FIG. 2 represents a referenced image 5 for which an image scan is performed by pair of macroblocks or supermacroblock referenced 6 allowing this choice of coding locally.
  • the coding is done in two passes, one in frame mode and the other in bitrame or bitrame + MBAFF mode.
  • the encoder then memorizes the results obtained after each of the passes and then compares them using an optimization function based on a compromise rate / quality of the image.
  • the disadvantage of this type of method is its cost in computing time.
  • the main idea is to detect supermacroblocks, consisting of 2 vertical macroblocks, which belong to a moving region, using the motion detection filter presented in the document entitled “A Robust Motion Detection and Estimate Filter For Video Signals", authors M. Latzel, JK Tsotsos, Proceedings of the 2003 SPIE Conf. on Image and Video Communication and Processing, Jan. 2003.
  • the algorithm makes the decision to encode it in frame mode, in bitrame mode in the other case.
  • a mask image is then constructed as follows:
  • a supermacroblock is considered in motion if the pixels x, y of this supermacroblock SMB are such that: ⁇ M (x, y)> T 2 x, yeSMB with T2, predefined threshold.
  • the ratio S of moving supermacroblocks with respect to the supermacroblocks in the image is then calculated as well as the average of the absolute value of the difference D in luminance between the current image and its reference.
  • bitrame / frame decision is made for the entire image, as follows:
  • FLADIntra n [k] ⁇ ⁇
  • inter-frame luminance gradients are given by the sum of the absolute values of the differences between co-located pixels of two frames separated by periods of 1T, 2T, xT and are calculated 16 lines by 16 lines in the frame:
  • FLADInterxT n [k] ⁇ ⁇
  • the denominations FLADIntra and FLADInter are to be compared to the English expression FieLd Absolute Difference.
  • the selection criterion is given by the spatial activity:
  • SPAct is greater than a predefined threshold, the image is encoded in raster mode, otherwise the image is encoded using the bitrame + MBAFF mode.
  • a third approach consists in coding all the images B, of bidirectional predictive type, in bitrame mode and the unidirectional predictive mode P images in frame mode. This simple algorithm comes from the observation that these are the most used modes by the algorithm a posteriori for each type of image.
  • the motion detector filter requires processing on the complete image, calculations and memorization of masks.
  • the filtering solutions are not optimized, in particular for the choice of coding mode at the level of the macroblock or supermacroblock.
  • the subject of the invention is a method of coding images in frame or bit-frame mode, the image bit-picture mode being able to locally exploit in the image, for a group of macroblocks, the frame mode, characterized in that it comprises the steps following:
  • calculating a relative activity index of the group which is an increasing function of the temporal activity and a decreasing function of the calculated spatial activities, comparing the relative activity index of the group with a predefined threshold to define it as a group with activity,
  • the temporal activity is a function of the inter-frame gradient between the macroblocks of the frame mode macroblock group and the spatial activity is a function of the intra-frame gradient between the lines taken in pairs. each of the macroblocks frames of the group of macroblocks in frame mode.
  • the activity index is an increasing function of the inter-frame gradient and a decreasing function of the sum of the intra-field gradients.
  • the said group of macroblocks is a supermacroblock and the frame or bitrame mode at the group of macroblocks is the MBAFF mode, acronym for the English MacroBlock Adaptive Field Frame.
  • the relative activity has the value: FLADInterMB K - -
  • FLADIntraMB n £
  • FY n (i, j) representing the luminance value of the horizontal coordinate pixel i and the vertical coordinate j of the n-frame of the supermacroblock.
  • the image is coded in frame mode, the image being coded in the mode. MBAFF bitrame otherwise.
  • the predetermined threshold is 1 A
  • the invention also concerns a device for implementing the method, comprising a lookahead circuit for performing a coding decision algorithm, connected to an encoding circuit for actual encoding of a frame or bit frame image, characterized in that the coding circuit receives from the pre-analysis circuit frame or bit-frame coding information as a function of the number of groups of macroblocks detected with activity, in the picture.
  • the invention by adapting the motion or activity detection to the coding entities and the possible coding modes, ie to the group of macroblocks and to the frame and bitrame mode, and by improving this detection, makes it possible to optimize the choice of the frame or bitrame coding mode for the image. Data compression, or image quality for a given bitrate, is improved.
  • FIG. 1 a macroblock group in bitrame and frame mode
  • FIG. 2 an image coding using the MBAFF mode
  • FIG. 3 a coding algorithm according to the invention.
  • the principle is to use the gradient metric in a local approach. It involves detecting SMB supermacroblocks of the image that meet a particular gradient criterion. A phase of
  • spatial activity or spatial complexity of a block a quantity which is directly related to the spatial correlation within this block.
  • the spatial complexity is large, the correlation is weak and vice versa.
  • the temporal complexity is linked to the temporal correlation, generally between two collocated blocks of images or successive frames of a sequence of images.
  • the invention proposes firstly to take a decision locally, frame / bi-frame, and, in a second step, to make a more global analysis, this analysis s' operating from all local decisions. Simulation results, presented
  • FIG. 3 represents a flowchart of the method according to the invention.
  • the data relating to an n-1 frame and a n frame are transmitted to the input of the flow chart.
  • Each supermacroblock, consisting of a macroblock of the n-1 frame and a macroblock of the frame n is processed successively.
  • Step 7 performs the intra calculation of FLADIntraMB n corresponding to the difference in absolute value of the lines, taken two by two, inside the 16 x 16 macroblock of the frame n.
  • FY n (i, j) represents the luminance value of the horizontal coordinate pixel i and the vertical coordinate j of the n-frame of the supermacroblock. It is assumed that the n-1 frame is the high frame of the image and n the low frame of the supermacroblock image. Step 8 performs the inter calculation of FLADinterMB corresponding to the difference in absolute value between the macroblock of the frame n and that of the frame n-1.
  • FLADinterMB £
  • Step 9 For each supermacroblock constituted by the lines of the macroblock of the frame n and the lines of the corresponding macroblock of the n-1 frame, the vertical gradient of the block 16x32, when in bitrame configuration, is compared with the vertical gradient of the block 16x32 when it is in frame configuration. Step 9 thus calculates the ratio R called the relative activity index:
  • the ratio R represents in the numerator the 16 ⁇ 16 frame macroblock gradient between two successive n-1 frames and n and to the denominator the sum of 1 to 16 ⁇ 16 macroblock frames between successive lines taken in pairs, the n-frame and the n-1 frame.
  • the next step 10 compares this calculated value R with a predefined threshold T1, which can be determined empirically. If the ratio R is greater than the threshold T1, the supermacroblock is considered to belong to a moving or active region and is called a supermacroblock with activity.
  • a step 11 increments a counter NbMBframe for knowing the number of macroblocks of the image satisfying this condition.
  • step 12 which checks whether it is the last supermacroblock of the image.
  • step 12 is looped back to step 7 via a step 13 which replaces the current supermacroblock with the following supermacroblock in the scanning direction. If it is the last supermacroblock, ie when the image has been completely processed, the next step 14 compares the NbMBtrame value with the number of macroblocks in the image divided by two. If this value is greater than this number, ie if the ratio of moving supermacroblocks to supermacroblocks in the image exceeds 50%, the image is coded in frame mode, step 15. If this value is less than or equal to , the image is encoded in bitrame mode, exploiting the MBAFF mode, step 16.
  • the implemented algorithm is based on an a priori criterion. If, during the pre-analysis, the number of macroblocks declared in motion, or with spatial and temporal activity, is greater than a threshold, in the example, half the number of macroblocks in the image, it is advantageous to force the coding of all the macroblocks of the frame mode image, ie to encode the frame mode image. In the opposite case, the image is coded in bitrame mode, leaving the choice, for the coding at the level of the supermacroblock, the mode frame or bitrame.
  • the process according to the invention has been compared with those mentioned above, namely that using a gradient algorithm and that using a gradient algorithm. exploiting the algorithm for encoding frame mode predictive P-pictures and bidirectional B-mode pictures on some common sequences known to be used as test sequences for coding quality determination.
  • results are given in the table below by comparing with a posterior algorithm, which is the reference algorithm giving the best results.
  • the invention also relates to a device for implementing the method. It includes a pre-analysis circuit and an encoder itself.
  • the pre-analysis circuit exploits the frame-bitram decision algorithm previously described.
  • the information relating to the frame-bitrame coding mode is transmitted to the coder for the effective coding of the image sequence.
  • MBAFF especially the standard MPEG4 AVC or H 264.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

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 macroblocs dans l'image. Les applications concernent la compression de données, en particulier le standard H 264.

Description

PROCEDE DE CODAGE EN MODE TRAME OU BITRAME.
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 à 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 décision 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.
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 Détection and Estimation Filter For Video Signais", auteurs M. Latzel, J. K. Tsotsos, Proceedings of the 2003 SPIE Conf. on Image and Video Communication and 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 KBP = [-1,2,-3,4,-3,2,-1] . Ce filtre est appliqué verticalement à l'image/(x, y), c'est à dire aux valeurs de luminance de l'image, pour, en sortie, donner l'image lBP(χ, y) . Une image de masque est ensuite construite de la manière suivante:
s Siinon lIβp(x'y) > Tl
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: ∑M(x, y) > T2 x,yeSMB 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:
- si l'image est de type intra et si S<0,5, codage en mode bitrame sinon, codage en mode trame,
- 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, 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 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 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.
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] = ∑ ∑ | FYn(i,2j) -FYn(i,2j + l) j = 8k i=0 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 périodes de 1T, 2T, xT et sont calculés 16 lignes par 16 lignes dans la trame :
j = 16k + 15 i=nbpels - 1
FLADInterlTn[k] = ∑ ∑ | FYn(i, j) -FYn - l(i, j) j = 16k i=0
j = 16k + 15 i=nbpels - 1 FLADInter2Tn[k] = ∑ ∑ | FYn(i, j) -FYn - 2(i, j)
J = 16k i=0
j = 16k + 15 i=nbpels - 1
FLADInterxTn[k] = ∑ ∑ | FYn(i, j) -FYn - x(i, j) j = 16k i=0 Les dénominations FLADIntra et FLADInter sont à rapprocher de l'expression anglaise FieLd Absolute Différence.
Les gradients globaux intra-trame FLADIntraSumn et inter-trame FLADInterUn sont donnés, pour la trame n, par :
k = nblines /16 - 1
FLADIntraSumn = ∑FLADIntran[k] k = 0
k = nblines /16 - 1
FLADInterlTSumn = ∑ 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 (FLADInterlTSum^ , FLADInterlTSumn ) 2 + 0.5 * max(picture _ size, (FLADIntraSum^ + 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.
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.
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 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 œuvre, n'est pas optimisée en terme de taux de compression, à qualité de restitution donnée.
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, 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 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 macroblocs dans l'image.
Selon une mise en œuvre 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 trame.
Selon une mise en œuvre 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 œuvre particulière, le dit groupe de macroblocs est un 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 œuvre particulière, l'activité relative a pour valeur : FLADInterMB K — -
1 + FLADIntraMBn + FL ADMmMBn-1
15 15 avec FLADInterMB = £ £ | FYn(i, j) -FYn - i(i, j) | , j=0 i=0
7 15
FLADIntraMBn = £ £ | FYn(i,2j) -FYn(i,2j + 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.
Selon une mise en œuvre 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 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.
Selon une mise en œuvre particulière, le seuil prédéterminé est 1A L'invention concerne également un dispositif pour la mise en œuvre 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 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 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 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. 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
5 préanalyse permet de calculer leur ratio afin de décider du mode de codage bitrame/trame au niveau image.
Dans la suite de la description, on appellera activité spatiale ou complexité spatiale d'un bloc, une grandeur qui est directement liée à la 10 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 séquence d'images.
15 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 stables. Dans cette
20 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 :
l + min(FLADInterlTSumn_1,FLADInterlTSumn ) έ-d urACt — j j rr
2 + 0.5 * maxφicture _ size, (FLADIntraSum^ + 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
30 mesures locales relatives aux paires de 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
35 dans le document, montrent la pertinence de cette approche. 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.
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 = £ £ | FYn(Uj) -FYn(Uj + 1) j=0 i=0
De même pour le calcul de FLADIntraMBn-i correspondant au macrobloc 16 x 16 de la trame n-1 :
7 15 FLADMmMBn.! = £ £ | FYn - i(i,2j) -FYn - i(i,2j + 1) 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. 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 = £ £ | FYn(i, j) -FYn - i(i, j) 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 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:
FLADinterMB Iv — -
1 + FLADIntraMBn + FL ADMmMBn-1
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.
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 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 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 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 œuvre 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 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.
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 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 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 average PSNR différences between RD curves", document VCEG-M33, ITU-T Video Coding Experts Group (VCEG) Meeting, April 2001.
Exception faite d'une seule séquence (bigdil), l'algorithme selon l'invention conduit à des résultats meilleurs ou au moins équivalent à celui du gradient.
L'invention concerne également un dispositif pour la mise en œuvre du procédé. Il 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. 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. L'invention s'applique à tout type de standard exploitant le mode
MBAFF, en particulier le standard MPEG4 AVC ou H 264.

Claims

REVENDICATIONS
1. Procédé de codage d'images (5) en mode trame ou bitrame, le mode bitrame 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 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 ),
- 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 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.
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 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 pour valeur :
FLADInterMB Iv — -
1 + FLADIntraMBn + FL ADMmMBn-1
15 15 avec FLADInterMB = £ £ | FYn(i, j) -FYn - i(i, j) | , j=0 i=0
7 15
FLADIntraMBn = £ £ | FYn(i,2j) -FYn(i,2j + 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 V2.
8. Dispositif pour la mise en œuvre 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.
EP07786845A 2006-06-30 2007-06-26 Procede de codage en mode trame ou bitrame Withdrawn EP2036356A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0605969A FR2903271A1 (fr) 2006-06-30 2006-06-30 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

Publications (1)

Publication Number Publication Date
EP2036356A1 true EP2036356A1 (fr) 2009-03-18

Family

ID=37907138

Family Applications (1)

Application Number Title Priority Date Filing Date
EP07786845A Withdrawn EP2036356A1 (fr) 2006-06-30 2007-06-26 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)

Family Cites Families (14)

* 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 日立電子株式会社 画像データの高能率符号化方法及びその装置
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
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
FR2857205B1 (fr) * 2003-07-04 2005-09-23 Nextream France Dispositif et procede de codage de donnees video
JP4222274B2 (ja) * 2004-08-20 2009-02-12 日本ビクター株式会社 符号化モード選択装置及び符号化モード選択プログラム
JP2006080925A (ja) * 2004-09-09 2006-03-23 Toshiba Corp 動画符号化装置、動画符号化方法および動画符号化プログラム
CN101677402B (zh) * 2004-09-16 2012-04-18 汤姆逊许可证公司 用于快速视频帧和场编码的方法和装置
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

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2008000737A1 *

Also Published As

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

Similar Documents

Publication Publication Date Title
US10757419B2 (en) Video characterization for smart encoding based on perceptual quality optimization
US8139883B2 (en) System and method for image and video encoding artifacts reduction and quality improvement
US10091507B2 (en) Perceptual optimization for model-based video encoding
US20140321552A1 (en) Optimization of Deblocking Filter Parameters
WO2016040116A1 (fr) Optimisation de la perception pour codage vidéo à base de modèles
US8363728B2 (en) Block based codec friendly edge detection and transform selection
FR2872973A1 (fr) Procede ou dispositif de codage d&#39;une sequence d&#39;images sources
US9838690B1 (en) Selective prediction signal filtering
KR20070116717A (ko) 압축된 디지털 이미지의 mpeg 노이즈 강도 측정 방법및 장치
JP2006507775A (ja) 基準なしで圧縮ビデオシーケンスの品質を測定する方法及び装置
FR2908949A1 (fr) Procede de transcodage de donnees du standard mpeg2 a un standard mpeg4.
Reibman et al. Characterizing packet-loss impairments in compressed video
GB2459671A (en) Scene Change Detection For Use With Bit-Rate Control Of A Video Compression System
WO2016048623A1 (fr) Appareils et procédés de filtrage de bruit à partir d&#39;un signal vidéo
KR20040060980A (ko) 압축되지 않은 디지털 비디오로부터 인트라-코딩된화상들을 검출하고 인트라 dct 정확도 및매크로블록-레벨 코딩 파라메터들을 추출하는 방법 및시스템
FR2777405A1 (fr) Dispositif et procede pour coder de facon adaptative un signal d&#39;image
EP2890128A1 (fr) Codeur vidéo avec fusion de bloc et procédés d&#39;utilisation associés
FR2860941A1 (fr) Dispositif et procede d&#39;estimation de bruit d&#39;un signal video
EP1223554A1 (fr) Méthode de réduction de bruit
EP2036356A1 (fr) Procede de codage en mode trame ou bitrame
KR101247024B1 (ko) 루프 내 전처리 필터링을 이용한 움직임 추정 및 보상 방법
JP5585271B2 (ja) 動画像符号化装置
Lopez-Rubio et al. An adaptive system for compressed video deblocking
Hsia et al. Low-complexity high-quality adaptive deblocking filter for H. 264/AVC system
Agrafiotis et al. Hybrid key/Wyner-Ziv frames with flexible macroblock ordering for improved low delay distributed video coding

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20081230

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK RS

RIN1 Information on inventor provided before grant (corrected)

Inventor name: HADDAD, JULIEN

Inventor name: THOREAU, DOMINIQUE

Inventor name: GUILLOTEL, PHILIPPE

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): DE FR GB

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: THOMSON LICENSING

17Q First examination report despatched

Effective date: 20100226

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20160105