Problem with sprintf and read DICOM images
    4 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Veronika
 am 4 Apr. 2017
  
    
    
    
    
    Kommentiert: Walter Roberson
      
      
 am 17 Nov. 2017
            Dear all,
I have CT slices and I would like to load (imread) them to the Workspace. But I always read only one (first) slice (image). This is my code:
for p=1:38
         filename = sprintf('C:/Users/ced0005/DP/DP_framework/DICOM/slicesCT/000048.dcm',p);
          X(:,:,1,p) = dicomread(filename);
I don´t know, where mistake is.
Can you advise me? Thank you for your answers.
0 Kommentare
Akzeptierte Antwort
  Jan
      
      
 am 4 Apr. 2017
        
      Bearbeitet: Jan
      
      
 am 4 Apr. 2017
  
      There is no format specifier in the format string of sprintf:
sprintf('C:/Users/ced0005/DP/DP_framework/DICOM/slicesCT/000048.dcm',p);
This is the same string for all iterations. Perhaps you want:
filename = sprintf('C:/Users/ced0005/DP/DP_framework/DICOM/slicesCT/%06d.dcm', p);
12 Kommentare
  mohd akmal masud
 am 17 Nov. 2017
				Dear Walter Roberson,
The code is successfully. I have try for 135 slices CT images and also 135 slices PET images.
But how come to me to show it in figure (i mean use command imshow)
  Walter Roberson
      
      
 am 17 Nov. 2017
				It cannot be shown in a single figure using imshow. imshow() is not suitable for volume visualization.
If you have R2017a or newer, try
volumeViewer( permute(X, [1 2 4 3]) )
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu DICOM Format finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



