exponenta event banner

yolov2ObjectDetectorMonoCamera

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

Описание

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

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

Создание

  1. Создать yolov2ObjectDetector путем вызова trainYOLOv2ObjectDetector функция с данными обучения (требует 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(Панель инструментов глубокого обучения). Этот объект хранит слои, используемые в детекторе объектов YOLO v2.

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

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

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

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

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

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

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

Примеры

свернуть все

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

Загрузить a 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