dicom, subplot, code rectify

I have 381 dicom images and trying to subplot each image as original and after masking but my code is plotting the last read image only. can somebody help with the code to plot all image.
Folder = '';
file = fullfile(Folder, '*.dcm');
image = dir(file);
for k = 1:length(image)
FileName = image(k).name;
fullFileName = fullfile(Folder, FileName);
I= dicomread(fullFileName);
mask = a > I & I> b; %a=2000, b=1500
R = I; R(mask) = 0;
G = I; G(mask) = intmax(class(I));
B = I; B(mask) = intmax(class(I));
RGB = cat(3, R, G, B); %final masked image
subplot(1,2,1),imshow(RGB) % masked image
subplot(1,2,2),imshow(I,[ ]) %original image
end

3 commentaires

Perhaps montage()
Unless your images are quite small you would have a lot of difficulty displaying 381*2 at the same time.
You could put a
figure()
call before the subplot, but that would create 381 figures which is not workable.
Deepa S
Deepa S le 10 Jan 2020
no, i dont want to show all image in montage. i want each image like attached picture but my code is reading o nly the last image not all.
Put in a call to
figure()
right before the first call to subplot()

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur DICOM Format dans Centre d'aide et File Exchange

Question posée :

le 10 Jan 2020

Commenté :

le 10 Jan 2020

Community Treasure Hunt

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

Start Hunting!

Translated by