Traitement d’images Semaine 09 v.A15.

Slides:



Advertisements
Présentations similaires
Approfondissement du langage
Advertisements

(Classes prédéfinies – API Java)
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance
Traitement d’images : briques de base S. Le Hégarat
Calcul numérique (avec Maple)
Support Initiation Publisher 2010
Leçon 3 : Héritage IUP 2 Génie Informatique
12 novembre 2012 Grégory Petit
LOGOS_w Imagerie La palette des icônes. Le groupe dicônes situé au dessus des images du patient permet dintervenir sur limage affichée et active.
INF-1019 Programmation en temps réel
8PRO100 Éléments de programmation Allocation dynamique de la mémoire.
Chapitre 2 : Filtrage Professeur. Mohammed Talibi Alaoui
Construction de modèles visuels
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
77 Utilisation des classes (suite). 7-2 Objectifs A la fin de ce cours, vous serez capables de : Définir des méthodes surchargées dans une classe Fournir.
Système d’Exploitation
Structures de données IFT-2000 Abder Alikacem Standard Template library Édition Septembre 2009 Département dinformatique et de génie logiciel.
Points importants de la semaine Le préprocesseur. La conversion de types. Les fonctions.
Chapitre 4 : Morphologie Mathématique
COURS DE PROGRAMMATION ORIENTEE OBJET :
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI1502 Principes fondamentaux en conception des logiciels
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Interprétation automatique
Reconnaissance d’empreintes digitales
Plan cours La notion de pointeur et d’adresse mémoire.
Semaine 07 vA13 Morphologie
Programmation objet La base.
Reconnaissance des personnes par le visage dans des séquences vidéo
Programmation créative – Les vecteurs
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 1 – Objets et Classes Master 1 SIGLIS1Java Lecteur - Chapitre 1 Objets et classes.
Réaliser par: Sadok Amel Cheboui hassiba
Les classes présenté par: RAHMOUNE RIME / ZEKRI SELMA.
Les types composés Les enregistrements.
Semaine 06 vA14 Modèle colorimétrique Détection de contours
Cours LCS N°4 Présenté par Mr: LALLALI
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
Campus-Booster ID : Copyright © SUPINFO. All rights reserved La programmation objet, un fondement de la programmation évènementielle.
Thème 4 : Les éléments naturels. Cours 2 : L’eau dans la nature et chez les êtres vivants. Mathématiques Guide du Maître Thème 1 : Activités fondamentales.
Traitement d’images 420-D78-SW A15 Semaine 02.
Philippe Gandy - 22 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
L. Gurret – M. Herve – P. Mignon – J. Prarioz. Introduction  Dernière étape d’analyse  Cahier des charges, spécifications et conception orientée objet.
Traitement d’images Semaine 03 A15 Seuillage.
TRAITEMENT D’IMAGES Semaine 05. AGENDA DE LEÇON Documentation officielle d’OpenCV Écrire du texte Source vidéo TP1.
Programmation créative Semaine 03. Agenda de leçon  Rotation d’un sprite  Modifier la couleur d’un sprite.
Programmation créative – Les vecteurs
Projet Java : La classification périodique des éléments sous forme d’Applet Projet réalisé en 2006 par : BESSON Sandra FLOREA Alina FOUCAULT Julie SALLOT.
Faire déplacer le personnage à l’aide des flèches du clavier Il y a plusieurs façon de procéder selon nos attentes, mais en voici une qui est très simple:
Dév. Application interactive III
A la découverte d’Excel Certificat Informatique et Internet.
Traitement d’images Semaine 13 – Modèle correspondant.
Projet lif7 : Zelda Armes
ALGORITHME DE VOLÉES Programmation créatives Les volées, le spawning et les collisions.
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
PROCESSING Semaine 03. PLAN DE LEÇON Interaction avec un programme Gestion de la souris Gestion du clavier.
DreamWeaver Séance 2 HMIDA Ahmed A2008. Plan 1.Calques 2.CSS 3.Modèles 4.Formulaires 5.Comportements 6.Mise en ligne.
Photoshop SI28 . P07 Fanny Fourmentez . Clémence Debaig.
Padmanaathan Gaayathrie
** Flash séance 2 Action script. ** Action Script Ajoute de l’interactivité Permet de contrôler les clips  Langage de programmation orienté objet.
Flash MX – Séance 2 Interactions & ActionScript David Rapin Si28 P06.
Dreamweaver le retour Avec Les Formulaires Les Calques
Télécharger :
Sommaire : -A propos des images importées -Les boutons et l’interactivité dans la scène -Textes dynamiques -Les clips (les liaisons) -Les sons -Les composants.
DREAMWEAVER MX2 - Séance 2 Les calques Les comportements Les scénarios Les formulaires Les feuilles de style Les modèles Les cadres Mise en ligne Jérôme.
Formation.
Dreamweaver 2 Feuilles de Style CSS Formulaires Calques Comportements
Les calques Les Template (modèles) Les Comportements Les scénarios Les formulaires Les CSS Le serveur Web de l’UTC Présentation.
Traitement d’images Semaine 09 vA15.
Les outils graphiques Qu’est-ce qu’un graphique ? -Il permet de traiter des dessins -De manipuler des formes de photos -De modifier les vidéo 3D Outils.
Transcription de la présentation:

Traitement d’images Semaine 09 v.A15

Plan de leçon Les classificateurs en cascades de Haar Haar cascade classifier Les grandes lignes Utilités OpenCV

Les grandes lignes Les caractéristiques pseudo-Haar permettent de reconnaître des caractéristiques radiométriques (couleurs) à l’intérieur d’une image Les classificateurs Haar sont des fichiers précompilés dans lesquels il y a des valeurs qui permettent de détecter des objets dans une image Les valeurs que l’on retrouve dans un fichier classificateur ont été précalculées en utilisant des principes d’apprentissage machine Des milliers d’images positives et négatives de l’objet à détecter ont été traitées dans le système d’apprentissage permettant de calculer les caractéristiques pseudo-Haar de l’objet Dans le cadre de ce cours, nous nous limitons à l’utilisation de ces classificateurs Caractéristiques pseudo-Haar <-> Pseudo-Haar features Intégrale d’une image entre autres

Utilités L’utilité des classificateur en cascade de Haar est principalement dans le domaine de la détection d’objet Chaque classificateur ne peut servir que pour détecter qu’un type d’objet Ainsi un détecteur pour les visages de face ne détectera que ce type de visage et sera d’aucune utilité pour les visages de profil Si l’on veut détecter des yeux dans une image où il y a un visage, il faudra faire une cascade de classificateur Ainsi, on détectera la zone où le visage se retrouve et ensuite on appliquera le classificateur pour les yeux

OpenCV OpenCV fournit plusieurs classificateurs Les classificateurs sont disponibles dans le dossier « sources/data/haarcascades » et « sources/data/lbpcascades » Vous remarquerez qu’il y a plusieurs types de cascades. OpenCV permet de les gérer de manière transparente La classe « CascadeClassifier » permet de gérer les classificateurs

Chargement d’un classificateur Il y a deux méthodes pour charger un classificateur soit avec le constructeur ou encore la méthode « load » Syntaxe Classificateur leClassificateur; leClassificateur = new CascadeClassifier (nomFichier); // ou leClassificateur.load(nomFichier);

Détection d’objet Une fois le classificateur charger, optionnellement on peut pré-traiter l’image Par exemple réduire le bruit, améliorer le contraste, etc. Ensuite, il faudra convertir l’image en niveau de gris On peut inverser cette étape avec la première Finalement, on peut lancer la détection des objets dans une image La méthode pour détecter les objets est « detectMultiScale » Celle-ci retourne un vecteur de rectangles qui contient les objets détectés Après avoir trouvé les objets, on peut faire d’autres opérations telles que tracer les rectangles des objets ou encore rechercher des sous-objets Exemple : Trouver les visages et ensuite les yeux pour chaque visage

Méthode « detectMultiscale » La méthode « detectMultiScale » fonctionne avec plusieurs arguments Syntaxe CascadeClassifier::detectMultiScale (Mat& img, vector<Rect>& objets, double echelle, int nbVoisins, int flags, Size minSize, Size maxSize) Paramètres objets : Liste de rectangles représentant les objets trouvés échelle : facteur de rétrécissement de chaque itération de la recherche nbVoisins : Nombre de voisins minimum pour valider que l’objet est retrouvé flags : Obsolète minSize, maxSize : Taille minimum et maximum de l’objet à rechercher nbVoisins : Lors de la détection, il y a plusieurs faux positifs. Pour limiter ces faux positifs, on met un nombre minimum d’objets trouvés approximativement à la même position pour confirmer qu’un objet est valide

Méthode « detectMultiscale » Exemple monClassificateur.detectMultiScale(img, faces, 1.1, 3, 0, Size (40, 40));

Exercices À l’aide du code que l’on retrouve à l’adresse suivante, réalisez les exercices suivants Modifiez le chemin des fichiers de classificateur pour qu’ils utilisent la variable d’environnement « %OPENCV_DIR% » Modifiez le code pour permettre la détection dans une image et non un flux Modifiez le code pour qu’il dessine l’ellipse entourant le visage même s’il ne détecte pas les yeux