Matlab: функция movefile неправильно сортирует изображения - PullRequest
0 голосов
/ 04 августа 2020

Я пытаюсь использовать функцию movefile в Matlab 2019b, но получаю следующую ошибку:

Error using movefile
Unknown error occurred.

Error in image_sort (line 19)
  movefile(source,destination);

Мой код выглядит следующим образом.

imagefiles = dir('HAM10000_images_combined\');      
nfiles = length(imagefiles);  
% Open directory with images and count the number of files
for k = 1 : nfiles
  %For every file
  currentfilename = imagefiles(k).name;
  %Get filename
  
  xlrangeLeft = sprintf('C%s', num2str(k+1));
  xlrangeRight = sprintf(':C%s', num2str(k+1));
  xlRange = strcat(xlrangeLeft, xlrangeRight); 
  %Get cell range that has the class data for that specific image
  [~, class] = xlsread('HAM10000_metadata_sorted.xlsx','HAM10000_metadata_sorted', xlRange);
  class = char(class); 
  %Retrieve class data. 
  source = strcat('HAM10000_images_combined\', currentfilename);
  destination = strcat('HAM10000_images_sorted\', class, '\');
  movefile(source,destination);
  % Move file to its corresponding class
end

HAM10000metadata_sorted.xlsx - это файл Excel, содержащий данные класса в столбце для каждого изображения. Примерно так:

"nv"
"nv"
"mel"
"nv"
etc.

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

Предполагается, что код будет считываться с листа Excel, чтобы получить сведения о классе об изображении. Затем предполагается переместить изображение из объединенной папки в отсортированную папку и правильно поместить в нужную папку классов. Но в конечном итоге это приводит к удалению объединенной папки и созданию новой папки Ham10000_images_sorted, даже если она уже существует. Внутри этой вновь созданной папки все изображения попадают в папку «nv», а у всех других классов нет папки.

Есть какие-нибудь сведения о том, почему код не работает для сортировки изображений?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...