Vous êtes sur la page 1sur 19

Chapitre 2

2-1.Introduction :
L’estimation du mouvement est l’un des domaines du traitement d’image. Elle
consiste principalement dans l’analyse des séquences d’images et à exploiter
les redondances temporelles qui existent entre les images consécutives de la
séquence, afin de représenter des vecteurs caractérisant les mouvements
existant dans cette séquence.

Les méthodes du Block Matching sont parmi les méthodes d’estimation du


mouvement les plus utilisées dans la pratique. Elles peuvent être utilisées pour
découvrir des redondances temporelles dans une séquence vidéo tel qu'un
objet sans (avec) mouvement dans une vidéo, ce qui accroît l'efficacité de
compression d'une image. On les retrouve presque dans tous les standards de
compression vidéo (H.261, MPEG-1, MPEG-2 ou MPEG-4). l’estimation du
mouvement n’est pas utilisée uniquement pour la compression vidéo, mais elle
présente aussi un élément principal de plusieurs applications vidéo tels que
l’analyse des séquences, le suivi des objets en mouvement (Applications
militaires), …etc

Dans ce chapitre on s’intéressera aux différentes méthodes d’algorithme de


block matching et les plus utilisées.
2-2-principe de block matching:

Dans une séquence d'images, l'image actuelle est prédite à partir d'une image
précédente appelée image de référence. La trame actuelle est divisée en
macroblocs sans chevauchement, généralement de 16 pixels x 16 pixels. Ce
choix de taille est un bon compromis entre précision et coût de calcul.
Cependant, les techniques d'estimation de mouvement peuvent choisir
différentes tailles de bloc et peuvent faire varier la taille des blocs dans une
trame donnée.

Chaque macrobloc dans la trame courante est comparé à un macrobloc dans la


trame de référence en utilisant une certaine fonction de coût, et le meilleur
macrobloc correspondant est sélectionné. La recherche est effectuée dans une
fenêtre de recherche prédéterminée définie par le paramètre de recherche p.
En général, p est réglé sur ± 7 pixels. déterminer Un vecteur indiquant le
déplacement du macrobloc dans la trame de référence par rapport au
macrobloc dans la trame courante . Ce vecteur est appelé vecteur de
mouvement.
la trame de la trame
référence v.mouvement courante

Figure 2 1 : principe de la méthode block matching.

Les algorithmes d'estimation de mouvement par correspondance de blocs


trouvent le vecteur de mouvement du bloc actuel à travers en trouvant le bloc
déplacé et le mieux adapté dans le cadre de référence. Par exemple, (c) et (d)
montrent la 137e image et la 138e image . La trame courante (138) est divisée
en blocs ne se chevauchant pas, comme illustré en (d). Le vecteur de
mouvement pour le bloc actuel de l'image actuelle - indiqué en (f) en vert - est
trouvé en localisant le bloc déplacé le mieux adapté dans la fenêtre de
recherche correspondante dans la plage [-p, p] - indiquée en (e) en bleu - dans
l'image précédente (137). Le vecteur de déplacement qui produit l'erreur
d'appariement minimale via une fonction de coût est le vecteur de mouvement
- représenté ci-dessus par une flèche rouge.
2-3.Fonction de coût :

La mise en correspondance d'un macrobloc à l'autre est basé sur la sortie d'une
fonction de coût également appelé une mesure de distorsion de bloc (BDM :
The Mean Absolute Difference).
Macrobloc que les résultats du moindre coût est celui qui correspond au bloc
courant le plus proche. Il existe différentes fonctions de coût, dont la plus
populaire et la moins coûteuse en calcul est:

La différence absolue moyenne (MAD ) donnée par l'équation (i).

une autre fonction de coût est l'erreur quadratique moyenne (MSE : the
Mean Squared Error) donnée par l'équation (ii).

où N est la taille de la macrobock, Cij et Rij sont les pixels qui sont comparés
dans le macrobloc actuel et le macrobloc de référence, respectivement.

Ghanbari (1990) déclare que l'utilisation de l'erreur absolue moyenne plutôt


que de l'erreur quadratique moyenne plus complexe comme mesure de
distorsion, se traduit par une performance meilleure (presque 0,8% d'erreur
de prédiction en moins).

Pour chaque fonction de coût, une comparaison est faite pixel par pixel en
utilisant uniquement la valeur de luminance (Richardson, 2002). Ces erreurs
sont additionnées sur le macrobloc et si cette erreur est inférieure à l'erreur
précédente, l'emplacement du macrobloc dans l'image de référence est
enregistré. Une fois que tous les macroblocs de la fenêtre de recherche ont
été examinés, le vecteur de mouvement est déterminé sur la base du
macrobloc avec la mesure d'erreur la plus faible.
Fig. 2.2 : Une fonction de coût appliquée à un certain nombre
d'emplacements dans la fenêtre de recherche.

-(a) montre le bloc courant de la trame courante en vert.

- (b) montre différents blocs déplacés dans la trame de référence dont


l'emplacement correspondant du bloc courant en vert.

- (c) montre les résidus correspondants (erreurs de La mise en


correspondance ).

-Le déplacement (en haut à droite) qui trouve le bloc qui correspond le mieux
(marqué en rouge) est le vecteur de mouvement.
2-4. Prédiction avant (forward) et arrière (backward) :

L’algorithme du Bloc Matching permet d’estimer le mouvement des blocs entre


deux images à des temps consécutifs. Le mouvement ainsi calculé va permettre
de prédire l’image t+1 en combinant l’information contenue dans les blocs dans
l’image t et les vecteurs mouvements.

Ainsi. Deux types de prédictions sont possibles : la prédiction « avant » dite «


forward » et la prédiction « arrière »dite « backward ». La prédiction forward
consiste a diviser l’image n en blocs et a trouver leur position dans
l’images t + 1. En revanche, la prédiction backward, divise l’image t + 1
en blocs et cherche leur position dans l’image t.

Prédiction avant (forward)

Prédiction arrière (backward)

Figure2.3  : prédiction avant et arrière.


Les résultats sont très différents. Il apparait par construction que l’image
prédite par prédiction forward présente des « trous ». En effet, de manière
générale les blocs n’ont pas un mouvement unique pour toute l’image. Lors de
la prédiction certains blocs se recouvrent et laissent apparaitre de zones n’ont
prédites et par conséquent noires (voir figure 2.4 [Prédiction avant (forward)]).

Ce problème est entièrement résolu par l’utilisation de la prédiction backward


qui ne laisse entrevoir aucun « trou » dans la prédiction(voir figure
2.4[Prédiction arrière (backward) ]).

2-5. Critères d'évaluation :

Les blocs sont assignés sur la base d’un critère d’évaluation, ce critère n’est
autre qu’une mesure de ressemblance (similarité) ou de dissemblance
(disparité) entre les blocs testés. Dans le cas d’un critère de ressemblance, ce
dernier doit être maximisé, sinon, minimisé dans le cas d’une dissemblance. De
manière générale, la plupart des articles traitant de l'estimation du
mouvement, avec les algorithmes du Block Matching, considèrent que les blocs
sont caractérisés par la luminance (intensité lumineuse). Ceci est dû au fait que
l’œil humain est davantage sensible à l'intensité lumineuse qu'à la couleur.

Pour définir le meilleur bloc cible, l'algorithme se base donc sur des critères
d'évaluation métrique qui mesurent la différence de contenu entre les deux
blocs et les compare avec tous les autres blocs cibles potentiels. Voici des
exemples de critères:

 Som of Square Différences (SSD) : somme des différences des pixels de


chaque bloc au carré, non adapté à la couleur (critère à rajouter)
 Som of Absolute différences (SAD) : Somme des différences absolues
calcule la somme des valeurs absolues des différances de luminance des
pixels de l’image originale et celle de référence.
 Zero-mean Normalized Sum of Absolute Differences (ZNSAD) : prend en
compte les moyennes des blocs et normalise le résultat (ZNSSD pour
SAD)
 Erreur absolue moyenne EAM: traite les erreurs de manière uniforme.
 Coefficient d’inter-corrélation (CC) : le critère de ressemblance
statistique le plus utilisé.
 Coefficient d’inter-corrélation normalisé et centré (NCC) : c’est le CC
normé et centré à la variance.
 Erreur quadratique moyenne (EQM) : Ce critère est dérivé de l’erreur
moyenne absolue.

Les expressions des critères sont données pour une fenêtre de recherche de
taille L×L, centrée sur le pixel de coordonnées P= (Px, Py) (position initiale) dans
l’image de référence.

Le déplacement d’un bloc candidat à l’intérieur de la fenêtre est caractérisé par


un vecteur V= (dx, dy) et est borné par la taille de la zone de recherche. La
position du meilleur bloc candidat est notée (dˆx, dˆy) .

2-6. Stratégies de recherche du meilleur bloc :

Il existe plusieurs méthodes du Block Matching pour le parcours du voisinage,


afin de trouver le bloc qui correspond au mieux au bloc de référence, et qui
optimise le critère d'évaluation. La méthode la plus fondamentale pour trouver
le meilleur bloc candidat est de visiter et de tester tous les blocs de la zone de
recherche. Cette stratégie, appelée recherche exhaustive, est optimale mais
pourrait s’avérer très coûteuse en temps de calcul, surtout pour des amplitudes
de déplacement grandes. Cela implique des zones de recherche de taille
importante et donc un nombre considérable de blocs candidat à visiter.
D’autres balayages non exhaustifs de la zone de recherche ont été proposés
dans la littérature. L’objectif de ces techniques est de converger plus
rapidement vers le minimum de la fonction de similarité.
2-6-1 : algorithme de recherche exhaustive (Full Search (FS)) :

Cette méthode consiste à faire la recherche de bloc sur l’ensemble des blocs de
l'image référence. Cet algorithme est le plus simple, mais aussi le plus coûteux
car il n'optimise pas la recherche: il n'y a pas de seuil pour la fenêtre de
recherche. Il sert néanmoins de référence pour les autres algorithmes.

Figure 2.4: algorithme de recherche exhaustive (FS)

2-6-2 : Recherche en trois pas (Three Step Search (TSS)) :

(Proposé par Koga; et al, 1981)

Contrairement à l’algorithme FS, cette méthode (TSS) se limite à trois pas pour
trouver le meilleur bloc. Au lieu de parcourir tous les blocs de la zone de
recherche, le but de ces algorithmes est de parcourir la fenêtre en se
rapprochant pas à pas du bloc candidat.
Figure 2.5 : Algorithme TSS.

La Figure 2.6 : illustre les trois étapes nécessaires à l'algorithme pour retourner
un résultat.Dans la première étape le bloc centré se place au vecteur de
mouvement nul.

Ensuite tester le critère aux alentours du centre (8-connexité) avec un premier


pas, et on repère le point qui vérifie le critère. On prend le point trouvé
précédemment comme nouveau centre et on recherche aux alentours de ce
point avec un pas inférieur au premier pas. On reprend le minimum comme
centre de la prochaine étape. Dans cette dernière étape on répète une
troisième fois l'opération avec un pas inférieur aux deux premiers. (Recherche
en multi résolution).
L'algorithme peut être décrit comme suit: [3]

Début

• Étape 1: Un premier pas est choisi. Huit blocs à une distance de la taille
du pas du centre (autour du bloc central) sont sélectionnés pour comparaison.

• Étape 2: La taille du pas est réduite de moitié. Le centre est déplacé au


point avec la distorsion minimale.

Fin

Les étapes 1 et 2 sont répétées jusqu'à ce que la taille de pas soit inférieure à 1.

les avantages : Il est très rapide (3 phases de 8 tests seulement) .

les inconvénient : inefficace pour l’estimation de petits mouvements.

2-6-3 : Recherche en quatre pas (four step search(FSS)) :

(Proposé par Lai-Man Po et al, 1996)

L’algorithme commence par une comparaison de neuf points ensuite les


autres points de comparaison sont sélectionnés en fonction de l’algorithme
suivant :

Début :

• Étape 1 : commence par un pas de 2. Choisissez neuf points autour du


centre de la fenêtre de recherche. Calculez la distorsion et trouvez le point avec
la plus petite distorsion. Si ce point est le centre de la zone de recherche,
passez a l’étape 4, si non passez a l’étape 2.
• Étape 2: Déplacez le centre vers le point avec la plus petite distorsion.
La taille de pas est maintenue à 2. Le motif de recherche, cependant, dépend
de la position de la distorsion minimale précédente
A) Si le point minimum précédent est situé au coin de la zone de
recherche précédente, cinq points sont sélectionnés (comme indiqué sur la
figure).

B) Si le point de distorsion minimum précédent est situé au milieu de


l'axe horizontal ou vertical de la fenêtre de recherche précédente, trois points
de contrôle supplémentaires sont sélectionnés. (Comme le montre la figure).
Localisez le point avec la distorsion minimale. Si c'est au centre, passez à
l'étape 4 sinon passez à l'étape 3.

• Étape 3: La stratégie de recherche est la même, mais elle passera


finalement à l'étape 4.
• Étape 4: La taille du pas est réduite à 1 et les neuf points autour du
centre de la recherche sont examinés.

Fin.

Figure 2.6 : Algorithme 4SS.


La complexité computationnelle de la recherche en quatre étapes est inférieure
à celle de la recherche en trois étapes, alors que la performance en termes de
qualité est aussi bonne. Il est également plus robuste que la recherche en trois
étapes et il maintient sa performance pour les séquences d'images avec des
mouvements complexes comme le zoom de caméra et le mouvement rapide. Il
s'agit donc d'une stratégie très attractive pour l'estimation du mouvement.

2-6-4 : Recherche selon le gradient (Gradient Search GS):

(Proposée par Liu et Feig, 1996).

Cet algorithme est basé sur l’utilisation d’un pas de recherche fixe et le passage
d’un bloc candidat à l’autre se fait en suivant la direction indiquée par la
descente du gradient de la fonction de coût utilisée. C’est un algorithme qui
fonctionne efficacement dans le cas des séquences stationnaires.

Figure 2.7 : recherche selon le gradient.


2-6-5 : algorithme de recherche en diamant (diamond search DS):

(Proposée par A.M. Tourapis et al, 2000).

L’algorithme de recherche en diamant est un algorithme rapide d’estimation de


mouvement de correspondance de bloc, il est base sur l’étude de la distribution
des vecteurs de mouvement de plusieurs séquence vidéo.
L’algorithme DS utilise deux modèles de recherche. Un modèle de recherche en
grand diamant (Large diamond search pattern) de 09 points de recherche
comme montré sur la figure (a). et l’autre modèle de recherche en petit
diamant (Small diamond search pattern) de 05 points comme montré sur la
figure (b).

Figure2.8 : (a) Modèle de recherche . (b)Modèle de


recherche en grand diamant LDSP en petit diamant SDSP

Le modèle de recherche en grand diamant est toujours employé dans la


procedure de recherche jusqu’à l’étape dans laquelle le point minimum de la
déformation de bloc se produit au centre du diamant. Le modèle de recherche
est alors passé a la recherche en petit diamant. Le point rapportant le bloc,
parmi les 05points de contrôle dans le SDSP fournit le vecteur de mouvement
du bloc le mieux correspondant.
Le principe de l'algorithme DS est le suivant :

• Le LDSP initial est centré à l'origine de la fenêtre de recherche, et les 9


points de contrôle de LDSP sont examinés. Si le point minimum du bloc calculé
est situé à la position centrale, passer à l'étape 3; autrement, passer à l'étape 2.

• Le point minimum du bloc trouvé dans l'étape de recherche précédente


devient le point central du nouveau LDSP. Si le nouveau point minimum du bloc
obtenu est situé à la position centrale, passer à l'étape 3; autrement, répéter
périodiquement cette étape.

• Changer le modèle de recherche de LDSP à SDSP. Le point minimum du


bloc trouvé dans cette étape est la solution finale du vecteur de mouvement,
donc c’est le bloc le plus correspondant.

Figure 2.9 : algorithme de recherche en diamant.


2-6-6 : Algorithmes 2D-logarithmiques (TDL: Two Dimension
Logarithm) :

(Présenté par Jain et al, 1981)

Les méthodes 2D-logarithmiques sont une autre amélioration: une fois fixé la
taille prototype on procède par itération et on réduit la recherche à certains
points seulement.
On part du vecteur de mouvement nul, et on cherche le bloc en cinq points: le
centre et dans les quatre directions Nord Sud Est Ouest à une distance D. Le
point où on trouve le critère vérifié est gardé comme centre de la prochaine
recherche. On réduit la distance de recherche D à log2 (D) dans le cas où le
point est trouvé au centre du prototype ou bien le centre du prototype touche
le bord de l'image.

Figure 2.10 : Exemple de recherche 2D-logarithmique.


On obtient donc des algorithmes qui consomment environ 10 fois moins de
temps que la méthode Full Search, donc plus adaptés à la compression vidéo.

De même que pour les méthodes précédentes, Plusieurs algorithmes rapides


d'estimation de mouvement ont été étudiés pour réduire le temps de
recherche des blocs, La méthode de recherche en diamant (diamond search
DS), La méthode de Recherche en trois pas (Three Step Search (TSS)), La
méthode de Recherche en quatre pas (four step search(FSS)) , sont parmi les
méthodes rapides d’estimation de mouvement.
Conclusion
Les méthodes du block matching sont parmi les méthodes d’estimation du
mouvement les plus utilisées dans la pratique.

Dans ce chapitre, nous avons expliqué les principales techniques de la mise en


correspondance de blocs (block matching) ainsi que le principe général de leur
fonctionnement. Dans la suite de notre travaille nous nous intéressons à
l’amélioration de cette méthode avec l’utilisation de l’algorithme
d’optimisation par l’essaim de particulaires.
[3] DEEPAK TURAGA, MOHAMED ALKANNAL. IEEE: ‟‟ Search Algorithms for block-
matching motion estimation „‟ 1998.

Vous aimerez peut-être aussi