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 |
Faster R-CNN является сетью 2D этапа. Второй этап совершенствовал предложения по обнаружению, произведенные первой стадией, которая помогает улучшить локализацию за счет эффективности во время выполнения. |
fastRCNNObjectDetector | Да | Да | Нет | Да | Обучите быстрый детектор знака Стоп R-CNN |
|
rcnnObjectDetector | Да | Да | Нет | Да | Обучите детектор объектов Используя глубокое обучение R-CNN |
Этот алгоритм комбинирует прямоугольные предложения по области с функциями сверточной нейронной сети. Это - алгоритм обнаружения 2D этапа. Первая стадия идентифицирует подмножество областей в изображении, которое может содержать объект. Второй этап классифицирует объект на каждую область. |
yolov2ObjectDetector | Да | Да | Да | Да | Обнаружение объектов Используя глубокое обучение YOLO v2 |
YOLO v2 использует одноступенчатую сеть, чтобы выполнить обнаружение объектов. |
ssdObjectDetector | Да | Да | Да | Да | Обнаружение объектов Используя глубокое обучение SSD |
Один детектор выстрела (SSD) использует одноступенчатую сеть обнаружения для, обнаруживает объекты, использующие многошкальные функции. |
acfObjectDetector | Нет | Нет | Да | Нет | Обучите основанный на ACF детектор знака Стоп |
ACF работает хорошо на единый класс, который может быть легко классифицирован независимо от положения. Например, это работало бы хорошо, чтобы обнаружить человека, который может быть распознан в нескольких положениях, таких как нахождение, положение или ехать верхом. ACF не работал бы хорошо на обнаружение транспортных средств с различных точек зрения, таких как передняя сторона, сторона и задняя часть. |
peopleDetectorACF | Предварительно обученный | Нет | Да | Нет | Отслеживание пешеходов от движущегося автомобиля | Используйте предварительно обученный детектор, чтобы обнаружить вертикально расположенных людей. |
vision.PeopleDetector | Предварительно обученный | Нет | Да | Нет | Оценка глубины от видео стерео | Используйте предварительно обученный каскадный детектор объектов, чтобы обнаружить вертикально расположенных людей. |
vision.CascadeObjectDetector | Нет | Нет | Да | Нет | Обнаружьте поверхности в изображении Используя лобную модель классификации поверхностей |
|
Маска 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 |
acfObjectDetector
| fasterRCNNObjectDetector
| fastRCNNObjectDetector
| rcnnObjectDetector
| ssdObjectDetector
| vision.CascadeObjectDetector
| yolov2ObjectDetector
| acfObjectDetectorMonoCamera
(Automated Driving Toolbox) | vehicleDetectorACF
(Automated Driving Toolbox) | vehicleDetectorFasterRCNN
(Automated Driving Toolbox) | vehicleDetectorYOLOv2
(Automated Driving Toolbox)trainACFObjectDetector
| trainCascadeObjectDetector
| trainFasterRCNNObjectDetector
| trainFastRCNNObjectDetector
| trainRCNNObjectDetector
| trainSSDObjectDetector
| trainYOLOv2ObjectDetector