Как магазин приложений этикетировочной машины экспортируемые пиксельные метки

Когда вы создаете и экспортируете пиксельные метки от Image Labeler, Video Labeler или Ground Truth Labeler (требует Automated Driving Toolbox™), приложение, два набора данных сохранены.

  • Папка под названием PixelLabelData, который содержит файлы PNG пиксельной информации о метке. Эти метки закодированы как индексированные значения.

  • MAT-файл, содержащий объект groundTruth, который хранит соответствия между фреймами изображения или кадрами видео и файлами PNG. Объект также содержит любые отмеченные прямоугольники или ломаные линии.

Файлы PNG в папке PixelLabelData хранятся как категориальная матрица. Матрицы categorical содержат значения, присвоенные категориям. Категориальный тип данных. Категориальная матрица обеспечивает эффективное устройство хранения данных и удобную манипуляцию нечисловых данных, также поддерживая понятные имена для значений. Эти матрицы являются естественными представлениями для семантической наземной истины сегментации, где каждый пиксель является одной из предопределенной категории меток.

Местоположение пиксельной папки данных о метке

Объектно-ориентированная память groundTruth путь к папке и имя для пикселя маркирует папку данных. Наземное свойство LabelData истины этого объекта содержит информацию в столбце 'PixelLabelData'. Если вы изменяете местоположение файла пиксельных данных, необходимо также обновить сопутствующую информацию в объекте groundTruth. Можно использовать функцию changeFilePaths, чтобы обновить информацию.

Просмотрите экспортированные пиксельные данные о метке

Магазин приложений этикетировочной машины семантическая наземная истина сегментации как файлы PNG без потерь, со значением uint8, представляющим каждую категорию. Приложение использует функцию categorical, чтобы сопоставить значения uint8 к категории. Чтобы просмотреть ваши пиксельные данные, можно или наложить категории на изображениях или создать datastore из маркированных изображений.

Просмотрите экспортированные пиксельные данные о метке путем накладывания категорий на изображениях

Используйте функцию imread с функции labeloverlay и categorical. Вы не можете просмотреть пиксельные данные непосредственно из категориальной матрицы. Вид на море Экспортировал Пиксельные Данные о Метке.

Просмотрите экспортированные пиксельные данные о метке из Datastore маркированных изображений

Используйте функцию pixelLabelDatastore, чтобы создать datastore из набора маркированных изображений. Используйте функцию read, чтобы считать пиксельные данные о метке. Смотрите Пиксельные Данные о Метке Чтения и Отображения.

Примеры

Просмотрите экспортированные пиксельные данные о метке

Считайте изображение и соответствующие пиксельные данные о метке, которые были экспортированы из приложения этикетировочной машины.

visiondatadir = fullfile(toolboxdir('vision'),'visiondata');
 
buildingImage = imread(fullfile(visiondatadir,'building','building1.JPG'));
buildingLabels = imread(fullfile(visiondatadir,'buildingPixelLabels','Label_1.png'));

Задайте категории для каждого пиксельного значения в buildingLabels.

labelIDs = [1,2,3,4];
labelcats = ["sky" "grass" "building" "sidewalk"];

Создайте категориальную матрицу с помощью изображения и определений.

buildingLabelCats = categorical(buildingLabels,labelIDs,labelcats);

Отобразите категории, наложенные на изображении.

figure
imshow(labeloverlay(buildingImage,buildingLabelCats))

Считайте и отобразите пиксельные данные о метке

Наложите пиксельные данные о метке по изображению.

Установите местоположение изображения и пиксельных данных о метке.

dataDir = fullfile(toolboxdir('vision'),'visiondata');
imDir = fullfile(dataDir,'building');
pxDir = fullfile(dataDir,'buildingPixelLabels');

Создайте datastore изображений и пиксельный datastore метки

imds = imageDatastore(imDir);
classNames = ["sky" "grass" "building" "sidewalk"];
pixelLabelID = [1 2 3 4];
pxds = pixelLabelDatastore(pxDir,classNames,pixelLabelID);

Считайте изображение и пиксельные данные о метке. read(pxs) возвращает категориальную матрицу, C. Элемент C (i, j) в матрице является категориальной меткой, присвоенной пикселю в местоположении l (i, j).

I = read(imds);
C = read(pxds);

Отобразите категории метки в C.

categories(C)
ans = 4x1 cell array
    {'sky'     }
    {'grass'   }
    {'building'}
    {'sidewalk'}

Наложите и отобразите пиксельные данные о метке на изображение.

B = labeloverlay(I,C);
figure
imshow(B)

Смотрите также

Приложения

Объекты

Похожие темы