Visual Prompting
Explore le prompting visuel pour guider les modèles IA avec des points et des boîtes. Apprends comment Ultralytics YOLO et SAM permettent une segmentation précise et une annotation de données plus rapide.
Le "visual prompting" est une technique émergente en vision par ordinateur où les utilisateurs fournissent des indices spatiaux ou visuels — tels que des points, des boîtes englobantes ou des gribouillages — pour guider la concentration d'un modèle d'IA vers des objets ou des régions spécifiques dans une image. Contrairement au prompt engineering traditionnel qui repose principalement sur des descriptions textuelles, le visual prompting permet une interaction plus précise et intuitive avec les systèmes d'Intelligence Artificielle (IA). Cette méthode tire parti des capacités des modèles de fondation modernes pour effectuer des tâches comme la segmentation et la détection sans nécessiter un réentraînement intensif ou de grands jeux de données étiquetés. En "pointant" efficacement ce qui importe, les utilisateurs peuvent adapter des modèles à usage général à de nouvelles tâches instantanément, comblant ainsi le fossé entre l'intention humaine et la perception machine.
Link to this sectionMécanismes du Visual Prompting#
À la base, le visual prompting fonctionne en injectant des informations spatiales directement dans le pipeline de traitement du modèle. Lorsqu'un utilisateur clique sur un objet ou dessine une boîte, ces entrées sont converties en plongements basés sur des coordonnées que le réseau de neurones intègre aux caractéristiques de l'image. Ce processus est central pour des architectures interactives comme le Segment Anything Model (SAM), où le modèle prédit des masques basés sur des prompts géométriques.
La flexibilité du visual prompting permet divers types d'interactions :
- Prompts par points : Un utilisateur clique sur un pixel spécifique pour indiquer l'objet d'intérêt. Le modèle étend ensuite cette sélection aux limites complètes de l'objet.
- Prompts par boîte : Dessiner une bounding box fournit une localisation approximative, signalant au modèle de segmenter ou de classer tout ce qui est contenu dans cette zone.
- Prompts par gribouillage : Des lignes à main levée dessinées sur un objet peuvent aider à lever l'ambiguïté dans des scènes complexes où les objets se chevauchent ou ont des textures similaires.
Des recherches récentes présentées à la CVPR 2024 soulignent comment le visual prompting réduit considérablement le temps nécessaire à l'annotation de données, car les annotateurs humains peuvent corriger les prédictions du modèle en temps réel avec de simples clics plutôt qu'en traçant manuellement des polygones.
Link to this sectionVisual Prompting vs Text Prompting#
Bien que les deux techniques visent à guider le comportement du modèle, il est important de distinguer le visual prompting des méthodes basées sur le texte. La génération Text-to-image ou la détection zero-shot s'appuient sur le traitement du langage naturel (NLP) pour interpréter des descriptions sémantiques (par exemple, "trouve la voiture rouge"). Cependant, le langage peut être ambigu ou insuffisant pour décrire des emplacements spatiaux précis ou des formes abstraites.
Le visual prompting résout cette ambiguïté en ancrant l'instruction dans l'espace des pixels lui-même. Par exemple, en imagerie médicale, il est beaucoup plus précis pour un radiologue de cliquer sur un nodule suspect que de tenter de décrire ses coordonnées exactes et sa forme irrégulière via du texte. Souvent, les flux de travail les plus puissants combinent les deux approches — en utilisant le texte pour le filtrage sémantique et les prompts visuels pour la précision spatiale — un concept connu sous le nom d'apprentissage multi-modal.
Link to this sectionApplications concrètes#
L'adaptabilité du visual prompting a conduit à son adoption rapide dans diverses industries :
- Diagnostics médicaux interactifs : Les médecins utilisent des outils de visual prompting pour isoler des tumeurs ou des organes dans des scans IRM. En cliquant simplement sur une région d'intérêt, ils peuvent générer instantanément des mesures volumétriques 3D, facilitant une détection de tumeur précise et la planification chirurgicale.
- Retouche photo intelligente : Dans les logiciels grand public comme Adobe Photoshop ou les applications mobiles, le visual prompting alimente les outils de "sélection magique". Les utilisateurs peuvent toucher une personne ou un objet pour supprimer l'arrière-plan ou appliquer des filtres ciblés, en utilisant des technologies d'instance segmentation sous-jacentes sans avoir besoin de compétences en masquage manuel.
- Manipulation robotique : Dans l'IA en robotique, les robots peuvent être instruits de ramasser des objets spécifiques via une interface visuelle. Un opérateur clique sur un objet dans le flux vidéo du robot, fournissant un prompt visuel que le robot traduit en coordonnées de saisie, facilitant l'automatisation human-in-the-loop dans les entrepôts.
Link to this sectionImplémentation avec Ultralytics#
L'écosystème Ultralytics prend en charge les flux de travail de visual prompting, notamment via des modèles comme FastSAM et SAM. Ces modèles permettent aux développeurs de transmettre des coordonnées de points ou de boîtes par programmation pour récupérer des masques de segmentation.
L'exemple suivant démontre comment utiliser le paquet ultralytics pour appliquer un prompt par point à une image, en instruisant le modèle de segmenter l'objet situé à des coordonnées spécifiques.
from ultralytics import SAM
# Load the Segment Anything Model (SAM)
model = SAM("sam2.1_b.pt")
# Apply a visual point prompt to the image
# The 'points' argument accepts [x, y] coordinates
# labels: 1 indicates a foreground point (include), 0 indicates background
results = model("https://ultralytics.com/images/bus.jpg", points=[[300, 350]], labels=[1])
# Display the segmented result
results[0].show()Link to this sectionFaire progresser l'agilité des modèles#
Le visual prompting représente un changement vers une vision par ordinateur "promptable", où les modèles ne sont plus des "boîtes noires" statiques mais des outils interactifs. Cette capacité est essentielle pour les boucles d'apprentissage actif, où les modèles s'améliorent rapidement en intégrant les retours des utilisateurs.
Pour les développeurs cherchant à intégrer ces capacités en production, la Plateforme Ultralytics propose des outils pour gérer les jeux de données et déployer des modèles capables de traiter des entrées dynamiques. À mesure que la recherche progresse, nous nous attendons à voir une intégration encore plus étroite entre les prompts visuels et les grands modèles de langage (LLMs), permettant des systèmes capables de raisonner sur des entrées visuelles avec la même fluidité qu'ils gèrent actuellement le texte.






