exponenta event banner

fasterRCNNObjectDetectorMonoCamera

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

Описание

fasterRCNNObjectDetectorMonoCamera объект содержит информацию о детекторе объекта Faster R-CNN (области со сверточными нейронными сетями), который сконфигурирован для использования с датчиком монокулярной камеры. Для обнаружения объектов на изображении, захваченном камерой, передайте детектор в detect функция.

При использовании detect функция с fasterRCNNObjectDetectorMonoCameraнастоятельно рекомендуется использовать графический процессор NVIDIA ® с поддержкой CUDA ®. Графический процессор значительно сокращает время вычислений. Для использования графического процессора требуется Toolbox™ параллельных вычислений. Сведения о поддерживаемых вычислительных возможностях см. в разделе Поддержка графического процессора по выпуску (Parallel Computing Toolbox).

Создание

  1. Создать fasterRCNNObjectDetector путем вызова trainFasterRCNNObjectDetector функция с данными обучения (требует Toolbox™ глубокого обучения).

    detector = trainFasterRCNNObjectDetector(trainingData,...);

    В качестве альтернативы создайте предварительно обученный детектор с помощью vehicleDetectorFasterRCNN функция.

  2. Создать monoCamera объект для моделирования датчика монокулярной камеры.

    sensor = monoCamera(...);
  3. Создать fasterRCNNObjectDetectorMonoCamera объект, пропуская детектор и датчик в качестве входов в configureDetectorMonoCamera функция. Сконфигурированный детектор наследует значения свойств исходного детектора.

    configuredDetector = configureDetectorMonoCamera(detector,sensor,...);

Свойства

развернуть все

Это свойство доступно только для чтения.

Имя классификационной модели, указанное как вектор символа или скаляр строки. По умолчанию для имени устанавливается заголовок второго столбца trainingData таблица, указанная в trainFasterRCNNObjectDetector функция. Это имя можно изменить после создания fasterRCNNObjectDetectorMonoCamera объект.

Это свойство доступно только для чтения.

Обученная сеть обнаружения объектов Fast R-CNN, указанная как DAGNetwork(Панель инструментов глубокого обучения). Этот объект хранит слои, которые определяют сверточную нейронную сеть, используемую в более быстром детекторе R-CNN.

Это свойство доступно только для чтения.

Размер полей привязки, определяемый как матрица M-by-2, где каждая строка имеет формат [ширина высоты ]. Это значение устанавливается во время обучения.

Это свойство доступно только для чтения.

Имена классов объектов, для поиска которых был обучен более быстрый детектор R-CNN, указанные как массив ячеек. Это свойство задается параметром trainingData входной аргумент для trainFasterRCNNObjectDetector функция. Укажите имена классов как часть trainingData таблица.

Это свойство доступно только для чтения.

Минимальный размер объекта, поддерживаемый сетью Faster R-CNN, указанный как вектор [ширина высоты]. Минимальный размер зависит от архитектуры сети.

Это свойство доступно только для чтения.

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

Диапазон ширины и длины объекта в мировых единицах измерения, заданный как вектор [minWidth maxWidth] или [minWidth maxWidth; вектор minLength maxLength]. Задание диапазона длин объектов является необязательным.

Функции объекта

detectОбнаружение объектов с помощью более быстрого детектора объектов R-CNN, настроенного для монокулярной камеры

Примеры

свернуть все

Настройте более быстрый детектор объектов R-CNN для использования с монокулярной камерой, установленной на транспортном средстве ego. Этот детектор используется для обнаружения транспортных средств в пределах изображения, снятого камерой.

Загрузить a fasterRCNNObjectDetector предварительно обученный для обнаружения транспортных средств объект.

detector = vehicleDetectorFasterRCNN;

Моделирование датчика монокулярной камеры путем создания monoCamera объект. Этот объект содержит характеристики камеры и расположение камеры на эго-транспортном средстве.

focalLength = [309.4362 344.2161];    % [fx fy]
principalPoint = [318.9034 257.5352]; % [cx cy]
imageSize = [480 640];                % [mrows ncols]
height = 2.1798;                      % height of camera above ground, in meters
pitch = 14;                           % pitch of camera, in degrees
intrinsics = cameraIntrinsics(focalLength,principalPoint,imageSize);

monCam = monoCamera(intrinsics,height,'Pitch',pitch);

Сконфигурируйте детектор для использования с камерой. Ограничить ширину обнаруженных объектов типовым диапазоном для ширины транспортного средства: 1,5-2,5 метра. Сконфигурированный детектор представляет собой fasterRCNNObjectDetectorMonoCamera объект.

vehicleWidth = [1.5 2.5];
detectorMonoCam = configureDetectorMonoCamera(detector,monCam,vehicleWidth);

Считывание изображения, снятого камерой.

I = imread('carsinfront.png');
imshow(I)

Figure contains an axes. The axes contains an object of type image.

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

[bboxes,scores] = detect(detectorMonoCam,I);
I = insertObjectAnnotation(I,'rectangle',bboxes,scores,'Color','g');
imshow(I)

Figure contains an axes. The axes contains an object of type image.

Представлен в R2017a