Créer une base d'images *********************** Sélectionner des images ======================= Utiliser les moteurs de recherche --------------------------------- Nous vous conseillons une approche simple, rapide et efficace. D'autres options sont possibles, vous êtes libres de choisir. Nous utilisons par exemple le site `flickr `_. En tapant dans la barre de recherche le mot clef *pizza*, le site nous propose des vignettes associées à cette thématique : .. image:: pizza.jpg :scale: 60% Descendez la page pour faire apparaître de nombreuses vignettes. Utiliser un image downloader ---------------------------- Comme la quantité d'images à télécharger reste importante, il devient nécessaire de prendre un outil performant. Pour Chrome, nous vous conseillons l'extension : `Imageye `_. Une fois l'extension installée, cliquez sur l’icône pièce de puzzle de Chrome (voir-ci dessous) et épingler l'extension *Imageye* en cliquant sur la punaise. Une fois cette manipulation effectuée, l'icône de l'extension apparaît à gauche de la pièce de puzzle comme dans l'image ci-dessous. .. image:: extension.png Cliquez sur l'icône de l'extension pour vérifier le nombre d'images disponibles. Si la quantité vous semble insuffisante, scrollez plus en profondeur la page *flickr* pour ajouter des images. Constituer une base de qualité ------------------------------ Il faut viser entre 500 à 5000 images par classe afin de construire une base d'images sérieuse. De plus, pour garantir la qualité de la base, un contrôle visuel s'impose. Si trop d'images parasites sont présentes, les retirer une à une peut devenir un travail trop chronophage, pensez que 1h à 2h de retouche par classe représente un travail de 20h au final. L'objectif est donc d'effectuer une requête sur *flickr* la plus précise possible. Cela vous évitera d'avoir trop de contrôles à effectuer dans votre base. Prenons l'exemple de la recherche sur le mot-clef *frelon*, nous voyons apparaître des images : * de l'hélicoptère Super Frelon * de l'araignée Argiope frelon * de nids de frelons .. image:: frelon.jpg :scale: 50% Pour retirer les images parasites, vous avez plusieurs options : * utiliser le - dans la recherche pour retirer des éléments en écrivant : -helicopter ou encore -niddle -spider * spécifier plus en profondeur ce qu'on recherche : insect, frelon asiatique (Asian hornet) Pour effectuer un contrôle qualité des images téléchargées, nous vous conseillons d'utiliser votre explorateur de fichiers et d'afficher en mode *grandes icônes* pour visualiser plusieurs images à la fois. Les touches PageUp et PageDown permettant de passer d'une planche d'images à l'autre. .. image:: controle.png Charger votre base dans Colab ============================= Uploader votre base sur Google Drive ------------------------------------ Afin d'éviter d'envoyer les données image par image, nous allons zipper le répertoire principal *data* stockant les répertoires de chaque catégorie. Vous travaillez donc avec un zip unique pour l'ensemble de vos fichiers images. Nous ne stockons pas directement ce fichier sur une session Colab car le disque des machines virtuelles n'est pas persistant ! Importer vos données dans une session Colab ------------------------------------------- Créez un notebook Colab vide. Cliquez sur l'icône répertoire présent sur le bandeau gauche : .. image:: folders.png :scale: 70% Ainsi apparaît la structure du disque de votre machine virtuelle. Nous allons monter le disque de votre compte Google Drive sur votre session Colab. Créez une cellule de code vide et entrez les commandes suivantes : .. code-block:: from google.colab import drive drive.mount('/content/GoogleDrive/', force_remount=True) La directive ! a pour effet d'exécuter une commande unix sur la machine virtuelle. Vous devriez voir apparaître le répertoire *GoogleDrive* sur le disque. Si ce n'est pas le cas, refermez le bandeau gauche et rouvrez le ! .. image:: GoogleDrive.png Copiez ensuite votre fichier zip depuis le Drive Google sur le disque de la session Colab : .. code-block:: source = '/content/GoogleDrive/MyDrive/data.zip' dest = '/content/data.zip' !cp $source $dest .. image:: data.png Il ne vous reste plus qu'à décompresser le fichier zip : .. code-block:: !unzip -q data.zip !ls .. image:: base2.png Si le résultat obtenu ne vous convient pas, il suffit de déconnecter et reconnecter votre environnement d'exécution pour remettre à zéro le disque. Accéder à la base partagée par votre binôme ------------------------------------------- Lorsque votre binôme vous partage la base mise en place sur son drive, vous pouvez voir les fichiers depuis votre compte. Cependant, vous ne pourrez pas y accéder à travers Colab. En effet, Google Drive n'est pas organisé en interne comme un système de fichiers mais comme un **Datalake** où chaque fichier reçoit un identifiant unique pour y accéder. Ainsi l'arborescence de fichiers comme on l'a connaît n'est pas obligatoire. Pour associer le répertoire de votre binôme à votre arborescence, il faut créer un raccourci : * Identifiez le répertoire *Data* de votre binôme en faisant une recherche sur son nombre * Faites un clic droit dessus > *Organiser* > *Ajouter un raccourci* * .. image:: datalake.png * Créez le raccourci directement dans votre drive comme proposé * .. image:: datalake2.png * Ainsi le répertoire devient accessible en utilisant le chemin : '/content/GoogleDrive/MyDrive/Data'