yolov2ObjectDetectorMonoCamera

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

Описание

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

При использовании detect функция объекта со yolov2ObjectDetectorMonoCamera объект, использование CUDA®-активный NVIDIA® Настоятельно рекомендуется использовать графический процессор. Графический процессор значительно сокращает время расчетов. Для использования графический процессор требуется Parallel Computing Toolbox™. Для получения информации о поддерживаемых вычислительных возможностях смотрите Поддержку GPU by Release (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-на-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. The axes contains an object of type image.

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

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