Le morphage d’images Steph Hoffman

Slides:



Advertisements
Présentations similaires
Traitement d’images : concepts fondamentaux
Advertisements

Le morphage d’images GIF-4105/7105 Photographie Algorithmique
Transformation linéaires
Modélisation Géométrique Cours 4 : Acquisition de la géométrie.
CINI – Li115 1 Semaine 9 Algorithmes de tri ● Introduction ● Tri à bulle ● - principe ● - algorithme ● - efficacité ● Tri par sélection ● - principe, algorithme,
Modélisation Géométrique Les surfaces paramétriques.
Courbes d'Interpolation Interpolation de Lagrange, et Interpolation B-spline.
QUESTIONS FLASH Ecrire la date du jour.
Comparing color edge detection and segmentation methods Projet TIM.
Traitement d'images en Java avec JAI
Révision – mathématiques 8
Exploitation de logiciels :
education. fr/cid99696/ressources-maths-cycle
I- ANALYSE DU BESOIN / Plan
dans le triangle rectangle
Les Instructions Itératives (Les Boucles)
La symétrie et l’aire de la surface
Meilleure localisation pour une décharge
Les lentilles.
Ce sont les fonctions du type :
Feuilles de style Cascading Style Sheets
4°) Intervalle de fluctuation :
7.1 Transformation linéaire
MOUTON Marielle - DUMETZ François - LEVECQUE Alain
Géométrie Leçon 3.
Etalonnage d’une caméra (on parle aussi de calibrage)
Chapitre 7: L’algèbre des vecteurs
A H C « projeté orthogonal de B sur (AC) ».
Domaine: Relations R.A.:
Enfin des blagues sur les hommes ... Sans rancune Messieurs ....
Comment faire une rotation sur le plan cartesien
4. Les chapitres.
Feuilles de style Cascading Style Sheets
Exploitation de mesures scientifiques.
Scénario Quatre hipsters entrent en collision un dans l'autre dans un ascenseur plein de personnes. En conséquence ils laissent tomber leurs téléphones.
4.3 Estimation d’une proportion
GRAPHISME PAR ORDINATEUR
Enfin des blagues sur les hommes ... Sans rancune Messieurs ....
Enfin des blagues sur les hommes ... Sans rancune Messieurs ....
Chapitre 6: Réduction de dimensionnalité paramétrique
4.2 Estimation d’une moyenne
BONNE SOIREE année HARIRI Saïd PANIER Stéphane DEMOUVEAU
© Jerome Boccond-Gibod, Flickr
Mosaïques d’images Dyanne Williams
La caméra GIF-4105/7105 Photographie Algorithmique, Hiver 2015
IFT3355: Infographie Courbes et surfaces © Pierre Poulin Dép. I.R.O. Université de Montréal.
Je suis à la MODE! Sauce-moi des nombres!..
Détecteurs et descripteurs
Pierre Dumouchel 20 juillet 2009
Composition et mélange
Révision – mathématiques 8
Transformation linéaires
LE SCHEMA CINEMATIQUE.
La construction de l’espace chez l’enfant
2.4 La loi de vitesse d’une réaction chimique
SIF1033 TRAITEMENT D’IMAGE
Variable Neighborhood Descent (VND) Réalisée par Nadia Sassi Eya baghdedi AU
Enfin des blagues sur les hommes ... Sans rancune Messieurs ....
Cinématique : concepts de base
Position, dispersion, forme
Leçon Les Forces N°1 1. Rôle des forces
SUJETS SPÉCIAUX EN INFORMATIQUE II
RABAH M ed Ali 2018/2019
IFT3355: Infographie Courbes et surfaces © Pierre Poulin Dép. I.R.O. Université de Montréal.
Wilber. Définition: GIMP , pour GNU Image Manipulation Program, littéralement « programme GNU de manipulation d'images », est un logiciel libre et gratuit.
1/16 CINEMATIQUE 1) Cinématique du point 2) Dérivation vectorielle.
Révision – mathématiques 8
Les graphiques des relations linéaires
Enfin des blagues sur les hommes ... Sans rancune Messieurs ....
Création d une application pour la détection des personnage par les empreintes digitale 1.
Transcription de la présentation:

Le morphage d’images Steph Hoffman GIF-4105/7105 Photographie Algorithmique, Hiver 2015 Jean-François Lalonde Crédit: A. Efros

Morphage Morphage: calculer une moyenne de deux images Pas une moyenne des deux images Mais une image de l’objet moyen! Comment générer une animation? Calculer une moyenne pondérée

Calculer la moyenne de deux points Q Quelle est la moyenne de P et Q? P Extrapolation: t<0 ou t>1 Interpolation linéaire P et Q peuvent être n’importe quoi! points en 2D, 3D Couleurs RGB (3D) Images entières! (NxM D)

Idée 1: dissoudre (“cross-dissolve”) Ça marche car les images sont alignées! Qu’est-ce qu’on fait si elles ne le sont pas? Interpole l’image entière image = (1-t)*image1 + t*image2 Pourquoi ça “marche”?

Démonstration

Idée 2: alignement, puis dissoudre On aligne d’abord, puis on dissout Transformation affine (ou projective) globale Problème?

Calculer le chien moyen Que faire? Dissoudre ne fonctionne pas Alignement global (e.g. affine) ne fonctionne pas! Idées? Correspondances! Queue vers queue, tête vers tête, pattes vers pattes, etc. Il nous faut des transformées locales!

Idée 3: alignement local, puis dissoudre Pour chaque trame t Calculer la forme moyenne (i.e. le chien moyen!) alignement local Calculer la couleur moyenne dissoudre les correspondances

Transformations locales (non-paramétriques) Transformations locales nécessitent beaucoup de paramètres Techniquement, on pourrait avoir une transformation (u,v) pour chaque pixel (x,y)! Lorsqu’on connaît (u,v) (champ vectoriel), on peut facilement calculer la couleur par interpolation

Rappel Transformations globales Appliquer une transformation Estimer une transformation translation rotation affine perspective

Transformations locales (non-paramétriques) Transformations locales nécessitent beaucoup de paramètres Techniquement, on pourrait avoir une transformation (u,v) pour chaque pixel (x,y)! Lorsqu’on connaît (u,v) (champ vectoriel), on peut facilement calculer la couleur par interpolation

Déformation non-paramétriques d’images Déplacer des points de contrôle vers la position désirée Calculer un champ vectoriel en interpolant Spécifie une déformation (vecteur) pour chaque pixel

Spécifier la déformation (dense) Comment spécifier la déformation? Déterminer les valeurs à des points de contrôle et on interpole pour calculer la déformation à chaque pixel Ça en fait beaucoup à spécifier!

Spécifier la déformation (par points) Comment spécifier la déformation? Indiquer des points d’intérêts et on interpole pour déterminer la valeur pour chacun des pixels

Maillage triangulaire (triangulation) À partir des correspondances spécifiées manuellement Calculer un maillage (mesh) triangulaire Le même pour les deux images. Qu’est-ce qu’on obtient? Une correspondance des triangles dans les deux images Calculer la déformation pour chaque paire de triangle Quelle type de transformation?

Triangulations Une triangulation d’un groupe de points est une partition de son enveloppe convexe en un groupe de triangles dont les vertex sont les points, et qui ne contiennent aucun autre point. Combien de triangulations possibles? Un nombre exponentiel!

Algorithme de triangulation (un peu naïf) Répéter: Sélectionner deux points (qui n’ont pas d’arête entre eux) Si l’arête entre ces deux points n’intersecte pas une autre arête, rajouter l’arête à la triangulation

Qualité des triangulations Calculons le plus petit angle d’une triangulation Une triangulation T1 est “meilleure” que T2 si le plus petit angle de T1 est plus grand que celui de T2 La triangulation Delaunay est la “meilleure” (elle maximize le plus petit angle) bonne moins bonne

Améliorer une triangulation Pour chaque quadrilatère convexe, nous pouvons inverser l’arête le traversant Si l’inversion améliore la triangulation localement elle l’améliore aussi globalement l’arête initiale est “illégale”

Algorithme de Delaunay, version naïve Commencer avec triangulation arbitraire. Tant qu’on trouve une arête illégale, l’inverser Pourrait prendre un bon bout de temps avant de converger!

Triangulation Delaunay par dualité Calculer le diagramme de Voronoi Graphe dual = triangulation Delaunay! O(n log n)

Morphage d’images Créer une triangulation intermédiaire (interpolation) Calculer la déformation des deux images vers l’image intermédiaire Déformer les images Calculer la moyenne des deux images déformées

Triangulation intermédiaire Déterminer facteur Pour chaque point: Calculer la moyenne pondérée Source Destination

Calculer la déformation Pour chaque triangle Calculer la déformation à partir de la source et de la destination, selon les points correspondants Quelle type de transformation? Source Intermédiaire Destination

Déformer les images Pour chaque triangle Appliquer la déformation Directe ou inverse? Source Intermédiaire

Résumé Définir les points correspondants Calculer une triangulation Utiliser la même pour les deux images! Pour chaque alpha = 0, …, 1 Calculer la triangulation intermédiaire (moyenne pondérée de chaque point) Pour chaque triangle dans la triangulation intermédiaire Calculer la transformation affine vers l’image source et destination Pour chaque pixel dans le triangle, calculer leur provenance dans l’image source et destination, et calculer leur moyenne pondérée Sauvegarder l’image intermédiaire Avec toutes les images, générer une animation!

Willow: http://www.youtube.com/watch?v=uLUyuWo3pG0 Morphage dynamique Black or White (MJ): http://www.youtube.com/watch?v=R4kLKv5gtxc Willow: http://www.youtube.com/watch?v=uLUyuWo3pG0