Изучите механику двухэтапных детекторов объектов, уделяя особое внимание предложениям по регионам и классификации. Узнайте, почему современные модели, такие как Ultralytics , сейчас лидируют.
Двухэтапные детекторы объектов представляют собой сложный класс архитектур глубокого обучения (DL), используемых в компьютерном зрении для идентификации и локализации объектов на изображении. В отличие от одноступенчатых детекторов, которые выполняют обнаружение за один проход, эти модели разделяют задачу на две отдельные фазы: предложение области и классификация объектов. Этот разделенный подход был впервые применен для приоритезации высокой точности локализации, что сделало эти детекторы исторически значимыми в эволюции искусственного интеллекта (ИИ). Благодаря разделению «где» и «что», двухэтапные детекторы часто достигают более высокой точности, особенно в отношении небольших или закрытых объектов, хотя это обычно достигается за счет увеличения вычислительных ресурсов и более медленной задержки вывода.
Архитектура двухступенчатого детектора основана на последовательном рабочем процессе, который имитирует то, как человек может тщательно изучить сцену.
Яркими примерами этой архитектуры являются семейство R-CNN, в частности Faster R-CNN и Mask R-CNN, которые на протяжении нескольких лет устанавливали стандарты для академических тестов .
Полезно отличать двухэтапные модели от одноэтапных детекторов объектов, таких как Single Shot MultiBox Detector (SSD) иYOLO Ultralytics YOLO . В то время как двухэтапные модели отдают приоритет точности, обрабатывая области отдельно, одноэтапные модели рассматривают обнаружение как единую задачу регрессии, сопоставляя пиксели изображения непосредственно с координатами ограничивающей рамки и вероятностями классов.
Исторически это привело к компромиссу: двухэтапные модели были более точными, но более медленными, в то время как одноэтапные модели были быстрее, но менее точными. Однако современные достижения размыли эту грань. Передовые модели, такие как YOLO26, теперь используют сквозные архитектуры, которые соперничают по точности с двухэтапными детекторами, сохраняя при этом скорость, необходимую для вывода в реальном времени.
Из-за акцента на точность и воспроизведение, двухэтапные детекторы часто предпочтительны в сценариях , где безопасность и детализация более важны, чем скорость обработки.
Хотя двухэтапные детекторы заложили основу для высокоточного зрения, современные разработчики часто используют усовершенствованные одноэтапные модели, которые предлагают сопоставимую производительность со значительно более простыми рабочими процессами развертывания. Ultralytics упрощает обучение и развертывание этих моделей, эффективно управляя наборами данных и вычислительными ресурсами.
Следующий Python демонстрирует, как загрузить и запустить инференцию с использованием современного рабочего процесса обнаружения объектов с помощью
ultralytics, достигая высокоточных результатов, аналогичных традиционным двухэтапным подходам, но с большей
эффективностью:
from ultralytics import YOLO
# Load the YOLO26 model, a modern high-accuracy detector
model = YOLO("yolo26n.pt")
# Run inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Process results (bounding boxes, classes, and confidence scores)
for result in results:
result.show() # Display the detection outcomes
print(result.boxes.conf) # Print confidence scores