Перейти к содержанию

Вывод в реальном времени с приложением Streamlit с использованием Ultralytics YOLO11

Введение

Streamlit упрощает создание и развертывание интерактивных веб-приложений. Сочетание этого с Ultralytics YOLO11 обеспечивает обнаружение объектов и анализ в реальном времени прямо в вашем браузере. Высокая точность и скорость YOLO11 обеспечивают бесперебойную работу с потоковым видео, что делает его идеальным для приложений в сфере безопасности, розничной торговли и других областях.



Смотреть: Как использовать Streamlit с Ultralytics для в режиме реального времени Компьютерное зрение в Вашем браузере

Аквакультура Животноводство
Обнаружение рыбы с использованием Ultralytics YOLO11 Обнаружение животных с использованием Ultralytics YOLO11
Обнаружение рыбы с использованием Ultralytics YOLO11 Обнаружение животных с использованием Ultralytics YOLO11

Преимущества Live-инференса

  • Бесшовная объектная детекция в реальном времени: Streamlit в сочетании с YOLO11 обеспечивает обнаружение объектов в реальном времени непосредственно с веб-камеры. Это позволяет проводить немедленный анализ и получать информацию, что делает его идеальным для приложений, требующих немедленной обратной связи.
  • Удобное развертывание: Интерактивный интерфейс Streamlit упрощает развертывание и использование приложения без обширных технических знаний. Пользователи могут начать инференс в реальном времени простым щелчком мыши, что повышает доступность и удобство использования.
  • Efficient Resource Utilization: Оптимизированные алгоритмы YOLO11 обеспечивают высокоскоростную обработку с минимальными вычислительными ресурсами. Эта эффективность обеспечивает плавный и надежный вывод с веб-камеры даже на стандартном оборудовании, делая передовое компьютерное зрение доступным для более широкой аудитории.

Код приложения Streamlit

Установка Ultralytics

Прежде чем начать создание приложения, убедитесь, что у вас установлен пакет Ultralytics Python. Вы можете установить его с помощью команды pip install ultralytics.

Инференс с использованием Streamlit с Ultralytics YOLO

yolo solutions inference

yolo solutions inference model="path/to/model.pt"
from ultralytics import solutions

inf = solutions.Inference(
    model="yolo11n.pt",  # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
)

inf.inference()

# Make sure to run the file using command `streamlit run path/to/file.py`

Это запустит приложение Streamlit в вашем веб-браузере по умолчанию. Вы увидите главный заголовок, подзаголовок и боковую панель с параметрами конфигурации. Выберите желаемую модель YOLO11, установите пороги уверенности и NMS и нажмите кнопку "Start", чтобы начать обнаружение объектов в реальном времени.

Как это работает

Под капотом приложение Streamlit использует модуль решений Ultralytics для создания интерактивного интерфейса. Когда вы запускаете логический вывод, приложение:

  1. Захватывает видео с вашей веб-камеры или загруженного видеофайла
  2. Обрабатывает каждый кадр с помощью модели YOLO11
  3. Применяет обнаружение объектов с указанными вами порогами уверенности и IoU
  4. Отображает как исходные, так и аннотированные кадры в режиме реального времени
  5. При выборе дополнительно включает отслеживание объектов

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

Заключение

Следуя этому руководству, вы успешно создали приложение для обнаружения объектов в реальном времени с использованием Streamlit и Ultralytics YOLO11. Это приложение позволяет вам ощутить всю мощь YOLO11 в обнаружении объектов через вашу веб-камеру, с удобным интерфейсом и возможностью остановить видеопоток в любое время.

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

Поделитесь своими мыслями с сообществом

Взаимодействуйте с сообществом, чтобы узнать больше, устранить неполадки и поделиться своими проектами:

Где найти помощь и поддержку

  • Проблемы на GitHub: Посетите репозиторий Ultralytics на GitHub, чтобы задавать вопросы, сообщать об ошибках и предлагать функции.
  • Сервер Ultralytics Discord: Присоединяйтесь к серверу Ultralytics Discord, чтобы общаться с другими пользователями и разработчиками, получать поддержку, делиться знаниями и генерировать идеи.

Официальная документация

  • Документация Ultralytics YOLO11: Обратитесь к официальной документации YOLO11 для получения исчерпывающих руководств и советов по различным задачам и проектам компьютерного зрения.

Часто задаваемые вопросы

Как я могу настроить приложение для обнаружения объектов в реальном времени, используя Streamlit и Ultralytics YOLO11?

Настройка приложения для обнаружения объектов в реальном времени с использованием Streamlit и Ultralytics YOLO11 довольно проста. Сначала убедитесь, что у вас установлен пакет Ultralytics Python, используя:

pip install ultralytics

Затем вы можете создать базовое приложение Streamlit для запуска инференса в реальном времени:

Приложение Streamlit

from ultralytics import solutions

inf = solutions.Inference(
    model="yolo11n.pt",  # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)

inf.inference()

# Make sure to run the file using command `streamlit run path/to/file.py`
yolo solutions inference

Для получения более подробной информации о практической настройке обратитесь к разделу Код приложения Streamlit в документации.

Каковы основные преимущества использования Ultralytics YOLO11 со Streamlit для обнаружения объектов в реальном времени?

Использование Ultralytics YOLO11 со Streamlit для обнаружения объектов в реальном времени предлагает несколько преимуществ:

  • Бесшовное обнаружение в реальном времени: Достигайте высокой точности обнаружения объектов в реальном времени непосредственно с веб-камеры.
  • Удобный интерфейс: Интуитивно понятный интерфейс Streamlit обеспечивает простоту использования и развертывания без обширных технических знаний.
  • Эффективность использования ресурсов: Оптимизированные алгоритмы YOLO11 обеспечивают высокоскоростную обработку с минимальными вычислительными ресурсами.

Узнайте больше об этих преимуществах в разделе Преимущества Live Inference.

Как развернуть приложение обнаружения объектов Streamlit в моем веб-браузере?

После кодирования вашего приложения Streamlit, интегрирующего Ultralytics YOLO11, вы можете развернуть его, запустив:

streamlit run path/to/file.py

Эта команда запустит приложение в вашем веб-браузере по умолчанию, позволяя вам выбирать модели YOLO11, устанавливать пороги уверенности и NMS и запускать обнаружение объектов в реальном времени простым щелчком мыши. Подробное руководство см. в разделе Код приложения Streamlit.

Каковы некоторые варианты использования обнаружения объектов в реальном времени с использованием Streamlit и Ultralytics YOLO11?

Обнаружение объектов в реальном времени с использованием Streamlit и Ultralytics YOLO11 может применяться в различных секторах:

Более подробные примеры использования и варианты применения можно найти в разделе Решения Ultralytics.

Как Ultralytics YOLO11 соотносится с другими моделями обнаружения объектов, такими как YOLOv5 и RCNN?

Ultralytics YOLO11 предоставляет ряд улучшений по сравнению с предыдущими моделями, такими как YOLOv5 и RCNN:

  • Более высокая скорость и точность: Улучшенная производительность для приложений реального времени.
  • Простота использования: Упрощенные интерфейсы и развертывание.
  • Эффективность использования ресурсов: Оптимизировано для повышения скорости при минимальных вычислительных требованиях.

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



📅 Создано 1 год назад ✏️ Обновлено 13 дней назад

Комментарии