exponenta event banner

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

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

Выбирая детектор, подумайте, нужны ли вам следующие функции:

Приложения и производительность

  • Single vs Multiple classes - для нескольких классов требуются различные классификаторы, используемые в нескольких местоположениях и масштабах изображения или видео.

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

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

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

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

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

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

Таблица используется для просмотра и сравнения функций детектора объектов.

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

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

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

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

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

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

fastRCNNObjectDetectorДаДаНетДаДетектор знаков остановки Train Fast R-CNN

  • Попробуйте начать с fasterRCNNObjectDetector.

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

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

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

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

rcnnObjectDetectorДаДаНетДаДетектор обучаемых объектов с помощью глубокого обучения R-CNN

  • Попробуйте начать с fasterRCNNObjectDetector.

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

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

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

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

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

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

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

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

  • Более высокая производительность выполнения по сравнению с более быстрым R-CNN.

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

ssdObjectDetectorДаДаДаДаОбнаружение объектов с помощью глубокого обучения твердотельных накопителей

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

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

  • Более высокая производительность выполнения по сравнению с более быстрыми R-CNN и YOLO v2.

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

acfObjectDetectorНетНетДаНетДетектор знака остановки на базе ACF поезда

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

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

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

  • Более высокая производительность выполнения по сравнению с детекторами на базе глубокого обучения на ЦП.

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

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

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

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

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

  • Детектор объектов Viola-Jones, подходящий для обнаружения жестких объектов. Использует функции HAAR, HOG или LBP.

  • При обучении нового детектора рекомендуется начать с ACF для повышения производительности.

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

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

Этот детектор используется при необходимости сегментирования отдельных объектов.

ЙОЛО v3ДаДаДаДаОбнаружение объектов с помощью глубокого обучения YOLO v3

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

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

См. также

Приложения

Объекты

Функции

Связанные темы