Académique Documents
Professionnel Documents
Culture Documents
• Introduction :
L’objectif ce cette séance est de se familiariser avec l’environnement Jupyter Notebook et le langage Python via la
plateforme Google Colab. On commencera par création d’un nouveau fichier Jupyter Notebook avec l’utilisation du
processeur Graphique GPU sur le cloud. Ensuite, nous verrons ensemble comment charger (upload) des fichiers dans
Google Colab ainsi que les librairies nécessaires. Par la suite, vous allez commencer à manipuler et traiter des images et
vidéos avec des différents algorithmes. A la fin de cet exercice, vous pourrez faire votre premier classifieur avec la librairie
Keras en passant par les étapes de chargement et normalisation de données, entrainement du modèle et test du modèle.
Cette séance d’initiation présente quatre parties : préparation de l’environnement, traitement d’images, traitement de
vidéo et développement d’un premier classifieur d’images.
1. Préparation de l’environnement :
a. Se connecter : Pour commencer, il faut utiliser un navigateur (de préférence Chrome) et lancer Google colab :
https://colab.research.google.com. Il faudra ensuite se connecter avec votre adresse Gmail.
b. Charger le fichier de démarrage : charger le code de démarrage « initiation.ipynb », disponible sur Moodle,
depuis votre environnement Google Colab (Figure 1).
c. Vérifier le matériel réservé : vérifier que le GPU est bien sélectionné en allant sur : Exécution ->Modifier le
type d’exécution. Sélectionnez le GPU si ce n’est pas encore fait (Figure 2).
e. Vérifier le chargement des librairies : par exemple, récupérer la version de la librairie OpenCV
2.1. Charger une image couleur de votre choix sur l’environnement Google colab : en utilisant soit l’interface
google colab, soit la commande « files.upload() », soit la commande wget pour récupérer une image
depuis internet
2.2. Vérifier le bon chargement de l’image : en tapant tous simplement la commande : ls -l
2.3. Afficher l’image chargée : en utilisant soit IPython ou OpenCV
2.4. Convertir l’image en noir et blanc (niveau de gris) : en utilisant la fonction OpenCV « cv2.cvtColor »
2.5. Enregistrer l’image : en utilisant la fonction OpenCV « imwrite »
2.6. Vérifier si l’image est bien enregistrée
2.7. Réduire les bruits de l’image : en appliquant des filtres de convolutions tels que : le filtre Gaussien, filtre
Médian, filtre Blur, etc.
Remarque : le principe de convolution sera expliqué théoriquement lors de la séance prochaine (09/10)
2.8. Détecter les contours présents dans l’image : en utilisant la méthode Canny (fonction cv2.Canny). Notons
que cet algorithme ne peut être appliqué que sur une image en niveau de gris.
2.9. Détecter les points d’intérêts (coins) présents dans l’image : en utilisant la méthode Harris (fonction
cv2.cornerHarris)
• Exercice N° 01 : développer votre premier algorithme de traitement d’images en appliquant les fonctions
suivantes :
- Convertir l’image en noir et blanc.
- Réduire les bruits de l’image en utilisant un filtre de convolution
- Détecter les contours de l’image
- Détecter les points d’intérêts
- Afficher le résultat
Remarque : le traitement pourrait être appliqué sur l’image partagée via Moodle « umons.jpg »
2
Sidi Ahmed Mahmoudi, Mohammed Amin Belarbi Hand on AI - Introduction
Initiation aux outils et Frameworks 2019-2020
Remarque : lors de l’affichage de vidéo, vous constaterez des interruptions d’affichage, ce qui est du au fait que la
vidéo doit être enregistrée en spécifiant le format d’encodage. Dans le cadre de cet exercice, nous ne vous
demandons pas cette tâche.
• Exercice N° 02 : développer votre premier algorithme de traitement de vidéo en appliquant les mêmes
4. Premier classifieur :
Après avoir manipulé, les différents outils et méthodes de traitement d’images et vidéos avec le langage Pyhton, vous
pouvez développer votre premier classifieur d’images. Nous vous proposons de travailler sur la classification d’images de
chiffres manuscrits provenant de la base de données MNIST. Le but est de reconnaitre la valeur du chiffre à base de son
image. Pour réaliser cela, nous vous proposons de suivre les étapes suivantes :
4.1. Créer un nouveau notebook sous Pyhton 3 et sélectionner le GPU comme ressource de calcul
4.2. Importer les fonctions Keras
4.5. Redimensionner les données : pour représenter chaque image sous forme d’un vecteur
4
Sidi Ahmed Mahmoudi, Mohammed Amin Belarbi Hand on AI - Introduction
Initiation aux outils et Frameworks 2019-2020
4.6. Normaliser les données : pour avoir des valeurs de pixels compris entre 0 et 1.