之前下载了图像分类识别猫狗的程序,想照着这个程序去建一个txt文件存放图片名字然后去识别txt文件里描述的图片,但是用imread指令却提示无法打开要读取的文件,请问一下各位大佬这个报错该怎么解决啊
- 完整代码:
ReadList1 = textread('list1.txt','%s','delimiter','\n');%载入正样本列表
sz1=size(ReadList1);
label1=ones(sz1(1),1); %正样本标签设为1
ReadList2 = textread('list2.txt','%s','delimiter','\n');%载入负样本列表
sz2=size(ReadList2);
label2=zeros(sz2(1),1);%负样本标签设为0
label=[label1',label2']';%标签汇总
total_num=length(label);
data=zeros(total_num,1764);
%读取正样本并计算hog特征
for i=1:sz1(1)
name= char(ReadList1(i,1));
image=imread(strcat('D:\US\01\',name));
im=imresize(image,[64,64]);
img=rgb2gray(im);
hog =hogcalculator(img);
data(i,:)=hog;
end
%读取负样本并计算hog特征
for j=1:sz2(1)
name= char(ReadList2(j,1));
image=imread(strcat('D:\US\02\',name));
im=imresize(image,[64,64]);
img=rgb2gray(im);
hog =hogcalculator(img);
data(sz1(1)+j,:)=hog;
end
[train, test] = crossvalind('holdOut',label);
cp = classperf(label);
svmStruct = svmtrain(data(train,:),label(train));
save svmStruct svmStruct
classes = svmclassify(svmStruct,data(test,:));
classperf(cp,classes,test);
fprintf('CorrectRate = %f\n',cp.CorrectRate);
- 报错部分:
%读取正样本并计算hog特征
for i=1:sz1(1)
name= char(ReadList1(i,1));
image=imread(strcat('D:\US\01\',name));
im=imresize(image,[64,64]);
img=rgb2gray(im);
hog =hogcalculator(img);
data(i,:)=hog;
end
3.报错提示:
错误使用 imread (line 347)
无法打开要读取的文件 "D:\US\01\"。您可能没有读取权限。
出错 test4 (line 21)
image=imread(strcat('D:\US\01\',name));