Dicom Header Editing & Image Intensity Scaling for output
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
Sean de Wolski
on 27 Jan 2012
Can you copy the code you're using?
Sean de Wolski
on 27 Jan 2012
Have you seen the DICOMWRITE examples?
AFH
on 27 Jan 2012
Answers (3)
AFH
on 27 Jan 2012
0 votes
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
0 votes
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
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!