Ultralytics YOLO27 :
Get Started

Détection d’objets interactive : Gradio et Ultralytics YOLO26#

Présentation de la détection d’objets interactive#

Cette interface Gradio offre un moyen simple et interactif d’effectuer la détection d’objets à l’aide du modèle Ultralytics YOLO26. Les utilisateurs peuvent téléverser des images et régler des paramètres tels que le seuil de confiance et le seuil d’intersection sur l’union (IoU) pour obtenir des résultats de détection en temps réel.



À regarder : Déployer Ultralytics YOLO26 dans un navigateur avec Gradio | Tutoriel complet | IA de vision 🌐

Pourquoi utiliser Gradio pour la détection d’objets ?#

  • Interface conviviale : Gradio offre une plateforme simple qui permet aux utilisateurs de téléverser des images et de visualiser les résultats de détection sans avoir à coder.
  • Réglages en temps réel : les paramètres tels que les seuils de confiance et d’IoU peuvent être ajustés à la volée, ce qui permet d’obtenir un retour immédiat et d’optimiser les résultats de détection.
  • Grande accessibilité : l’interface Web Gradio est accessible à tous, ce qui en fait un excellent outil pour les démonstrations, l’enseignement et les expérimentations rapides.

Gradio YOLO detection interface

Comment installer Gradio#

pip install gradio

Comment utiliser l’interface#

  1. Téléverser une image : clique sur « Téléverser une image » pour choisir un fichier image à utiliser pour la détection d’objets.
  2. Régler les paramètres :
    • Seuil de confiance : curseur permettant de définir le niveau de confiance minimal pour détecter des objets.
    • Seuil IoU : curseur permettant de définir le seuil IoU 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 d’utilisation#

  • Image d’exemple 1 : détection d’un bus avec les seuils par défaut.
  • Image d’exemple 2 : détection sur une image sportive avec les seuils par défaut.

Exemple d’utilisation#

Cette section présente le code Python utilisé pour créer une interface Gradio de détection d’objets avec Ultralytics YOLO26. Tu peux adapter cet exemple à la classification, à la segmentation d’instances, à la pose et à d’autres tâches YOLO en chargeant le point de contrôle du modèle correspondant.

import gradio as gr
from PIL import Image

from ultralytics import ASSETS, YOLO

model = YOLO("yolo26n.pt")

def predict_image(img, conf_threshold, iou_threshold):
    """Predicts objects in an image using a YOLO26 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 YOLO26n 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ètreTypeDescription
imgImageImage utilisée pour effectuer la détection d’objets.
conf_thresholdfloatSeuil de confiance pour la détection d’objets.
iou_thresholdfloatSeuil d’intersection sur l’union pour séparer les objets.

Composants de l’interface Gradio#

ComposantDescription
Entrée d’imagePour téléverser l’image à utiliser pour la détection.
CurseursPour régler les seuils de confiance et d’IoU.
Sortie d’imagePour afficher les résultats de détection.

FAQ#

  • Pour utiliser Gradio avec Ultralytics YOLO26 pour la détection d’objets, tu peux suivre ces étapes :

    1. Installer Gradio : utilise la commande pip install gradio.
    2. Créer l’interface : écris un script Python pour initialiser l’interface Gradio. Pour plus de détails, consulte l’exemple de code fourni dans la documentation.
    3. Téléverser et régler les paramètres : téléverse ton image et règle les seuils de confiance et d’IoU dans l’interface Gradio pour obtenir des résultats de détection d’objets en temps réel.

    Voici un exemple de code minimal à titre indicatif :

    import gradio as gr
    
    from ultralytics import YOLO
    
    model = YOLO("yolo26n.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(pil=True)  # Image PIL RGB ; plot() sans pil=True renvoie un tableau BGR
    
    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 YOLO26",
        description="Upload images for YOLO26 object detection.",
    )
    iface.launch()
  • L’utilisation de Gradio pour la détection d’objets avec Ultralytics YOLO26 offre plusieurs avantages :

    • Interface conviviale : Gradio fournit une interface intuitive qui permet aux utilisateurs de téléverser des images et de visualiser les résultats de détection sans avoir à coder.
    • Réglages en temps réel : tu peux ajuster dynamiquement des paramètres de détection tels que les seuils de confiance et d’IoU, et voir immédiatement les effets obtenus.
    • Accessibilité : l’interface Web est accessible à tous, ce qui la rend utile pour les expérimentations rapides, l’enseignement et les démonstrations.

    Pour en savoir plus, lis cet article de blog sur l’IA en radiologie, qui présente des techniques de visualisation interactive similaires.

  • Oui, Gradio et Ultralytics YOLO26 peuvent être utilisés efficacement ensemble à des fins pédagogiques. L’interface Web intuitive de Gradio permet aux étudiants et aux enseignants d’interagir facilement avec des modèles d’apprentissage profond de pointe comme Ultralytics YOLO26, sans compétences avancées en programmation. Cette configuration est idéale pour présenter 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.

  • Dans l’interface Gradio pour YOLO26, tu peux régler les seuils de confiance et d’IoU à l’aide des curseurs prévus à cet effet. Ces seuils permettent de contrôler l’exactitude des prédictions et la séparation des objets :

    • Seuil de confiance : détermine le niveau de confiance minimal pour détecter des objets. Fais glisser le curseur pour augmenter ou diminuer le niveau de confiance requis.
    • Seuil IoU : définit le seuil d’intersection sur l’union permettant de distinguer les objets qui se chevauchent. Ajuste cette valeur pour affiner la séparation des objets.

    Pour en savoir plus sur ces paramètres, consulte la section consacrée à l’explication des paramètres.

  • Voici quelques applications pratiques de l’association d’Ultralytics YOLO26 et de Gradio :

    • Démonstrations de détection d’objets en temps réel : idéal pour montrer le fonctionnement de la détection d’objets en temps réel.
    • Outils pédagogiques : utiles dans un contexte universitaire pour enseigner les concepts de détection d’objets et de vision par ordinateur.
    • Développement de prototypes : permet de développer et de tester efficacement et rapidement des prototypes d’applications de détection d’objets.
    • Communauté et collaborations : facilite le partage de modèles avec la communauté pour recueillir des commentaires et collaborer.

    Pour découvrir des exemples d’applications similaires, consulte l’article du blog Ultralytics sur le suivi du comportement animal, qui montre comment la visualisation interactive peut contribuer à la protection de la faune.

Commentaires