Introduction

Ce cours fait suite aux « compléments d’algèbre linéaire ». L’objectif est de mettre en application les techniques d’algèbre linéaire (représentation matricielle des applications linéaires, changements de base, inversion de matrices, etc…) pour les manipulations d’image et la visualisation en 3 dimensions.

Dans un premier chapitre, nous verrons les transformations géométriques usuelles (rotations, symétries et homothéties) comme applications linéaires avec les matrices associées et traiterons leurs versions affines, c’est-à-dire composer avec une translation.

Dans le second chapitre, nous traiterons de géométrie projective en dimension 2. La visualisation 3D est un mensonge puisque nous visualisons un monde en trois dimensions sur un écran (éventuellement pour un casque de réalité virtuelle qui produite deux images 2D) qui lui n’en a que deux. La géométrie projective permet de comprendre et manipuler les changements de points de vue d’une scène 3D.

Chaque chapitre sera constitué de deux heures de cours, quatre heures et demi de TD et de trois heures de TP Python.

Le premier TP visera à appliquer les transformations géométriques à des images vues comme matrices dont les coefficients sont des triplets correspondant aux niveaux de rouge, vert et bleu. Mathématiquement, nous manipulerons des applications affines et leurs inverses. Voici quelques exemples de transformations d’images que vous ferez à l’aide de matrices.

Une image du Louvre dans Jupyter.

Figure 0.1: Une image du Louvre dans Jupyter.

Une rotation appliquée au Louvre.

Figure 0.2: Une rotation appliquée au Louvre.

Une homothétie appliquée au Louvre

Figure 0.3: Une homothétie appliquée au Louvre

Une symétrie appliquée au Louvre.

Figure 0.4: Une symétrie appliquée au Louvre.

Une translation appliquée au Louvre.

Figure 0.5: Une translation appliquée au Louvre.

Dans le traitement d’images, il y a de nombreuses transformations comme par exemple un floutage gaussien.

Le louvre après un floutage et un zoom.

Figure 0.6: Le louvre après un floutage et un zoom.

Dans le second TP nous ferons une application de “redressement de scan” comme il en existe de nombreuses sur les stores pour Android ou iOS. Notre différence sera de comprendre les transformations projectives qui permettent ce redressement.

Une photo avec une affiche de film

Figure 0.7: Une photo avec une affiche de film

Affiche de film redressée

Figure 0.8: Affiche de film redressée