【Utiliser l'arrière-plan】
ROS1 20.04 noétique
Caméra de profondeur : Caméra de profondeur Intel RealSense D435
[Installer le package de fonctions ar_track_alver]
Le package de fonctions est téléchargé depuis GitHub - machinekoder/ar_track_alvar sur noetic-devel . Faites attention à l'emplacement de stockage et au CD sur l'espace de travail avant de compiler.
catkin_make
【Créer un code AR】
Le package de fonctions ar_track_alver fournit la fonction de génération de codes AR. Tout d'abord, accédez au package de fonctions ar_track_alvar-noetic-devel et utilisez la commande suivante pour créer une étiquette de code QR avec l'étiquette correspondante :
rosrun ar_track_alvar createMarker AR_ID
Parmi eux, AR_ID crée une étiquette avec un nombre quelconque de codes AR, par exemple :
rosrun ar_track_alvar createMarker 0
Création d'une image d'étiquette de code AR avec l'étiquette 0 (le test a révélé que la plage d'étiquettes n'est pas seulement de 0 à 65535 comme l'a dit Gu Yue, des codes AR après l'étiquette 65535 peuvent également être générés), nommée MarkerData_0.png, et l'a placée à l'emplacement actuel du terminal
L'outil createMarker possède également de nombreux paramètres qui peuvent être configurés. Utilisez la commande suivante pour afficher :
rosrun ar_track_alvar createMarker
Les amis intéressés peuvent effectuer plus de configurations, générer le code AR et l'imprimer pour une identification ultérieure.
[Code AR de reconnaissance de la caméra de profondeur]
[Modifier le fichier de lancement]
Utilisez pr2_indiv_no_kinect.launch dans le fichier de lancement du package de fonctions ar-track-alver comme modèle, modifiez les paramètres et renommez-le en ar_track_camera.launch
Apportez principalement les modifications suivantes :
1) Ajouter la conversion des coordonnées TF entre le monde et la caméra
2) Le code de détection utilise individualMarkersNoKinect (si vous souhaitez utiliser d'autres codes de détection, vous pouvez vous référer au dossier de nœud sous le package ar_track_alver) et modifiez le nom du sujet pour abonner les données d'image (si vous n'êtes pas sûr du nom du sujet correspondant , vous pouvez utiliser la liste rostopique après avoir démarré la caméra) View), ainsi que la taille réelle du code AR utilisé, en centimètres
3) rviz : Après avoir démarré le programme de reconnaissance, démarrez rviz dans le nouveau terminal. Vous pouvez le configurer en fonction du nom du sujet souscrit ci-dessous. Après avoir enregistré, modifiez le chemin dans le fichier de lancement.
【Démarrer le programme de reconnaissance】
1) Démarrez d’abord la caméra
roslaunch camera_driver_transfer d435.launch
2) Démarrez le fichier de lancement que vous venez d'écrire
roslaunch ar_track_alvar ar_track_camera.launch
L'effet réussi est le suivant :
Ensuite, permettez-moi de vous présenter ma configuration rviz :
a) Cadre fixe : sélectionnez le monde
b)camera:订阅/camera/color/image_raw sujet
c) marqueur : sélectionnez Ajouter dans le coin inférieur gauche de la fenêtre Affichages pour ajouter un marqueur.
Sélectionnez topic/visualization_marker dans le marqueur
De cette façon, vous devriez pouvoir voir le code AR affiché dans l'image et voir l'état de pose du code AR.
En même temps, nous pouvons utiliser les commandes ROS pour afficher les informations dans le sujet AR
Utilisez les informations rostopiques et l'écho rostopique pour afficher respectivement
【reconnaissant】
Merci au professeur Gu Yue pour "ROS Robot Development Practice"
Cet article est plutôt une explication supplémentaire de l’utilisation par le professeur Gu Yue et de l’utilisation réelle de la version mise à jour d’ar_track_alver.