Обнаружение объектов с помощью глубокого обучения предоставляет быстрое и точное средство для предсказания местоположения объекта в изображении. Глубокое обучение является мощным методом машинного обучения, в котором детектор объектов автоматически изучает функции изображения, необходимые для задач обнаружения. Доступно несколько методов обнаружения объектов с помощью глубокого обучения, таких как Faster R-CNN, вы смотрите только один раз (YOLO) v2, YOLO v3 и одиночное обнаружение выстрела (SSD).
Приложения для обнаружения объектов включают:
Классификация изображений
Понимание сцены
Беспилотные транспортные средства
Наблюдение
Используйте приложение для маркировки, чтобы в интерактивном режиме пометить достоверные данные в видео, последовательности изображений, коллекции изображений или пользовательском источнике данных. Вы можете пометить обнаружение объектов основной истиной с помощью прямоугольных меток, которые определяют положение и размер объекта в изображении.
Использование увеличения данных предоставляет способ использования ограниченных наборов данных для обучения. Незначительные изменения, такие как перевод, обрезка или преобразование изображения, обеспечивают, новые, различные и уникальные изображения, которые можно использовать для обучения устойчивого детектора. Datastores - это удобный способ чтения и увеличения наборов данных. Использование imageDatastore
и boxLabelDatastore
для создания хранилищ данных для изображений и маркированных данных ограничивающего прямоугольника.
Увеличьте ограничительные рамки для обнаружения объектов (Deep Learning Toolbox)
Предварительная обработка изображений для глубокого обучения (Deep Learning Toolbox)
Предварительная обработка данных для специфичных для домена применений глубокого обучения (Deep Learning Toolbox)
Для получения дополнительной информации об увеличении обучающих данных с помощью хранилищ данных смотрите Datastores for Глубокое Обучение (Deep Learning Toolbox) и Выполните дополнительные операции обработки изображений с помощью встроенных хранилищ данных (Deep Learning Toolbox).
Каждый детектор объектов содержит уникальную сетевую архитектуру. Например, детектор Faster R-CNN использует двухэтапную сеть для обнаружения, в то время как детектор YOLO v2 использует одну ступень. Используйте такие функции, как fasterRCNNLayers
или yolov2Layers
для создания сети. Вы также можете проектировать сетевой слой за слоем, используя Deep Network Designer (Deep Learning Toolbox).
Используйте trainFasterRCNNObjectDetector
, trainYOLOv2ObjectDetector
, trainSSDObjectDetector
функции для обучения детектора объектов. Используйте evaluateDetectionMissRate
и evaluateDetectionPrecision
функции для оценки результатов обучения.
Обнаружение объектов в изображении с помощью обученного детектора. Для примера в частичном коде, показанном ниже, используется обученная detector
на изображении I
. Используйте detect
функция объекта на fasterRCNNObjectDetector
, yolov2ObjectDetector
, yolov3ObjectDetector
, или ssdObjectDetector
объекты для возврата ограничивающих рамок, счетов обнаружения и категориальных меток, присвоенных ограничивающим рамкам.
I = imread(input_image) [bboxes,scores,labels] = detect(detector,I)