760 likes | 875 Views
Représentation en objets vidéo pour un codage progressif et concurrentiel des séquences d’images. Marc Chaumont. Encadrants H. Nicolas & S. Pateux Équipe Temics. Débits disponibles : RTC : 56Kb/s, ADSL : 8Mb/s. Capacité de stockage disponible : DVD R/W capacité : 38 Gb. mchaumon:
E N D
Représentation en objets vidéo pour un codage progressif et concurrentiel des séquences d’images Marc Chaumont Encadrants H. Nicolas & S. Pateux Équipe Temics
Débits disponibles : RTC : 56Kb/s, ADSL : 8Mb/s • Capacité de stockage disponible : DVD R/W capacité : 38 Gb mchaumon: 1 fibre optique : 40 Gb/s ContextePourquoi compresser le signal vidéo? • Débit d’un signal vidéo sans compression : 237 Mb/s (télévision SDTV (images 720x576)) • Volume d’un signal vidéo sans compression : 1,22 Térabits (1h1/2 de film) Nécessite de compresser ...
mchaumon: MPEG1, Video CD, MP3 …jusqu’à 1.5Mb/s MPEG 2, Digital Television, DVD … MPEG4, multimédia H264/AVC JM2 : 39%* de gain sur MPEG4 (ASP) 49%* de gain sur H.263 (HLP) 64%* sur MPEG2 *[Schwarz et al. 02], à distorsion égale QCIF et CIF (10Hz 15Hz) (28<=PSNR<=36) mchaumon: effort de recherche bien antérieur. Traitement de l’image, puis codeurs ... année 80 codeurs par régions (Kunt 85), année 90 codeurs par objet et modèles. à coté de ces standard, autre codeur proposé par le monde de la recherche : plus spécialisé, ou ayant des approches différentes (objet, basés modèle…) standard permet de ce positionner par rapport à quelque chose que tout le monde connaît. ContexteUne standardisation des codeurs
ContexteApproches connexes • Années 80, le codage par région : • MORPHECO [Salembier et al. 95], ... Image 50 séquence coastguard valeur d’intensité par région carte des régions (carte de segmentation)
ContexteApproches connexes • Années 80, le codage par région : • MORPHECO [Salembier et al. 95], ... (+) : basé sur des critères psychovisuels (-) : une carte coûteuse à coder (nombreuses régions) (-) : gestion difficile des occultations (car projection des cartes) (-) : artefact de contour
ContexteApproches connexes • Années 90, le codage OBASC (object-based analysis-synthesis coder) : • Codage par SPRITE [MPEG4] [Okada et al. 01] • Codage par couches [Schwarz et al. 00] [Han et al. 98] • Codage par modèle [Hötter 90], [Galpin 02], [Eisert et al. 99]
zone de l’image 50 texture de l’image 50 ContexteApproches connexes • Années 90, le codage OBASC Image 50 séquence coastguard masque par objet + ordre de profondeur 1 texture par objet pour un groupe d’images
ContexteApproches connexes • Années 90, le codage OBASC (+) : 1 masque par objet + stable temporellement que l’approche région occultations mieux gérées (z-ordre) codage moins coûteux que l’approche région (+) : 1 texture par objet pour un groupe d’images + stable temporellement que l’approche région meilleure gestion des textures qui apparaissent
images PAS de FORMES z-ordre séquence images images images formes formes formes z-ordre z-ordre z-ordre ContextePrincipe du codage objet 1 - ANALYSE 2 - CODAGE 3 - DECODAGE S E G M E N T A T I O N reg1 ou obj1 S Y N T H E S E répartition des débits entre objets reg2 ou obj2 séquence reconstruite 1 - ANALYSE 2 - CODAGE 3 - DECODAGE
ContextePar rapport au codage non objet ... • Les difficultés : • la segmentation • la répartition des débits • la composition • Les points intéressants : • la composition composition d’objets vidéos
ContextePar rapport au codage non objet ... • Les difficultés : • la segmentation • la répartition des débits • la composition • Les points intéressants : • la composition • la répartition des débits répartition des débits : visage 80 Kb/s fond 15 Kb/s forme 6 Kb/s
ContextePar rapport au codage non objet ... • Les difficultés : • la segmentation • la répartition des débits • la composition • Les points intéressants : • la composition • la répartition des débits • l’estimation du mouvement est plus performante codage non objet codage objet
ContextePar rapport au codage non objet ... • Les difficultés : • la segmentation • la répartition des débits • la composition • Les points intéressants : • la composition • la répartition des débits • l’estimation du mouvement est plus performante • compromis entre approche basée pixel et basée modèle
ContexteFil conducteur • Le codage objet est-il intéressant ? • Une réponse à travers 2 axes d’étude : • la comparaison du codage objet vs. non objet Étude du CODAGE DYNAMIQUE • la segmentation en objets vidéo Étude de la SEGMENTATION mchaumon: CODAGE DYNAMIQUE je possède les masques, qu’est-ce que je gagne par rapport au codage non objet ? SEGMENTATION Je ne possède pas les masques, est-ce possible de les obtenir automatiquement ?
Plan mchaumon: première partie : expérimental (pas de réelle nouveauté) implémentation deuxième partie : une contribution et une approche (+ philosophique) de la segmentation modélisation • 1 - Contexte (efficacité du codage objet ?) • 2 - Le codage dynamique d’objet vidéo • définition du codage dynamique • mise en place d’un schéma - optimisation débit-distorsion • analyse des résultats • 3 - La segmentation en objets vidéo • état de l’art - lacune des approches existantes • proposition d’un modèle d’objet - résolution par clustering 3D • analyse des résultats • 4 - Conclusion - contributions - perspectives
Le codage dynamiqueDéfinition • Introduit par [Ebrahimi et al. 95] et [Reusens et al. 97] : • principe : mise en concurrence de plusieurs techniques de codage ou codeurs sur une image ou une région • mise en œuvre : par optimisation débit-distorsion • Principe identique : • dans le codeur H264/AVC • dans les codeurs MPEG • ... mchaumon: Kunt epfl … principe d ’optimisation. Pour nous optimisation débit distorsion
Le codage dynamiquePour les objets vidéos • Principe : Mise en concurrence de plusieurs • codeurs sur plusieurs objets • Objectif : Déterminer la meilleure configuration • codeur - objet - débit/qualité mchaumon: pour chaque objet : trouver le meilleur codeur et la qualité ou débit approprié
[Galpin et al. 01] [Balter et al. 03] Le codage dynamiqueSchéma du codage dynamique mchaumon: réflexion 1 : complexe en temps de calcul, mais existe tech prédiction et facilement parallelisable, augmentation rapidité des proc …. Pascal Fleury Réflexion 2 : possible sur plus de 2 objet Réflexion 3 : pb au niveau de la synthèse : trou - aliasing … détailler les codeurs revenir sur question importante : intérêt codage objet mchaumon: il a fallut : - définir une mesure de distortion - adapter le codeur H264/AVC - mettre en place le codeur par mosaique - gérer les problème de composition d’objet
Le codage dynamiqueSchéma du codage dynamique [ITU-T Rec. H.264 / ISO/IEC 11496-10, 02] JM5
Le codage dynamiqueSchéma du codage dynamique [Cammas et al. 03]
Le codage dynamiqueSchéma du codage dynamique [Marquant 00] [Pateux et al. 01]
Le codage dynamique m3dcoder, représentation des données séquence originale GOP 108-119 1 maillage 3D GOP 108-119 1 texture plaquée GOP 108-119 + les mouvements caméra
mchaumon: nécessite de trouver le modèle 3D : scéne rigide, peu d ’objet spéculaire, suffisament de mouvement, mouvement non dégénérés, Adapté aux structures rigides ayant un mouvement 3D Le codage dynamiquem3dcoder, inconvénients/avantages (-) : difficile de trouver le modèle 3D (+) : représentation très efficace à faible débit séquence originale GOP 108-119 séquence reconstruite GOP 108-119
1 image mosaïque GOP 0-90 + les mouvements paramétriques Le codage dynamique Sprite, représentation des données textures originales
mchaumon: images 0 - 17 Le codage dynamique Sprite, inconvénients/avantages (-) : nécessite un mouvement global (+) : représentation très efficace à faible débit textures originales objet vidéo fond reconstruit
Le codage dynamique wavelet 3D, représentation des données textures originales GOP 0-8 maillage 2D GOP 0-8 textures projetées* GOP 0-8 *remarque : notion de prolongement de texture (« padding »)
mchaumon: objet vidéo reconstruit 132.7Kb/S PSNRtext=30.1 Le codage dynamiquewavelet 3D, inconvénients/avantages (-) : nécessite des mouvements peu chahutés (+) : représentation « scalable » objet vidéo original objet vidéo reconstruit R = 132.7 Kb/s
Le codage dynamique H264/AVC, représentation des données textures originales mouvements blocs textures blocs
mchaumon: objet vidéo reconstruit 55Kb/s PSNR=31,8 Le codage dynamiqueH264/AVC, inconvénients/avantages (+) : représentation très efficace pour tous types de séquences objet vidéo original objet vidéo reconstruit R = 55 Kb/s
mchaumon: m3dcoder mouvement supérieur à 10 pixels, pourcentage de point commun première dernière image supérieur à 30%, erreur de correspondance inférieur au 1/2 pixel Le codage dynamiqueDomaine d'efficacité de chaque codeur
EQMtext EQMtext Le codage dynamiqueEQM dans le domaine texture textures projetées vers temps référence codeurs textures codées séquences Sprite EQMtext WLT 3D m3dcoder
Résolution par formulation Lagrangienne : • Pour une qualité uniforme : Le codage dynamiqueOptimisation R+D avec contrainte sur R mchaumon: explication à la main … formulation lagrangienne : non contrainte : algo (on fixe lambda) on calcul tout les J on garde le meilleur codeur par objet, on itère sur les lambda. Qualité uniforme: 1 lambda par objet, calcul de chaque J par objet avec contrainte de qualité identique. Puis, on déduite le Rtotal et on recommence. • Objectif :
H264/AVC Ondelette 3D H264/AVC Ondelette 3D Mosaïque mchaumon: interpolation des courbes … interpolation par polynome de degré 3 par morceaux. (tangente aux bords) dévellopper…??? Le codage dynamique Séquence Foreman CIF 15Hz mchaumon: m3dcoder échoue… avant-plan, pas de sprite Une tendance : à partir haut débit H264 dépasse tout le monde • Remarques : • EQM dans le domaine texture • interpolation des courbes • Constat : • à faible débit, pas de suprématie • H264/AVC objet performant à partir des débits moyen arrière-plan distorsion (EQM) débit (Kbits/s) avant-plan mchaumon: dire: 1 pas 1 codeur supérieur distorsion (EQM) mchaumon: CIF 15Hz débit (Kbits/s)
H264/AVC Ondelette 3D H264/AVC Ondelette 3D Mosaïque Le codage dynamique Séquence Foreman R = 93Kb/s arrière-plan distorsion (EQM) 13 débit (Kbits/s) avant-plan codage dynamique* débit = 99 Kb/s** PSNRtext = 33.4 dB distorsion (EQM) 80 débit (Kbits/s) * utilisation d’antialiasing lors de la composition ** 6 kb/s pour la forme codage de forme avec pertes
H264/AVC Ondelette 3D H264/AVC Ondelette 3D Mosaïque Le codage dynamiqueSéquence Foreman R = 256Kb/s arrière-plan distorsion (EQM) 109 débit (Kbits/s) avant-plan codage dynamique débit = 262 Kb/s* PSNRtext = 36.2 dB distorsion (EQM) 147 débit (Kbits/s) * 6 kb/s pour la forme
Le codage dynamiqueCodage objet vs. non objet codage dynamique débit = 99 Kb/s PSNRtext = 33.4 dB codage H264/AVC débit = 100 Kb/s PSNR = 32.9 dB
Le codage dynamiqueCodage objet vs. non objet codage dynamique débit = 262 Kb/s PSNRtext = 36.2 dB codage H264/AVC débit = 268 Kb/s PSNR = 37.6 dB
mchaumon: Rem: le mouvement peut être faux, ca ne ce voit pas (mise à part sur les bords) -> le mouvement peut subir beaucoup de perte, indépendament de la texture… cf article ICIP 2003 pb 1 fortement dépendant de la segmentation : pb2 on déborde :débit perdu à coder des informations non nécessaires pour le joueur. Pb3 semantique : la balle à disparu… * joueur : 70 Kb/s (H264/AVC) fond : 25 Kb/s (mosaïque+mvt affine) forme : 5 kb/s Le codage dynamiqueSéquence Stefan 352x240 15Hz codage dynamique débit = 100 Kb/s* PSNRtext = 27.2 dB codage H264/AVC débit = 105 Kb/s PSNR = 26.7 dB
mchaumon: *PSNR = 25.1 dB Le codage dynamiqueSéquence Escalier 25 Hz codage m3dcoder débit = 100 Kb/s PSNRtext = 31.3 dB codage H264/AVC débit = 113 Kb/s PSNR = 28.3 dB
Le codage dynamique Bénéfices et inconvénients • Les points positifs : • répartition du débit entre objets • codage en fonction de l’objet • efficacité à faible débit (<256 Kb/s, CIF 15 Hz) • donne une réponse favorable au codage par objet • Les points négatifs : • évaluation difficile du résultat de composition • résultat du codage fortement dépendant de la segmentation • hiérarchisation du débit uniquement par intervalles • complexe en temps de calcul au codeur
Plan • mchaumon: • première partie : • expérimental (pas de réelle nouveauté) • implémentation • confirmé l’hypothèse selon laquelle le codage par objet peut mener à des résultats égal ou supérieur au codage non objet. • deuxième partie : • une contribution et une approche (+ philosophique) • de la segmentation • modélisation • 1 - Contexte (efficacité du codage objet ?) • 2 - Le codage dynamique d’objet vidéo • définition du codage dynamique • mise en place d’un schéma - optimisation débit-distorsion • analyse des résultats • 3 - La segmentation en objets vidéo • état de l’art - lacune des approches existantes • proposition d’un modèle d’objet - résolution par clustering 3D • analyse des résultats • 4 - Conclusion - contributions - perspectives
mchaumon: il manque peut être un transparent référence ? Et explication techniques. La segmentation en objets Objectif des techniques actuelles mchaumon: approches morphologiques approche statistiques approches variationnelles • Déterminer des homogénéités (approches régions) • techniques de croissance de régions ligne de partage des eaux [Meyer et al. 90] • techniques de division & fusion [Horowitz et al. 74] • techniques de classification Clustering [Ball et al. 66], Maximum de Vraisemblance [Dempster at al. 77] • Déterminer des ruptures d’homogénéités (approches contours) • techniques de contour actif Snakes [Kass et al. 88], Contour Actif Geodesic [Casselles et al. 97], Contour Actif Basé région [Jehan-Besson et al. 03], [Paragios et al. 98] mchaumon: A. P. Dempster, N. M. Laird, D. B. Rubin. Maximum-Likelihood from incomplete data via the EM algorihm. Journal of Royal Statistic Soc. Ser. B (methodological), 39:1-38, 1977 mchaumon: * [HOR-74] Horowitz S.L., Pavlidis T., "Picture segmentation by a directed split-and-merge procedure", Conference on Pattern Recognition, Copenhagen, Août 1974.
mchaumon: il manque peut être un transparent référence ? Et explication techniques. La segmentation en objets Vision synthétique de la segmentation • Une modélisation énergétique prenant en compte le modèle recherché • un terme d’attache aux données • des termes de régularisation du problème • De nombreux outils pour résoudre la minimisation • approche régions • approche contours
mchaumon: Temporal segmentation not stable along time Difficulty to use temporal tracking process for non-rigid objects Difficulty to manage overlapped areas Proposed solution: use of a long term segmentation approach La segmentation en objetsUn constat • mchaumon: • pas de modèle : seulement des régions homogènes • Problème de gestion des occultations (pas de prise • en compte du long terme). mchaumon: soit recherche soit pas prise … soit mise en concurrence ... • Lacunes de nombreuses approches : • recherche des régions plutôt que des objets • mise en concurrence entre 2 objets seulement • peu de prise en compte de la dimension temporelle long terme mchaumon: modèle objet : problème initialisation pb détermination automatique? Pour nous un objet c’est un mouvement et des textures ... mchaumon: possible car machine puissante : depuis peu...
objet fond objet parterre objet arbre La segmentation en objets Du court terme ... • segmentation en « couches », [Wang et al. 94] (regroupement de mouvements affines + construction de mosaïques) mchaumon: [Wang et al 94] mise en concurrence de plusieurs mouvements affine entre 2 images groupe d’images
La segmentation en objets Du court terme ... • segmentation en « couches », [Wang et al. 94] (regroupement de mouvements affines + construction de mosaïques) (+) : réelle notion objet (« les couches ») (+) : concurrence de plus de 2 objets (-) : mouvements simples (-) : calcul seulement entre 2 images (pas de long terme)
groupe d’images (axe t) La segmentation en objets … au long terme • segmentation en « tubes », [Porikli et al. 01] • (segmentation sur la dimension temporelle)
La segmentation en objets … au long terme • segmentation en « tubes », [Porikli et al. 01] • (segmentation sur la dimension temporelle) (+) : approche long terme (volume d’images) (+) : concurrence de plusieurs modèles de texture (-) : pas de mise en concurrence mouvement (tube objet) (un ensemble de tubes peuvent potentiellement former un objet) mchaumon: tube : concurrence de texture seulement objet : notion mettant en jeu au moins les textures et un mouvement sans rupture. Un ensemble de tubes forment potentiellement un objet tube peut échouer si le mouvement est trop important
La segmentation en objetsNotre proposition • trouver un modèle définissant un objet • utilisation d’un mouvement fin • travailler sur un groupe d’images • stabilité de la segmentation • gestion des zones d’occultations • mettre en concurrence plusieurs objets