From: David Paribello on
I have attempted to use header information that matlab generates and have encountered problems when trying to view the dicom images in several different viewers. What could be causing this? Does matlab have it's own way of generating header/dicom information? Does it strictly conform to dicom standards? I have also been having problems writing information to the header. i.e. I give it a RescaleIntercept value, but the value does not appear in the header information.

dicomwrite(Image, 'filename.dcm', 'RescaleSlope', slope, 'RescaleIntercept', intercept);


Upon loading header information from a different dicom image (one not created in matlab) I can view my dicom images without a problem. If I add in the same RescaleIntercept value then it will appear in the header information. Is there a good/easy way to eliminate/write over top of the old image data (i.e. date, time, patient name, modality, etc.) that is now attached to my image file(s)?

info = dicominfo('sample.dat');
dicomwrite(Image, 'filename2.dcm', info, 'RescaleIntercept', intercept);

One more item I would like to confirm: matlab does not automatically re-scale the image when including rescale factor(s) in the header info. I have to physically apply the calculated rescale factor(s) to my data prior to writing the image...

Thanks
From: David Paribello on
"David Paribello" <dparibel(a)imaging.robarts.ca> wrote in message <gibfl2$b6h$1(a)fred.mathworks.com>...
> I have attempted to use header information that matlab generates and have encountered problems when trying to view the dicom images in several different viewers. What could be causing this? Does matlab have it's own way of generating header/dicom information? Does it strictly conform to dicom standards? I have also been having problems writing information to the header. i.e. I give it a RescaleIntercept value, but the value does not appear in the header information.
>

Looking through the field names more carefully I noticed that the ImplementationVersionName is different for my non-working Matlab dicom (MATLAB IPT 4.0) vs. the working dicom (AW4_2_07_02_EXT). This leads me to believe that matlab has its own way of writing dicom images that isn't necessarily compatible with the NEMA standards. Any ideas?