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 Kommentare

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 am 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()

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu DICOM Format finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 10 Jan. 2020

Kommentiert:

am 10 Jan. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by