我想请教一下这个函数在MATLAB dicomread
如何在matlab中显示dicom图像?
例如:
a = dicomread ('m.dcm');
imshow(a)
的图像在屏幕显示,但它是非常黑暗的.....我不知道事情是这样的黑暗并不正常。 我检查了不同的dicom图像,但问题依然存在。 我希望你能提前帮助我和 。
我想请教一下这个函数在MATLAB dicomread
如何在matlab中显示dicom图像?
例如:
a = dicomread ('m.dcm');
imshow(a)
的图像在屏幕显示,但它是非常黑暗的.....我不知道事情是这样的黑暗并不正常。 我检查了不同的dicom图像,但问题依然存在。 我希望你能提前帮助我和 。
如果你正在处理的黑白图像时,可以设置最小和最大像素值之间的线性缩放比例如下:
img = dicomread('filename');
imshow(img, [minAllowedPixValue maxAllowedPixValue]);
或者,您可以在整个动态范围内显示图像:
imshow(img, []);
dicomread
返回多波段图像。
尝试
a = dicomread ('m.dcm');
figure();imshow(a(:,:,:,1));
我想什么ü告诉我....问题依然存在。 ...图像显得很暗。 – 2012-03-21 15:16:52
谢谢你试图帮助我。 – 2012-03-21 15:17:19
@ user-x,你可以发布图片吗? – 2012-03-21 16:45:57
我认为你需要与数据一起读出的图像颜色表,然后把它传递给IMSHOW:
[a, amap] = dicomread ('m.dcm');
imshow(a,amap)
非常感谢你.....真的做到了。 – 2012-03-21 17:51:41
尝试
im = dicomread('image.dcm');
im = im2double(im); % this line to convert from uint16 to double
im = mat2gray(im); % this line to put the data in range [0,1]
figure;imshow(im);
谢谢你解释..我现在明白了。再次感谢你 – 2012-03-22 23:06:42