Обучите Быстрый детектор объектов глубокого обучения R-CNN
обучает Быстрый R-CNN (области с нейронными сетями свертки) детектор объектов с помощью глубокого обучения. Можно обучить Быстрый детектор R-CNN обнаруживать несколько классов объектов.trainedDetector
= trainFastRCNNObjectDetector(trainingData
,network
,options
)
Эта функция требует, чтобы у вас был Deep Learning Toolbox™. Рекомендуется, чтобы у вас также был Parallel Computing Toolbox™, чтобы использовать с CUDA®- активированный NVIDIA® Графический процессор. Для получения информации о поддерживаемом вычислите возможности, смотрите Поддержку графического процессора Релизом (Parallel Computing Toolbox).
[
также возвращает информацию о процессе обучения, таком как учебная потеря и точность, для каждой итерации.trainedDetector
,info
] = trainFastRCNNObjectDetector(___)
обучение резюме с контрольной точки детектора.trainedDetector
= trainFastRCNNObjectDetector(trainingData
,checkpoint
,options
)
продолжает обучение детектор с дополнительными обучающими данными или выполняет больше учебных итераций, чтобы улучшить точность детектора.trainedDetector
= trainFastRCNNObjectDetector(trainingData
,detector
,options
)
опционально обучает пользовательскую функцию предложения по области, trainedDetector
= trainFastRCNNObjectDetector(___,'RegionProposalFcn',proposalFcn
)proposalFcn
, использование любых из предыдущих входных параметров. Если вы не задаете функцию предложения, то функция использует изменение Полей Ребра [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'
, затем функция автоматически преобразовывает сеть в допустимую Быструю сетевую модель R-CNN на основе предварительно обученного resnet50
Модель (Deep Learning Toolbox). В качестве альтернативы вручную задайте пользовательскую сеть Fast R-CNN при помощи LayerGraph
(Deep Learning Toolbox) извлечен из предварительно обученной сети DAG. Для получения дополнительной информации смотрите, Создают сеть обнаружения объектов Fast R-CNN.
Эта таблица описывает, как преобразовать каждую именованную сеть в сеть Fast R-CNN. Имя слоя извлечения признаков задает, какой слой обрабатывается слоем объединения ROI. ROI выходной размер задает размер карт признаков выходного слоя ROI.
Сетевое имя | Имя слоя извлечения признаков | Слой объединения ROI OutputSize | Описание |
---|---|---|---|
alexnet (Deep Learning Toolbox) | 'relu5' | [6 6] | В последний раз макс. объединение слоя заменяется ROI, макс. объединяющим слой |
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, Быстрый R-CNN и Модель Faster R-CNN.
Используйте trainingOptions
(Deep Learning Toolbox) функция, чтобы включить или отключить многословную печать.
[1] Girshick, Росс. "Быстрый R-CNN". Продолжения международной конференции IEEE по вопросам компьютерного зрения. 2015.
[2] Zitnick, К. Лоуренс и Петр Доллар. "Поля ребра: Определение местоположения Объектных Предложений От Ребер". Компьютерное-зрение-ECCV 2014. Springer International Publishing, 2014, стр 391–405.
objectDetectorTrainingData
| trainRCNNObjectDetector
| trainFasterRCNNObjectDetector
| trainingOptions
(Deep Learning Toolbox) | estimateAnchorBoxes
Layer
(Deep Learning Toolbox) | SeriesNetwork
(Deep Learning Toolbox) | fastRCNNObjectDetector
| boxLabelDatastore