Я хочу создать свой собственный набор данных, такой как CIFAR-10, но не со значениями RGB, а вектором признаков CEDD изображения. Я создаю хранилище imageDatastore и читаю изображения и их метки со следующим кодом:
imageFolder = fullfile('G:\9th Semester\Project - 2\myDataset');
imds = imageDatastore(imageFolder,'LabelSource', 'foldernames', 'IncludeSubfolders',true);
[trainingSet , testingSet] = splitEachLabel(imds , 0.8 , 'randomize');
trainingSet = shuffle(trainingSet);
testingSet = shuffle(testingSet);
data = [];
labels = char.empty(0,10);
cedd = [];
for i=1:size(trainingSet.Files)
image = readimage(trainingSet,i);
cedd = CEDD(image);
zerosCount = 0 ;
for j=1:144
if cedd(j) == 0
zerosCount=zerosCount + 1;
end
end
if zerosCount ~= 144
data(i , :) = cedd;
labels(i ,: ) = trainingSet.Labels(i);
end
end
save('train.mat' , 'data' , 'labels');
Но выдает мне эту ошибку:
Невозможно выполнить назначение, поскольку размерлевая сторона - 1 на 10, а размер правой стороны - 1 на 3. Ошибка в метках набора данных (строка 20) (i,:) = trainingSet.Labels (i);
Любая помощь будет высоко оценена!