Skip to content

Détection interactive d'objets: Gradio & Ultralytics YOLO11 🚀

Introduction à la détection interactive d'objets

Cette interface Gradio offre un moyen simple et interactif de réaliser la détection d'objets à l'aide du Ultralytics YOLO11 modèle. Les utilisateurs peuvent télécharger des images et ajuster des paramètres tels que le seuil de confiance et le seuil d'intersection au-dessus de l'union (IoU) pour obtenir des résultats de détection en temps réel.



Regarder : Intégration de Gradio avec Ultralytics YOLO11

Pourquoi utiliser Gradio pour la détection d'objets ?

  • Interface conviviale : Gradio offre une plateforme simple permettant aux utilisateurs de tĂ©lĂ©charger des images et de visualiser les rĂ©sultats de la dĂ©tection sans avoir besoin de coder.
  • Ajustements en temps rĂ©el : Les paramètres tels que les seuils de confiance et d'intĂ©gritĂ© peuvent ĂŞtre ajustĂ©s Ă  la volĂ©e, ce qui permet un retour d'information immĂ©diat et l'optimisation des rĂ©sultats de la dĂ©tection.
  • Large accessibilitĂ© : L'interface web de Gradio est accessible Ă  tous, ce qui en fait un excellent outil pour les dĂ©monstrations, les objectifs Ă©ducatifs et les expĂ©riences rapides.

Exemple de capture d'Ă©cran de Gradio

Comment installer Gradio

pip install gradio

Comment utiliser l'interface

  1. Télécharger une image : Cliquez sur "Charger une image" pour choisir un fichier image pour la détection d'objets.
  2. Ajuster les paramètres :
    • Seuil de confiance : Curseur permettant de dĂ©finir le niveau de confiance minimal pour la dĂ©tection d'objets.
    • Seuil de rapport coĂ»t-efficacitĂ© : Curseur permettant de dĂ©finir le seuil de l'indice d'utilitĂ© pour distinguer les diffĂ©rents objets.
  3. Afficher les résultats : L'image traitée avec les objets détectés et leurs étiquettes s'affiche.

Exemples de cas d'utilisation

  • Exemple d'image 1 : dĂ©tection d'un bus avec les seuils par dĂ©faut.
  • Exemple d'image 2 : DĂ©tection sur une image de sport avec les seuils par dĂ©faut.

Exemple d'utilisation

Cette section fournit le code Python utilisé pour créer l'interface Gradio avec le modèle Ultralytics YOLO11 . Elle prend en charge les tâches de classification, de détection, de segmentation et de points clés.

import gradio as gr
import PIL.Image as Image

from ultralytics import ASSETS, YOLO

model = YOLO("yolo11n.pt")


def predict_image(img, conf_threshold, iou_threshold):
    """Predicts objects in an image using a YOLO11 model with adjustable confidence and IOU thresholds."""
    results = model.predict(
        source=img,
        conf=conf_threshold,
        iou=iou_threshold,
        show_labels=True,
        show_conf=True,
        imgsz=640,
    )

    for r in results:
        im_array = r.plot()
        im = Image.fromarray(im_array[..., ::-1])

    return im


iface = gr.Interface(
    fn=predict_image,
    inputs=[
        gr.Image(type="pil", label="Upload Image"),
        gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
        gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
    ],
    outputs=gr.Image(type="pil", label="Result"),
    title="Ultralytics Gradio",
    description="Upload images for inference. The Ultralytics YOLO11n model is used by default.",
    examples=[
        [ASSETS / "bus.jpg", 0.25, 0.45],
        [ASSETS / "zidane.jpg", 0.25, 0.45],
    ],
)

if __name__ == "__main__":
    iface.launch()

Explication des paramètres

Nom du paramètre Type Description
img Image L'image sur laquelle la détection d'objet sera effectuée.
conf_threshold float Seuil de confiance pour la détection d'objets.
iou_threshold float Seuil d'intersection sur l'union pour la séparation des objets.

Composants de l'interface Gradio

Composant Description
Entrée d'image Pour télécharger l'image à des fins de détection.
Coulisseaux Ajuster les seuils de confiance et les seuils de référence.
Sortie d'image Pour afficher les résultats de la détection.

FAQ

Comment utiliser Gradio avec Ultralytics YOLO11 pour la détection d'objets ?

Pour utiliser Gradio avec Ultralytics YOLO11 pour la détection d'objets, vous pouvez suivre les étapes suivantes :

  1. Installer Gradio : Utilisez la commande pip install gradio.
  2. Créer l'interface : Ecrivez un script Python pour initialiser l'interface Gradio. Vous pouvez vous référer à l'exemple de code fourni dans la documentation pour plus de détails.
  3. Télécharger et ajuster : Téléchargez votre image et ajustez les seuils de confiance et d'incertitude sur l'interface Gradio pour obtenir des résultats de détection d'objets en temps réel.

Voici un extrait de code minimal à titre de référence :

import gradio as gr

from ultralytics import YOLO

model = YOLO("yolo11n.pt")


def predict_image(img, conf_threshold, iou_threshold):
    results = model.predict(
        source=img,
        conf=conf_threshold,
        iou=iou_threshold,
        show_labels=True,
        show_conf=True,
    )
    return results[0].plot() if results else None


iface = gr.Interface(
    fn=predict_image,
    inputs=[
        gr.Image(type="pil", label="Upload Image"),
        gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
        gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
    ],
    outputs=gr.Image(type="pil", label="Result"),
    title="Ultralytics Gradio YOLO11",
    description="Upload images for YOLO11 object detection.",
)
iface.launch()

Quels sont les avantages de l'utilisation de Gradio pour la détection d'objets sur Ultralytics YOLO11 ?

L'utilisation de Gradio pour la détection d'objets sur Ultralytics YOLO11 présente plusieurs avantages :

  • Interface conviviale : Gradio propose une interface intuitive permettant aux utilisateurs de tĂ©lĂ©charger des images et de visualiser les rĂ©sultats de la dĂ©tection sans aucun effort de codage.
  • Ajustements en temps rĂ©el : Vous pouvez ajuster dynamiquement les paramètres de dĂ©tection, tels que les seuils de confiance et d'incertitude, et en voir immĂ©diatement les effets.
  • AccessibilitĂ© : L'interface web est accessible Ă  tous, ce qui la rend utile pour des expĂ©riences rapides, Ă  des fins Ă©ducatives et pour des dĂ©monstrations.

Pour plus de détails, vous pouvez lire cet article de blog.

Puis-je utiliser Gradio et Ultralytics YOLO11 ensemble Ă  des fins Ă©ducatives ?

Oui, Gradio et Ultralytics YOLO11 peuvent être utilisés ensemble à des fins éducatives de manière efficace. L'interface web intuitive de Gradio permet aux étudiants et aux éducateurs d'interagir facilement avec des modèles d'apprentissage profond de pointe tels que Ultralytics YOLO11 sans avoir besoin de compétences de programmation avancées. Cette configuration est idéale pour démontrer les concepts clés de la détection d'objets et de la vision par ordinateur, car Gradio fournit un retour visuel immédiat qui aide à comprendre l'impact des différents paramètres sur les performances de détection.

Comment ajuster les seuils de confiance et d'incertitude dans l'interface de Gradio pour YOLO11?

Dans l'interface Gradio pour YOLO11, vous pouvez ajuster les seuils de confiance et d'incertitude à l'aide des curseurs fournis. Ces seuils permettent de contrôler la précision de la prédiction et la séparation des objets :

  • Seuil de confiance : DĂ©termine le niveau de confiance minimum pour la dĂ©tection d'objets. Faites glisser le curseur pour augmenter ou diminuer le niveau de confiance requis.
  • Seuil IoU : DĂ©finit le seuil d'intersection au-dessus de l'union pour distinguer les objets qui se chevauchent. Ajustez cette valeur pour affiner la sĂ©paration des objets.

Pour plus d'informations sur ces paramètres, consultez la section d'explication des paramètres.

Quelles sont les applications pratiques de l'utilisation de Ultralytics YOLO11 avec Gradio ?

Les applications pratiques de la combinaison de Ultralytics YOLO11 et de Gradio sont les suivantes

  • DĂ©monstrations de dĂ©tection d'objets en temps rĂ©el : IdĂ©al pour montrer comment fonctionne la dĂ©tection d'objets en temps rĂ©el.
  • Outils pĂ©dagogiques : Utiles dans les Ă©tablissements d'enseignement pour enseigner la dĂ©tection d'objets et les concepts de vision par ordinateur.
  • DĂ©veloppement de prototypes : Efficace pour dĂ©velopper et tester rapidement des prototypes d'applications de dĂ©tection d'objets.
  • CommunautĂ© et collaborations : Faciliter le partage des modèles avec la communautĂ© pour obtenir un retour d'information et une collaboration.

Pour des exemples de cas d'utilisation similaires, consultez le blogUltralytics .

Le fait de fournir ces informations dans la documentation contribuera à améliorer la facilité d'utilisation et l'accessibilité de Ultralytics YOLO11 , ce qui la rendra plus accessible aux utilisateurs de tous niveaux d'expertise.

📅C réé il y a 10 mois ✏️ Mis à jour il y a 2 mois

Commentaires