MATLAB:将图像文件名保存到矢量

时间:2015-01-23 23:02:45

标签: matlab

我正在进行一些顺序图像处理,并且我试图将每个图像中的数据提取到csv文件中以便在Excel中使用。

我试图只使用每个图像变量的矢量和文件名来实现这一点。

但是,我在处理循环中使用文件名制作矢量时遇到问题。这是我的代码。

ImageFolder = C:\Users\X\Documents\MATLAB\Research\Temp
filePattern = fullfile(ImageFolder, "*.tif');
tifFiles = dir(filePattern);

for k = 1:length(tifFiles) % Open sequence loop
 baseFileName = tifFiles(k).name;
 fullFileName = fullfile(ImageFolder, baseFileName);
 fprintf(1, 'Now reading %s\n', baseFileName);
 close all % Close images from previous cycle

% skip some lines

Count(k) = size(Areas,1)  <- Works
Porosity(k) = (sum(Areas) / (size(Istretch,1)*size(Istretch,2)))*100 
Size(k) = sum(Areas)/Number 
ImageName(k) = baseFileName  <- This is wrong

在您完成序列时,只打印出每个文件名的第1个,第2个,第3个等字母。我假设这里有一些简单的解决方案,但我没想到它。任何人都可以为我清楚这一点吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

在Matlab中,文件名或任何其他“字符串”是字符的向量而不是标量,因此您无法将其分配给向量的单个元素。请改为使用cellImageName{k} = baseFileName