How to display DICOM image
4 次查看(过去 30 天)
显示 更早的评论
Hi everyone
Currently, I’m working in processing of DICOM image. The following program is used for noising the medical image
clc;
close all;
clear all;
X = dicomread('CT-MONO2-16-ankle.dcm');
metadata = dicominfo('CT-MONO2-16-ankle.dcm');
figure; imshow(X, []);title('before');
X = imnoise(X,'salt & pepper',0.0006);
dicomwrite(X, 'noisyImage.dcm', metadata);
Y = dicomread('noisyImage.dcm');
figure; imshow(Y, []); title('after');
Unfortunately, the output is blur noisy image. I want just noisy image (as shown in attached image), not blur noisy image. How can I do that?
Regards,
Majid
6 个评论
Walter Roberson
2019-1-25
When you use a display range in imshow(), it tells the graphics system to map all value below "low" to the first color in the color map, and to map all values above "high" to the last color in the color map, and to map all values inbetween proportionately -- so a value 1/3 of the way between low and high would get mapped to 1/3 of the way into the color map.
If you specify a display range of [] (the empty array) then the code uses min(X(:)) and max(X(:))
Now, it might be the case that for one particular sequence of images that the "interesting" information is within a known range of values, but a different run of the same patient on the same machine might have a different "interesting" range of values because of different machine settings. In any case, a different dataset from a different manufacturer's machine will likely have the "interesting" range of values be different.
Automatically finding the "interesting" range of values can be tricky.
回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!