Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Немаксимальное подавлениеNMS)

Откройте для себя метод немаксимального подавленияNMS) для обнаружения объектов. Узнайте, как оно улучшает результаты, повышает точность и обеспечивает работу приложений искусственного интеллекта, таких как YOLO.

Немаксимальное подавлениеNMSНМП) - важнейшая техника постобработки, используемая в компьютерном зрении для уточнения результатов. компьютерном зрении для уточнения результатов алгоритмов обнаружения объектов. Когда модель анализирует изображения, она часто предсказывает несколько перекрывающихся ограничивающих областей для одного объекта, каждая из которых имеет с определенной вероятностью. NMS фильтрует эти избыточные предсказания, чтобы гарантировать, что каждый уникальный объект будет идентифицирован ровно один раз, сохраняя только наиболее точные рамки и отбрасывая остальные. Этот процесс необходим для достижения высокой точности в реальных приложениях, не позволяя системам от обнаружения "призрачных" дубликатов одной и той же цели.

Механизмы подавления

Алгоритм NMS работает как фильтр, очищающий необработанный вывод модели глубокого обучения. модели глубокого обучения. Он в значительной степени опирается на две ключевые метрики: показатель уверенности, который показывает, насколько насколько модель уверена в том, что в ящике находится объект, и Intersection over Union (IoU), которая измеряет пространственное перекрытие между двумя ящиками.

Стандартный жадный алгоритм для NMS , как правило, следует следующие шаги:

  1. Пороговая оценка: Все ящики-кандидаты с доверительной оценкой ниже определенного порога немедленно отбрасываются, чтобы удалить слабые предсказания.
  2. Сортировка: Оставшиеся ячейки сортируются в порядке убывания на основе их баллов доверия.
  3. Выбор: Ящик с наибольшим количеством баллов выбирается в качестве достоверного обнаружения.
  4. Подавление: Алгоритм сравнивает выбранный ящик со всеми остальными оставшимися ящиками. Если IoU между выбранным боксом и другим боксом превышает определенный предел (например, 0,5), бокс с более низкой оценкой подавляется (удаляется), поскольку предполагается, что он представляет один и тот же объект.
  5. Итерация: Этот процесс повторяется для следующего ящика с наивысшим баллом, пока не будут обработаны все кандидаты обработаны.

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

Применение в реальном мире

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

  • ИИ в автомобилестроении: В В стеках восприятия самоуправляемых автомобилей точное обнаружение других транспортных средств и пешеходов является обязательным условием. Без NMS система восприятия автомобиля может detect одного пешехода как трех или четырех отдельных людей из-за перекрывающихся прогнозов. Это может сбить с толку алгоритмы планирования движения, что приведет к ошибочному торможению или рулевому управлению. NMS обеспечивает чистое, единое представление препятствий, как в таких технологиях, как NVIDIA DRIVE.
  • Анализ медицинских изображений: При использовании искусственного интеллекта для выявления опухолей или повреждений на рентгеновских снимках и снимках МРТ точность имеет первостепенное значение. Системы искусственного интеллекта в здравоохранении используют NMS для обеспечения того, чтобы чтобы одна аномалия не вызывала множество предупреждений, помогая радиологам сосредоточиться на конкретных результатах. Надежное Надежность обнаружения снижает количество ложных срабатываний, оптимизируя диагностический процесс, описанный в исследованиях в области медицинской визуализации.

NMS в Ultralytics YOLO

В Ultralytics YOLO11 фреймворк NMS интегрирован непосредственно в конвейер предсказаний. Пользователи могут легко настроить параметры NMS , такие как порог IoU , чтобы сбалансировать между удалением дубликатов и разделением близко расположенных объектов.

Следующий фрагмент кода демонстрирует, как запустить вывод и настроить параметры NMS с помощью ultralytics пакет:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on an image
# 'iou=0.5' sets the NMS threshold; boxes with >50% overlap are suppressed
# 'conf=0.25' filters out boxes with low confidence before NMS runs
results = model.predict("https://ultralytics.com/images/bus.jpg", iou=0.5, conf=0.25)

# Display the number of detected objects after NMS
print(f"Objects detected: {len(results[0].boxes)}")

Сравнение со смежными понятиями

Важно отличать NMS от других терминов, встречающихся в конвейерах обнаружения.

  • NMS против анкерных коробок: Якоря - это предопределенные фигуры, используемые в качестве отправных точек для предсказаний во время обработки модели. NMS - это этап постобработки, который происходит после того, как модель вывела свои окончательные прогнозы.
  • NMS против порога доверия: A порог доверия фильтрует ячейки, основываясь только на их индивидуальных оценках вероятности. NMS фильтрует ящики на основе их взаимосвязи (перекрытия) с другими ячейками.
  • NMS против сквозного обнаружения: Традиционная NMS увеличивает задержку в выводах, поскольку это последовательный процесс. Новые архитектуры, такие как YOLO26, переходят к переходят к сквозным моделям. Эти модели нацелены на вывод конечного набора уникальных объектов непосредственно из нейронной сети, потенциально делая внешние алгоритмы NMS устаревшими в будущих поколениях моделей машинного обучения. моделей машинного обучения.

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

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас