Обучите детектор объектов глубокого обучения Fast R-CNN
обучает детектор объектов Fast R-CNN (области со сверточными нейронными сетями) с помощью глубокого обучения. Можно обучить детектор Fast R-CNN обнаруживать несколько классов объектов.trainedDetector
= trainFastRCNNObjectDetector(trainingData
,network
,options
)
Эта функция требует, чтобы у вас были Deep Learning Toolbox™. Рекомендуется также иметь Parallel Computing Toolbox™ для использования с CUDA®-активный NVIDIA® ГРАФИЧЕСКИЙ ПРОЦЕССОР. Для получения информации о поддерживаемых вычислительных возможностях смотрите Поддержку GPU by Release (Parallel Computing Toolbox).
[
также возвращает информацию о процессе обучения, таком как потеря обучения и точность, для каждой итерации.trainedDetector
,info
] = trainFastRCNNObjectDetector(___)
возобновляет обучение с контрольной точки детектора.trainedDetector
= trainFastRCNNObjectDetector(trainingData
,checkpoint
,options
)
продолжает обучать детектор с дополнительными обучающими данными или выполняет больше обучающих итераций, чтобы улучшить точность детектора.trainedDetector
= trainFastRCNNObjectDetector(trainingData
,detector
,options
)
опционально обучает пользовательскую функцию предложения по trainedDetector
= trainFastRCNNObjectDetector(___,'RegionProposalFcn',proposalFcn
)областям, proposalFcn
, с использованием любого из предыдущих входов. Если вы не задаете функцию предложения, то функция использует изменение алгоритма Edge Boxes [2].
использует дополнительные опции, заданные одним или несколькими trainedDetector
= trainFastRCNNObjectDetector(___,Name,Value
)Name,Value
аргументы в виде пар.
Чтобы ускорить предварительную обработку данных для обучения, trainFastRCNNObjectDetector
автоматически создает и использует параллельный пул на основе параметров параллельных выборов. Для получения дополнительной информации о настройке этих настроек см. параметры параллельных выборов. Для использования настроек параллельных вычислений требуется Parallel Computing Toolbox.
VGG-16, VGG-19, ResNet-101 и Inception-ResNet-v2 являются большими моделями. Обучение с большими изображениями может привести к ошибкам «Out of Memory». Чтобы уменьшить эти ошибки, попробуйте один или несколько из следующих опций:
Уменьшите размер изображений при помощи 'SmallestImageDimension
'аргумент.
Уменьшите значение 'NumRegionsToSample
'имя-значение значение аргумента.
Эта функция поддерживает передачу обучения. Когда вы вводите network
по имени, такому как 'resnet50'
, затем функция автоматически преобразует сеть в действительную модель сети Fast R-CNN на основе предварительно обученной resnet50
(Deep Learning Toolbox) модель. Кроме того, вручную задайте пользовательскую сеть Fast R-CNN при помощи LayerGraph
(Deep Learning Toolbox) извлечен из предварительно обученной сети DAG. Для получения дополнительной информации см. раздел Создание Сеть обнаружения объектов Fast R-CNN ..
Эта таблица описывает, как преобразовать каждую именованную сеть в сеть Fast R-CNN. Имя слоя редукции данных определяет, какой слой обрабатывается слоем объединения ROI. Выходной размер информации только для чтения задает размер карт функций, выводимых слоем объединения информации только для чтения.
Имя сети | Имя слоя редукции данных | Информация только для чтения - выходной параметр слоя объединения | Описание |
---|---|---|---|
alexnet (Deep Learning Toolbox) | 'relu5' | [6 6] | Последний максимальный слой объединения заменяется информацией только для чтения максимальный слой объединения |
vgg16 (Deep Learning Toolbox) | 'relu5_3' | [7 7] | |
vgg19 (Deep Learning Toolbox) | 'relu5_4' | ||
squeezenet (Deep Learning Toolbox) | 'fire5-concat' | [14 14] | |
resnet18 (Deep Learning Toolbox) | 'res4b_relu' | Слой объединения ROI вставляется после слоя редукции данных. | |
resnet50 (Deep Learning Toolbox) | 'activation_40_relu' | ||
resnet101 (Deep Learning Toolbox) | 'res4b22_relu' | ||
googlenet (Deep Learning Toolbox) | 'inception_4d-output' | ||
mobilenetv2 (Deep Learning Toolbox) | 'block_13_expand_relu' | ||
inceptionv3 (Deep Learning Toolbox) | 'mixed7' | [17 17] | |
inceptionresnetv2 (Deep Learning Toolbox) | 'block17_20_ac' |
Чтобы модифицировать и преобразовать сеть в сеть Fast R-CNN, смотрите Проект R-CNN, Fast R-CNN и Модель Faster R-CNN.
Используйте trainingOptions
(Deep Learning Toolbox), чтобы включить или отключить подробную печать.
[1] Гиршик, Росс. Быстрый R-CNN. Материалы Международной конференции IEEE по компьютерному зрению. 2015.
[2] Зитник, К. Лоуренс и Пётр Доллар. «Краевые рамки: определение местоположения предложений объектов с ребер». Computer Vision-ECCV 2014. Springer International Publishing, 2014, pp. 391-405.
estimateAnchorBoxes
| objectDetectorTrainingData
| trainFasterRCNNObjectDetector
| trainRCNNObjectDetector
| trainingOptions
(Deep Learning Toolbox)boxLabelDatastore
| fastRCNNObjectDetector
| Layer
(Deep Learning Toolbox) | SeriesNetwork
(Deep Learning Toolbox)