YOLO Vision 2026:

Интерактивное обнаружение объектов: Gradio и Ultralytics YOLO26 🚀#

Введение в интерактивное обнаружение объектов#

Этот интерфейс Gradio предоставляет простой и интерактивный способ выполнения обнаружения объектов с использованием модели Ultralytics YOLO26. Пользователи могут загружать изображения и настраивать такие параметры, как порог достоверности и порог пересечения по объединению (IoU), чтобы получать результаты обнаружения в реальном времени.



Watch: Deploy Ultralytics YOLO26 in a Browser with Gradio | Complete Tutorial | Vision AI 🌐

Почему стоит использовать Gradio для обнаружения объектов?#

  • Удобный интерфейс: Gradio предлагает простую платформу для загрузки изображений и визуализации результатов обнаружения без необходимости написания кода.
  • Настройка в реальном времени: Такие параметры, как пороги достоверности и IoU, можно изменять на лету, что позволяет получать мгновенную обратную связь и оптимизировать результаты обнаружения.
  • Широкая доступность: Веб-интерфейс Gradio доступен каждому, что делает его отличным инструментом для демонстраций, образовательных целей и быстрых экспериментов.

Gradio YOLO detection interface

Как установить Gradio#

pip install gradio

Как пользоваться интерфейсом#

  1. Загрузка изображения: Нажми на 'Upload Image', чтобы выбрать файл изображения для обнаружения объектов.
  2. Настройка параметров:
    • Порог достоверности (Confidence Threshold): Ползунок для установки минимального уровня уверенности при обнаружении объектов.
    • Порог IoU (IoU Threshold): Ползунок для установки порога IoU для разделения различных объектов.
  3. Просмотр результатов: Будет отображено обработанное изображение с обнаруженными объектами и их метками.

Примеры использования#

  • Пример изображения 1: Обнаружение автобуса с настройками по умолчанию.
  • Пример изображения 2: Обнаружение на спортивном снимке с настройками по умолчанию.

Пример использования#

В этом разделе представлен код на Python, используемый для создания интерфейса Gradio для обнаружения объектов с помощью Ultralytics YOLO26. Пример можно адаптировать для классификации, сегментации экземпляров, оценки позы и других задач YOLO, загрузив соответствующий чекпоинт модели.

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()

Пояснения к параметрам#

Имя параметраТипОписание
imgImageИзображение, на котором будет выполняться обнаружение объектов.
conf_thresholdfloatПорог достоверности для обнаружения объектов.
iou_thresholdfloatПорог пересечения над объединением для разделения объектов.

Компоненты интерфейса Gradio#

КомпонентОписание
Ввод изображенияДля загрузки изображения для обнаружения.
ПолзункиДля настройки порогов достоверности и IoU.
Вывод изображенияДля отображения результатов обнаружения.

FAQ#

  • Чтобы использовать Gradio с Ultralytics YOLO26 для обнаружения объектов, выполни следующие шаги:

    1. Установи Gradio: Используй команду pip install gradio.
    2. Создай интерфейс: Напиши скрипт на Python для инициализации интерфейса Gradio. Подробности ты можешь найти в примере кода в документации.
    3. Загрузи и настрой: Загрузи изображение и отрегулируй пороги достоверности и IoU в интерфейсе Gradio, чтобы получить результаты обнаружения в реальном времени.

    Вот минимальный фрагмент кода для справки:

    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() 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 YOLO26",
        description="Upload images for YOLO26 object detection.",
    )
    iface.launch()
  • Использование Gradio для обнаружения объектов Ultralytics YOLO26 дает несколько преимуществ:

    • Удобный интерфейс: Gradio предоставляет интуитивно понятный интерфейс, позволяющий загружать изображения и визуализировать результаты обнаружения без каких-либо усилий по программированию.
    • Настройка в реальном времени: Ты можешь динамически регулировать параметры обнаружения, такие как пороги достоверности и IoU, и немедленно видеть эффект.
    • Доступность: Веб-интерфейс доступен каждому, что делает его полезным для быстрых экспериментов, образовательных целей и демонстраций.

    Для получения дополнительной информации ты можешь прочитать эту статью в блоге об искусственном интеллекте в радиологии, в которой продемонстрированы аналогичные методы интерактивной визуализации.

  • Да, Gradio и Ultralytics YOLO26 могут эффективно использоваться вместе в учебных целях. Интуитивно понятный веб-интерфейс Gradio позволяет студентам и преподавателям легко взаимодействовать с передовыми моделями глубокого обучения, такими как Ultralytics YOLO26, не имея продвинутых навыков программирования. Эта установка идеально подходит для демонстрации ключевых концепций обнаружения объектов и компьютерного зрения, так как Gradio обеспечивает немедленную визуальную обратную связь, что помогает понять влияние различных параметров на производительность обнаружения.

  • В интерфейсе Gradio для YOLO26 ты можешь настраивать пороги уверенности и IoU с помощью предоставленных ползунков. Эти пороги помогают контролировать точность прогнозирования и разделение объектов:

    • Порог достоверности: Определяет минимальный уровень уверенности для обнаружения объектов. Перемещай ползунок, чтобы увеличить или уменьшить требуемую достоверность.
    • Порог IoU: Устанавливает порог пересечения над объединением для различения перекрывающихся объектов. Настрой это значение, чтобы улучшить разделение объектов.

    Для получения дополнительной информации об этих параметрах посети раздел с объяснением параметров.

  • Практические применения сочетания Ultralytics YOLO26 с Gradio включают:

    • Демонстрации обнаружения объектов в реальном времени: Идеально подходит для показа того, как работает обнаружение объектов в реальном времени.
    • Образовательные инструменты: Полезно в академической среде для обучения концепциям обнаружения объектов и компьютерного зрения.
    • Разработка прототипов: Эффективно для быстрой разработки и тестирования прототипов приложений для обнаружения объектов.
    • Сообщество и сотрудничество: Упрощает обмен моделями с сообществом для получения отзывов и совместной работы.

    Примеры аналогичных вариантов использования ты найдешь в блоге Ultralytics по мониторингу поведения животных, где показано, как интерактивная визуализация может улучшить усилия по сохранению дикой природы.

Комментарии