Photographie Algorithmique GIF-4105/7105

Bienvenue sur le site web du cours de Photographie Algorithmique pour la session d'hiver 2016!

La photographie algorithmique est un nouveau domaine qui se situe entre la vision artificielle, l'infographie, et la photographie. Elle utilise des techniques de calcul permettant de compenser les limites des appareils photo traditionnels et améliore la façon dont on capture et manipule les données visuelles ainsi que la façon dont on interagit avec elles. Le cours permet d'explorer la formation des images, les modèles d'appareils, la création de panoramas, la synthèse de texture, les images à haute plage dynamique (HDR), le redimensionnement intelligent, le morphage, etc. Il s'oriente sur l'application concrète des concepts par de nombreux travaux pratiques dans l'environnement Matlab.

Semaine courante

Équipe

Jean-Francois Lalonde

Jean-François Lalonde
Professeur

Contactjflalonde@gel.ulaval.ca
BureauPLT-1138E
Disponibilités Lundi 15h30-16h30
Vendredi 14h30-15h30
Maxime Tremblay

Maxime Tremblay
Assistant

ContactPiazza
BureauPLT-1102E
DisponibilitésMardi 13h30-15h30

Rencontrez tous les étudiants du cours grâce à ce montage vidéo (résultats du TP3):

Logistique

Horaire

Jour Heure Local
Jeudi 9h30 à 12h20 PLT-2569

Plan de cours

Lien vers les plan de cours officiels: GIF-4105 (bacc), GIF-7105 (gradués), et vers la page Capsule.

Forum de discussions

Nous utiliserons Piazza pour toutes questions, discussions, etc. N'hésitez pas à vous en servir!

Évaluations

Travaux pratiques

Tous les travaux pratiques devront être remis sur Pixel.

Travail Date de disponibilité Date de remise Pondération Résultats
TP1: Alignement d'images (English) 14 janvier 27 janvier, 23h59 10% Résultats
TP2: On s'amuse en fréquences (English) 28 janvier 10 février, 23h59 10% Résultats
TP3: Morphage de visages (partie A) (English)
TP3: Morphage de visages (partie B) (English)
11 février 24 février, 23h59 (partie A)
9 mars, 23h59 (partie B)
9%
5%
Résultats
TP4: Panoramas automatiques (English) 10 mars 23 mars, 23h59 14% Résultats
TP5: Insertion d'objets virtuels (English) 24 mars 6 avril, 23h59 12% Résultats
Projet: À vous de jouer! (English) 7 avril 27 avril, 23h59 20% Résultats

Examens

Examen Date Lieu Pondération
Mi-session 25 février PLT-2569 20%

Modules de cours

Cliquez sur le module pour révéler plus d'informations. Les informations manquantes seront mises à jour durant la session.

1. Introduction à la photographie algorithmique

14 janvier 2016

Objectifs d'apprentissage
  • Se familiariser avec la structure du cours et les travaux pratiques
  • Différencier une caméra de l'oeil humain
Contenu détaillé
Description Notes Contenu complémentaire
Introduction au cours PDF Tim's Vermeer
Logistique du cours PDF Doodle pour disponibilités
Capturer la lumière PDF La squille multicolore
TED talk de Beau Lotto

2. Filtrage spatial

21 janvier 2016

Objectifs d'apprentissage
  • Connaître les différentes représentations de la couleur d'une image
  • Appliquer des manipulations sur les pixels d'une image
  • Comprendre le filtrage dans le domaine spatial, et connaître ses propriétés
  • Effectuer des opérations de filtrage simples sur une image
Contenu détaillé
Description Notes Contenu complémentaire
Les pixels PDF Démonstrations Matlab
Filtrage dans le domaine spatial PDF Démonstrations Matlab

3. Filtrage spectral

28 janvier 2016

Objectifs d'apprentissage
  • Connaître différents types de filtres
  • Comprendre l'impact de ces filtres lors de leur convolution avec une image
  • Interpréter le contenu fréquentiel d'une image
  • Reconnaître le phénomène du recouvrement spectral et pouvoir l'expliquer dans ses mots
Contenu détaillé
Description Notes Contenu complémentaire
Filtrage dans le domaine spectral PDF Démonstrations Matlab

4. Filtrage et mélange

4 février 2016

Objectifs d'apprentissage
  • Connaître les caractéristiques du filtre bilatéral
Contenu détaillé
Description Notes Contenu complémentaire
Applications du filtrage PDF
Filtre bilatéral PDF
Mélange d'images PDF Démonstration Matlab

5. Morphage

11 février 2016

Objectifs d'apprentissage
  • Connaître les déformations linéaires pouvant être appliquées à une image
  • Savoir appliquer une déformation à une image
  • Se familiariser avec la méthode des moindres carrés pour estimer une déformation entre deux images
  • Comprendre comment appliquer ces déformations pour obtenir un morphage progressif entre deux images
Contenu détaillé
Description Notes Contenu complémentaire
Transformations linéaires PDF Démonstration Matlab
Morphage PDF

6. Textures et redimensionnement

18 février 2016

Objectifs d'apprentissage
  • Calculer des représentations de textures dans une image
  • Savoir interpréter une image comme un graphe
  • Différencier trois techniques de synthèse de textures: par pixels, par blocs (exhaustive), par blocs (rapide)
  • Comprendre les limites des algorithmes de synthèse de textures et de redimensionnement
Contenu détaillé
Description Notes Contenu complémentaire
Les textures PDF Démonstration Matlab
Redimensionnement PDF Démonstration de "seam carving"

Examen mi-session

25 février 2016, 9h30-12h20, PLT-2659

Informations sur l'examen de mi-session
  • Vous avez droit à une calculatrice approuvée et une feuille aide-mémoire 8.5x11, recto-verso, écrite à la main.
  • L'examen porte sur toute la matière vue en classe jusqu'à présent. Portez attention à bien comprendre le fonctionnement des algorithmes, ainsi qu'aux avantages et inconvénients de ceux-ci.

Semaine de lecture

29 février au 4 mars 2016

7. La caméra géométrique, mosaïques

10 mars 2016

Objectifs d'apprentissage
  • Connaître les principaux paramètres d'une caméra: focale, ouverture, vitesse d'obturation, ISO
  • Comprendre l'influence de ces paramètres sur la photo résultante
  • S'initier au calibrage géométrique d'une caméra
  • Distinguer les paramètres intrinsèques des paramètres extrinsèques d'une caméra
  • Implanter un algorithme générant une mosaïque à partir de plusieurs images
Contenu détaillé
Description Notes Contenu complémentaire
La caméra PDF Simulateur de caméras
Les mosaïques d'images PDF

8. Détecteurs et descripteurs

17 mars 2016

Objectifs d'apprentissage
  • Distinguer un détecteur d'un descripteur
  • Expérimenter avec un détecteur et un descripteur simple pour apparier des images automatiquement
  • Se familiariser avec l'algorithme RANSAC
  • Connaître d'autres types de projection panoramiques: cylindriques et sphériques
Contenu détaillé
Description Notes Contenu complémentaire
Détecteurs et descripteurs PDF
Panoramas, etc. PDF Demo Hugin
Site web Hugin

9. Plage dynamique

24 mars 2016

Le TP5 est disponible ici. Date de remise: 6 avril, 23h59
HW5 is available here. Due date: April 6th, 23h59

Objectifs d'apprentissage
  • Comprendre la différence entre la plage dynamique du monde et celle d'une caméra
  • Implémenter un algorithme de calcul d'images à haute plage dynamique
Contenu détaillé
Description Notes Contenu complémentaire
Plage dynamique PDF

10. Insertion d'objets virtuels

31 mars 2016

Objectifs d'apprentissage
  • Connaître les étapes principales nécessaires à l'insertion d'objets virtuels dans une image
  • Utiliser un logiciel de modélisation et de rendu 3D pour insérer des objets virtuels dans ses propres photos
Contenu détaillé
Description Notes Contenu complémentaire
Insertion d'objets virtuels PDF

11. Découpage et composition

7 avril 2016

Nous accueillerons François Giard, professeur l'École de Design, en deuxième heure du cours. Ne manquez pas ça!

Objectifs d'apprentissage
  • Découvrir une représentation utile d'une image: le graphe
  • Déterminer des mesures définissant une région "importante" dans une image
  • Se familiariser avec les algorithmes de segmentation interactive: ciseaux intelligents et coupure de graphe
Contenu détaillé
Description Notes Contenu complémentaire
Découpage d'images PDF

12. Données visuelles massives

14 avril 2016

Nous accueillerons Mathieu Benoît, VP Innovation et Développement d'Affaires chez Arcane Technologies en deuxième heure du cours. Soyez-y!

Contenu détaillé
Description Notes Contenu complémentaire
Données massives PDF

13. Détection de faussaires

21 avril 2016

Nous accueillerons Nathalie Girard de chez Volta en première heure du cours,
et Dragan Tubic, président et fondateur chez Umanx en troisième heure du cours. Soyez-y!

Objectifs d'apprentissage
  • Se familiariser avec le problème inverse: détecter les images modifiées!
Contenu détaillé
Description Notes Contenu complémentaire
Détecter les fausses images PDF

Ressources additionnelles

Voici des ressources additionnelles qui vous permettront de vous pratiquer.

Examens des années antérieures

Sujet Examen Solutions
2015 Français, English Solutions

Livre

Nous suivrons plusieurs chapitres dans le livre suivant:

Szeliski, Richard, "Computer Vision: Algorithms and Applications", Springer, 2010.

Le livre est disponible gratuitement à la bibliothèque de l’université à l'adresse suivante: https://acces.bibl.ulaval.ca/login?url=http://dx.doi.org/10.1007/978-1-84882-935-0. Une fois connecté avec l'IDUL, il y a un lien "Download Book" (environ 50MB).

Remerciements

Plusieurs cours offerts à d’autres universités ont servi d’inspiration pour ce cours. Notamment:

Merci à tous ces professeurs d'avoir mis le contenu de leur cours disponible sur Internet. À mon tour, je donne la permission à tous d'utiliser le contenu présent sur ce cours, à condition de donner crédit aux sources originales.