I am trying to display CT Dicom slices in a montage and used the code below but I get only some parts of the image read and not all of it. The Images are attached below. I need the actual image to be read using the program. Can anyone help me fix this.
The original images are attached as a zip file "images.zip".
clear %no variables
close all %no figures
clc %empty command window
ff = fullfile(pwd, '2.16.840.114421.80674.9357820679.9389356679');files = dir(fullfile(ff, '*.dcm'));fname = {files.name};info = dicominfo(fullfile(ff, fname{1}));voxel_size = [info.PixelSpacing; info.SliceThickness];rd = dicomread(fullfile(ff,fname{1}));sz = size(rd);num_image = length(fname);ct = zeros(info.Rows, info.Columns, num_image, class(rd));for i=length(fname):-1:1 fname1 = fullfile(ff, fname{i}); ct(:,:,i) = uint16(dicomread(fname1));endmontage(reshape(uint16(ct), [size(ct,1), size(ct,2), 1, size(ct, 3)]), 'DisplayRange', []);set (gca, 'clim', [0,100]);im = ct(:, :, 200);maxl = double(max(im(:)));imt = imtool(im, [0, maxl]);
Original Image:
Read Image:
Best Answer