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!


