Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

imshow does not show the same image

I used to use OpenCV in C language, but now decided give MATLAB a chance. I am pretty new to MATLAB and from the first minute I had a problem:

I read the image with:

X=dicomread('medicalimage.dcm') 

but when I displayed the image with imshow(X), the image displayed was not the same with I uploaded even though I did not make any changes on the image. What is the reason for that? There is a pretty obvious contrast difference between the two images and also, it seems like I lost some of the details in the original image.

I am using MATLAB R2010b on my Ubuntu 12.04 system.

                      Filename: 'x.dcm'
                   FileModDate: '06-Nov-2006 09:49:26'
                      FileSize: 526966
                        Format: 'DICOM'
                 FormatVersion: 3
                         Width: 512
                        Height: 512
                      BitDepth: 12
                     ColorType: 'grayscale'
FileMetaInformationGroupLength: 202
    FileMetaInformationVersion: [2x1 uint8]
       MediaStorageSOPClassUID: '1.2.840.10008.5.1.4.1.1.2'
    MediaStorageSOPInstanceUID: '1.3.12.2.1107.5.1.4.54693.30000006100507010800000005302'
             TransferSyntaxUID: '1.2.840.10008.1.2.1'
        ImplementationClassUID: '1.3.6.1.4.1.19291.2.1'
     ImplementationVersionName: 'OSIRIX001'
  SourceApplicationEntityTitle: 'OSIRIX'
          SpecificCharacterSet: 'ISO_IR 100'
                     ImageType: 'ORIGINAL\PRIMARY\AXIAL\CT_SOM5 SPI'
                   SOPClassUID: '1.2.840.10008.5.1.4.1.1.2'
                SOPInstanceUID: '1.3.12.2.1107.5.1.4.54693.30000006100507010800000005302'
                     StudyDate: '20061005'
                    SeriesDate: '20061005'
               AcquisitionDate: '20061005'
                   ContentDate: '20061005'
                     StudyTime: '101556.921000'
                    SeriesTime: '102051.046000'
               AcquisitionTime: '101818.126639'
                   ContentTime: '101818.126639'
               AccessionNumber: '0'
                      Modality: 'CT'
                  Manufacturer: 'SIEMENS'
               InstitutionName: 'hY9'
            InstitutionAddress: ''
        ReferringPhysicianName: [1x1 struct]
                   StationName: 'CT54693'
              StudyDescription: 'Extrémités inférieures^Pied_cheville_UHR (Adulte)'
         ProcedureCodeSequence: [1x1 struct]
             SeriesDescription: 'Pied/cheville  1.0mm std'
       PerformingPhysicianName: [1x1 struct]
                  OperatorName: [1x1 struct]
         ManufacturerModelName: 'Sensation 64'
       ReferencedStudySequence: [1x1 struct]
       ReferencedImageSequence: [1x1 struct]
           SourceImageSequence: [1x1 struct]
                   PatientName: [1x1 struct]
                     PatientID: 'vAD7q3'
              PatientBirthDate: ''
                    PatientSex: ''
                    PatientAge: '000Y'
              BodyPartExamined: 'EXTREMITY'
                SliceThickness: 1
                           KVP: 120
        DataCollectionDiameter: 500
            DeviceSerialNumber: '54693'
               SoftwareVersion: 'syngo CT 2006A'
                  ProtocolName: 'Pied_cheville_UHR'
        ReconstructionDiameter: 206
      DistanceSourceToDetector: 1040
       DistanceSourceToPatient: 570
            GantryDetectorTilt: 0
                   TableHeight: 95
             RotationDirection: 'CW'
                  ExposureTime: 1000
               XrayTubeCurrent: 110
                      Exposure: 122
                    FilterType: '0'
                GeneratorPower: 17
                     FocalSpot: 0.7000
         DateOfLastCalibration: '20061005'
         TimeOfLastCalibration: '073350.000000'
             ConvolutionKernel: 'U30u'
               PatientPosition: 'FFS'
              StudyInstanceUID: '2.16.840.1.113669.632.20.1211.10000315526'
             SeriesInstanceUID: '1.3.12.2.1107.5.1.4.54693.30000006100507010800000005268'
                       StudyID: 'A10025547593'
                  SeriesNumber: 5
             AcquisitionNumber: 3
                InstanceNumber: 34
          ImagePositionPatient: [3x1 double]
       ImageOrientationPatient: [6x1 double]
           FrameOfReferenceUID: '1.3.12.2.1107.5.1.4.54693.30000006100506302075000001028'
                 SliceLocation: 58
                 ImageComments: 'JPEG 2000 lossless - Version 4.0.2 (c) Image Devices GmbH'
               SamplesPerPixel: 1
     PhotometricInterpretation: 'MONOCHROME2'
                          Rows: 512
                       Columns: 512
                  PixelSpacing: [2x1 double]
                 BitsAllocated: 16
                    BitsStored: 12
                       HighBit: 11
           PixelRepresentation: 1
       SmallestImagePixelValue: 0
        LargestImagePixelValue: 2583
                  WindowCenter: [2x1 double]
                   WindowWidth: [2x1 double]
              RescaleIntercept: -1024
                  RescaleSlope: 1
  WindowCenterWidthExplanation: 'WINDOW1\WINDOW2'
             RequestingService: 'Service d'orthopédie pédiatri'
 RequestedProcedureDescription: 'CT pied-cheville'
RequestedProcedureCodeSequence: [1x1 struct]
     RequestAttributesSequence: [1x1 struct]

On the left there is the output of imshow and on the right, there is the original image: http://img23.imageshack.us/img23/3166/differencem.png?http://imageshack.us/

Result of imshow(X,[0 255]) : http://img248.imageshack.us/img248/4140/difference2.png?http://imageshack.us/

Link to my DCM image: http://www.speedyshare.com/7enTP/x.dcm.zip

like image 596
Xentius Avatar asked Apr 19 '26 17:04

Xentius


1 Answers

If your DICOM data contains a colormap, then you should import it too using a second output to dicomread and apply it to the image using the second argument of imshow. Example:

[X, map] = dicomread('US-PAL-8-10x-echo.dcm');
imshow(X(:,:,1,1),map)

enter image description here

like image 132
abcd Avatar answered Apr 23 '26 03:04

abcd



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!