yolov2ObjectDetectorMonoCamera

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

Описание

yolov2ObjectDetectorMonoCamera объект содержит информацию о вас, только смотрят однажды версия 2 (YOLO v2) детектор объектов, который сконфигурирован для использования с монокулярным датчиком камеры. Чтобы обнаружить объекты в изображении, полученном камерой, передайте детектор detect объектная функция.

При использовании detect возразите функции с yolov2ObjectDetectorMonoCamera объект, использование CUDA®- активированный NVIDIA® Графический процессор настоятельно рекомендован. Графический процессор значительно уменьшает время вычисления. Использование графического процессора требует Parallel Computing Toolbox™. Для получения информации о поддерживаемом вычислите возможности, смотрите Поддержку графического процессора Релизом (Parallel Computing Toolbox).

Создание

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

    detector = trainYOLOv2ObjectDetector(trainingData,____);
  2. Создайте monoCamera возразите, чтобы смоделировать монокулярный датчик камеры.

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

    configuredDetector = configureDetectorMonoCamera(detector,sensor,____);

Свойства

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

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

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

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

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

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

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

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

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

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

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

Поля привязки заданы при создании сети YOLO v2 при помощи yolov2Layers функция. В качестве альтернативы, если вы создаете слой сети слоем YOLO v2, поля привязки заданы при помощи yolov2OutputLayer функция.

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

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

Примеры

свернуть все

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

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

detector = vehicleDetectorYOLOv2;

Смоделируйте монокулярный датчик камеры путем создания 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);

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

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

vehicleWidth = [2 3];
detectorMonoCam = configureDetectorMonoCamera(detector,sensor,vehicleWidth);

Читайте в изображении, полученном камерой.

I = imread('carsinfront.png');

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

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

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

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

disp(labels)
     vehicle 
     vehicle 
     vehicle 
     vehicle 
Введенный в R2019a