我正在处理灰度级为0到255的灰度图像。我想处理Dicom图像,但Dicom图像的最大灰度级大于255。我只想知道如何改变dicom图像最大灰度255。
提前谢谢。
您可以规范化图像,使其具有[0,1]
的范围。完成此操作后,可以将图像缩放255,使其达到[0,255]
的范围。假设你的图像存储在im
中,你可以这样做:
im = double(im);
im = (im - min(im(:))) / (max(im(:)) - min(im(:))); %// Normalize to 0-1
im = uint8(255*im); %// Scale to 255
min(im(:))
将找到整个图像的最小强度,而max(im(:))
将找到整个图片的最大强度。注意,一旦我缩放图像,我就投射到uint8
,因为这将是与该强度范围相关联的正确数据类型。
然而,MATLAB的功能已经在[0,1]
和im2double
之间进行了规范化。这获取任何精度的图像,并将图像归一化为[0,1]
。然后,您可以获得此输出,乘以255并转换为uint8
:
im = uint8(255*im2double(im));