PROCEDE ET SYSTEME DE MESURE DES DEGRADATIONS D'UNE IMAGE VIDEO INTRODUITES PAR LES SYSTEMES DE DIFFUSION NUMERIQUE.METHOD AND SYSTEM FOR MEASURING DEGRADATIONS OF A VIDEO IMAGE INTRODUCED BY DIGITAL BROADCASTING SYSTEMS.
La présente invention concerne un procédé et un système de mesure des dégradations d'une image vidéo, introduites par les systèmes de diffusion numériques.The present invention relates to a method and a system for measuring the degradations of a video image, introduced by digital broadcasting systems.
Elle s'applique notamment, mais non exclusivement, au domaine des réseaux de diffusion de signaux audiovisuels numériques à bas débit ou à très bas débit. Elle s'applique en particulier à la surveillance de la qualité de service d'un réseau de diffusion de signaux audiovisuels numériques.It applies in particular, but not exclusively, to the field of broadcasting networks for low-speed or very low-speed digital audiovisual signals. It applies in particular to monitoring the quality of service of a network for broadcasting digital audiovisual signals.
La numérisation des signaux vidéo permet de copier, stocker et transmettre ce type d'informations en conservant une qualité d'image constante. Cependant, la grande quantité d'informations véhiculée par les images vidéo nécessite en pratique l'utilisation de méthodes de compression numérique pour réduire le débit binaire.The digitization of video signals makes it possible to copy, store and transmit this type of information while maintaining a constant image quality. However, the large amount of information conveyed by video images in practice requires the use of digital compression methods to reduce the bit rate.
Une méthode de compression très répandue dans le domaine de la vidéo est décrite dans la norme ISO/CEI 13918 MPEG2. Cet algorithme est dit de type "avec pertes" car l'image restituée après décodage n'est pas identique à l'original. Un tel algorithme est basé sur un découpage de l'image en blocs et sur l'application d'une transformée par exemple de type transformée en cosinus discrète aux pixels de chaque bloc, ce qui permet d'obtenir une représentation fréquentielle de l'amplitude de la luminance des pixels sous la forme d'autant de coefficients que de pixels dans le bloc. Selon la norme MPEG2, les images codées sont transmises sous la forme d'un flux binaire dans lequel, les blocs sont regroupés en macro blocs de 2 x 2 blocs, de sorte que si une erreur de transmission apparaît, elle affecte en général au moins un macro bloc entier.A widely used compression method in the video field is described in ISO / IEC 13918 MPEG2. This algorithm is said to be of the "lossy" type because the image restored after decoding is not identical to the original. Such an algorithm is based on a division of the image into blocks and on the application of a transform, for example of the type transformed into a discrete cosine to the pixels of each block, which makes it possible to obtain a frequency representation of the amplitude the luminance of the pixels in the form of as many coefficients as pixels in the block. According to the MPEG2 standard, the coded images are transmitted in the form of a bit stream in which the blocks are grouped in macro blocks of 2 x 2 blocks, so that if a transmission error appears, it generally affects at least an entire macro block.
Afin de maintenir une qualité acceptable pour le téléspectateur final, les algorithmes de compression tiennent compte des propriétés de perception du système de vision humain. Cependant, les contraintes de débit imposées par les systèmes de transmission nécessitent l'application de taux de compression qui influent sur la qualité de l'image perçue par le téléspectateur.
II s'avère que l'importance des dégradations susceptibles d'être subies par une image codée ou une séquence de telles images dépend à la fois du taux de compression utilisé lors du codage des images et de la complexité de celles-ci notamment en ce qui concerne notamment le mouvement d'objets, la luminosité, et la texture.In order to maintain an acceptable quality for the end viewer, the compression algorithms take into account the perception properties of the human vision system. However, the bit rate constraints imposed by the transmission systems require the application of compression rates which influence the quality of the image perceived by the viewer. It turns out that the extent of the degradations liable to be undergone by a coded image or a sequence of such images depends both on the compression rate used during the coding of the images and on the complexity thereof, in particular in which particularly concerns the movement of objects, brightness, and texture.
Parmi les dégradations qui apparaissent dans les images codées par la technique MPEG qui sont transmises à bas débit pour la diffusion de la télévision numérique ou à plus bas débit pour d'autres applications multimédia, on peut citer parmi les plus perceptibles les effets de (macro) blocs mal placés ou erronés, la perte d'informations, l'apparition de contours "exotiques", etc. L'effet d'une perturbation dépend du niveau de pertinence des données qu'elle affecte ou de la structure des données employée. Elle peut ainsi affecter les mots de synchronisation ou le vecteur de mouvement. Dans le cas où les images sont codées avec prédiction, une perturbation peut affecter les images de base pour les prédictions. Des erreurs de transmission peu importantes peuvent se traduire par des effets plus ou moins localisés sur l'image, notamment sous la forme de blocs ou macro blocs erronés ou mal positionnés dans l'image. En cas de perturbation importante, elles peuvent provoquer des difficultés d'accès aux informations, et notamment, des coupures de service pendant une durée plus ou moins longue, ce qui peut entraîner des coupures ou des gels d'image.Among the degradations which appear in the images coded by the MPEG technique which are transmitted at low speed for the broadcasting of digital television or at lower speed for other multimedia applications, one can cite among the most perceptible the effects of (macro ) misplaced or wrong blocks, loss of information, appearance of "exotic" contours, etc. The effect of a disturbance depends on the level of relevance of the data it affects or on the data structure used. It can thus affect the synchronization words or the motion vector. In the case where the images are coded with prediction, a disturbance may affect the base images for the predictions. Small transmission errors can result in more or less localized effects on the image, in particular in the form of erroneous or incorrectly positioned blocks or macro blocks in the image. In the event of a major disturbance, they can cause difficulties in accessing information, and in particular, service interruptions for a more or less long period, which can lead to image crashes or freezes.
Il apparaît donc nécessaire d'évaluer de façon permanente la qualité des images diffusées. Il existe à cet effet des méthodes d'évaluation subjectives, largement utilisées, faisant appel à l'appréciation humaine. Ces méthodes sont toutefois lourdes à mettre en œuvre et ne peuvent pas être utilisées en temps réel sur un réseau en fonctionnement.It therefore appears necessary to permanently assess the quality of the images broadcast. There are widely used subjective assessment methods for this purpose, using human appreciation. These methods are however cumbersome to implement and cannot be used in real time on a functioning network.
Il existe également des méthodes dites "avec référence" basées sur la comparaison de l'image dont on veut évaluer la qualité avec une image de référence. L'image de référence est en général celle qui correspond à l'image à analyser avant son codage et/ou sa transmission. Cette solution s'avère peu pratique du fait qu'elle nécessite un accès à une ou plusieurs images de référence, et donc le transport de ces images de référence vers le lieu de réception de l'image à analyser.There are also so-called "with reference" methods based on the comparison of the image whose quality is to be evaluated with a reference image. The reference image is generally that which corresponds to the image to be analyzed before its coding and / or its transmission. This solution proves to be impractical because it requires access to one or more reference images, and therefore the transport of these reference images to the place of reception of the image to be analyzed.
D'autres solutions dites "sans référence" permettent d'analyser automatiquement des images sans avoir à effectuer une comparaison avec des
images de référence. L'efficacité et la robustesse de chacune de ces solutions résident dans leur capacité à discriminer les objets d'une scène des dégradations qui peuvent s'y trouver.Other solutions called "without reference" allow to automatically analyze images without having to make a comparison with reference images. The efficiency and robustness of each of these solutions lies in their ability to discriminate between the objects in a scene and the damage that may be found there.
Ainsi, la publication "Mesures de similarité floue pour la détection d'erreurs de transmission d'image avec quantification vectorielle" de B. Solaiman, R. Pindiah, O. Aitsab, G. Cazuguel et C. Roux, Dept. Image et Traitement de l'information, Telecom Bretagne, CORESA, mars 1997, propose d'effectuer une mesure de similarité floue pour la détection d'erreurs dans les images codées par quantification vectorielle. Il utilise à cet effet un dictionnaire de mots de code ou de sous images de référence, corrélés et ordonnés de manière à attribuer à des blocs similaires des indices de similarité proches. L'image à transmettre est composée de blocs de sous images et l'indice du mot le plus proche est transmis au lieu de la totalité du bloc. Les images reçues sont dégradées lorsque des erreurs de transmission surviennent au niveau des indices transmis. Pour le bloc courant, on considère l'ensemble des huit blocs qui l'entourent, caractérisés par leur moyenne de luminance. Une mesure de similarité globale du bloc central par rapport à son voisinage est évaluée pour déterminer si le bloc central est susceptible d'être erroné.Thus, the publication "Fuzzy similarity measures for the detection of image transmission errors with vector quantization" by B. Solaiman, R. Pindiah, O. Aitsab, G. Cazuguel and C. Roux, Dept. Image and Information Processing, Telecom Bretagne, CORESA, March 1997, proposes to perform a fuzzy similarity measure for the detection of errors in images coded by vector quantization. To this end, it uses a dictionary of code words or reference sub-images, correlated and ordered so as to assign similar similarity indices to similar blocks. The image to be transmitted is made up of blocks of sub-images and the index of the nearest word is transmitted instead of the entire block. The received images are degraded when transmission errors occur in the transmitted indices. For the current block, we consider all eight blocks which surround it, characterized by their luminance average. A measure of overall similarity of the central block with respect to its neighborhood is evaluated to determine whether the central block is likely to be erroneous.
D'une manière générale, les méthodes sans référence de l'art antérieur utilisent des filtres ne mettant en valeur qu'un certain type de contenu de l'image : frontières ou hautes fréquences, ou ne représentant qu'une partie du contenu de l'image. Par conséquent, les mesures de dégradation ainsi effectuées présentent une pertinence limitée en terme d'identification ou de discrimination des dégradations. En particulier, ces méthodes décèlent souvent mal les dégradations parmi les objets d'une scène. Il en résulte qu'elles présentent un taux d'erreur important.In general, the methods without reference of the prior art use filters only highlighting a certain type of image content: borders or high frequencies, or representing only part of the content of the image. 'picture. Consequently, the degradation measurements thus carried out are of limited relevance in terms of identification or discrimination of the degradations. In particular, these methods often poorly detect degradations among the objects of a scene. As a result, they have a high error rate.
La présente invention a pour but de supprimer ces inconvénients. Cet objectif est atteint par la prévision d'un procédé de mesure de dégradations d'une image vidéo numérique introduites par un système de transmission, l'image étant codée à l'aide d'un traitement de codage faisant intervenir une décomposition de l'image en blocs et un calcul de transformée par blocs, l'image étant transmise par macro blocs regroupant plusieurs blocs. Selon l'invention, ce procédé comprend des étapes consistant à :The present invention aims to eliminate these drawbacks. This objective is achieved by providing a method for measuring degradations of a digital video image introduced by a transmission system, the image being coded using coding processing involving a decomposition of the block image and a block transform calculation, the image being transmitted by macro blocks grouping together several blocks. According to the invention, this method comprises steps consisting in:
- effectuer un préfiltrage consistant à appliquer à chaque macro bloc de
l' image transmise un test statistique pour déterminer s'il y a égalité entre une propriété du macro bloc et une propriété correspondante des blocs adjacents au macro bloc, et retenir les macro blocs dont la propriété n'est pas égale à celle de ses blocs adjacents, - pour chaque macro bloc retenu, déterminer si les blocs du macro bloc présentent une propriété similaire, selon plusieurs critères de direction, à celle de blocs voisins, et considérer que le macro bloc est erroné s'il est déterminé non similaire selon plusieurs des critères de direction, et - déterminer un indice de dégradation de l'image en fonction du nombre de macro blocs considérés erronés dans l'image.- perform a pre-filtering consisting in applying to each macro block of the image transmitted a statistical test to determine if there is equality between a property of the macro block and a corresponding property of the blocks adjacent to the macro block, and to retain the macro blocks whose property is not equal to that of its blocks adjacent, - for each macro block selected, determine whether the blocks of the macro block have a similar property, according to several direction criteria, to that of neighboring blocks, and consider that the macro block is erroneous if it is determined not similar according to several direction criteria, and - determining an image degradation index as a function of the number of macro blocks considered erroneous in the image.
Selon une particularité de l'invention, les critères de direction comprennent un premier critère, consistant à comparer une propriété de chaque macro bloc retenu à celle de blocs voisins ayant une frontière commune avec le macro bloc, un second critère consistant à comparer une propriété de chaque macro bloc retenu à celle de blocs voisins situés sur des diagonales du macro bloc, et un troisième critère consistant à comparer une propriété de chaque macro bloc retenu à celle de blocs voisins délimitant les angles du macro bloc, un macro bloc étant considéré erroné s'il est déterminé non similaire selon au moins deux des trois critères.According to a feature of the invention, the direction criteria comprise a first criterion, consisting in comparing a property of each macro block retained with that of neighboring blocks having a common border with the macro block, a second criterion consisting in comparing a property of each macro block retained with that of neighboring blocks located on diagonals of the macro block, and a third criterion consisting in comparing a property of each macro block retained with that of neighboring blocks delimiting the angles of the macro block, a macro block being considered erroneous s 'it is determined not similar according to at least two of the three criteria.
Selon une autre particularité de l'invention, ce procédé comprend une étape préalable de synchronisation consistant à déterminer la grille de codage de l'image codée, afin de retrouver la décomposition en blocs de codage de l'image, utilisée lors du codage de l'image.According to another feature of the invention, this method comprises a prior synchronization step consisting in determining the coding grid of the coded image, in order to find the decomposition into coding blocks of the image, used during the coding of the image. 'picture.
Selon encore une autre particularité de l'invention, la détermination de la similarité de la propriété d'un macro bloc de l'image avec celle des blocs voisins consiste à déterminer un indice de similarité floue et à comparer l'indice de similarité déterminé à un seuil dépendant de la valeur des pixels de l'image dans une zone dans laquelle se trouve le macro bloc.According to yet another feature of the invention, determining the similarity of the property of a macro block of the image with that of neighboring blocks consists in determining a fuzzy similarity index and in comparing the similarity index determined with a threshold depending on the value of the pixels of the image in an area in which the macro block is located.
Avantageusement, l'indice de similarité floue est obtenu à l'aide d'une fonction d'appartenance appliquée à un écart de luminance moyenne entre le macro bloc et des blocs voisins du macro bloc.Advantageously, the fuzzy similarity index is obtained using a membership function applied to an average luminance difference between the macro block and neighboring blocks of the macro block.
De préférence, la fonction d'appartenance est définie par la formule suivante :
μciose(Δ) = ι - ^lΔlPreferably, the membership function is defined by the following formula: μ c iose ( Δ ) = ι - ^ l Δ l
Δ étant un écart de luminance moyenne entre le macro bloc et des blocs voisins du macro bloc, et M étant la valeur maximale admissible de luminance moyenne.Δ being an average luminance difference between the macro block and neighboring blocks of the macro block, and M being the maximum admissible value of average luminance.
Selon encore une autre particularité de l'invention, un macro bloc est considéré comme erroné selon le premier critère s'il présente au moins deux frontières le long desquelles les blocs du macro bloc présentent une luminance moyenne suffisamment différente de celle de blocs adjacents du voisinage du macro bloc.According to yet another feature of the invention, a macro block is considered to be erroneous according to the first criterion if it has at least two boundaries along which the blocks of the macro block have an average luminance sufficiently different from that of adjacent blocks in the vicinity. of the macro block.
Selon encore une autre particularité de l'invention, un macro bloc est considéré comme erroné selon le second critère si au moins trois des blocs d'angle présentent une luminance moyenne suffisamment différente de celle de blocs diagonaux respectifs du voisinage du macro bloc.According to yet another feature of the invention, a macro block is considered to be erroneous according to the second criterion if at least three of the corner blocks have an average luminance sufficiently different from that of respective diagonal blocks in the vicinity of the macro block.
Selon encore une autre particularité de l'invention, un macro bloc est considéré comme erroné selon le troisième critère si au moins deux blocs d'angle du macro bloc présentent une luminance moyenne suffisamment différente de celle de blocs du voisinage du macro bloc, adjacents à l'angle respectif.According to yet another feature of the invention, a macro block is considered to be erroneous according to the third criterion if at least two corner blocks of the macro block have an average luminance sufficiently different from that of blocks in the vicinity of the macro block, adjacent to the respective angle.
Avantageusement, le préfiltrage consiste à appliquer à chaque macro bloc de l'image un test statistique d'égalité pour déterminer s'il y a égalité de luminance moyenne entre le macro bloc et les blocs voisins du macro bloc.Advantageously, the pre-filtering consists in applying to each macro block of the image a statistical equality test to determine whether there is equality of mean luminance between the macro block and the neighboring blocks of the macro block.
L'invention concerne également un système de mesure de dégradations d'une image vidéo numérique introduites par un système de transmission, comprenant des moyens pour mettre en œuvre du procédé défini ci-avant.The invention also relates to a system for measuring degradations of a digital video image introduced by a transmission system, comprising means for implementing the method defined above.
Un mode de réalisation préféré de l'invention sera décrit ci-après, à titre d'exemple non limitatif, avec référence aux dessins annexés dans lesquels :A preferred embodiment of the invention will be described below, by way of nonlimiting example, with reference to the appended drawings in which:
La figure 1 représente schématiquement le système de mesure selon l'invention, intégré dans une chaîne de traitement d'image ;FIG. 1 schematically represents the measurement system according to the invention, integrated in an image processing chain;
La figure 2 montre plus en détail le système de mesure représenté sur la figure 1 ;
La figure 3 montre plus en détail une partie du système représenté sur la figure 2 ;Figure 2 shows in more detail the measurement system shown in Figure 1; Figure 3 shows in more detail a part of the system shown in Figure 2;
La figure 4 montre une partie d'image composée de 16 blocs pour illustrer le procédé selon l'invention.FIG. 4 shows an image part composed of 16 blocks to illustrate the method according to the invention.
La figure 1 représente un système de mesure 1 de dégradations selon l'invention, qui est destiné à être utilisé comme une sonde susceptible d'être appliquée en tout point d'une chaîne de réception d'images numériques, telle qu'une chaîne de diffusion de signal vidéo.FIG. 1 represents a system 1 for measuring degradations according to the invention, which is intended to be used as a probe capable of being applied at any point of a chain for receiving digital images, such as a chain of video signal broadcasting.
Le système de mesure 1 selon l'invention est plus particulièrement conçu pour mesurer la qualité des images en sortie d'un système de transmission 10 d'images pouvant inclure des traitements de codage, de multiplexage, de transcodage, de transmultiplexage, de modulation et de démodulation, respectant la norme MPEG2.The measurement system 1 according to the invention is more particularly designed to measure the quality of the images at the output of an image transmission system 10 which may include coding, multiplexing, transcoding, transmultiplexing, modulation and demodulation, respecting the MPEG2 standard.
Ce système est applicable à chaque fois qu'il est nécessaire d'identifier des défauts de transmission d'un signal vidéo numérique, notamment afin de déterminer le débit convenable pour une séquence d'images donnée, en fonction de la qualité attendue.This system is applicable whenever it is necessary to identify transmission faults in a digital video signal, in particular in order to determine the suitable bit rate for a given sequence of images, as a function of the expected quality.
Sur la figure 2, le système de mesure 1 selon l'invention comprend un module de synchronisation 11 permettant de synchroniser chaque image codée à traiter avec sa grille de codage, c'est-à-dire la décomposition de l'image en blocs de N x N pixels. Un exemple de traitement de synchronisation susceptible d'être effectué par ce module est décrit dans la demande de brevet FR 2 769 452 déposée par la Demanderesse. Ce traitement de synchronisation permet en fait de repérer dans l'image la décomposition en blocs utilisée par le traitement précédent de codage effectué par le système 10, et donc de déterminer à quel bloc de codage By appartient chaque pixel de l'image.In FIG. 2, the measurement system 1 according to the invention comprises a synchronization module 11 making it possible to synchronize each coded image to be processed with its coding grid, that is to say the decomposition of the image into blocks of N x N pixels. An example of synchronization processing which can be carried out by this module is described in patent application FR 2 769 452 filed by the Applicant. This synchronization processing in fact makes it possible to locate in the image the decomposition into blocks used by the preceding coding processing carried out by the system 10, and therefore to determine to which coding block By belongs each pixel of the image.
L'image codée et sa décomposition en blocs sont appliqués à un module 12 de détection de macro blocs corrects effectuant un préfiltrage de macro blocs corrects par un traitement statistique, chaque macro bloc de l'image regroupant 2 x 2 blocs selon la norme MPEG2.The coded image and its decomposition into blocks are applied to a module 12 for detecting correct macro blocks performing a pre-filtering of correct macro blocks by statistical processing, each macro block of the image grouping together 2 × 2 blocks according to the MPEG2 standard.
Les macro blocs corrects sont écartés du traitement, tandis que les autres sont
appliqués à un module 13 de détection des macro blocs erronés. Le système selon l'invention comprend en outre un module 14 d'évaluation d'un indice de dégradation de l'image qui détermine un indice de dégradation en fonction du nombre de blocs erronés détectés par le module 13.The correct macro blocks are discarded from processing, while the others are applied to a module 13 for detecting incorrect macro blocks. The system according to the invention further comprises a module 14 for evaluating an image degradation index which determines a degradation index as a function of the number of erroneous blocks detected by the module 13.
Plusieurs types de défauts sont ainsi recherchés soit globalement, par exemple les blocs uniformes et nettement distincts de leur voisinage, soit localement en considérant par exemple les frontières d'objets et les zones texturées (module 12). On considère également le cas où plusieurs blocs erronés sont proches les uns des autres en comparant les macro blocs à leurs blocs adjacents, à leurs blocs diagonaux et aux blocs formant les angles de leur voisinage (module 13).Several types of defects are thus sought either globally, for example the uniform blocks clearly distinct from their vicinity, or locally by considering for example the borders of objects and the textured zones (module 12). We also consider the case where several erroneous blocks are close to each other by comparing the macro blocks to their adjacent blocks, to their diagonal blocks and to the blocks forming the angles of their vicinity (module 13).
Sur la figure 3, le module 12 comprend un traitement consistant à utiliser la décomposition en bloc définie par la grille de codage utilisée lors du traitement de codage par blocs de l'image, et à appliquer un traitement de préfiltrage 21 à chaque macro bloc de l'image, comprenant nM, par exemple quatre blocs Bi à B de la grille de codage. Ce traitement de préfiltrage a pour but de tester s'il y a égalité de deux paramètres du macro bloc considéré avec ceux des nv = douze blocs Bvι à Bvι2 de son voisinage (voir figure 4). Ces paramètres sont la luminance moyenne et le degré de texture ou activité déterminée par l'écart type de la luminance.In FIG. 3, the module 12 comprises a processing consisting in using the block decomposition defined by the coding grid used during the processing of coding by blocks of the image, and in applying a pre-filtering processing 21 to each macro block of the image, comprising n M , for example four blocks Bi to B of the coding grid. The purpose of this pre-filtering treatment is to test whether there is equality of two parameters of the macro block considered with those of the n v = twelve blocks B v ι to B v ι 2 of its neighborhood (see FIG. 4). These parameters are the average luminance and the degree of texture or activity determined by the standard deviation of the luminance.
La luminance moyenne et l'écart type de chaque bloc de l'image peuvent être déterminées directement à partir de la valeur des pixels de l'image ou en appliquant préalablement aux pixels de l'image un traitement de transformée en cosinus discrète DCT. Le traitement de transformée en cosinus discrète consiste à appliquer à chaque bloc Bjj de N x N pixels de l'image (N est par exemple égal à 8) un calcul de coefficients de transformée AC et DC obtenus à l'aide des formules suivantes : N-1N-1 DCi = FiJ(0,0) = -^ ∑ ∑fi (x,y) (1)The average luminance and the standard deviation of each block of the image can be determined directly from the value of the pixels of the image or by applying to the pixels of the image a DCT discrete cosine transform processing. The discrete cosine transform processing consists in applying to each block Bj j of N x N pixels of the image (N is for example equal to 8) a calculation of the AC and DC transform coefficients obtained using the following formulas : N-1N-1 DC i = F iJ (0,0) = - ^ ∑ ∑f i (x, y) (1)
N x=0y=0 et ACy(u, v) = F; j(u, v), avec u + v ≠ 0 (2) dans lesquelles :N x = 0y = 0 and AC y (u, v) = F; j (u, v), with u + v ≠ 0 (2) in which:
fjj(x,y) représente la luminance du pixel au point (x, y) dans le bloc Bjj, x et y étant les index de position respectivement horizontale et verticale du pixel dans
le bloc Bjj, u et v sont compris entre 0 et N-l et représentent respectivement les index de la fréquence spatiale horizontale et verticale, respectivement, et c est une fonction telle que c(0) = -η= et c(u) = 1 si u ≠ 0.fj j (x, y) represents the luminance of the pixel at point (x, y) in the block Bj j , x and y being the horizontal and vertical position indices of the pixel respectively the block Bj j , u and v are between 0 and Nl and represent respectively the indices of the horizontal and vertical spatial frequency, respectively, and c is a function such that c (0) = -η = and c (u) = 1 if u ≠ 0.
La luminance moyenne μ^ et l' écart-type σ^ de luminance sont calculés pour chaque bloc B;J à l'aide des coefficients AC et DC des blocs de codage dans le domaine DCT selon les formules suivantes :The mean luminance μ ^ and the standard deviation σ ^ of luminance are calculated for each block B; J using the coefficients AC and DC of the coding blocks in the DCT domain according to the following formulas:
μi,j = DCi,j w etμi, j = DC i, jw and
Les deux moyennes comparées dans le module 12 sont les suivantesThe two averages compared in module 12 are as follows
'M sur le macro bloc μM = ^ μB (6) nM i=ι'M on the macro block μ M = ^ μ B (6) n M i = ι
sur le voisinage μv = — ∑μe >Vι (7) n v i=lon the neighborhood μ v = - ∑μe> Vι (7) nvi = l
Les deux écarts types comparés dans le module 12 sont les suivantsThe two standard deviations compared in module 12 are as follows
sur le macro bloc σM (8)on the macro block σ M (8)
sur le voisinage σv (9)
on the neighborhood σ v ( 9 )
Le test d'égalité est appliqué sous la forme d'un test statistique, le test deThe equality test is applied in the form of a statistical test, the
Student étant utilisé pour la comparaison des moyennes, et le test de Fischer pour la comparaison des écarts type (ou des variances).Student being used for comparison of means, and Fischer test for comparison of standard deviations (or variances).
Selon le test de Student, les hypothèses du test d'égalité sont les suivantes :According to the Student test, the hypotheses of the equality test are as follows:
H0 : μM = μv contre Hi : μM ≠ μv (10)H 0 : μM = μv against Hi: μ M ≠ μv (10)
La statistique de Student est définie comme le rapport d'une loi normale sur une
loi XStudent's statistic is defined as the ratio of a normal distribution over a law X
ou - 2 1 σ r((nM - l)σJι + (nv - l)σ^ ) (12) nM + nv - 2 est l'estimation combinée des variances. or - 2 1 σ r ((n M - l) σJι + (n v - l) σ ^) (12) n M + n v - 2 is the combined estimate of variances.
Sous l'hypothèse H0, la statistique S suit une loi de Student St(nM + nv - 2) avec n + nv - 2 = 14 degrés de liberté. La loi de Student est tabulée et le seuil correspondant au risque α choisi.Under the hypothesis H 0 , the statistic S follows a Student St law (n M + n v - 2) with n + n v - 2 = 14 degrees of freedom. Student's law is tabulated and the threshold corresponding to the risk α chosen.
Selon le test de Fischer, les hypothèses du test d'égalité sont les suivantes :According to the Fischer test, the hypotheses of the equality test are as follows:
H'o : σM = σv contre H' i : σM ≠ σy (13)H'o: σ M = σ v against H 'i: σ M ≠ σy (13)
22
La statistique de Fischer est définie comme le rapport de deux lois de X :The Fischer statistic is defined as the ratio of two laws of X:
Sous l'hypothèse H'o, la statistique F suit une loi de Fischer F(v1? v2) où Vi est le degré de liberté du numérateur de la formule ci-dessus et v2 celui du dénominateur. Autrement dit, Vi est égal à nM - 1 si GM > σv et à nv - 1 sinon. Under the hypothesis H'o, the statistic F follows a Fischer law F (v 1? V 2 ) where Vi is the degree of freedom of the numerator of the above formula and v 2 that of the denominator. In other words, Vi is equal to n M - 1 if G M > σ v and to n v - 1 otherwise.
Si l'observation de F est inférieure à la valeur de la table F(vι, v2), on en déduit que les écarts types sont égaux au risque α.If the observation of F is less than the value of table F (vι, v 2 ), we deduce that the standard deviations are equal to the risk α.
On décide dans le traitement 22 que le macro bloc étudié correspond à son voisinage lorsque ces deux tests sont simultanément réalisés avec succès. En fait, ce traitement de préfiltrage opère par analyse globale de la zone en extrayant notamment les macro blocs qui correspondent à leur voisinage, même en présence de frontières d'objets ou de surfaces texturées.It is decided in the processing 22 that the macro block studied corresponds to its neighborhood when these two tests are simultaneously carried out successfully. In fact, this pre-filtering treatment operates by global analysis of the area by extracting in particular the macro blocks which correspond to their vicinity, even in the presence of borders of objects or textured surfaces.
Les macro blocs qui n'ont pas été estimés corrects par le traitement 22 sont ensuite appliqués à trois modules 25, 26, 27 appliquant des critères respectifs visant à extraire les macro blocs sujets à des erreurs de transmission. A cet effet, chaque module 25, 26, 27 examine un type de défaut spécifique en appliquant un critère approprié.
A cet effet, la détection de ces défauts par les modules 25 à 27 est effectuée en calculant un indice de similarité floue obtenu de la manière suivante. On considère l'univers Ω de tous les blocs de l'image à analyser et Θ 5 l'ensemble ordonné des huit blocs Bi à B8 voisins d'un bloc B0 considéré. La similarité du bloc B0 avec son voisinage Θ est défini comme un ensemble flou A/Θ dans l'univers Ω. La fonction d'appartenance ΛA/Θ associée à l'ensemble flou A/Θ est une fonction de l'univers Ω vers l'ensemble [0, 1], 0 correspondant à une faible similarité et 1 correspondant à une forte similarité. Dans le cas où 10 l'on considère que les blocs sont caractérisés par leur luminance moyenne (ou la moyenne de leurs niveaux de gris), deux blocs sont similaires si la différence entre leurs luminances moyennes est faible. Cette similarité par paire entre deux blocs X et Y de l'ensemble considéré est approximée par la fonction d'appartenance μc!ose définie sur l'ensemble Ω x Ω par la formule suivante : i s μciose( > Y) = ι - ^|μχ - μγ| (15) dans laquelle M = 255 et correspond à la valeur maximale admissible par les huit différences de la moyenne du bloc central B0 et des moyennes des blocs voisins Bi à B8, et μx et μγ sont les moyennes des niveaux de gris (ou luminance moyennes) des blocs X et Y. 0 L'indice de similarité globale entre le bloc B0 et les blocs de son voisinage est donné par :The macro blocks which have not been estimated to be correct by the processing 22 are then applied to three modules 25, 26, 27 applying respective criteria aimed at extracting the macro blocks subject to transmission errors. To this end, each module 25, 26, 27 examines a specific type of fault by applying an appropriate criterion. To this end, the detection of these faults by the modules 25 to 27 is carried out by calculating a fuzzy similarity index obtained in the following manner. We consider the universe Ω of all the blocks of the image to be analyzed and Θ 5 the ordered set of the eight blocks Bi to B 8 neighboring a block B 0 considered. The similarity of block B 0 with its neighborhood Θ is defined as a fuzzy set A / Θ in the universe Ω. The membership function Λ A / Θ associated with the fuzzy set A / Θ is a function of the universe Ω towards the set [0, 1], 0 corresponding to a low similarity and 1 corresponding to a high similarity. In the case where the blocks are considered to be characterized by their average luminance (or the average of their gray levels), two blocks are similar if the difference between their average luminances is small. This pairwise similarity between two blocks X and Y of the set considered is approximated by the membership function μ c! Ose defined on the set Ω x Ω by the following formula: is μ c iose (> Y) = ι - ^ | μχ - μγ | (15) in which M = 255 and corresponds to the maximum value admissible by the eight differences of the mean of the central block B 0 and the means of the neighboring blocks Bi to B 8 , and μ x and μ γ are the means of the levels of gray (or average luminance) of blocks X and Y. 0 The global similarity index between block B 0 and the blocks in its vicinity is given by:
ΛA Θ(B0) = Max(μcιose(B0, Bj), (B0, B2), ..., (B0, B8) (16)Λ A Θ (B 0 ) = Max (μ c ι ose (B 0 , Bj), (B 0 , B 2 ), ..., (B 0 , B 8 ) (16)
L'indice de similarité globale obtenu est ensuite comparé à un seuil s qui 5 dépend du niveau de texture de son voisinage et qui est obtenu par la formule suivante : s = exp(-aσ) ou e"aσ (17) dans laquelle σ est l'écart type évalué sur le bloc B0 et son voisinage, et a est une constante positive déterminée expérimentalement. Cette formule permet 0 d'effectuer un filtrage adaptatif visant à prendre en compte un effet de masquage. Le critère est considéré vérifié (bloc erroné) si l'indice α est inférieur au seuil s.The overall similarity index obtained is then compared to a threshold s which 5 depends on the texture level of its vicinity and which is obtained by the following formula: s = exp (-aσ) or e "aσ (17) in which σ is the standard deviation evaluated on block B 0 and its neighborhood, and a is a positive constant determined experimentally. This formula allows 0 to perform an adaptive filtering aimed at taking into account a masking effect. The criterion is considered verified ( erroneous block) if the index α is less than the threshold s.
Le module 25 effectue une mesure de similarité adjacente en comparant chaque 5 paire de blocs adjacents de chaque macro bloc à la paire adjacente de blocs du voisinage du macro bloc.
Ainsi, le module effectue pour chaque macro bloc non écarté par le traitement de préfiltrage 21, les comparaisons de luminance moyenne des paires de blocs suivantes (voir numérotation des blocs sur la figure 4) :The module 25 performs an adjacent similarity measurement by comparing each pair of adjacent blocks of each macro block with the adjacent pair of blocks in the vicinity of the macro block. Thus, the module performs for each macro block not excluded by the pre-filtering processing 21, the average luminance comparisons of the following pairs of blocks (see numbering of the blocks in FIG. 4):
- (B1,B2)et(Bv2,Bv3),- (B 1 , B 2 ) and (B v2 , B v3 ),
- (B2,B4)et(Bv6,Bv8),- (B 2 , B 4 ) and (B v6 , B v8 ),
- (B3,B4)et(Bvl0,Bvll),et- (B 3 , B 4 ) and (B vl0 , B vll ), and
- (B3- Bi) et(Bv5, Bv7).- (B 3 - Bi) and (B v5 , B v7 ).
L'algorithme de comparaison calcule les différences des luminances moyennes de ces paires d'ensembles de blocs :The comparison algorithm calculates the differences in the average luminances of these pairs of block sets:
Δ1, (μβ, +μB.)-(μβv V2. +μβ >vV3,) (18)Δ 1 , (μβ, + μB.) - (μβ v V2. + Μβ> vV3 ,) (18)
Δ'2 = (μB, +μB.)-(μBv +μB >vV8 (19)Δ ' 2 = (μ B , + μB.) - (μ Bv + μ B > v V 8 (19)
Δ3=-|(μB3 +μB4)-(μBvl0 +μBvπ) (20)Δ3 = - | (μ B3 + μB 4 ) - (μB vl0 + μB vπ ) (20)
Δ4 = 2 |(μβ3 + μβ, ) - (μβ V5 + μβV7 ) (21) Δ 4 = 2 | (μβ 3 + μβ,) - (μβ V5 + μβ V7 ) (21)
Ensuite, il ne conserve que le second maximum Δ 2max des quatre valeurs de différence calculées, pour autoriser une différence importante dans une direction :Then, it only keeps the second maximum Δ 2max of the four calculated difference values, to allow a significant difference in one direction:
4max =2ndmax(ΔI 1, 4,^3,^4,) (22)4 ma x = 2 nd max (Δ I 1 , 4, ^ 3 , ^ 4 ,) (22)
Puis, afin d'obtenir un indice α de similarité floue, il applique à cette seconde valeur maximum la fonction μcιose : α cIosev^2max ^ *r 2max (23)Then, in order to obtain a fuzzy similarity index α, it applies to this second maximum value the function μ c ι ose : α cIosev ^ 2max ^ * r 2max (23)
Cet indice α est ensuite comparé à un seuil Si obtenu à l'aide de la formule (17) dans laquelle dans laquelle l'écart type σ est calculé sur toute la région d'étude comprenant le macro bloc (Bi, B2, B3, B4) et tous les blocs voisins Bvj à Bvl2, et le paramètre a est égal à 1/12. Le macro bloc étudié est considéré erroné par le module 25 si l'indice α est inférieur au seuil si.This index α is then compared to a threshold Si obtained using the formula (17) in which in which the standard deviation σ is calculated over the entire study region comprising the macro block (Bi, B 2 , B 3 , B 4 ) and all neighboring blocks B v j to B vl2 , and the parameter a is equal to 1/12. The macro block studied is considered erroneous by the module 25 if the index α is less than the threshold if.
En résumé, le module 25 ne considère pas comme erronés les macro blocs situés le long d'une frontière franche d'un objet de l'image. Les macro blocs sélectionnés comme erronés doivent présenter au moins deux frontières avec
des blocs adjacents le long desquelles sa luminance moyenne est suffisamment distincte de celle des blocs adjacents.In summary, the module 25 does not consider as erroneous the macro blocks situated along a frank border of an object of the image. Macro blocks selected as erroneous must have at least two borders with adjacent blocks along which its mean luminance is sufficiently distinct from that of the adjacent blocks.
Le module 26 effectue pour chaque macro bloc une mesure de similarité diagonale en comparant la luminance moyenne de chaque bloc d'angle du macro bloc (Bi, B2, B3, B4) avec les blocs Bvι, Bv4, Bv9 et Bvl2 voisins respectifs, situés sur leur diagonale. Cette mesure a pour but de déceler des bandes de macro blocs adjacents erronés par une perception de non similarité avec des macro blocs diagonaux.The module 26 performs for each macro block a measurement of diagonal similarity by comparing the average luminance of each corner block of the macro block (Bi, B 2 , B 3 , B 4 ) with the blocks B v ι, B v4 , B v9 and B vl2 respective neighbors, located on their diagonal. The purpose of this measurement is to detect erroneous adjacent macro block bands by a perception of non-similarity with diagonal macro blocks.
A cet effet, le module 26 évalue pour chaque macro bloc non écarté par le traitement de préfiltrage 21, quatre différences de luminance moyenne entre chacun des blocs du macro bloc et les blocs diagonaux respectifs du voisinage du macro bloc :To this end, the module 26 evaluates for each macro block not removed by the pre-filtering processing 21, four differences in average luminance between each of the blocks of the macro block and the respective diagonal blocks in the vicinity of the macro block:
II sélectionne ensuite le second minimum Δ 2 min de ces valeurs car on recherche une dissimilarité.He then selects the second minimum Δ 2 min of these values because we are looking for dissimilarity.
Δ?min = 2nd min(Δy,Δ5,Δ?,Δ5,) (28)Δ? min = 2 nd min (Δy, Δ5, Δ?, Δ5,) (28)
Puis, afin d'obtenir un indice β de similarité floue, il applique à cette seconde valeur minimum la fonction μcιose définie par la formule (23) : β = μclose(Δ2min) (29)Then, in order to obtain a fuzzy similarity index β, it applies to this second minimum value the function μ c ι ose defined by the formula (23): β = μclose (Δ2min) (29)
La valeur obtenue β est ensuite comparée à un seuil s2 calculé par la formule (17) dans laquelle l'écart type est calculé sur toute la région d'étude comprenant le macro bloc (B], B2, B3, B4) et tous les blocs voisins Bvι à Bvι2 et le paramètre a est égal à 1/12. Si la valeur obtenue est inférieure au seuil s2, le macro bloc est considéré erroné.The value obtained β is then compared to a threshold s 2 calculated by formula (17) in which the standard deviation is calculated over the entire study region including the macro block (B], B 2 , B 3 , B 4 ) and all neighboring blocks B v ι to B v ι 2 and the parameter a is equal to 1/12. If the value obtained is less than the threshold s 2 , the macro block is considered to be erroneous.
Le critère appliqué par le module 26 permet ainsi de déterminer que le macro bloc considéré est erroné si au moins trois blocs diagonaux ne présentent pas
une luminance moyenne similaire, ce qui permet d'autoriser une frontière d'objet dans une diagonale quelconque.The criterion applied by module 26 thus makes it possible to determine that the macro block considered is erroneous if at least three diagonal blocks do not have a similar average luminance, which allows an object border to be authorized in any diagonal.
Le module 27 effectue une mesure de similarité d'angle en comparant la luminance moyenne de chaque bloc d'angle (Bi, B2, B , B4) de chaque macro bloc non écarté par le traitement de préfiltrage 21 avec la luminance moyenne de chacun des trois blocs adjacents du voisinage du macro bloc, délimitant les angles du macro bloc, à savoir B] avec (Bv5, Bv Bv2), B avec (Bv3, Bv4, Bv6), B4 avec (Bv8, Bvl2, Bvn) et B3 avec (Bvι0, Bv9, Bv7). Cette comparaison vise à cumuler les effets observés à l'intersection de plusieurs macro blocs du voisinage.The module 27 performs an angle similarity measurement by comparing the average luminance of each angle block (Bi, B 2 , B, B 4 ) of each macro block not removed by the pre-filtering treatment 21 with the average luminance of each of the three adjacent blocks in the vicinity of the macro block, delimiting the angles of the macro block, namely B] with (B v5 , B v B v2 ), B with (B v3 , B v4 , B v6 ), B 4 with ( B v8 , B vl2 , B vn ) and B 3 with (B v ι 0 , B v9 , B v7 ). This comparison aims to combine the effects observed at the intersection of several macro blocks in the neighborhood.
A cet effet, pour chaque ensemble de blocs d'angle voisin, le module 27 calcule les différences de luminance moyenne entre chaque bloc de l'ensemble de blocs d'angle et le bloc adjacent du macro bloc considéré, et sélectionne la valeur minimum des trois valeurs obtenues :
= min(|μB μβ VI μβ, - μβ V2 μβ, - μβ, (30)To this end, for each set of neighboring angle blocks, the module 27 calculates the differences in average luminance between each block of the set of angle blocks and the adjacent block of the macro block considered, and selects the minimum value of the three values obtained: = min (| μ B μβ VI μβ, - μβ V2 μβ, - μβ, (30)
4" min(|μB2 - μBy4 μβ . - μβ V3 μβ7 - μβ (31) Δl 3 II = min(|μB3 - μBy9 μβ 3 μβ V7 μβ. μβ (32) Δ4 π = min(|μB4 - μByi2 μβ. μβ V8 μβ_ - μβ VI ,ι) (33)4 "min (| μ B2 - μ By4 μβ. - μβ V 3 μβ 7 - μβ (31) Δl 3 II = min (| μ B3 - μ By9 μ β 3 μβ V7 μβ. Μβ (32) Δ 4 π = min (| μ B4 - μ Byi2 μ β . μβ V 8 μ β _ - μβ VI, ι ) (33)
On obtient ainsi quatre valeurs de différence (une par angle du macro bloc), parmi lesquelles on sélectionne la seconde valeur maximum Δ 2max pour tolérer une frontière franche d'objet dans une direction quelconque : Aψmax = 2nd max(ΔI 1 π, Δ?, Δ3 π, Δ1]1, ) (34)We thus obtain four difference values (one per angle of the macro block), among which we select the second maximum value Δ 2max to tolerate a frank object border in any direction: Aψ max = 2 nd max (Δ I 1 π , Δ ?, Δ 3 π , Δ 1 ] 1 ,) (34)
On applique ensuite à la valeur retenue la fonction μcιose définie par la formule (23) :The function μ c ι ose defined by formula (23) is then applied to the value retained:
Y = μclose(Δ2πmax) (35)Y = μclose (Δ2 π max) (35)
L'indice de similarité floue γ obtenu est comparé à un seuil s3 qui est calculé à l'aide de la formule (17) dans laquelle l'écart type est calculé sur toute la région d'étude comprenant le macro bloc (Bi, B2, B3, B4) et tous les blocs voisins Bvι à Bvi2 et le paramètre a est choisi égal à 1/20. La valeur du paramètre a est adaptée de manière à ce que le nombre de macro blocs sélectionnés par le
module 27 soit du même ordre que ceux sélectionnés par les modules 25 et 26.The fuzzy similarity index γ obtained is compared with a threshold s 3 which is calculated using formula (17) in which the standard deviation is calculated over the entire study region including the macro block (Bi, B 2 , B 3 , B 4 ) and all the neighboring blocks B v ι to B v i 2 and the parameter a is chosen equal to 1/20. The value of the parameter a is adapted so that the number of macro blocks selected by the module 27 is of the same order as those selected by modules 25 and 26.
Un macro bloc est alors considéré comme erroné par le module 27 si l'indice γ est inférieur au seuil s3, c'est-à-dire lorsqu'au moins deux de ses blocs d'angle ne sont pas similaires aux blocs d'angle adjacents de son voisinage.A macro block is then considered as erroneous by the module 27 if the index γ is less than the threshold s 3 , that is to say when at least two of its corner blocks are not similar to the blocks of adjacent corner of its vicinity.
Les macro blocs détectés erronés par les modules 25, 26 et 27 sont ensuite appliqués à un module 28 de décision sur l'état de chaque macro bloc, en fonction de l'état du macro bloc déterminé par chacun des modules 25 à 27. Si le macro bloc est détecté erroné par au moins deux de ces modules, il est considéré erroné par le module 28.The macro blocks detected in error by the modules 25, 26 and 27 are then applied to a module 28 for deciding on the state of each macro block, as a function of the state of the macro block determined by each of the modules 25 to 27. If the macro block is detected as erroneous by at least two of these modules, it is considered erroneous by the module 28.
Les blocs erronés sont ensuite transmis au module 14 d'évaluation d'un indice de dégradation de l'image qui comptabilise le nombre de macro blocs ainsi considérés erronés dans l'image, et détermine à partir de ce comptage un indice de dégradation de l'image obtenu en divisant le nombre de macro blocs erronés par le nombre total de macro blocs de l'image.The erroneous blocks are then transmitted to the module 14 for evaluating an image degradation index which accounts for the number of macro blocks thus considered erroneous in the image, and determines from this counting a degradation index of l image obtained by dividing the number of erroneous macro blocks by the total number of macro blocks in the image.
Des tests comparatifs du procédé de mesure des erreurs de transmission qui vient d'être décrit avec ceux de l'art antérieur, permettent de faire apparaître que ce procédé est bien plus efficace en réduisant le risque de fausses détection, tout en restant suffisamment réactif pour déceler des zones d'image erronées.Comparative tests of the method for measuring transmission errors which has just been described with those of the prior art, make it possible to show that this method is much more effective in reducing the risk of false detection, while remaining sufficiently reactive to detect erroneous image areas.
Ce procédé est particulièrement efficace pour détecter des points critiques dans une chaîne de transmission d'images, ce qui permet ensuite au fournisseur de service d'intervenir pour améliorer la qualité du service dès l'apparition de dégradations chez l'utilisateur final. Il contribue ainsi à l'optimisation de l'utilisation des ressources de transmission.This method is particularly effective in detecting critical points in an image transmission chain, which then allows the service provider to intervene to improve the quality of the service as soon as damage occurs to the end user. It thus contributes to optimizing the use of transmission resources.
Dans le procédé qui vient d'être décrit, les critères de sélection des macro blocs erronés sont appliqués à la luminance moyenne des blocs de l'image. On peut bien entendu envisager d'appliquer ces critères à d'autres paramètres des blocs de l'image, déterminés à partir de la valeur des pixels de l'image.
In the process which has just been described, the criteria for selecting the erroneous macro blocks are applied to the average luminance of the blocks of the image. It is of course possible to envisage applying these criteria to other parameters of the blocks of the image, determined on the basis of the value of the pixels of the image.