IA – traitement images : Keras, Pytorch, OpenCV

  • Filière :

    IA & Innovation

  • Sous-filière :

    AI Modeling, tools & frameworks

  • Référence

    IA040

  • Durée

    3 jours (21 h)

  • Prix par personne HT

    2 510 € HT

Objectifs pédagogiques

Savoir mettre en oeuvre Keras, PyTorch et OpenCV pour le traitement d’images.

Public cible

Chefs de projet, data-scientists, souhaitant comprendre les apports de l’IA pour le traitement d’images.

Pré-requis

Connaissance d’un langage de programmation comme python et des principes de base de la manipulation de données et du machine learning.

Modalités d'évaluation

L’évaluation des acquis se fait tout au long de la session au travers d’ateliers de mise en pratique des notions et concepts abordés pendant la formation.

Programme de la formation

Traitement d’Images et IA

  • Introducion au traitement d’images et à l’apprentissage automatique.
  • Présentation de Keras, PyTorch et OpenCV.

Le projet Tensorflow

  • Historique, fonctionnalités
  • Architecture distribuée, plateformes supportées

Premiers pas avec TensorFlow

  • Principe des tenseurs, caractéristiques d’un tenseur: type de données, dimensions
  • Définition de tenseurs simples,
  • Gestion de variables et persistance,
  • Représentation des calculs et des dépendances entre opérations par des graphes

Optimisation des calculs

  • Calculs distribués : différents types de stratégies (synchrone ou asynchrone), avec stockage centralisé des données ou dupliqué sur différents cpu
  • Distribution sur des GPUs
  • Utilisation de TPUs
  • Travaux pratiques sur une plateforme multi-GPU (RIG)

Présentation des RN

  • Principe des réseaux de neurones
  • Différents types de couches: denses, convolutions, activations
  • Fonctionnement des réseaux de neurones convolutifs (CNN).
  • Descente de gradient
  • Multi-Layer Perceptron

Mise en oeuvre avec Keras

  • Conception d’un réseau de neurones
  • Création et entraînement d’un modèle CNN simple avec Keras.
  • Classification d’images avec Keras
  • Notion de classification, cas d’usage
  • Architectures des réseaux convolutifs, réseaux ImageNet
  • RCNN et SSD
  • Démonstrations sur les convolutions

Optimisation d’un modèle

  • Visualisation avec Tensorboard
  • Optimisation des couches de convolutions
  • Choix des hyper-paramètres avec Keras et Keras Tuner
  • Utilisation de checkpoints

 Détection d’Objets avec OpenCV et IA

  • Principes de la détection d’objets.
  • Les différents types de modèles de détection d’objets (classificateurs en cascade, YOLO, SSD, Faster R-CNN, etc.).
  • Utilisation d’OpenCV pour la détection d’objets.
  • Présentation approfondie de la bibliothèque OpenCV pour la vision par ordinateur.
  • Configuration de l’environnement OpenCV.
  • Charger et afficher des images dans OpenCV.
  • Introduction aux classificateurs en cascade d’OpenCV pour la détection d’objets.
  • Présentation des modèles IA pré-entraînés pour la détection d’objets.
  • Comparaison des différents modèles disponibles (YOLO, SSD, Faster R-CNN, etc.).
  • Choix du modèle en fonction des besoins de l’application.

 Segmentation d’Images avec PyTorch

  • Comprendre la segmentation d’images.
  • Création d’un modèle de segmentation convolutif avec PyTorch.
  • Préparation des données d’entraînement pour la segmentation.
  • Entraînement et évaluation des performances du modèle.

Génération d’Images avec les GAN

  • Introduction aux réseaux génératifs adverses (GAN).
  • Création d’un modèle GAN simple avec PyTorch.

Programme mis à jour le