Узнай о YOLO-World, инновационной модели обнаружения объектов, которая может идентифицировать объекты по текстовым подсказкам. Узнай, как работает YOLO-World и каковы сферы ее применения, а также получи практические навыки на примере быстрого кода.
Проекты по компьютерному зрению часто предполагают трату большого количества времени на аннотирование данных и обучение моделей обнаружения объектов. Но, возможно, скоро это останется в прошлом. 31 января 2024 года лаборатория искусственного интеллекта Tencent выпустила YOLO-World, модель обнаружения объектов в реальном времени с открытым словарем. YOLO-World - это модель нулевого выстрела, то есть ты можешь делать выводы об обнаружении объектов на изображениях без необходимости ее обучения.
Модели нулевого снимка способны изменить наш подход к приложениям компьютерного зрения. В этом блоге мы расскажем о том, как работает YOLO-World, о потенциальных возможностях его использования и поделимся практическим примером кода, чтобы ты мог начать.
Ты можешь передать изображение и текстовую подсказку, описывающую, какие объекты ты ищешь, через модель YOLO-World. Например, если тебе нужно найти на фотографии "человека в красной рубашке", YOLO-World примет эти данные и приступит к работе.
Уникальная архитектура модели сочетает в себе три основных элемента:
Детектор YOLO сканирует твое входное изображение, чтобы выявить потенциальные объекты. Кодировщик текста преобразует твое описание в формат, понятный модели. Затем эти два потока информации объединяются через RepVL-PAN с помощью многоуровневого кросс-модального слияния. Это позволяет YOLO-World точно обнаруживать и находить на изображении объекты, описанные в твоей подсказке.
Одно из самых больших преимуществ использования YOLO-World заключается в том, что тебе не нужно обучать модель под конкретный класс. Она уже обучалась на парах изображений и текстов, поэтому знает, как находить объекты по описаниям. Ты можешь избежать многочасового сбора данных, аннотирования данных, обучения на дорогих GPU и так далее.
Вот еще несколько преимуществ использования YOLO-World:
YOLO-Модели мира можно использовать для самых разных целей. Давай изучим некоторые из них.
Продукты, изготовленные на сборочной линии, перед упаковкой проверяются визуально на наличие дефектов. Выявление дефектов часто производится вручную, что занимает время и может привести к ошибкам. Эти ошибки могут стать причиной таких проблем, как высокие затраты и необходимость ремонта или отзыва продукции. Чтобы помочь с этим, были созданы специальные камеры машинного зрения и системы искусственного интеллекта, которые выполняют эти проверки.
YOLO-Модели мира - большое достижение в этой области. Они могут находить дефекты в продуктах, даже если не были обучены этой конкретной проблеме, используя свои способности нулевого уровня. Например, фабрика, производящая бутылки для воды, с помощью YOLO-World может легко отличить бутылку, правильно запечатанную крышкой, от бутылки, в которой крышка была пропущена или неисправна.
YOLO-Модели мира позволяют роботам взаимодействовать с незнакомым окружением. Не будучи обученными конкретным объектам, которые могут находиться в комнате, они все равно могут определить, какие предметы там присутствуют. Допустим, робот входит в комнату, в которой никогда раньше не был. С помощью модели YOLO-World он сможет распознать и идентифицировать такие объекты, как стулья, столы или лампы, даже если он не был специально обучен этим предметам.
Помимо обнаружения объектов, YOLO-World может определять их состояние, благодаря функции "подскажи, а потом обнаруживай". Например, в сельскохозяйственной робототехнике ее можно использовать для определения спелых и неспелых фруктов, запрограммировав робота на их обнаружение.
Автомобильная индустрия включает в себя множество движущихся частей, и YOLO-World можно использовать для различных автомобильных приложений. Например, когда речь идет о техническом обслуживании автомобиля, способность YOLO-World распознавать самые разные объекты без ручного нанесения меток или длительного предварительного обучения оказывается чрезвычайно полезной. YOLO-World можно использовать для определения деталей автомобиля, которые нуждаются в замене. Он даже может автоматизировать такие задачи, как проверка качества, выявление дефектов или недостающих деталей в новых автомобилях.
Еще одно применение - обнаружение объектов с нулевого снимка в самоуправляемых автомобилях. YOLO-Возможности -World по обнаружению объектов с нулевого ракурса могут улучшить способность автономного автомобиля обнаруживать и классифицировать объекты на дороге, такие как пешеходы, дорожные знаки и другие транспортные средства, в режиме реального времени. Благодаря этому он может помочь обнаружить препятствия и предотвратить аварии для более безопасной поездки.
Идентификация предметов на полках в магазинах розничной торговли - важная часть отслеживания запасов, поддержания товарных запасов и автоматизации процессов. Ultralytics YOLO-Способность -World распознавать самые разные объекты без ручного нанесения меток или длительного предварительного обучения чрезвычайно полезна для управления запасами.
Например, при управлении запасами YOLO-World может быстро обнаружить и классифицировать товары на полке, такие как различные марки энергетических напитков. Розничные магазины могут вести точный учет, эффективно управлять уровнем запасов и отлаживать цепочки поставок.
Все приложения уникальны и показывают, насколько широко можно использовать YOLO-World. Далее давай разберемся с YOLO-World и посмотрим на пример кодирования.
Как мы уже говорили, YOLO-World можно использовать для обнаружения различных частей автомобиля, требующих обслуживания. Приложение компьютерного зрения, которое определяет необходимость ремонта, будет включать в себя фотографирование автомобиля, определение его частей, изучение каждой части автомобиля на предмет повреждений и рекомендации по ремонту. Каждая часть этой системы будет использовать различные техники и подходы ИИ. Для целей этого описания кода давай сосредоточимся на той части, где определяются детали автомобиля.
С помощью YOLO-World ты сможешь определять различные детали автомобиля на изображении менее чем за 5 минут. Ты можешь расширить этот код и попробовать различные приложения, используя YOLO-World! Чтобы начать, нам нужно установить пакетUltralytics с помощью pip, как показано ниже.
Для получения дополнительных инструкций и лучших практик, связанных с процессом установки, ознакомься с нашим руководством по установкеUltralytics . Во время установки необходимых пакетов для YOLOv8, если у тебя возникнут какие-либо трудности, посмотри наше руководство по общим проблемам, чтобы найти решения и советы.
После того как ты установил нужный пакет, мы можем скачать из интернета изображение, на котором будем запускать наши умозаключения. Мы будем использовать изображение, представленное ниже.
Затем мы импортируем нужный пакет, инициализируем нашу модель и зададим классы, которые мы ищем в нашем входном изображении. Здесь нас интересуют следующие классы: автомобиль, колесо, дверь автомобиля, зеркало автомобиля и номерной знак.
Затем мы используем метод предсказания, предоставляя путь изображения вместе с параметрами для максимального количества обнаружений, а также пороговые значения для пересечения над объединением (IoU) и уверенности (conf), чтобы выполнить вывод по изображению. Наконец, обнаруженные объекты сохраняются в файл с именем 'result.jpg'.
Следующее выходное изображение будет сохранено в твоих файлах.
Если ты предпочитаешь посмотреть, что YOLO-World может делать без кодирования, ты можешь перейти на страницу YOLO-World Demo, загрузить входное изображение и ввести пользовательские классы.
Прочитай нашу страницу документации на YOLO -World, чтобы узнать, как сохранить модель с пользовательскими классами, чтобы впоследствии ее можно было использовать напрямую, не вводя пользовательские классы повторно.
Если ты снова посмотришь на выходное изображение, то заметишь, что пользовательский класс "дверь автомобиля" не был обнаружен. Несмотря на свои большие достижения, YOLO-World имеет определенные ограничения. Чтобы бороться с этими ограничениями и эффективно использовать модель YOLO-World, важно использовать правильные типы текстовых подсказок.
Вот некоторые сведения об этом:
В целом, YOLO- модели мира - можно превратить в мощный инструмент с их расширенными возможностями обнаружения объектов. Он обеспечивает большую эффективность, точность и помогает автоматизировать различные задачи в различных приложениях, как в примере с идентификацией деталей автомобиля, который мы практически обсудили.
Не стесняйся изучить наш репозиторий на GitHub, чтобы узнать больше о нашем вкладе в компьютерное зрение и ИИ. Если тебе интересно узнать, как ИИ меняет такие отрасли, как технологии здравоохранения , загляни на страницы наших решений. Возможности таких инноваций, как YOLO-World, кажутся бесконечными!
Начни свое путешествие с будущим машинного обучения