Я пытаюсь создать набор «Обучение и тестирование» на основе моих наземных данных истинности (наблюдения), которые представлены в формате TIF (растр).
На самом деле, у меня есть гиперспектральное изображение (спутниковое изображение), которое имеет 200 измерений (каналов / полос) вместе с соответствующей меткой (17 класс), которые хранятся в другом изображении. Теперь моя цель - реализовать алгоритм классификации, а затем проверить точность с помощью набора данных тестирования.
Моя проблема в том, что я не знаю, как я могу описать своему алгоритму, какой пиксель принадлежит какому классу, а затем разделить их на набор для тарирования и тестирования.
Я предоставил лицемерную идею моей цели, которая заключается в следующем:
Но я не хочу этого делать, так как у меня 145 * 145 пикселей затемнены, поэтому нелегко определить местоположение этих пикселей и вручную назначить их соответствующий класс.
обратите внимание, что следующий пример предназначен для трехмерного изображения, и у меня есть изображение 200D, и у меня есть метки (правда), поэтому мне не нужно указывать их, как в следующем коде, но я хочу назначить их элементу пикселей.
% Assigning pixel(by their location)to different groups.
tpix=[1309,640 ,1;... % Group 1
1218,755 ,1;...
1351,1409,2;... % Group 2
673 ,394 ,2;...
285 ,1762,3;... % Group 3
177 ,1542,3;...
538 ,1754,4;... % Group 4
432 ,1811,4;...
1417,2010,5;... % Group 5
163 ,1733,5;...
652 ,677 ,6;... % Group 6
864 ,1032,6];
row=tpix(:,1); % y-value
col=tpix(:,2); % x-value
group=tpix(:,3); % group number
ngroup=max(group);
% create trainingset
train=[];
for i=1:length(group)
train=[train; r(row(i),col(i)), g(row(i),col(i)), b(row(i),col(i))];
end %for