MATLAB提取图片点击处的坐标代码(仅供参考)
来源:互联网 发布:化验单制作软件 编辑:程序博客网 时间:2024/06/13 11:36
当初写这个小程序是为了提取图片点击处的坐标,每张照片自动循环进行标点,不用一张一张手动输入。我想提取手势图片的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);%先输出照片的序号
imshow(I{t});
for j=1:21%然后循环点击21个点,然后输出点击处的坐标
[x,y]=ginput(1);
hold on;
plot(x,y,’or’);
if x<0|x>n|y<0|y>m
fprintf(fp,’ -1, -1 ‘,x,y);%当所要点击的地方看不到,输出(-1,-1)
else
y1=(256*y)/m;%因为先在原图片点击的,如果需要控制照片大小,那么按比例变换坐标,这里
%我是需要在原照片上点击标尺准确度,然后换成照片为256*256格式的坐标,如果不需要,去掉
x1=(256*x)/n;
y=round(y1);
x=round(x1);
fprintf(fp,’%3.0d,%3.0d ‘,x,y);%输出最终坐标
end
hold off;
end
fprintf(fp,’\n’); %当取完一张照片,换行
end
fclose(fp);
%注:如果从网上找的一些照片,通常名字不一样,用这个小程序则需要将照片改成数字序列
%我也写了一个改名小程序,当然用软件改也行。建议这几个个小程序不要一起用。
%改名程序
x=dir(‘D:\MATLAB\work\HAND1.m*.jpg’); %原图放在HAND1.m文件夹中
len=length(x);
for a=1:len
x1=x(a).name;
x3=num2str(a);
x4=strcat(x3,’.jpg’);
copyfile([‘D:\MATLAB\work\HAND1.m\’ x1],[‘D:\MATLAB\work\rename1.m\’ x4]);%将修改过名字的图图片放在rename1.m中
end
fprintf(‘end’);
%检查并删除相同图片小程序,适用少量图片,图片太多时间太长
x=dir(‘D:\MATLAB\work\HAND1.m*.jpg’);
len=length(x);
for i=1:len
x=dir(‘D:\MATLAB\work\HAND1.m*.jpg’);
len=length(x);
im1=imread(x(i).name);
fprintf(‘%d ‘,i);
t=i+1;
for j=t:len
im2=imread(x(j).name);
if isequal(im1,im2)
delete(x(j).name);
end
end
end
小弟初涉代码界,望各位大哥批评指教。
- MATLAB提取图片点击处的坐标代码(仅供参考)
- Excel数据提取C++代码(仅供参考)
- matlab中GUI界面点击图片获取坐标问题的解决方法
- javaScript获得鼠标点击图片处的坐标
- Javascript获得鼠标点击图片的坐标
- MATLAB特征提取代码
- 点击图片 , 获取图片上对应的坐标
- 圆心坐标的提取
- 圆心坐标的提取
- java提取html正文的图片代码
- 获取鼠标在图片中点击的坐标
- c#+argis92 在点击坐标处插入一图片
- MFCC特征提取的MatLab的代码实现
- 小波矩特征提取matlab代码
- matlab纹理特征提取代码
- matlab纹理特征提取代码
- HOG特征提取matlab代码
- js+html空间数据编码问题--以姓名为例(代码设涉及文件读取,文本数字提取,特别是文本x,y坐标的提取)
- leetcode 47. Permutations II
- deepin 中文为啥网页那么大
- Java动态代理深入解析
- Kali Linux 2016 Metasploit连接postgresql数据库
- jenkins插件之docker plugin
- MATLAB提取图片点击处的坐标代码(仅供参考)
- php 数组(array)排序
- iOS开发 从下往上弹出提醒视图或日期选择视图等等背景为半透明
- 切记做口的巨人,行动的矮子
- ViewRootImpl解析
- 装饰器模式
- 【DP入门】最长公共子序列
- The Triangle
- 【读报告】《工控安全:物联网与安全的邂逅》——申万宏源证券研究