当初写这个小程序是为了提取图片点击处的坐标,每张照片自动循环进行标点,不用一张一张手动输入。我想提取手势图片的21个点的坐标。
x=dir(‘D:\MATLAB\work\rename1.m*.jpg’); %获取此目录下的图片
len=length(x);%计算图片的数量
fp=fopen(‘D:\MATLAB\work\Untitled3.m’,’w’);%以写的方式打开存放点坐标的文件
I=cell(1,len);%用cell存放照片
q=input(‘q=’);%此处是我个人意愿加上的一个东西,目的是接着上回的照片序号继续提取坐标,例如
%当我先标完了20张照片,我不想标了。下回开始标的时候,此时我输入q=20,那么接下来标的时候
%坐标前面的序号会紧跟着前面所标的。当第一次标的时候q=0就行了。
for i=1:len%开始循环
t=i+q;
ImageName=strcat(num2str(t),’.jpg’);%转换成字符串
I{t}=imread(ImageName);%读取照片
a=size(I{t});
m=a(1);
n=a(2);
if m<256|n<256%这个是为了防止照片过小,然后把照片放大
I{t}=imresize(I{t},[3*m,3*n]);
a=size(I{t});
m=a(1);
n=a(2);
end
fprintf(fp,’%5d.jpg(256*256): ‘,t);%先输出照片的序号