Savoir concevoir un système robotique de la conception avec ROS jusqu'à la vision et détection et reconnaissance d'objets avec OpenCV et des solutions d'IA.
Connaissance générale des systèmes d'informations, d'un langage de programmation comme python.
|
Paragraphe:Objets connectés |
|
| Les objets connectés |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | L'internet des objets. Les acteurs et produits du marché. Définitions, fonctionnement et architectures.
|
|
| Identifier les usages et les technologies associées |
Durée : 4h Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Applications, services fournis par les objets connectés : domotique, santé, loisirs. Plateformes matérielles (Intel,Samsung) et logicielles. Les systèmes classiques android, IOS, systèmes embarqués : UI, Brillo, LiteOS, Galileo, Arduino Infrastructure de connectivité : wifi, bluetooth, BLE, zigbee, NFC, RFID, LoRa, 4G, 5G Protocoles : MQTT, AMQP, Coap, LoRaWan.Atelier : mise en oeuvre d'une antenne Lora et connexion d'objets
|
|
| Evaluer les opportunités économiques et d'innovations apportées par le domaine de l’IoT |
Durée : 4h Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Présentation des écosystème IoT. Impacts sur les métiers : concepteurs d'objets, fabriquants de composants, opérateurs et équipements réseaux, acteurs de la sécurité et intégrateurs, fournisseurs de services et stockages, opérateurs de cloud Atelier : démonstration d'une mise en oeuvre sur une habitation connectée
|
|
| Appréhender les normes et standards en vigueur dans le domaine de l’IoT |
Durée : 7h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Protocoles: mqtt, bluetooth, wifi, 3G/4G, etc ... Avec un autre objet : M2M, Avec le réseau internet : vers un serveur, vers le cloud. Les plateformes IoT, définition de standards : OpenInterconnect Consortium.Atelier : mise en place d'une passerelle LoRa/MQTT avec mosquitto
Atelier : interconnexion AWS/IoT et MQTT. APIs en C, java et python
Atelier : Création d'un compteur d'actions sur smartphone
|
|
| Savoir anticiper l’intégration de l’IoT dans une entreprise |
Durée : 5h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Types de données collectées. Données locales, limites. Transfert et stockage sur une autre machine, dans le cloud ou sur internet. Analyse des données et fourniture de services associés. Techniques de protection des objets connectés. Authentification et autorisations. Protection des données, législation. Qualité de service coté client. BigData et IoT :de l'objet connecté à l'analyse de nuage d'objets.Atelier : démonstration sur une chaîne de traitement LoRa/MQTT/Kafka/SparkStreaming/Hadoop
Atelier : mise en place d'une sécurisation SSL/TLS sur les flux IoT
|
|
Paragraphe:Conception |
|
| Conception robotique avec ROS |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation de ROS (Robot Operating System), historique, contraintes, fonctionnalités, licence. Objectifs des créateurs de ROS. Point sur les dernières distributions de ROS. Tour d'horizon des robots compatibles. Exemples d'utilisation de ROS.
|
|
| Architecture |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Principe de fonctionnement de ROS : modularité, légèreté, compatibilité Les différents éléments : les noeuds, le master, les topics, les messages, les services L'organisation des fichiers, l'installation : les packages, les stacks Présentation packages disponibles.
|
|
| Mise en oeuvre |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Installation sur Ubuntu. Configuration de l'environnement. Présentation du filesystem ROS et de roscd, eosis, rospack Premier pas : création d'un package. Gestion des noeuds : utilisation de roscore, rosnode et rosrun. Création de topics et de services.
|
|
| Développement |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Programmation en python d'outils de publication et réception de messages (topics), et de services et clients simples.
|
|
| Exploitation |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Utilisation de fichiers .bag pour stocker des messages et les réutiliser Gestion des dépendances entre packages Exécution de ROS sur une infrastructure de plusieurs serveurs.
|
|
| Extensions |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation des librairies principales
|
|
Paragraphe:Vision |
|
| Computer Vision avec OpenCV |
Durée : 2h Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation OpenCV Historique, fonctionnalités, versions, licence Site de référence, documentation disponible Principes de base de la vision par ordinateur Positionnement OpenCV par rapport aux autres solutions du marché
|
|
| Mise en pratique OpenCV |
Durée : 4h Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Installation d'OpenCV. Atelier : Exemples simples : lecture, affichage, enregistrement d'images
|
|
| Manipulation d'images |
Durée : 4h Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | bases de traitement d'images : Opération sur les matrices. les espaces de couleurs : CMYB, HSV, niveaux de gris; la segmentation d'images;Atelier : Exemple de seuillage avec OpenCV
Conversion d'une image en binaire Histogramme d'une image. Les opérateurs binaires (NO, AND, OR, XOR): utilisation pour la fusion d'images
|
|
| Classificateurs et IA |
Durée : 5h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Principe, différents classificateurs disponibles avec OpenCV Exemples : détection de formes, de contours, de visages Deep Learning avec PyTorchAtelier : Classification d'images sur machine Jetson
Atelier : Détection d'objets
|
|
Paragraphe:Simulation |
|
| Simulation avec Gazebo |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation du projet Gazebo, licence, versions Fonctionnalités: simulation d'un robot physique avec interactions avec l'environnement Modèles de robots disponibles Compatibilité avec ROS et Player Exemples d'utilisation: compétitions DARPA, NASA, ...
|
|
| Mise en oeuvre |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Prérequis techniques Installation sur Ubuntu Configuration des variables d'environnement Architecture de Gazebo : Master, bibliothèques de communication, physiques, visualisation 3D, etc ... Moteurs utilisés : ODE, Bullet, Simbody, DART Premiers pas : utilisation de l'interface graphique, choix de modèles, gestion de l'environnement
|
|
| Modèles, robots |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Utilisation du Model Editor pour construire des modèles Construction de véhicules, ajout de capteurs, de plugins Utilisation des modèles, création de robots,traitement des données des capteurs,gestion de l'environnement physique
|
|
| Extensions |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Intégration des packages ROS : gazebo_ros_pkgs pour simuler un robot avec gazebo en utilisant les messages, services de ROS. Simulation sur AWS avec CloudSim
|
|
Paragraphe:Analyse des données |
|
| Positionnement Python |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Besoins des data-scientists : calculs, analyse d'images, machine learning, interface avec les bases de données Apports de python : grande variété d'outils, expertise dans le domaine du calcul scientifique Tour d'horizon des outils: pandas, pyarrow, agate, bokeh, scikit-learn, pybrain, tensorflow, keras, mxnet, caffe, Pytorch
|
|
| Calculs et graphiques |
Durée : 3h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | NumPy : Base du calcul sur des tableaux SciPy : Scientific Tools for Python, couche scientifique Manipulation de tableaux, fonctions mathématiques. Représentation graphique avec basemap et matplotlib.Atelier : Mise en oeuvre de SciPy/NumPy : manipulation d'images, détection de contours
|
|
| Être capable d'extraire des données d'un fichier |
Durée : 3h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Pandas : manipulation de tables de données. Notion de dataframe. Manipulation de données relationnelles Tableaux avec Pandas: indexation, opérations, algèbre relationnelle Stockage dans des fichiers: CSV, JSon Comparaison et performances Pandas / pyarrow / NumPyAtelier : construction d'ETL de base entre json et csvkagglt.com,
|
|
| Comprendre les mécanismes d'interconnexion aux bases de données |
Durée : 3h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Définitions : pilotes, connexions, curseurs, CRUD, transactions Les pilotes : postgresql, mysql, mariadb, ... Présentation de sql-alchemy Opérations : gestion du curseur, chargement de données, insertion et modification d'enregistrementsAtelier : mise en oeuvre avec postgresql. Construction d'ETL SQL/json
|
|
| Comprendre les principaux outils de traitement et d'analyse de données pour Python |
Durée : 3h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Présentation des outils d'apprentissage Python : scikit-learn, pybrain, TensorFlow/keras, mxnet, caffe Atelier : mise en oeuvre de scikit-learn
|
|
| Créer des sélections et des classements dans de grands volumes de données pour dégager des tendances |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation de pyspark Machine learning et deep learning : les solutions Python, TensorFlow : principe de fonctionnement, plateformes supportées, distribution
|
|
| Sites de références data-sciences |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Ressources d'apprentissage, datasets, modèles de données pré-entrainés, etc .. Présentation de : kaggle.com, data-puzzles.com, huggingface.co
|
|
| Optimisation des développements |
Durée : 3h30 Méthodes pédagogiques : alternance de théorie et de travaux pratiques Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux | Tour d'horizon des outils actuels et futurs: Jupyter notebook, Aide à la vérification de code, respect des recommandations PEP8 : exemples avec pydecodestyle, Pylint, Black Analyse et production de code informatique avec une IA. Génération de code avec OpenAI : démonstrations ChatGPT, apports, bonnes pratiques.Atelier : utilisation de la génération de code et de snippets Python avec ChatGPT
|
|
| Analyse d'images avec TensorFlow et Keras |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Historique du projet TensorFlow Fonctionnalités Architecture distribuée, plateformes supportées
|
|
| Premiers pas avec TensorFlow |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Installation de 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 |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | 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 |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Principe des réseaux de neurones Descente de gradient Multi-Layer Perceptron
|
|
| Présentation de Keras |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Conception d'un réseau de neurones Différents types de couches: denses, convolutions, activations Construction d'un modèle complexe Prédictions et validation d'un modèle
|
|
| Classification d'images avec Keras |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | 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 |
Durée : 1h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Visualisation avec Tensorboard Optimisation des couches de convolutions Choix des hyper-paramètres avec Keras et Keras Tuner Utilisation de checkpoints
|