Vous apprendre étape par étape à utiliser la boîte à outils de vision d'intelligence artificielle LabVIEW pour réaliser rapidement la lecture et l'acquisition d'images.

Préface

Aujourd'hui, nous allons utiliser la boîte à outils de vision LabVIEW AI pour implémenter rapidement la lecture d'images et la conversion de l'espace colorimétrique, et collecter des images de la caméra. Les méthodes d'installation et de téléchargement de la boîte à outils peuvent être trouvées dans les deux blogs précédents.

1. Emplacement de la boîte à outils

La boîte à outils installée se trouve dans le schéma fonctionnel - palette de fonctions - Addons - VIRobotics - opencv_yiku, qui comprend : Opérations de type Mat (matrice), acquisition de caméra, lecture et écriture de fichiers image, opérateurs de base, génération vidéo, appels de réseau neuronal, etc. Fonction.
Contenu de la boîte à outils

2. Acquisition d'images et conversion de l'espace colorimétrique

1. Lecture et écriture de fichiers

(1) Cliquez avec le bouton droit sur le panneau du diagramme : Fichier E/S, faites glisser les fonctions de chemin divisé et de chemin d'épissage vers le panneau du diagramme pour une utilisation ultérieure ;
Insérer la description de l'image ici

(2) Cliquez avec le bouton droit sur le panneau du diagramme : Fichier E/S -> Constantes de fichier, faites glisser la fonction de chemin actuelle vers le panneau du diagramme pour une utilisation ultérieure ;
Insérer la description de l'image ici

2. Mettre en œuvre la lecture d'images

(1) Cliquez avec le bouton droit dans l'espace vide du panneau du diagramme -> Recherchez la fonction imread à utiliser dans la palette de fonctions -> Addons -> VIRobotics -> opencv_yiku-imgcodes, et faites-la glisser vers l'extérieur ; (2) L'imread La fonction lit l'image du
Insérer la description de l'image ici
chemin spécifié (format jpg/png/bmp), renvoie l'objet Mat, les entrées et sorties spécifiques sont les suivantes :
Insérer la description de l'image ici
(3) Cliquez avec le bouton droit sur le panneau du diagramme : Contrôle d'application–>Nœud de propriété, faites glisser le nœud de propriété pour obtenir divers paramètres dans l'objet Mat (dans ce cas, il s'agit d'une image) et placez-le dans le contrôle image ; (4)
Insérer la description de l'image ici
Libérez la ressource Mat ;
Insérer la description de l'image ici
(5) Connectez-vous comme indiqué dans la figure ci-dessous, placez l'image à lire dans le même chemin que ce vi et exécutez-la ;
Insérer la description de l'image ici
( 6) Lisez l'image comme indiqué ci-dessous (le côté gauche est l'image originale, le côté droit est l'image lue), nous avons constaté que la couleur de l'image lue est différente de l'image originale ;
Insérer la description de l'image ici

3. Utilisez l'opérateur cvtColor pour implémenter la conversion de l'espace colorimétrique

(1) Étant donné que l'ordre de disposition des images dans LabVIEW est RVB et que l'ordre de disposition des images dans opencv est BGR, la couleur de l'image lue est différente de l'image d'origine ; (2) Utilisez l'opérateur cvtColor pour la conversion de l'espace colorimétrique, panneau de
diagramme Cliquez avec le bouton droit : Addons–>VIRobotics–>opencv_yiku–>imgproc : cvtColor, faites glisser ;
Insérer la description de l'image ici
(3) L'entrée et la sortie de l'opérateur cvtColor sont telles qu'indiquées dans la figure ci-dessous :

Insérer la description de l'image ici
(4) Comment utiliser l'opérateur (cvtColor) dans LabVIEW 1 : Le terminal d'entrée dst n'est pas connecté à l'entrée, et l'image de sortie après l'exécution de la fonction remplacera l'image d'origine (les valeurs de src out et dst out sont cohérents). Le programme et les résultats sont les suivants Comme le montre la figure :
Insérer la description de l'image ici
Insérer la description de l'image ici

(5) La deuxième façon d'utiliser l'opérateur (cvtColor) dans LabVIEW : L'entrée dst est connectée à un Create_Mat, c'est-à-dire qu'un nouvel objet mat est créé. Après avoir exécuté la fonction, le contenu de dst n'affectera pas le contenu de src ; le programme et les résultats sont présentés dans la figure ci-dessous :
Insérer la description de l'image ici
Insérer la description de l'image ici
Insérer la description de l'image ici

3. Collectez des images de la caméra

1.Classe de caméra

(1) Créez un nouveau vi, faites un clic droit sur le panneau du diagramme : Addons–>VIRobotics --> opencv_yiku : Caméra. Recherchez la fonction d'initialisation de la caméra new_Cap. Cap est affiché dans le coin supérieur droit de la fonction. C'est une action nécessaire avant d'utiliser la caméra. Faites-le glisser vers un espace vide du panneau pour une utilisation ultérieure ;
Insérer la description de l'image ici

(2) Cliquez avec le bouton droit sur le panneau du diagramme : Addons–>VIRobotics --> opencv_yiku : Caméra. Recherchez startCaptura et faites-le glisser vers l'espace vide du panneau. Si vous remplissez uniquement le cameraID lorsque vous utilisez cette fonction, veuillez vous assurer que la caméra est normale. Tant qu'une préférence est connectée, lorsqu'il y a plusieurs caméras locales, la caméra attribuée à l'ID sera utilisée en premier. Si la caméra n'existe pas, d'autres caméras seront utilisées.
Insérer la description de l'image ici

(3) Cliquez avec le bouton droit sur le panneau du diagramme : Addons–>VIRobotics --> opencv_yiku : Caméra. Recherchez la fonction d'acquisition d'image readImage, qui est connectée après avoir allumé l'appareil photo pour obtenir l'image capturée par l'appareil photo. Image de sortie Mat (matrice);
Insérer la description de l'image ici

(4) Cliquez avec le bouton droit sur le panneau du diagramme : Addons–>VIRobotics --> opencv_yiku : Caméra. Recherchez la fonction stopCapture, recevez-la à la fin du programme et libérez les ressources de la caméra. Si elle n'est pas utilisée, cela peut causer des désagréments la prochaine fois.
Insérer la description de l'image ici

2.Nœud d'attribut

(1) Cliquez avec le bouton droit sur le panneau du diagramme : Contrôle d'application : Nœud de propriété, faites-le glisser et connectez-le à startCaptura
Insérer la description de l'image ici
(2) Définissez la largeur et la hauteur en fonction de la résolution réellement prise en charge par la caméra. La flèche de l'attribut à droite indique la lecture. Il suffit de faire un clic droit et de sélectionner Change To Write pour le changer en écriture.
Insérer la description de l'image ici

3. Réaliser la caméra pour collecter des images

Le programme global est le suivant, utilisez une boucle pour collecter des images, cliquez sur le bouton d'arrêt, la boucle se termine, tout le programme se termine et les ressources sont libérées.
Insérer la description de l'image ici

4. Téléchargement du code source

Lien : https://pan.baidu.com/s/1TEihgoG5bIFz1SRCIab-mQ
Code d'extraction : 8888

Résumer

Pour plus d'informations sur LabVIEW et la technologie d'intelligence artificielle, vous pouvez rejoindre le groupe d'échange technique pour une discussion plus approfondie.
Numéro de groupe QQ : 705637299

Je suppose que tu aimes

Origine blog.csdn.net/virobotics/article/details/123663532
conseillé
Classement