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
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.Durée
4 semaines
Vous pouvez vous inscrire à ce cours à n’importe quel moment de l’année… Le cours est disponible directement sur la plateforme OpenClassrooms 365 jours par an, 24/7, sur tous supports (PC, MAC, tablette, mobile).
Vous pouvez également choisir de suivre les cours selon un rythme prédéfini par la plateforme (1 semaine par partie) ou bien sans rythme, sans contrainte de temps et organiser vous-même une progression régulière..
Le rythme d’une semaine par partie permet un avancement régulier en fixant des dates limites sur le rendu des devoirs. L’avancement du cours sans rythme vous permet quant à lui une grande flexibilité, car vous pouvez réaliser vos exercices à tout moment.
Cette formation est ouverte toute l’année.
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
Charge de travail
15 heures au total
Coût
Gratuit
Certification
Vous devez compléter tous les exercices du cours et obtenir une note finale d’au moins 70% pour obtenir votre certification !
Un compte OpenClassrooms Premium Solo (20€ / mois) est nécessaire pour valider votre certification.
Déroulement
Chaque cours est composé d’une ou plusieurs parties et peut comporter du texte, des images (schéma, illustration) et des vidéos. Les vidéos des cours durent 10 minutes maximum, avec une moyenne de 3-4 minutes. Elles sont visualisables à tout moment sur OpenClassrooms et téléchargeables en haute définition.
Chaque partie d’un cours certifiant est ponctuée d’exercices de 2 types :
– des quiz corrigés automatiquement
– des devoirs libres (exemple : créer un site web avec des consignes précises).Ces devoirs sont évalués par les pairs. Chaque devoir est corrigé 3 fois par 3 autres élèves, dans un processus en double aveugle, selon un barème fixé par le professeur. La note finale est la moyenne des 3 notes reçues sur le devoir.
Si vous rencontrez des difficultés, pas de panique ! Vous pouvez à tout moment obtenir de l’aide sur les forums.
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
Activité : Implémentez et comparez des filtres de débruitage
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éussitePlateforme
OpenClassrooms
Une technologie issue du projet Open Source CLAIRE (Community Learning through Adaptive and Interactive multichannel Resources for Education) développé conjointement par OpenClassrooms (ex : Simple IT / Site du zéro), le laboratoire LIRIS (équipe Silex), et INRIA Grenoble (équipe WAM)