Error in displaying DICOM images in Matlab

2 Ansichten (letzte 30 Tage)
Gee Cheng Mun
Gee Cheng Mun am 2 Jan. 2016
Kommentiert: Walter Roberson am 3 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] = ...

Antworten (2)

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

Melden Sie sich an, um zu kommentieren.


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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu DICOM Format finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by