Error in displaying DICOM images in Matlab

2 vues (au cours des 30 derniers jours)
Gee Cheng Mun
Gee Cheng Mun le 2 Jan 2016
I converted this image (.file) to a dicom image in AMIDE. However when I tried to display it in MATLAB, this error was shown. I am totally confused.
I=dicomread('data.dcm');
imshow(I,[]);
Error using imageDisplayValidateParams>validateCData (line 113)
Multi-plane image inputs must be RGB images of size MxNx3.
Error in imageDisplayValidateParams (line 27)
common_args.CData = validateCData(common_args.CData,image_type);
Error in imageDisplayParseInputs (line 78)
common_args = imageDisplayValidateParams(common_args);
Error in imshow (line 219)
[common_args,specific_args] = ...

Réponses (2)

Walter Roberson
Walter Roberson le 2 Jan 2016
After the dicomread(), have it show size(I) and tell us what it says.
  1 commentaire
Gee Cheng Mun
Gee Cheng Mun le 3 Jan 2016
I have an answer of 1x4 double [106, 106, 1, 5875], Min = 1 and Max = 5875.

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 2 Jan 2016
Try extracting just the first 3 planes and showing it:
rgbImage = I(:,:,1:3);
imshow(rgbImage);
  3 commentaires
Image Analyst
Image Analyst le 3 Jan 2016
It's not a 3D RGB image - it's a volumetric image. Get the image without the 1 dimension with squeeze():
array3D = squeeze(I);
Then pick a slice and display it
sliceNumber = 13; % Whatever;
imshow(array3D(:,:, sliceNumber));
Walter Roberson
Walter Roberson le 3 Jan 2016
You do not need that step, you can just
imshow(I(:,:,1,sliceNumber))

Connectez-vous pour commenter.

Catégories

En savoir plus sur DICOM Format dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by