Dicom Header Editing & Image Intensity Scaling for output
15 views (last 30 days)
Show older comments
I'm reading in a dicom image that is missing a few fields in the header information and I would like to add those fields and output the image data untouched as a dicom with the new header information. I have looked at the dicom-dict.txt file to ensure that I have the right fieldnames, but when I write out the dicom, it doesn't keep the original header information. Also, when I go to display the image, the LUT appears to be inverted or cutoff (rather than having -2048 - + 2048 scaling, it has 0 - 4096 scaling).
Greatly appreciate your help in Advance ... Cheers
3 Comments
Answers (3)
AFH
on 27 Jan 2012
1 Comment
Sean de Wolski
on 27 Jan 2012
Why are you calling it with 'gray'? I don't see this in the documentation.
Sean de Wolski
on 27 Jan 2012
X = dicomread('CT-MONO2-16-ankle.dcm');
metadata = dicominfo('CT-MONO2-16-ankle.dcm');
metadata.PatientID = '12343';
dicomwrite(X, 'ct_file.dcm', metadata);
info = dicominfo('ct_file.dcm');
info.PatientID
Unable to replicate.
AFH
on 30 Jan 2012
1 Comment
Louise Morel
on 11 Apr 2016
I think the output of dicomwrite gives you an image with uint16 values (unsigned 16 bit integers) so it can't display negative values as you seem to have -2048 - + 2048 scaling
See Also
Categories
Find more on DICOM Format in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!