代码存储impixel一系列图像抛出错误数据到达的第一个增量循环的结束
5视图(30天)
显示旧的评论
你好,我想写一个脚本打开一系列的jpeg文件,让用户选择一个特征在图像中两个点,这些点的像素数据存储在一个数组,所有这些在for循环,以便下一个图像可以被打开,并将其数据存储在数组的下一行。我意识到我的代码绝对不是那样紧凑,但似乎工作完美的第一图像,然后把一系列的错误当试图继续循环,做同样的事情在接下来的图片:
错误使用imread > get_format_info(第545行)
无法确定文件格式。
错误imread / call_format_specific_reader(第466行)
fmt_s = get_format_info (fullname);
错误imread(第440行)
[X,地图]= call_format_specific_reader ();
错误法典(14)行
我= imread (strcat(‘球’,num2str (k), jpeg));
任何帮助将非常感激,谢谢!
这是我的代码:
selpath = uigetdir;
fds = fileDatastore (‘* . jpeg‘,“ReadFcn”,@importdata);
fullFileNames = fds.Files;
numFiles =长度(fullFileNames);
%选择目录存储照片,过滤器为jpeg文件
%发现这种格式的文件数量,并存储这个数量
%变量
ξ= 0 (numFiles, 2);
易= 0 (numFiles, 2);
%为数组分配内存的x和y坐标的值
%将被添加在每个阶段的下面的for循环,现在
%设置为0
为k = 1: numFiles
我= imread (strcat (“球”num2str (k),“jpeg”));
[x, y,像素]= impixel(我);
%的文件应该叫ball1 ball2等等,然后打开图像k,等待
%的用户选择球两边的形象,和存储
%的x和y值点击临时变量x和y
习(k, [1 - 2]) = x;
易(k, [1 - 2]) = y;
关闭;
xi,易
%改变各自的值数组的行
%的临时值当前图像,然后关闭和形象
%打印数组到目前为止
结束
接受的答案
图像分析
2023年4月6日
问题是代码不是很健壮。您应该看到常见问题解答:
使用代码,你得到的文件名而不是构建他们自己的操作系统。
baseFileName = sprintf (“球% d.jpeg”、k);
baseFileName fullFileName = fullfile (pwd);
如果~ isfile (fullFileName)
warningMessage = sprintf (“警告:文件未找到:\ n % s的fullFileName)
uiwait (warndlg (warningMessage))
继续;% k的跳到下一个迭代。
结束
%如果你到达这里,文件肯定存在。
由高级= imread (fullFileName);