Эволюция детекции объектов и моделей YOLO от Ultralytics

18 октября 2024 г.
Присоединяйтесь к нам, и мы оглянемся назад на эволюцию обнаружения объектов. Мы сосредоточимся на том, как модели YOLO (You Only Look Once) продвинулись за последние годы.

18 октября 2024 г.
Присоединяйтесь к нам, и мы оглянемся назад на эволюцию обнаружения объектов. Мы сосредоточимся на том, как модели YOLO (You Only Look Once) продвинулись за последние годы.
Компьютерное зрение - это подобласть искусственного интеллекта (ИИ), которая фокусируется на обучении машин видеть и понимать изображения и видео, подобно тому, как люди воспринимают реальный мир. В то время как распознавание объектов или идентификация действий является для людей чем-то само собой разумеющимся, эти задачи требуют специальных и специализированных методов компьютерного зрения, когда речь идет о машинах. Например, одной из ключевых задач компьютерного зрения является обнаружение объектов, которое включает в себя идентификацию и локализацию объектов на изображениях или видео.
С 1960-х годов исследователи работают над улучшением способов, которыми компьютеры могут обнаруживать объекты. Ранние методы, такие как сопоставление шаблонов, включали скольжение предопределенного шаблона по изображению для поиска совпадений. Несмотря на инновационность, эти подходы испытывали трудности с изменениями размера объекта, ориентации и освещения. Сегодня у нас есть передовые модели, такие как Ultralytics YOLO11, которые могут обнаруживать даже небольшие и частично скрытые объекты, известные как окклюдированные объекты, с впечатляющей точностью.
Поскольку компьютерное зрение продолжает развиваться, важно оглянуться назад и посмотреть, как развивались эти технологии. В этой статье мы рассмотрим эволюцию обнаружения объектов и прольем свет на трансформацию моделей YOLO (You Only Look Once). Давайте начнем!
Прежде чем углубляться в детектирование объектов, давайте посмотрим, с чего началось компьютерное зрение. Истоки компьютерного зрения восходят к концу 1950-х и началу 1960-х годов, когда ученые начали изучать, как мозг обрабатывает визуальную информацию. В экспериментах с кошками исследователи Дэвид Хьюбел и Торстен Визель обнаружили, что мозг реагирует на простые паттерны, такие как края и линии. Это сформировало основу для идеи извлечения признаков - концепции, согласно которой визуальные системы обнаруживают и распознают основные признаки в изображениях, такие как края, прежде чем перейти к более сложным паттернам.
Примерно в то же время появилась новая технология, которая могла преобразовывать физические изображения в цифровые форматы, что вызвало интерес к тому, как машины могут обрабатывать визуальную информацию. В 1966 году проект Summer Vision Project Массачусетского технологического института (MIT) продвинул дело еще дальше. Хотя проект не был полностью успешным, он был направлен на создание системы, которая могла бы отделять передний план от фона на изображениях. Для многих в сообществе Vision AI этот проект знаменует собой официальное начало компьютерного зрения как научной области.
По мере развития компьютерного зрения в конце 1990-х и начале 2000-х годов методы обнаружения объектов перешли от базовых методов, таких как сопоставление шаблонов, к более продвинутым подходам. Одним из популярных методов был Haar Cascade, который широко использовался для таких задач, как обнаружение лиц. Он работал путем сканирования изображений с помощью скользящего окна, проверяя наличие определенных признаков, таких как края или текстуры, в каждом разделе изображения, а затем объединяя эти признаки для обнаружения объектов, таких как лица. Haar Cascade был намного быстрее, чем предыдущие методы.
Наряду с ними были представлены такие методы, как гистограмма ориентированных градиентов (HOG) и метод опорных векторов (SVM). HOG использовал метод скользящего окна для анализа изменений света и теней в небольших участках изображения, помогая идентифицировать объекты на основе их формы. Затем SVM классифицировали эти признаки, чтобы определить идентичность объекта. Эти методы повысили точность, но все еще испытывали трудности в реальных условиях и были медленнее по сравнению с современными технологиями.
В 2010-х годах рост глубокого обучения и сверточных нейронных сетей (CNN) привел к серьезным изменениям в обнаружении объектов. CNN позволили компьютерам автоматически изучать важные признаки из больших объемов данных, что сделало обнаружение намного более точным.
Ранние модели, такие как R-CNN (Region-based Convolutional Neural Networks), значительно повысили точность, помогая идентифицировать объекты более аккуратно, чем более старые методы.
Однако, эти модели работали медленно, потому что они обрабатывали изображения в несколько этапов, что делало их непрактичными для приложений реального времени в таких областях, как автомобили с автоматическим управлением или видеонаблюдение.
С акцентом на ускорение работы были разработаны более эффективные модели. Такие модели, как Fast R-CNN и Faster R-CNN, помогли усовершенствовать способ выбора областей интереса и сократить количество шагов, необходимых для обнаружения. Хотя это и ускорило обнаружение объектов, этого все еще было недостаточно для многих реальных приложений, которым требовались мгновенные результаты. Растущий спрос на обнаружение в реальном времени подтолкнул к разработке еще более быстрых и эффективных решений, которые могли бы сбалансировать скорость и точность.
YOLO — это модель обнаружения объектов, которая изменила представление о компьютерном зрении, обеспечив обнаружение множества объектов в изображениях и видео в реальном времени, что отличает ее от предыдущих методов обнаружения. Вместо анализа каждого обнаруженного объекта по отдельности, архитектура YOLO рассматривает обнаружение объектов как единую задачу, предсказывая местоположение и класс объектов одновременно с использованием CNN.
Модель работает, разделяя изображение на сетку, при этом каждая часть отвечает за обнаружение объектов в своей области. Она делает несколько прогнозов для каждого раздела и отфильтровывает менее уверенные результаты, сохраняя только точные.
Внедрение YOLO в приложения компьютерного зрения сделало обнаружение объектов намного быстрее и эффективнее, чем в более ранних моделях. Благодаря своей скорости и точности, YOLO быстро стала популярным выбором для решений, работающих в режиме реального времени, в таких отраслях, как производство, здравоохранение и робототехника.
Еще один важный момент, который следует отметить, заключается в том, что, поскольку YOLO была с открытым исходным кодом, разработчики и исследователи могли постоянно улучшать ее, что привело к появлению еще более продвинутых версий.
Модели YOLO постоянно совершенствовались с течением времени, опираясь на достижения каждой версии. Наряду с улучшением производительности, эти улучшения упростили использование моделей для людей с разным уровнем технической подготовки.
Например, когда был представлен Ultralytics YOLOv5, развертывание моделей стало проще с помощью PyTorch, что позволило более широкому кругу пользователей работать с передовым ИИ. Он объединил в себе точность и удобство использования, предоставив большему количеству людей возможность внедрять обнаружение объектов без необходимости быть экспертами в кодировании.
Ultralytics YOLOv8 продолжила этот прогресс, добавив поддержку таких задач, как сегментация экземпляров, и сделав модели более гибкими. Стало проще использовать YOLO как для базовых, так и для более сложных приложений, что делает его полезным в различных сценариях.
В последней модели, Ultralytics YOLO11, были внесены дополнительные оптимизации. Благодаря уменьшению количества параметров при одновременном повышении точности, она стала более эффективной для задач, выполняемых в реальном времени. Независимо от того, являетесь ли вы опытным разработчиком или новичком в ИИ, YOLO11 предлагает продвинутый подход к обнаружению объектов, который является легкодоступным.
YOLO11, представленная на ежегодном гибридном мероприятии Ultralytics YOLO Vision 2024 (YV24), поддерживает те же задачи компьютерного зрения, что и YOLOv8, такие как обнаружение объектов, сегментация экземпляров, классификация изображений и оценка позы. Таким образом, пользователи могут легко переключиться на эту новую модель без необходимости корректировать свои рабочие процессы. Кроме того, модернизированная архитектура YOLO11 делает прогнозы еще более точными. Фактически, YOLO11m достигает более высокой средней точности (mAP) на наборе данных COCO с меньшим на 22% количеством параметров, чем YOLOv8m.
YOLO11 также разработана для эффективной работы на различных платформах, от смартфонов и других периферийных устройств до более мощных облачных систем. Эта гибкость обеспечивает бесперебойную работу на различных конфигурациях оборудования для приложений реального времени. Кроме того, YOLO11 быстрее и эффективнее, что снижает вычислительные затраты и ускоряет время логического вывода. Независимо от того, используете ли вы пакет Ultralytics Python или Ultralytics HUB без кода, YOLO11 легко интегрировать в существующие рабочие процессы.
Влияние передового обнаружения объектов на приложения реального времени и периферийный ИИ уже ощущается в различных отраслях. Поскольку такие сектора, как нефтегазовая промышленность, здравоохранение и розничная торговля, все больше полагаются на ИИ, спрос на быстрое и точное обнаружение объектов продолжает расти. YOLO11 стремится удовлетворить этот спрос, обеспечивая высокую производительность обнаружения даже на устройствах с ограниченной вычислительной мощностью.
По мере развития периферийного ИИ, вероятно, модели обнаружения объектов, такие как YOLO11, станут еще более важными для принятия решений в реальном времени в средах, где скорость и точность имеют решающее значение. Благодаря постоянным улучшениям в дизайне и адаптивности, будущее обнаружения объектов, похоже, принесет еще больше инноваций в различных приложениях.
Обнаружение объектов прошло долгий путь развития от простых методов до современных техник глубокого обучения, которые мы видим сегодня. Модели YOLO были в центре этого прогресса, обеспечивая более быстрое и точное обнаружение в реальном времени в различных отраслях. YOLO11 развивает это наследие, повышая эффективность, снижая вычислительные затраты и повышая точность, что делает его надежным выбором для различных приложений реального времени. Благодаря постоянным достижениям в области искусственного интеллекта и компьютерного зрения, будущее обнаружения объектов выглядит светлым, с возможностью еще большего улучшения скорости, точности и адаптивности.
Интересуетесь ИИ? Оставайтесь на связи с нашим сообществом, чтобы продолжать обучение! Посмотрите наш репозиторий на GitHub, чтобы узнать, как мы используем ИИ для создания инновационных решений в таких отраслях, как производство и здравоохранение. 🚀