这是训练后的分类器。
-------
%% 训练阶段
ReadList1 = textread('P.txt','%s','delimiter','\n');%载入云样本列表
sz1=size(ReadList1);
label1=ones(sz1(1),1); %云样本标签
ReadList2 = textread('N.txt','%s','delimiter','\n');%载入下垫面样本列表
sz2=size(ReadList2);
label2=zeros(sz2(1),1);%下垫面样本标签
label=[label1',label2']';%标签汇总
total_num=length(label);
data=zeros(total_num,10);
%读取云样本并计算纹理特征
for i=1:sz1(1)
name= char(ReadList1(i,1));
image=imread(strcat('D:\MATLAB\matlab\toolbox\libsvm-3.22\matlab\样本\20yun\',name));
img=imresize(image,[64,64]);
tex = Texture(img);
data(i,:) = tex;
end
%读取下垫面样本并计算纹理特征
for j=1:sz2(1)
name= char(ReadList2(j,1));
image=imread(strcat('D:\MATLAB\matlab\toolbox\libsvm-3.22\matlab\样本\20xia\',name));
img=imresize(image,[64,64]);
tex = Texture(img);
data(sz1(1)+j,:)= tex;
end
[train, test] = crossvalind('holdOut',label,0.7);
train_data = data(train,:); %获取train标签对应的训练数据
train_data_labels = label(train,:);
train_data_labels = double(train_data_labels );
test_data = data(test,:); %获取train标签对应的检测数据
test_data_labels = label(test,:);
test_data_labels =double(test_data_labels);
%% 建模预测
% 利用训练集合建立分类模型
model = svmtrain(train_data_labels,train_data, '-s 0 -t 2 -c 1 -g 0.07');
save model
[predict_label, accuracy, dec_values] =svmpredict(test_data_labels, test_data, model);
------------
重新输入一幅图像。
代码应该怎样实现??
2017-3-5 18:55 上传
新输入的图
2017-3-5 18:56 上传
想要得到结果的图