La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Semaine 07 vA13 Morphologie

Présentations similaires


Présentation au sujet: "Semaine 07 vA13 Morphologie"— Transcription de la présentation:

1 Semaine 07 vA13 Morphologie
Traitement d’images Semaine 07 vA13 Morphologie

2 Plan de leçon Source vidéo Morphologie Région d’intérêt
Érosion Dilatation Ouverture Fermeture Région d’intérêt Canal d’intérêt Opérateurs arithmétiques et binaires

3 Source vidéo Il est possible de lire les fichiers vidéo ou les flux caméras avec OpenCV Le principe est d’utiliser la classe VideoCapture pour initier la caméra Cette classe accepte les flux URL* Le URL dépendra de marque de la caméra Ensuite, il faudra valider si la caméra a bel et bien été chargée En autant que ce ne soit pas FFMPEG sous Windows

4 Source vidéo Dans le code, il faudra utiliser une boucle qui s’arrête une fois que la vidéo prend fin ou encore selon l’action de l’utilisateur avec la fonction waitKey La méthode read de la classe VideoCapture permet de lire une image du flux de transmission

5 Source vidéo : Exemple int main () {
char * adr = " char * winMain = "Main"; Mat frame; VideoCapture cap(1); if (!cap.isOpened()){ string k; cout << "Unable to load source!\r\n"; getchar(); //cin >> k; return -1; } int c = 0; namedWindow(winMain); while (c != 27) if (!cap.read(frame)) cout << "No image!\r\n"; c = waitKey(); imshow(winMain, frame); c = waitKey(33);

6 Morphologie

7 Morphologie L’idée de base est de convoluer un élément structurant (opérateur) sur une image binaire pour mettre en évidence des éléments visuels ou encore d’éliminer des structures qui ne respectent pas certains critères Exemple d’opérateur

8 Érosion L’érosion consiste à passer un opérateur qui « érode » l’image
Exemple : centre L’érosion consiste à passer un opérateur qui « érode » l’image Tout ce qui touche au point d’ancrage de l’opérateur est converti à la valeur la plus basse Attention! Ici, on « érode » le blanc. Élément structurant carré de 3x3

9 Dilatation La dilatation consiste à passer un opérateur qui « dilate » les valeurs intenses Tout ce qui touche au point d’ancrage de l’opérateur est converti à la valeur la plus haute Élément structurant carré de 3x3

10 Morphologie Voici un exemple de l’effet de la dilatation et l’érosion avec un carré de 3x3 Original Dilatation Érosion

11 Ouverture L’ouverture constitue d’une érosion suivit d’une dilatation
Cela permet de faire disparaître des petits artéfacts Il faut que ceux-ci soit clair sur un fond foncé 𝑑𝑠𝑡=𝑜𝑢𝑣𝑒𝑟𝑡𝑢𝑟𝑒 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡 =𝑑𝑖𝑙𝑎𝑡𝑎𝑡𝑖𝑜𝑛 (𝑒𝑟𝑜𝑠𝑖𝑜𝑛 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡 )

12 Fermeture Elle consiste d’une dilatation suivi d’une érosion
Elle permet de fermer les petits trous dans une image 𝑑𝑠𝑡=𝑓𝑒𝑟𝑚𝑒𝑡𝑢𝑟𝑒 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡 =𝑒𝑟𝑜𝑠𝑖𝑜𝑛 (𝑑𝑖𝑙𝑎𝑡𝑎𝑡𝑖𝑜𝑛 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡 )

13 Gradient morphologique
C’est la différence entre une dilatation et une érosion Cela permet de tracer le contour des objets 𝑑𝑠𝑡= 𝑚𝑜𝑟𝑝ℎ 𝑔𝑟𝑎𝑑 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡 =𝑑𝑖𝑙𝑎𝑡𝑎𝑡𝑖𝑜𝑛 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡 − 𝑒𝑟𝑜𝑠𝑖𝑜𝑛 𝑠𝑟𝑐, 𝑒𝑙𝑒𝑚𝑒𝑛𝑡

14 Traitement d’images Région d’intérêt Canal d’intérêt
Opérateurs arithmétiques et binaires

15 Plan de leçon Région d’intérêt Canal d’intérêt
Opérations arithmétiques Opérateurs logiques

16 Région et canal d’intérêt
La ROI sert à cadrer une région pour accélérer les algorithmes de traitement Ainsi au lieu d’exécuter un algorithme sur une image entière, celui-ci est appliquée que sur la région d’intérêt Une région d’intérêt n’est qu’une sous-image dans une image Pour définir une ROI, il suffit d’avoir une image source et un rectangle qui définit la zone Mis à part le rectangle, le même principe peut s’appliquer aux canaux

17 ROI et COI // Lire l’image Mat img = imread(monFichier); // Régler le roi Mat roi (img, monRectangle); // Rempli le roi de vert qui affecte l’image originale roi = Scalar (0, 255, 0);

18 Opérations arithmétiques
Telles les équations mathématiques, il y a l’équivalent au niveau des images cv::add, cv::sub, cv::multiply, cv::sum, etc. Certains opérateurs tels que « + », « - » et « * » fonctionnent Exemple faire le tracer du mouvement en faisant une somme pondérée de la différence des contours Projet : ocv_difference

19 Opérateurs logiques cv::bitwise_operateur
bitwise_and bitwise_or bitwise_xor bitwise_not Ces opérateurs agissent de la même façon que sur les valeurs numériques sauf qu’ils s’appliquent aux valeurs des pixels

20 Exercices À l’aide d’une caméra vidéo
Afficher plusieurs fenêtres avec chacun des filtres suivants Vidéo originale Vidéo avec une détection de contour avec gradient morphologique Possibilité de désactiver ce filtre en appuyant sur espace La touche d’échappement doit servir à quitter la boucle du flux de vidéo Vidéo avec filtre de détection de contour Sobel Optionnel

21 Référence


Télécharger ppt "Semaine 07 vA13 Morphologie"

Présentations similaires


Annonces Google