I want to load the dicom files from a folder..

10 visualizaciones (últimos 30 días)
ash fairy
ash fairy el 31 de Mzo. de 2018
Comentada: Rena Berman el 5 de Abr. de 2018
clear % no variables
close all % no figures
clc % empty command window
fileFolder = fullfile(pwd, 'p5');
files = dir(fullfile(fileFolder, '*.dcm'));%specify data file diectory
fileNames = {files.name};
%examine file header meta datafrom dicom stack
info = dicominfo(fullfile(fileFolder, fileNames{1}));
%extract size info from meta data
voxel_size = [info.PixelSpacing; info.SliceThickness];
%read slice image% 3D matrix
hWaitBar= waitbar(0,'Reading DICOM files');
%create array
ct=zeros(sizeI(1), sizeI(2),numImages, classI);
for i=length(fileNames):-1:1
fname = fullfile(fileFolder, fileNames{i});
ct(:,:,i) = dicomread(fname);
waitbar((length(fileNames):-1+1)/length(fileNames))
end
delete(hWaitBar)
montage(reshape((ct), [size(ct,1), size(ct,2), 1, size(ct, 3)]), 'DisplayRange', []);
drawnow;
shg;
im = (ct(:, :, 148));
maxl = double(max(im(:)));
imt = imtool(im, [0, maxl]);
imtool close all;

Respuesta aceptada

Walter Roberson
Walter Roberson el 31 de Mzo. de 2018
Your code is assuming that your current directory has a subdirectory named 'p5' that has at least one .dcm file. You should not be assuming that. You should be checking isempty(fileNames)

Más respuestas (0)

Categorías

Más información sobre DICOM Format en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by