changeFilePaths

Измените пути к файлам в мультисигнальных наземных данных истинности

Описание

пример

unresolvedPaths = changeFilePaths(gTruth,alternativePaths) изменяет пути к файлам, хранящиеся в groundTruthMultisignal объект, gTruth, на основе пар текущих путей и альтернативных путей, alternativePaths. Если gTruth является вектором groundTruthMultisignal объекты, функция изменяет пути к файлам между всеми объектами. Функция возвращает неразрешенные пути в unresolvedPaths. unresolved path - это любой текущий путь в alternativePaths не найдено в gTruth или любой альтернативный путь в alternativePaths не найден в указанном расположении пути. В обоих случаях unresolvedPaths возвращает только текущие пути.

Используйте эту функцию, чтобы обновить пути к файлам достоверных данных, которые изменяют местоположение папки. Можно изменить пути к файлам для источников достоверных данных и данных о пиксельных метках.

Примеры

свернуть все

Измените пути к файлам, источникам данных и данным о пиксельных метках в groundTruthMultisignal объект.

Загрузка groundTruthMultisignal объект, содержащий достоверные данные, в рабочую область. Источник данных и данные о пиксельных метках объекта содержат пути к файлам, соответствующие последовательности изображений, показывающих создание. MATLAB ® отображает предупреждение о невозможности найти путь к источнику данных.

load('gTruthMultiOldPaths.mat')
Warning: The data source for the following source names could not be loaded. Update the data sources using <a href="matlab:doc('changeFilePaths')">changeFilePaths</a> method.
  'C:\Sources\building'

Отображение текущего пути к источнику данных.

gTruth.DataSource
ans = 
  ImageSequenceSource with properties:

            Name: "Image Sequence"
     Description: "An image sequence reader"
      SourceName: "C:\Sources\building"
    SourceParams: [1×1 struct]
      SignalName: "building"
      SignalType: Image
       Timestamp: {[5×1 duration]}
      NumSignals: 1

Укажите текущий путь к источнику данных и альтернативному пути и сохраните эти пути в массиве ячеек. Используйте changeFilePaths функция для обновления пути источника данных на основе путей в массиве ячеек. Поскольку функция не находит данные о пиксельных метках в указанном новом пути, она возвращает текущие неразрешенные пути.

currentPathDataSource = "C:\Sources\building";
newPathDataSource = fullfile(matlabroot,"toolbox\vision\visiondata\building");
alternativePaths = {[currentPathDataSource newPathDataSource]};
unresolvedPaths = changeFilePaths(gTruth,alternativePaths)
unresolvedPaths = 5×1 string
    "C:\Pixels\Label_1.png"
    "C:\Pixels\Label_2.png"
    "C:\Pixels\Label_3.png"
    "C:\Pixels\Label_4.png"
    "C:\Pixels\Label_5.png"

Проверьте, что пути в groundTruthMultisignal объект соответствует неразрешенным путям, возвращаемым changeFilePaths функция. Неразрешенные пути хранятся в ROILabelData свойство groundTruthMultisignal объект, в PixelLabelData столбец таблицы для building сигнал последовательности изображений.

gTruth.ROILabelData.building.PixelLabelData
ans = 5×1 cell
    {'C:\Pixels\Label_1.png'}
    {'C:\Pixels\Label_2.png'}
    {'C:\Pixels\Label_3.png'}
    {'C:\Pixels\Label_4.png'}
    {'C:\Pixels\Label_5.png'}

Укажите текущий путь и альтернативный путь для файлов пиксельных меток и измените пути к файлам. Функция обновляет пути для всех пиксельных меток. Поскольку функция разрешает все пути, она возвращает пустой массив неразрешенных путей.

currentPathPixels = "C:\Pixels";
newPathPixels = fullfile(matlabroot,"toolbox\vision\visiondata\buildingPixellabels");
alternativePaths = {[currentPathPixels newPathPixels]};
unresolvedPaths = changeFilePaths(gTruth,alternativePaths)
unresolvedPaths = 

  0×0 empty string array

Чтобы просмотреть новый путь к источнику данных, используйте gTruth.DataSource команда. Чтобы просмотреть новые пути данных о пиксельных метках, используйте gTruth.ROILabelData.building.PixelLabelData команда.

Входные параметры

свернуть все

Мультисигнальные наземные данные истинности, заданные как groundTruthMultisignal объект или вектор groundTruthMultisignal объекты.

Альтернативные пути к файлам, заданные как строковый вектор 1 на 2 или массив ячеек из строковых векторов 1 на 2 вида [p current p new].

  • p ток является текущим путем к файлу в gTruth. Этот путь к файлу может быть из источника данных или данных о пиксельных метках gTruth. Задайте p ток, используя обратные косые черты в качестве диафрагм пути.

  • p new - это новый путь, на который вы хотите изменить p тока. Задайте новое p, используя в качестве диафрагм пути косые черты или обратные косые черты.

Можно задать альтернативные пути к этим файлам.

  • Источники данных о сигнале - The DataSource свойство gTruth содержит одну MultiSignalSource объект на сигнал. changeFilePaths функция обновляет сигнальные пути, хранимые в этих объектах.

  • Данные о пиксельных метках - The ROILabelData свойство gTruth содержит ROILabelData объект, который содержит таблицу данных информации только для чтения для каждого сигнала. Для сигналов с данными о пиксельных метках, который хранится в PixelLabelData столбец таблицы для этого сигнала, функция обновляет пути к данным о пиксельных метках.

Если gTruth является вектором groundTruthMultisignal объекты, функция изменяет пути к файлам между всеми объектами.

Пример: ["C:\Pixels\PixelLabelData_1" "C:\Pixels\PixelLabelData_2] изменяет путь к папке данных о пиксельных метках. Функция обновляет путь во всех файлах пиксельных меток, хранящихся в этой папке.

Пример: {["B:\Sources\video1.mp4" "C:\Sources\video1.mp4"]; ["B:\Sources\video2.mp4" "C:\Sources\video2.mp4"]} изменяет букву диска в путях к источникам данных.

Выходные аргументы

свернуть все

Неразрешенные пути к файлам, возвращенные как строковые массивы. Если changeFilePaths функция не может найти текущий путь или новый путь в строковых векторах, заданных alternativePaths вход, затем возвращает неразрешенные пути тока в unresolvedPaths.

Если функция находит и разрешает все пути к файлам, то она возвращается unresolvedPaths как пустые строковые массивы.

Введенный в R2020a
Для просмотра документации необходимо авторизоваться на сайте