Выберите детектор объектов

Computer Vision Toolbox™ обеспечивает детекторы объектов, чтобы использовать для нахождения и классификации объектов в изображении или видео. Обучите детектор с помощью функции детектора объектов, затем используйте его с машинным обучением и глубоким обучением к быстро и точно предскажите местоположение объекта в изображении.

При выборе детектора рассмотрите, нужны ли вам эти функции::

Приложение и эффективность

  • Один по сравнению с Несколькими классами — Несколько классов требуют изменения различных классификаторов, используемых в нескольких местоположениях и шкалах на изображении или видео.

  • Эффективность во время выполнения — Детекторы варьируются по эффективности в зависимости от времени, которое требуется, чтобы обнаружить объекты в изображении. Детектор, обученный единому классу или детектору, обученному обнаружить объекты, которые подобны в положении и форме, будет иметь более быструю эффективность во время выполнения, чем детектор глубокого обучения обученный на нескольких объектах. Что еще более важно, глубокое обучение медленнее, потому что требуется больше расчетов, чем машинное обучение или основанных на функции подходов обнаружения.

  • Машинное обучение — Машинное обучение использует два типа методов: контролируемое изучение, которое обучает модель на известных входных и выходных данных так, чтобы это могло предсказать будущие выходные параметры и безнадзорное изучение, которое находит спрятанным шаблоны или внутренние структуры во входных данных. Для получения дополнительной информации смотрите Машинное обучение в MATLAB (Statistics and Machine Learning Toolbox)

  • Глубокое обучение — глубокие нейронные сети Реализаций с алгоритмами, предварительно обученными моделями и приложениями. Можно использовать сверточные нейронные сети, чтобы выполнить классификацию и регрессию на изображениях. Для получения дополнительной информации смотрите Начало работы с Обнаружением объектов Используя Глубокое обучение.

Развертывание

  • Генерация кода C/C++ — SSD, YOLO, ACF и система основанные на объектах детекторы поддерживают MATLAB® Coder™ C и генерация Кода С++ для множества аппаратных платформ, с настольных систем на встроенное оборудование. Для получения дополнительной информации смотрите MATLAB Coder. Детекторы R-CNN-based не поддерживают генерацию кода.

  • Генерация кода графического процессора — основанные на глубоком обучении детекторы поддерживают генерацию кода графического процессора с оптимизированным CUDA® GPU Coder™ для компьютерного зрения и автономными системами. Для получения дополнительной информации смотрите GPU Coder.

Используйте таблицу, чтобы просмотреть и сравнить функции детектора объектов.

Детектор Несколько поддержки классов Поддержка глубокого обучения Поддержка генерации кода Поддержка графического процессораПримерОписание
fasterRCNNObjectDetectorДаДаНетДаОбнаружение объектов Используя глубокое обучение Faster R-CNN

  • Требует графического процессора для оптимальной эффективности.

  • Используйте этот детектор, когда вам будет нужна более точная объектная точность локализации.

  • Лучшая эффективность семейства R-CNN, но медленнее, чем YOLO v2 и SSD.

Faster R-CNN является сетью 2D этапа. Второй этап совершенствовал предложения по обнаружению, произведенные первой стадией, которая помогает улучшить локализацию за счет эффективности во время выполнения.

Сравнение детекторов объектов R-CNN

fastRCNNObjectDetectorДаДаНетДаОбучите быстрый детектор знака Стоп R-CNN

  • Рассмотрите начиная с fasterRCNNObjectDetector.

  • Требует графического процессора для оптимальной эффективности.

  • Используйте этот детектор, если у вас есть свой собственный метод для создания объектных областей.

  • Быстрее, чем R-CNN, но медленнее, чем Faster R-CNN.

Сравнение детекторов объектов R-CNN

rcnnObjectDetectorДаДаНетДаОбучите детектор объектов Используя глубокое обучение R-CNN

  • Рассмотрите начиная с fasterRCNNObjectDetector.

  • Требует графического процессора для оптимальной эффективности.

  • Самый медленный из детекторов R-CNN-based.

Этот алгоритм комбинирует прямоугольные предложения по области с функциями сверточной нейронной сети. Это - алгоритм обнаружения 2D этапа. Первая стадия идентифицирует подмножество областей в изображении, которое может содержать объект. Второй этап классифицирует объект на каждую область.

Сравнение детекторов объектов R-CNN

yolov2ObjectDetectorДаДаДаДаОбнаружение объектов Используя глубокое обучение YOLO v2

  • Рассмотрите использование SSD или YOLO v3 для лучшей эффективности через различные размеры.

  • Требует графического процессора для оптимальной эффективности.

  • Используйте этот детектор, когда лучшая эффективность во время выполнения желаема, и у вас есть объекты, которые решительно не отличаются по размеру или малы в изображении.

  • Лучшая эффективность во время выполнения по сравнению с Faster R-CNN.

YOLO v2 использует одноступенчатую сеть, чтобы выполнить обнаружение объектов.

ssdObjectDetectorДаДаДаДаОбнаружение объектов Используя глубокое обучение SSD

  • Требует графического процессора для оптимальной эффективности.

  • Используйте этот детектор, когда необходимо обнаружить объекты различных размеров, и лучшая эффективность во время выполнения желаема.

  • Лучшая эффективность во время выполнения, чем Faster R-CNN и YOLO v2.

Один детектор выстрела (SSD) использует одноступенчатую сеть обнаружения для, обнаруживает объекты, использующие многошкальные функции.

acfObjectDetectorНетНетДаНетОбучите основанный на ACF детектор знака Стоп

  • Твердый детектор объектов, который подходит для обнаружения объектов единого класса.

  • Рассмотрите использование детектора объектов глубокого обучения, если необходимо обнаружить несколько классов объектов или иметь объекты, которые принадлежат тому же классу, но находятся в различных настройках или положениях.

  • Используйте этот детектор, когда объект, который вы хотите обнаружить, имеет подобное положение и форму, и когда эффективность во время выполнения очень важна.

  • Лучшая эффективность во время выполнения, чем основанные на глубоком обучении детекторы на центральном процессоре.

ACF работает хорошо на единый класс, который может быть легко классифицирован независимо от положения. Например, это работало бы хорошо, чтобы обнаружить человека, который может быть распознан в нескольких положениях, таких как нахождение, положение или ехать верхом.

ACF не работал бы хорошо на обнаружение транспортных средств с различных точек зрения, таких как передняя сторона, сторона и задняя часть.

peopleDetectorACFПредварительно обученныйНетДаНетОтслеживание пешеходов от движущегося автомобиля

Используйте предварительно обученный детектор, чтобы обнаружить вертикально расположенных людей.

vision.PeopleDetectorПредварительно обученныйНетДаНетОценка глубины от видео стереоИспользуйте предварительно обученный каскадный детектор объектов, чтобы обнаружить вертикально расположенных людей.
vision.CascadeObjectDetectorНетНетДаНетОбнаружьте поверхности в изображении Используя лобную модель классификации поверхностей

  • Детектор объектов Виолы - Джонса, подходящий для твердого обнаружения объектов. Использование ХААР, ПОЖИРАТЕЛЬ РЕСУРСОВ или функции LBP.

  • Если обучение новый детектор, рассмотрите начиная с ACF для лучшей эффективности.

  • Используйте этот детектор, когда предварительно обученный детектор доступен для класса объекта, вы интересуетесь обнаружением, и существует мало изменения положения или формы объекта.

Маска R-CNNДаДаНетДаНачало работы с маской R-CNN, например, сегментация

Используйте этот детектор, когда необходимо будет сегментировать отдельные объекты.

YOLO v3ДаДаДаДаОбнаружение объектов Используя глубокое обучение YOLO v3

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

vehicleDetectorACF (Automated Driving Toolbox)Предварительно обученныйНетДаНетОтследите несколько транспортных средств Используя камеру (Automated Driving Toolbox)Предварительно обученный детектор ACF
vehicleDetectorFasterRCNN (Automated Driving Toolbox)Предварительно обученныйДаНетДаОбучите детектор транспортного средства глубокого обучения (Automated Driving Toolbox)Предварительно обученный детектор Faster R-CNN
vehicleDetectorYOLOv2 (Automated Driving Toolbox)Предварительно обученныйДаДаДаОбнаружьте Транспортные средства Используя Монокулярную Камеру и (Automated Driving Toolbox) YOLO v2Предварительно обученный детектор YOLO v2

Смотрите также

Приложения

Объекты

Функции

Похожие темы