Object Detection
Изучи основы обнаружения объектов. Узнай, как Ultralytics YOLO26 идентифицирует объекты и определяет их местоположение в реальном времени с непревзойдёнными скоростью и точностью.
Обнаружение объектов — ключевая технология в области компьютерного зрения (CV), которая позволяет компьютерным системам идентифицировать и локализовать определённые элементы в визуальных данных. В отличие от более простых задач классификации изображений, где всему изображению присваивается одна метка, обнаружение объектов обеспечивает детальное понимание сцены, одновременно предсказывая класс объекта (например, «человек», «автомобиль», «собака») и его пространственное положение. Это положение обычно представляется прямоугольной ограничивающей рамкой, охватывающей объект, и сопровождается оценкой уверенности, которая показывает степень уверенности модели. Эта двойная возможность — распознавание и локализация — служит сенсорной основой современных приложений искусственного интеллекта (AI), позволяя машинам осмысленно взаимодействовать с окружающей средой.
Механика обнаружения#
Современные детекторы во многом опираются на архитектуры глубокого обучения (DL), в частности на свёрточные нейронные сети (CNNs), чтобы извлекать сложные признаки из входных изображений. Процесс начинается с этапа обучения, на котором модель учится распознавать закономерности, используя большие размеченные наборы данных, такие как датасет COCO. На этом этапе алгоритм оптимизирует веса модели, чтобы минимизировать ошибки предсказаний.
Когда модель развёртывается для выполнения инференса, она сканирует новые изображения и предлагает потенциальные объекты. Затем передовые алгоритмы применяют подавление немаксимумов (NMS), чтобы отфильтровать дублирующиеся обнаружения и гарантировать, что каждый отдельный объект будет выделен только один раз. Точность этих предсказаний часто оценивается с помощью метрики пересечения по объединению (IoU), которая измеряет степень перекрытия между предсказанной рамкой и эталонной разметкой. Последние достижения привели к появлению сквозных архитектур, таких как YOLO26, которые оптимизируют этот конвейер, обеспечивая исключительную скорость и возможности инференса в реальном времени на периферийных устройствах.
Различия между ключевыми терминами#
Чтобы выбрать подходящий инструмент для проекта, важно отличать обнаружение объектов от связанных с ним концепций:
- Обнаружение объектов и классификация изображений: если классификация изображений отвечает на вопрос «Что находится на этом изображении?», то обнаружение объектов отвечает на вопрос «Что и где находится?».
- Обнаружение объектов и сегментация экземпляров: обнаружение рисует рамку вокруг объекта. В отличие от этого, сегментация экземпляров определяет точный контур каждого объекта с точностью до пикселя (маску).
- Обнаружение объектов и отслеживание объектов: обнаружение находит объекты в одном кадре. Отслеживание объектов связывает эти обнаружения в последовательности видео, чтобы отслеживать перемещение объектов во времени.
Практические применения#
Универсальность обнаружения объектов стимулирует инновации в ключевых отраслях. В автомобильной отрасли AI в автономных транспортных средствах критически зависит от моделей обнаружения, которые мгновенно выявляют пешеходов, дорожные знаки и другие транспортные средства, чтобы обеспечить безопасную навигацию. Обрабатывая видеопотоки с бортовых камер, такие системы принимают решения за доли секунды, предотвращая аварии.
Ещё один заметный вариант применения — AI в розничной торговле. Автоматизированные кассы и роботы для интеллектуального управления запасами используют обнаружение объектов, чтобы сканировать полки, распознавать товары и выявлять нехватку запасов или неправильно размещённые товары. Такая автоматизация оптимизирует цепочки поставок и улучшает качество обслуживания клиентов, обеспечивая постоянную доступность товаров.
Реализация обнаружения объектов#
Разработчики могут легко реализовать рабочие процессы обнаружения с помощью пакета ultralytics для Python. В следующем примере показано, как загрузить предварительно обученную модель YOLO26 и выполнить инференс на изображении.
from ultralytics import YOLO
# Load the latest YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Run inference on an image from a URL
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results with bounding boxes
results[0].show()Для команд, стремящихся масштабировать свои операции, платформа Ultralytics предоставляет комплексную среду для разметки данных, обучения пользовательских моделей в облаке и их развёртывания в различных форматах, таких как ONNX или TensorRT. Использование таких платформ упрощает жизненный цикл MLOps, позволяя инженерам сосредоточиться на совершенствовании приложений, а не на управлении инфраструктурой.









