【发布时间】:2011-07-28 18:16:15
【问题描述】:
Matlab 给了我错误,“下标分配尺寸不匹配”,但我认为不应该有问题。代码在下面,但基本上我有一个临时矩阵,它模仿另一个矩阵 testData(实际上是它的一个子集)的维度。我可以将 imread 的输出分配给临时矩阵,但不能分配给具有相同维度的 testData 子集。我什至可以使用 size 函数来证明它们的尺寸相同,但一个有效,一个无效。所以我设置 temp = imread 然后 testData = temp 它工作。但是我为什么要这样做呢?
文件名 = dir('Testing\*.pgm'); numFiles = 大小(文件名,1); testData = zeros(32257, numFiles); 温度 = 零(32256, 1); 对于 i = 1 : numFiles, 文件名 = 文件名(i).name; % 从文件名中提取一些信息并将其存储在第一行 testData(1, i) = str2double(fileName(6:7)); % 这里 temp 的维度与 testData(2:end, i) 相同 % 但 testData(2:end, i) = imread(fileName) 不起作用 % 但是,如果我使用 temp 作为“中间人”变量,它会起作用 temp(:) = imread(文件名); testData(2:end, i) = temp(:); 结尾【问题讨论】:
标签: matlab