3-D image matrix made from 2-D MRI images
4 views (last 30 days)
Show older comments
Vojtech Raska
on 13 Mar 2020
Commented: Image Analyst
on 13 Mar 2020
Hi, i´m using this code to make 3-D matrix of 2-D MRI images, but if I load more than 3 images that every image besides firts three and the last one is just black and all values of that matrices are zeros. The images are uint8 format. I tried to trasfer them to double but it didn´t work. Is there some solution or the image matrices can be only three for each other?
clc; clear all; close all;
[Name, Path] = uigetfile('*.*', 'All Files (*.*)','MultiSelect','on');
if ~iscell(Name)
Name = {Name};
end
%% matrix
for i = 1:1:length(Name)
Nazev = Name(1,i);
Nazev = char(Nazev);
Img_info = [Path Nazev];
Img = imread(Img_info);
Img(:,:,i) = double(rgb2gray(Img));
end
2 Comments
Ameer Hamza
on 13 Mar 2020
If possible, can you attach a few sample images? It will help in figuring out the error.
Accepted Answer
Ameer Hamza
on 13 Mar 2020
Edited: Ameer Hamza
on 13 Mar 2020
You are replacing the value of Img inside the for loop. The matrix is rewritten at the next iteration. Try this
clc; clear all; close all;
[Name, Path] = uigetfile('*.*', 'All Files (*.*)','MultiSelect','on');
if ~iscell(Name)
Name = {Name};
end
%% matrix
for i = 1:1:length(Name)
Nazev = Name(1,i);
Nazev = char(Nazev);
Img_info = [Path Nazev];
Img = imread(Img_info);
Img_matrix(:,:,i) = rgb2gray(Img);
end
montage(Img_matrix)
13 Comments
Image Analyst
on 13 Mar 2020
Can you please "Accept this answer" to give Ameer reputation points for helping you? Thanks in advance.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!