ループ内の文字列のコレクションを生成するスクリプトを使用しています。
'folder1/im1'
'folder1/im2'
...
'folder1/im3'
文字列を変数に割り当てます。関数を実行しようとするとimg = dicomread(file);
、次のエラーが発生します。
Error using dicomread>newDicomread (line 164)
The first input argument must be a filename or DICOM info struct.
Error in dicomread (line 80)
[X, map, alpha, overlays] = newDicomread(msgname, frames);
Error in time (line 14)
img = dicomread(file);
ただし、コマンドラインを使用してもエラーは発生しませんimg = dicomread('folder1/im1')
。
コードは次のとおりです。
for i=1:6 %six cases
nameDir = strcat('folder', int2str(i));
dirData = dir(nameDir);
dirIndex = [dirData.isdir];
fileList = {dirData(~dirIndex).name}; % list of files for each directory
n = size(fileList);
cd(nameDir);
for x = 1:n(2)
img = dicomread(strcat(pwd(), '/', fileList(x)));
end
cd('..');
end
エラーは何でしょうか?