what does the minus value of pixel mean in MRI
6 次查看(过去 30 天)
显示 更早的评论
I got one MRI image. when I read it into MATLAB with the function 'dicomread', I found that the pixel format was int16, some pixels got a minus value. how can I convert the pixel into 0-255?
1 个评论
Walter Roberson
2015-11-6
What is the Photometric Interpretation set to?
Also is the negative after the rescale? CT images for example often want to use Hounsfield units, which can be negative; see https://www.medicalconnections.co.uk/kb/Hounsfield_Units
采纳的回答
Image Analyst
2015-11-6
Try using mat2gray():
image8bit = uint8(255*mat2gray(double(image16bit)));
This will scale it from min (the negative number) to max -> [0,255]. If you want to get rid of negative numbers in advance, do this:
image16bit(image16bit < 0) = 0;
image8bit = uint8(255*mat2gray(double(image16bit)));
2 个评论
Image Analyst
2015-11-6
I have no idea why the data is signed instead of uint16, and why there are negative values. Perhaps ask the radiologist who created it.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!