
Les infos clés
En résumé
Bienvenue dans le cours de vision par ordinateur ! Dans ce cours, vous allez apprendre à classifier des images à l'aide des algorithmes issus du Machine Learning, en particulier de l'apprentissage supervisé (approche plutôt traditionnelle) et du Deep Learning (approche très moderne).
La première partie vous permettra d'acquérir les bases en traitement d'images, en particulier les opérations de lissage avec les filtres. Dans une deuxième partie, vous découvrirez la notion fondamentale de features en vision, et étudierez les méthodes classiques de détection et de description de features. Vous pourrez alors développer votre premier algorithme de classification d'images, en entraînant un algorithme d'apprentissage supervisé sur les features extraites. Enfin, la troisième partie est dédiée aux fameux réseaux de neurones convolutifs (CNN), qui constituent aujourd'hui les algorithmes les plus performants pour classer des images.
Objectifs pédagogiques :
- Pré-traiter les images avec les techniques du traitement d'images (améliorer la luminosité, éliminer le bruit...)
- Comprendre la notion de features d'une image
- Maîtriser les méthodes les plus courantes d'extraction de features, en particulier l'algorithme SIFT
- Classifier des images avec les algorithmes de l'apprentissage supervisé
- Classifier des images avec les réseaux de neurones convolutifs (Deep Learning), en particulier avec la technique de Transfer Learning
- Maîtriser la bibliothèque Keras, qui permet de faire du Deep Learning en Python
Les prérequis
Ce cours fait partie du parcours Data Scientist. Il se situe au croisement des mathématiques et de l'informatique. Pour en profiter pleinement, n'hésitez pas à vous rafraîchir la mémoire, avant ou pendant le cours, sur :
- Python pour le calcul numérique (numpy) et la création de graphiques (pyplot), que nous utiliserons dans les parties TP du cours
- Quelques notions d'algèbre linéaire : manipulation de vecteurs, multiplications de matrices, normes, et valeurs/vecteurs propres
- Quelques notions de probabilités et statistiques, telles que distribution de loi de probabilité et variance
- Les méthodes supervisées linéaires
- Les méthodes supervisées non-linéaires, en particulier les réseaux de neurones
Outils nécessaires :
- Pillow
- la bibliothèque Keras
Le programme
Partie 1 - Améliorez l’aspect visuel de vos images
1. Comprenez comment un ordinateur voit une image
2. Appliquez vos premiers traitements d'images
3. Filtrez une image
Partie 2 - Détectez et décrivez efficacement les zones d’intérêts dans une image
1. Découvrez la notion de "features" dans une image
2. Détectez les coins et les bords dans une image
3. Décrivez efficacement les features détectées avec SIFT
4. Utilisez ces features pour classifier des images
Quiz : Partie 2
Partie 3 - Classifiez les images à l’aide de réseaux de neurones convolutifs
1. Qu'est ce qu'un réseau de neurones convolutif (ou CNN) ?
2. Découvrez les différentes couches d'un CNN
3. Apprenez à construire un CNN et gagnez du temps avec le Transfer Learning
4. TP : Implémentez votre premier réseau de neurones avec Keras
Quiz : Partie 3
Certificat de réussite
Les intervenants
Pascal Monasse
Docteur en mathématiques appliquées, chercheur en vision par ordinateur à l'École des Ponts ParisTech.
Kimia Nadjahi
Ingénieure en Machine Learning et vision par ordinateur. Enseignante à OpenClassrooms.
Le concepteur

OpenClassrooms (anciennement le Site du Zéro ou SdZ), est un site web qui propose des cours autour de l'informatique, des sciences et de l'entrepreneuriat.
Les cours en ligne peuvent être réalisés aussi bien par l'équipe du site, des professeurs d'universités ou de grandes écoles partenaires que par ses membres.
Aujourd'hui, les cours sont disponibles dans plusieurs format : MOOC (Massive Open Online Course), texte web, e-book, livre et en vidéo. L'entreprise délivre des certifications pour certains cours, dont une reconnue par l'état, en partenariat avec IESA multimédia.