Vision Agent : une intelligence visuelle pour résoudre les tâches de détection de cibles visuelles multiples
Introduction générale
Vision Agent est un projet open source développé par LandingAI (l'équipe d'Enda Wu) et hébergé sur GitHub, visant à aider les utilisateurs à générer rapidement du code pour résoudre des tâches de vision par ordinateur. Il utilise un cadre d'agent avancé et un modèle multimodal pour générer un code d'IA de vision efficace avec des invites simples pour une variété de scénarios tels que la détection d'images, le suivi vidéo, le comptage d'objets, et plus encore. Vision Agent est conçu pour automatiser des tâches de vision complexes, et les développeurs peuvent obtenir un code exécutable en fournissant simplement une description de la tâche, ce qui réduit considérablement le seuil de développement de l'IA de vision. Actuellement, il a reçu plus de 3 000 étoiles, et la communauté est très active et continuellement mise à jour.

Des exemples d'application peuvent être trouvés dans Détection agentique d'objets : un outil de détection visuelle d'objets sans annotation ni formation

Liste des fonctions
- Génération automatique de codeGénérer un code visuel d'IA pour une image ou une vidéo sur la base d'une description de tâche entrée par l'utilisateur.
- Détection et comptage d'objetsLes services de détection d'objets spécifiques dans une image ou une vidéo et de comptage, par exemple le comptage de têtes.
- analyse des images vidéoLes applications de l'Internet : Extraire des images d'une vidéo et effectuer le suivi ou la segmentation d'un objet.
- Outils de visualisationVisualisation d'images et de vidéos à partir de superpositions de boîtes englobantes et de masques de fractionnement.
- Prise en charge de plusieurs modèlesLes modèles visuels : Intégrer une variété de modèles visuels open source que les utilisateurs peuvent utiliser en fonction de leurs besoins.
- Extensions d'outils personnalisésLe système de gestion des outils : permet aux utilisateurs d'ajouter de nouveaux outils ou modèles pour répondre à des exigences de tâches spécifiques.
- Soutien au déploiementLes tâches de l'équipe sont les suivantes : générer du code pour soutenir le prototypage rapide et le déploiement dans des environnements de production.
Utiliser l'aide
Comment l'installer et l'utiliser
Vision Agent est une bibliothèque basée sur Python, les utilisateurs doivent obtenir le code source via GitHub et l'installer dans leur environnement local. Voici la procédure détaillée d'installation et d'utilisation :
Processus d'installation
- Préparation de l'environnement
- Assurez-vous que Python 3.8 ou une version ultérieure est installé sur votre ordinateur.
- Installez Git pour cloner les dépôts de GitHub.
- Facultatif : il est recommandé d'utiliser un environnement virtuel (par ex.
venv
peut-êtreconda
) pour isoler les dépendances.
- entrepôt de clones
Ouvrez un terminal et exécutez la commande suivante pour obtenir le code source de Vision Agent :git clone https://github.com/landing-ai/vision-agent.git cd vision-agent
- Installation des dépendances
Dans le répertoire du référentiel, installez les dépendances nécessaires :pip install -r requirements.txt
Si vous devez utiliser un modèle spécifique (par ex. Anthropique ou OpenAI), une configuration supplémentaire de la clé API est nécessaire, voir plus loin.
- Vérifier l'installation
Exécutez la commande suivante pour vérifier si l'installation a réussi :python -c "import vision_agent; print(vision_agent.__version__)"
Si le numéro de version est renvoyé (par exemple 0.2), l'installation est terminée.
Utilisation des fonctions principales
La fonction principale de l'agent Vision est de générer du code et d'effectuer des tâches de vision à partir d'invites. Vous trouverez ci-dessous une procédure détaillée, étape par étape, pour les principales fonctions :
1. générer un code visuel d'IA
- procédure: :
- Importer le module Vision Agent :
from vision_agent.agent import VisionAgentCoderV2 agent = VisionAgentCoderV2(verbose=True)
- Préparez la description de la tâche et les fichiers multimédias. Par exemple, compter le nombre de personnes sur une image :
code_context = agent.generate_code([ {"role": "user", "content": "Count the number of people in this image", "media": ["people.png"]} ])
- Enregistrez le code généré :
with open("count_people.py", "w") as f: f.write(code_context.code)
- Importer le module Vision Agent :
- Description fonctionnelleVision Agent : Après avoir saisi un chemin d'image et une description de la tâche, Vision Agent génère automatiquement un code Python qui contient la logique de détection et de comptage des objets. Le code généré s'appuie sur des outils intégrés tels que
countgd_object_detection
.
2) Détection et visualisation d'objets
- procédure: :
- Chargez l'image et lancez la détection :
import vision_agent.tools as T image = T.load_image("people.png") dets = T.countgd_object_detection("person", image)
- Superposez la boîte englobante et enregistrez le résultat :
viz = T.overlay_bounding_boxes(image, dets) T.save_image(viz, "people_detected.png")
- Visualisation des résultats (optionnel) :
import matplotlib.pyplot as plt plt.imshow(viz) plt.show()
- Chargez l'image et lancez la détection :
- Description fonctionnelleCette fonction détecte un objet spécifié (par exemple, une "personne") dans une image et dessine une boîte de délimitation sur l'image, ce qui convient au contrôle de la qualité, à la surveillance et à d'autres scénarios.
3. analyse et suivi des images vidéo
- procédure: :
- Extraire les images vidéo :
frames_and_ts = T.extract_frames_and_timestamps("people.mp4") frames = [f["frame"] for f in frames_and_ts]
- Exécuter une trace d'objet :
tracks = T.countgd_sam2_video_tracking("person", frames)
- Enregistrer la vidéo de visualisation :
viz = T.overlay_segmentation_masks(frames, tracks) T.save_video(viz, "people_tracked.mp4")
- Extraire les images vidéo :
- Description fonctionnelle: extrait des images de la vidéo, détecte et suit les objets, et enfin génère une visualisation de la vidéo avec un masque de segmentation, adapté à l'analyse dynamique de la scène.
4. configuration d'autres modèles
- procédure: :
- Modifier le fichier de configuration pour utiliser d'autres modèles (par exemple Anthropique) :
cp vision_agent/configs/anthropic_config.py vision_agent/configs/config.py
- Définir la clé de l'API :
Ajoutez la clé à la variable d'environnement :export ANTHROPIC_API_KEY="your_key_here"
- Réexécuter la tâche de génération de code.
- Modifier le fichier de configuration pour utiliser d'autres modèles (par exemple Anthropique) :
- Description fonctionnelleVision Agent prend en charge plusieurs modèles par défaut, et les utilisateurs peuvent les changer en fonction de leurs besoins pour améliorer l'efficacité de leurs tâches.
Exemple de processus opérationnel : calcul du pourcentage de remplissage des grains de café
Supposons que vous ayez une image d'un pot contenant des grains de café et que vous souhaitiez calculer le pourcentage de remplissage :
- Rédigez une description de la tâche et exécutez-la :
agent = VisionAgentCoderV2() code_context = agent.generate_code([ {"role": "user", "content": "What percentage of the jar is filled with coffee beans?", "media": ["jar.jpg"]} ])
- Exécuter le code généré :
Le code généré peut être :from vision_agent.tools import load_image, florence2_sam2_image image = load_image("jar.jpg") jar_segments = florence2_sam2_image("jar", image) beans_segments = florence2_sam2_image("coffee beans", image) jar_area = sum(segment["mask"].sum() for segment in jar_segments) beans_area = sum(segment["mask"].sum() for segment in beans_segments) percentage = (beans_area / jar_area) * 100 if jar_area else 0 print(f"Filled percentage: {percentage:.2f}%")
- Exécutez le code pour obtenir le résultat.
mise en garde
- Assurez-vous que l'image ou la vidéo d'entrée est au bon format (par exemple, PNG, MP4).
- Si vous rencontrez des problèmes de dépendance, essayez de mettre à jour le fichier
pip install --upgrade vision-agent
. - Soutien de la communauté : Pour obtenir de l'aide, rejoignez la communauté Discord de LandingAI pour obtenir des conseils.
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...