240 likes | 494 Views
Departement d’Informatique. Soutenance de Magister en Informatique. Option: I.A & Image. Thème:. Compression des images animées par estimation de mouvement. Présenté par: A.DJEFFAL. Devant le jury: Pr M.C.Baatouche Président Dr M.K.Kholadi Examinateur
E N D
Departement d’Informatique Soutenance de Magister en Informatique Option: I.A & Image Thème: Compression des images animées par estimation de mouvement Présenté par: A.DJEFFAL Devant le jury: Pr M.C.Baatouche Président Dr M.K.Kholadi Examinateur Dr A.Boukarem Examinateur Dr A.Khelifa Examinateur Encadré par: Dr N.DJEDI
Plan • Introduction • Compression vidéo • Estimation de mouvement • Block matching • Méthode hybride • Conclusion & perspectives
Mobile 3eme génération et plus Visiophonie Téléconférence Vidéo chat Introduction • Les nouvelles technologies utilisent les images animées (séquences vidéo) …
1 pixel ≡ ≡ 3 octets … … … 180 240 Introduction • Les solutions existantes ne sont pas suffisantes pour les nouvelles applications temps réel tel que les téléphones mobiles, le vidéo chat,… • Cependant, la manipulation des images nécéssite des espaces et des débits trés importants 180 x 240 x 3 ≈ 126 KOctets 1 minute, 25 images/seconde 180 x 240 x 3 x 25 x 60 Octets≈ 185 MOctets !!! • D’où la nécessité de nouvelles techniques de compression plus rapides • D’où la nécessité de la compression
… … … Compression vidéo Principe: • Eliminer la redondance Spatiale • Eliminer la redondance Temporelle • Estimation de mouvement • Compression des images fixes
1 0 DCT Sous-Echantillonage 0 1 1 0 (0,1) 1 0 Quantification Saturation Codage RLE Image en Blocs 8x8 Passage de RVB à YUV Image compressée 001011011101… Codage de Huffman (2) (0,0) (1,2) (2,1) Compression vidéo Codage JPEG (Joint Photo Expert Group) Codage des images fixes (codage IntraFrame) GIF, CIF, JPEG,… RVB Y:Luminance (Nbre de 0s, Première valeur non nulle qui suit) (0,0): fin du bloc U/4, V/4 U,V:Chrominance
F3 F1 F2 F4 Compression vidéo Codage InterFrame H261,H263,H26L, MPEG1..MPEG21, … • Parfois les infos à coder se trouvent dans les images futures et non dans les images passées Coder une image par rapport à une image de référence I(F1) I(F2 - F1) I(F3 – F2) I(F4 – F3), … • Codage Bidirectionnel (Images B) • Codage Prédictif (Images P)
Codage Décodage File d’attente Mémoire Compression vidéo Schéma d’un encodeur vidéo (MPEG) Entrée: IBBPBBPIBBP… B B Sortie: I P B I P B B JPEG Estimation de mouvement 100110… 100110… 011011… 011011… 111001… 000110… Compensation de mouvement JPEG Inv
Compression vidéo Caractéristique d’un encodeur vidéo 1. Taux de Compression Ou encore 2. Vitesse de codage : EM +60% 3. Débit 4. Qualité
Cible Référence Estimation de movement • Comment calculer la différence entre une image et une image de référence ? • Calculer le déplacement des objets entre les deux images : Calculer les vecteurs de mouvements Vecteur de mouvement • Comment représenter les objets ?
Estimation de mouvement Méthodes d’ EM 2. Segmenter l’image Objet=Segment • Calculer le vecteur de mouvement de chaque pixel • Objet=Pixel 3. Considérer les objets comme des blocs non chevauchés Objet=Bloc Equation du flot optique Correspondance de blocs (Block Matching 16x16) Pixel récursif • Rapide, • Efficace, • Utilisée par la plupart des standards,… • Temps de segmentation exhaustif, inadmissible pour les applications temps réel. • Problèmes de segmentations Chevauchement des objets, Difficulté d’implémentation Hard, … • Temps de calcul exhaustif, inadmissible pour les applications temps réel.
Image cible Image de référence Block matching Principe: MaxMDB MDB: MinMDB Mesure de Distorsion du Block (MDB): Zone de recherche Blocs candidats: selon le type de mouvement de la séquence (large, réduit ou stationnaire) Différent Ressemble Identique
Block Matching Algorithmes Objectifs: • Augmenter le taux de compression • Minimiser le temps de calcul • Augmenter la qualité des images Comment ? • Dimensions de la zone de recherche • Choix des blocs candidats (nombre & dispersion) • Seuils d’acceptabilité
Image cible Image de référence Recherche logarithmique 2D (2DLog) Algorithmes Block Matching Full Search Three Step Search (3SS) 3 3 3 • 5 points: central & ses 4 voisins • Distance : w/2 • Trouver le meilleur ressemblant • Si meilleur = centre ou bords alors Distance/2 • 5 nouveaux points autour du meilleur précédent • Lorsque distance=1, Utiliser 9 points, arrêter. • 9 Points: Central & ses 8 voisins • Distance: w/2 • Trouver le meilleur ressemblant • Utiliser le meilleur comme centre • Distance/2, sélectionner 8 nouveaux • Répéter l’algorithme 3 fois 2 2 2 3 3 3 3 3 2 2 1 1 1 2 2 2 2 1 1 1 1 2 1 1 1 4 4 4 3 4 2 4 1 4 4 4 1 1 1 3 Temps de calcul exhaustif !
a=A b=(A+B+1)/2 c=(A+C+1)/2 d=(A+B+C+D+2)/4 b A B a c d C D Descent gradient Search Autres Four Step Search (4SS) Block Matching Algorithmes • Point centre et ses 8 voisins • Pas=W/4 • Si meilleur=centre alors • Pas = 1 • Select 8 nouveaux voisins • Fin • Sinon Continuer avec le nouveau centre et le même pas • Si la procédure est répétée • trois fois alors, • Pas = 1 • Select 8 nouveaux voisins • Fin • BM Hiérarchique • 9 points: central & ses 8 voisins • Distance : 1 • Trouver le meilleur ressemblant • Si meilleur = centre ou bords alors Arrêter • 8 nouveaux points autour du meilleur précédent • Recommencer 1 1 1 • BM à fraction de pixel 1 2 1 1 1 3 1 2 1 1 1 1 2 2 1 1 3 1 3 3 1 3 1 3 1 2 3 2 2 2 4 4 4 • BM Binaire,… 4 3 3 3 4 4 4 4
PSNR MPEG2 46 H263 42 Codec Utilisé 38 34 96 97 98 99 TC Comparaison Block Matching Algorithmes Critères Application de test Lancer … Classées selon le vitesse de mouvement des blocs Utilisées par les standards de codage vidéo • Taux de compression • PSNR • Temps de calcul: nombre de blocs testés • Codage JPEG fixe, • Codage P, • Codage B, 1. Séquences lentes 1. Séquences rapides 1. Séquences stationnaires Images fixes dans la plupart (arrière plan) : zone de recherche très réduite Images à large mouvement des blocs: séquences sportives Images à mouvement des blocs réduits: exploration d’une scène Outils … Séquences de test • Séquences de test • Application de test Résultats (Miss America)
Résultats de comparaison Block Matching Algorithmes Méthode hybride Séquences Rapides • 4SS Séquences Lentes Et statiques • GS Même séquence contient des blocs rapides, d’autres lents et d’autres statiques !
Méthode hybride • Détecter le type de mouvement du bloc • Choisir l’algorithme de recherche qui convient • Choisir la zone de recherche optimale • Choisir le point de départ approprié
I-1 I-2 I Méthode hybride Détection du type du bloc Calculer un vecteur de mouvement moyen à partir des estimations précédentes • Dans la même image • Dans les images successives Bloc courant Blocs précédents Mêmes vecteurs de mouvement ou vecteurs très proches Mêmes vecteurs de mouvement ou vecteurs très proches • En Prenant en compte la distance et la direction entre l’image codée et l’image référence !!!
BDM > MinBDM BDM > MinBDM O O N N Vecteur de mouvement moyen estimé VM Images P Images B (0,0) Bloc Stationnaire > (3,3) Bloc rapide ](0,0),(3,3)] Bloc Lent Calculer BDM Calculer VM’ • Utiliser GS • ZDR= 3X3 • Commencer de VM Calculer VM’’ • Utiliser 4SS • ZDR= 16X16 • Commencer de VM Calculer BDM Retourner VM’’ Retourner VM Retourner VM’
Méthode hybride Avantages Paramètres importants Résultats Inconvénients • Nombre d’images B • Paramètres MinBDM & MaxBDM • Adaptée à tous type de séquences voire blocs • Amélioration jusqu’à 81% en temps de calcul (plus -> recherche par interruption) • Ajout des instructions de décision (négligeables) • Perte en TC et PSNR (non significative)
Conclusion & Perspectives • Etudier les principes, les normes et les techniques de codage vidéo • Etudier les méthodes d‘EM. • Réaliser un Codec vidéo basé sur l‘EM. • Etudier et comparer les algos de BM . • Proposer une méthode hybride . • Raffiner le codage Intra • Audio + Synchro • Parallélisation • Implémentation HARD • Tech. Apprentissage Avancées