Error in displaying DICOM images in Matlab

2 visualizzazioni (ultimi 30 giorni)
Gee Cheng Mun
Gee Cheng Mun il 2 Gen 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] = ...

Risposte (2)

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

Accedi per commentare.


Image Analyst
Image Analyst il 2 Gen 2016
Try extracting just the first 3 planes and showing it:
rgbImage = I(:,:,1:3);
imshow(rgbImage);
  3 Commenti
Image Analyst
Image Analyst il 3 Gen 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 il 3 Gen 2016
You do not need that step, you can just
imshow(I(:,:,1,sliceNumber))

Accedi per commentare.

Categorie

Scopri di più su DICOM Format in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by