fasterRCNNObjectDetectorMonoCamera

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

Описание

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

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

Создание

  1. Создайте fasterRCNNObjectDetector объект вызовом trainFasterRCNNObjectDetector функция с обучающими данными (требует Deep Learning Toolbox™).

    detector = trainFasterRCNNObjectDetector(trainingData,...);

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

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

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

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

Свойства

расширить все

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примеры

свернуть все

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

Загрузка 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